Différence entre deux fichiers txt avec nawk

Résolu/Fermé
GHISLINO Messages postés 214 Date d'inscription lundi 25 juillet 2011 Statut Membre Dernière intervention 8 décembre 2023 - Modifié par GHISLINO le 14/10/2013 à 12:29
GHISLINO Messages postés 214 Date d'inscription lundi 25 juillet 2011 Statut Membre Dernière intervention 8 décembre 2023 - 14 oct. 2013 à 16:53
Bonjour,

j'ai deux file1 et file2 , je ressortir la différence entre les deux fichiers (c-à-d) les lignes qui sont de trop dans le file2

fille1

e_gsm;ABOBO_1;evolium:monoStandardBtsIndoor;BSCCAF5;CIDE ;4;4
e_gsm;MICRO_TEST_DABOU;evolium:monoStandardBtsIndoor;BSCCAF5;CIDE ;4;4
dcs1800;AEROPORT_1;evolium:micro;BSCDABOU;MOCO ;2;2
e_gsm;ANGRE_1;evolium:monoStandardBtsIndoor;BSCLUM6;CIDE ;3;3
e_gsm;BANCO_1;evolium:monoStandardBtsIndoor;BSCLUM6;CIDE ;4;3
e_gsm;KM4_1;evolium:monoStandardBtsIndoor;BSCLUM6;CIDE ;3;3
e_gsm;KOUMASSI_1;evolium:monoStandardBtsIndoor;BSCCAF9;MBI5 ;3;3
e_gsm;MIRADOR_1;evolium:monoStandardBtsIndoor;BSCCAF9;MBI5 ;3;3
e_gsm;MSC_1;evolium:monoStandardBtsIndoor;BSCCAF9;MBI5 ;4;4
e_gsm;RIVIERA_1;evolium:monoStandardBtsIndoor;BSCSNT6;MBI5 ;4;4
e_gsm;ZI_1;evolium:monoStandardBtsIndoor;BSCSNT6;MBI5 ;3;3
e_gsm;SAMARIT_1;evolium:monoStandardBtsIndoor;BSCSNT6;MBI5 ;4;4
e_gsm;PETROCI_1;evolium:monoStandardBtsIndoor;BSCLUM4;CIDE ;3;3
e_gsm;CNTIG_1;evolium:monoStandardBtsIndoor;BSCLUM4;CIDE ;3;3
e_gsm;COCODY_1;evolium:monoStandardBtsIndoor;BSCLUM4;CIDE ;3;3
e_gsm;MAZEH_1;evolium:monoStandardBtsIndoor;BSCLUM5;CIDE ;3;3
e_gsm;BB_SDV_1;evolium:monoStandardBtsIndoor;BSCLUM5;CIDE ;3;3
e_gsm;BB_SDV_2;evolium:monoStandardBtsIndoor;BSCLUM5;CIDE ;3;3
e_gsm;BB_SDV_3;evolium:monoStandardBtsIndoor;BSCVIL7;CIDE ;3;3
e_gsm;ANGTERM_1;evolium:monoStandardBtsIndoor;BSCVIL7;CIDE ;4;4
e_gsm;COMAF_1;evolium:monoStandardBtsIndoor;BSCVIL7;CIDE ;2;2
e_gsm;NIANGON_1;evolium:monoStandardBtsIndoor;BSCVIL8;CIDE ;3;3
e_gsm;ANOUMABO_1;evolium:monoStandardBtsIndoor;BSCVIL8;CIDE ;3;3


file2

