Différence entre deux fichiers txt avec nawk [Résolu/Fermé]

Signaler
Messages postés
187
Date d'inscription
lundi 25 juillet 2011
Statut
Membre
Dernière intervention
2 juillet 2020
-
Messages postés
187
Date d'inscription
lundi 25 juillet 2011
Statut
Membre
Dernière intervention
2 juillet 2020
-
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

10 réponses

Messages postés
18187
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
31 juillet 2020
4 932
hllo
avec awk
awk 'NR==FNR {t[$0]++; next} !t[$0]' file1 file2
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 57036 internautes nous ont dit merci ce mois-ci


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...
Messages postés
35316
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
3 août 2020
5 315
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

Messages postés
187
Date d'inscription
lundi 25 juillet 2011
Statut
Membre
Dernière intervention
2 juillet 2020

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.
Messages postés
35316
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
3 août 2020
5 315
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
?
Messages postés
187
Date d'inscription
lundi 25 juillet 2011
Statut
Membre
Dernière intervention
2 juillet 2020

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.
Messages postés
187
Date d'inscription
lundi 25 juillet 2011
Statut
Membre
Dernière intervention
2 juillet 2020

bonjour Dubcek

ta commande avec awk fonctionne très bien.

Merci beaucoup
Messages postés
187
Date d'inscription
lundi 25 juillet 2011
Statut
Membre
Dernière intervention
2 juillet 2020

bonjour Dubcek

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

merci

cdlt.
Messages postés
18187
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
31 juillet 2020
4 932
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}
Messages postés
187
Date d'inscription
lundi 25 juillet 2011
Statut
Membre
Dernière intervention
2 juillet 2020

Dubcek

Thanks very much

cdlt.
Utilisateur anonyme
Et zipe31 ? Tu ne remercie que ceux qui t'apportent la solution, pas ceux qui essaient ?
Messages postés
187
Date d'inscription
lundi 25 juillet 2011
Statut
Membre
Dernière intervention
2 juillet 2020

sorry thanks very much everybody for our help

best regards.