différences entre deux fichiers [resolu] - Shell/Batch - Programmation
Marsh Posté le 02-06-2008 à 11:30:57
Ah, c'est donc de l'Unix.
Pour récupérer ce qui n'est pas commun entre deux fichiers, diff est la commande habituelle, mais il faudrait que les fichiers soient triés, donc un petit sort ordinaire est à faire avant.
Pour récupérer ce qui est commun, il doit y avoir des astuces, mais je n'en ai pas qui me viennent à l'esprit immédiatement, donc je ferais un petit script, et je ne crois pas qu'il prendrait beaucoup de temps d'exécution même pour 50 000 lignes, si les fichiers sont triés au départ.
Marsh Posté le 02-06-2008 à 11:34:11
Oui ils sont deja triés, mais j'essaie d'optimiser le temps de traitement, vu que l'ensemble de mon script me prend deja 50 minutes sans cette fonctionnalité ^^.... mais merci
Marsh Posté le 02-06-2008 à 12:48:40
sort file1 file2 | uniq -u |
En supposant que chaque ligne n'apparait pas plus d'une fois dans un fichier, sinon ça ne marche pas.
Marsh Posté le 02-06-2008 à 13:51:31
matafan a écrit :
|
ok merci du coup je fais
Code :
|
puis
Code :
|
super merci
Marsh Posté le 02-06-2008 à 10:59:13
Bonjour voici mon problème:
j'ai deux fichiers:
J'ai besoin de récupérer dans un fichier résultat ou ce qu'il y a dans le fichier1 et pas dans le 2 ou ce qui n'est pas commun entre les 2 soit:
ou
j'ai vu que la fonction diff va me donner certaines différences mais à moins qu'il y est une option que je n'ai pas compris ca ne correspond pas exactement à ce dont j'ai besoin. ou l'inverse de sort -u ???
Plus précisemment j'essaie d'éviter le script vu chaque fichier fait plus de 50.000 lignes.
merci
Message édité par OyT le 02-06-2008 à 13:51:51
---------------
yop yop