e_gsm;ABOBO_1;evolium:monoStandardBtsIndoor;BSCCAF5;CIDE ;4;4
e_gsm;MICRO_TEST_DABOU;evolium:monoStandardBtsIndoor;BSCCAF5;CIDE ;4;4
dcs1800;AEROPORT_1;evolium:micro;BSCDABOU;MOCO ;2;2
e_gsm;ANGRE_1;evolium:monoStandardBtsIndoor;BSCLUM6;CIDE ;3;3
e_gsm;BANCO_1;evolium:monoStandardBtsIndoor;BSCLUM6;CIDE ;4;3
e_gsm;KM4_1;evolium:monoStandardBtsIndoor;BSCLUM6;CIDE ;3;3
e_gsm;KOUMASSI_1;evolium:monoStandardBtsIndoor;BSCCAF9;MBI5 ;3;3
e_gsm;MIRADOR_1;evolium:monoStandardBtsIndoor;BSCCAF9;MBI5 ;3;3
e_gsm;MSC_1;evolium:monoStandardBtsIndoor;BSCCAF9;MBI5 ;4;4
e_gsm;RIVIERA_1;evolium:monoStandardBtsIndoor;BSCSNT6;MBI5 ;4;4
e_gsm;ZI_1;evolium:monoStandardBtsIndoor;BSCSNT6;MBI5 ;3;3
e_gsm;SAMARIT_1;evolium:monoStandardBtsIndoor;BSCSNT6;MBI5 ;4;4
e_gsm;PETROCI_1;evolium:monoStandardBtsIndoor;BSCLUM4;CIDE ;3;3
e_gsm;CNTIG_1;evolium:monoStandardBtsIndoor;BSCLUM4;CIDE ;3;3
e_gsm;COCODY_1;evolium:monoStandardBtsIndoor;BSCLUM4;CIDE ;3;3
e_gsm;MAZEH_1;evolium:monoStandardBtsIndoor;BSCLUM5;CIDE ;3;3
e_gsm;BB_SDV_1;evolium:monoStandardBtsIndoor;BSCLUM5;CIDE ;3;3
e_gsm;BB_SDV_2;evolium:monoStandardBtsIndoor;BSCLUM5;CIDE ;3;3
e_gsm;BB_SDV_3;evolium:monoStandardBtsIndoor;BSCVIL7;CIDE ;3;3
e_gsm;ANGTERM_1;evolium:monoStandardBtsIndoor;BSCVIL7;CIDE ;4;4
e_gsm;COMAF_1;evolium:monoStandardBtsIndoor;BSCVIL7;CIDE ;2;2
e_gsm;NIANGON_1;evolium:monoStandardBtsIndoor;BSCVIL8;CIDE ;3;3
e_gsm;ANOUMABO_1;evolium:monoStandardBtsIndoor;BSCVIL8;CIDE ;3;3
e_gsm;LANGEVIN_1;evolium:monoStandardBtsIndoor;BSCVIL8;CIDE ;4;4
e_gsm;SACHES_1;evolium:monoStandardBtsIndoor;BSCVIL8;MBI5 ;3;3
e_gsm;COTEAUX_1;evolium:monoStandardBtsIndoor;BSCVIL8;MBI5 ;3;3
e_gsm;SOGEFIHA_1;evolium:monoStandardBtsIndoor;BSCVIL8;MBI5 ;3;3
e_gsm;TREICHTL_1;evolium:monoStandardBtsIndoor;BSCSNT8;CIDE ;4;4
e_gsm;OUEZIN_1;evolium:monoStandardBtsIndoor;BSCSNT8;CIDE ;3;3
e_gsm;PALM_CB_1;evolium:monoStandardBtsIndoor;BSCSNT8;CIDE ;3;3
e_gsm;SOCOCE_1;evolium:monoStandardBtsOutdoor;BSCLUM4;MBO1E ;3;3
e_gsm;BABIA_1;evolium:monoStandardBtsOutdoor;BSCLUM4;MBO1E ;3;3
e_gsm;BB_BLOKOSSO;evolium:monoStandardBtsOutdoor;BSCLUM4;MBO1E ;2;2



résultat final

FILE3

e_gsm;LANGEVIN_1;evolium:monoStandardBtsIndoor;BSCVIL8;CIDE ;4;4
e_gsm;SACHES_1;evolium:monoStandardBtsIndoor;BSCVIL8;MBI5 ;3;3
e_gsm;COTEAUX_1;evolium:monoStandardBtsIndoor;BSCVIL8;MBI5 ;3;3
e_gsm;SOGEFIHA_1;evolium:monoStandardBtsIndoor;BSCVIL8;MBI5 ;3;3
e_gsm;TREICHTL_1;evolium:monoStandardBtsIndoor;BSCSNT8;CIDE ;4;4
e_gsm;OUEZIN_1;evolium:monoStandardBtsIndoor;BSCSNT8;CIDE ;3;3
e_gsm;PALM_CB_1;evolium:monoStandardBtsIndoor;BSCSNT8;CIDE ;3;3
e_gsm;SOCOCE_1;evolium:monoStandardBtsOutdoor;BSCLUM4;MBO1E ;3;3
e_gsm;BABIA_1;evolium:monoStandardBtsOutdoor;BSCLUM4;MBO1E ;3;3
e_gsm;BB_BLOKOSSO;evolium:monoStandardBtsOutdoor;BSCLUM4;MBO1E ;2;2

A voir également:

