Concaténer deux fichiers si même pattern dans un troisième
bob737
-
dubcek Messages postés 18627 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18627 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je viens vers vous car je m'arrache les cheveux sur un ksh.
J'ai un fichier REF qui contient les champs suivants:
Groupe1;toto;***@***
Groupe2;toto;***@***
Groupe3;titi;***@***
Pour chaque ligne, il y a un 3 fichiers associés.
Groupe1.stock.csv
Groupe1.flux.csv
Groupe1.flux_detail.csv
Groupe2.stock.csv
Groupe2.flux.csv
Groupe2.flux_detail.csv
Groupe3.stock.csv
Groupe3.flux.csv
Groupe3.flux_detail.csv
Je voudrais concaténer les fichiers GroupeX.stock.csv et GroupeX.flux.csv et GroupeX.flux_detail.csv si et seulement le mail du troisième champ REF est identique. Dans mon exemple les deux 1ère ligne du champ REF.
Merci de votre aide.
Je viens vers vous car je m'arrache les cheveux sur un ksh.
J'ai un fichier REF qui contient les champs suivants:
Groupe1;toto;***@***
Groupe2;toto;***@***
Groupe3;titi;***@***
Pour chaque ligne, il y a un 3 fichiers associés.
Groupe1.stock.csv
Groupe1.flux.csv
Groupe1.flux_detail.csv
Groupe2.stock.csv
Groupe2.flux.csv
Groupe2.flux_detail.csv
Groupe3.stock.csv
Groupe3.flux.csv
Groupe3.flux_detail.csv
Je voudrais concaténer les fichiers GroupeX.stock.csv et GroupeX.flux.csv et GroupeX.flux_detail.csv si et seulement le mail du troisième champ REF est identique. Dans mon exemple les deux 1ère ligne du champ REF.
Merci de votre aide.
6 réponses
-
-
-
Je me dis qu'il y a quelque chose à faire avec awk plutôt que de me lancer dans des boucles...
-
Salut,
si et seulement le mail du troisième champ REF est identique.
Identique à quoi ?
Dans mon exemple les deux 1ère ligne du champ REF.
Oui, et ??? -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
ok, je n'avais pas vu que les adresses mail avaient été remplacées par des "**" en publiant. Désolé.
Groupe1;toto;mail_de_toto
Groupe2;toto;mail_de_toto
Groupe3;titi;mail_de_titi
Donc je souhaite concaténer les fichiers de Goupe1 et Groupe2.
Merci. -
hello
quelque chose comme ça ?$ awk -F ";" '{t[$3]=t[$3] " " $1 ".*.csv"; s[$3]++} END {for (n in t)if(s[n]>1)print "cat " t[n] " > Group." n ".csv"}' REF
cat Groupe1.*.csv Groupe2.*.csv > Group.mail_de_toto.csv
ajouter| bash -x
pour exécuter les commandes