10 réponses

dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 oct. 2013 à 14:39
hllo
avec awk
awk 'NR==FNR {t[$0]++; next} !t[$0]' file1 file2
1
Utilisateur anonyme
14 oct. 2013 à 12:49
Salut, c'est quoi, la question ?

C'est ça : je ressortir la différence entre les deux fichiers ... ?

On devine, mais ce serait sans doute pas mal que tu précises...
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
14 oct. 2013 à 13:05
Salut,

$ grep -v -f f1 f2
e_gsm;LANGEVIN_1;evolium:monoStandardBtsIndoor;BSCVIL8;CIDE ;4;4
e_gsm;SACHES_1;evolium:monoStandardBtsIndoor;BSCVIL8;MBI5 ;3;3
e_gsm;COTEAUX_1;evolium:monoStandardBtsIndoor;BSCVIL8;MBI5 ;3;3
e_gsm;SOGEFIHA_1;evolium:monoStandardBtsIndoor;BSCVIL8;MBI5 ;3;3
e_gsm;TREICHTL_1;evolium:monoStandardBtsIndoor;BSCSNT8;CIDE ;4;4
e_gsm;OUEZIN_1;evolium:monoStandardBtsIndoor;BSCSNT8;CIDE ;3;3
e_gsm;PALM_CB_1;evolium:monoStandardBtsIndoor;BSCSNT8;CIDE ;3;3
e_gsm;SOCOCE_1;evolium:monoStandardBtsOutdoor;BSCLUM4;MBO1E ;3;3
e_gsm;BABIA_1;evolium:monoStandardBtsOutdoor;BSCLUM4;MBO1E ;3;3
e_gsm;BB_BLOKOSSO;evolium:monoStandardBtsOutdoor;BSCLUM4;MBO1E ;2;2

0
GHISLINO Messages postés 214 Date d'inscription lundi 25 juillet 2011 Statut Membre Dernière intervention 8 décembre 2023
14 oct. 2013 à 14:33
bonjour

la commande
 grep -v -f f1 f2
m'affiche seulement que le contenu de du file f2 mais pas la différence entre les deux fichiers.

est je manquer quelque chose.

cdlt.
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
14 oct. 2013 à 14:37
est je manquer quelque chose.
Ben sûrement dans la mesure ou le résultat de ma commande dans mon précédent post est bien celui attendu avec
f1 = file1
et
f2 = file2
;-(

Tes fichiers (file1 et file2) sont au format Unix ?
Quel système ? Quelle distrib ? Quelle version de
grep
?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
GHISLINO Messages postés 214 Date d'inscription lundi 25 juillet 2011 Statut Membre Dernière intervention 8 décembre 2023
14 oct. 2013 à 14:42
bonjour

je l'ai testé sur un terminal CYGWIN je vais essayé directement sur mon serveur linux 5 et je te fait un retour.

cdlt.
0
GHISLINO Messages postés 214 Date d'inscription lundi 25 juillet 2011 Statut Membre Dernière intervention 8 décembre 2023
14 oct. 2013 à 14:50
bonjour Dubcek

ta commande avec awk fonctionne très bien.

Merci beaucoup
0
GHISLINO Messages postés 214 Date d'inscription lundi 25 juillet 2011 Statut Membre Dernière intervention 8 décembre 2023
Modifié par GHISLINO le 14/10/2013 à 14:53
bonjour Dubcek

s'il te plait peux-tu me donner le détail de la commande.

merci

cdlt.
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
14 oct. 2013 à 15:35
NR==FNR    n'est vrai que pour le premier fichier
{t[$0]++; next} incremente un compteur indexé par le contenu de la ligne
!t[$0] ici on traite le deuxième fichier; si le compteur d'une ligne est nul, c'est que la ligne n'existait pas dans le premier fichier, donc on imprime (pas de {} == {print $0}
0
GHISLINO Messages postés 214 Date d'inscription lundi 25 juillet 2011 Statut Membre Dernière intervention 8 décembre 2023
14 oct. 2013 à 16:12
Dubcek

Thanks very much

cdlt.
0
Utilisateur anonyme
14 oct. 2013 à 16:44
Et zipe31 ? Tu ne remercie que ceux qui t'apportent la solution, pas ceux qui essaient ?
0
GHISLINO Messages postés 214 Date d'inscription lundi 25 juillet 2011 Statut Membre Dernière intervention 8 décembre 2023
14 oct. 2013 à 16:53
sorry thanks very much everybody for our help

best regards.
0