|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Étudiant Inscription : juin 2011 Messages : 6 ![]() |
Bonjour,
voila j'ai un problème. J'ai un fichier FICHIER1.txt qui contient : champs1 | champs2 | champs3 | champs 4 | champs5 champs1 | champs2 | champs3 | champs 4 | champs5 ... J'aimerais que les lignes de ce fichier soient réparties dans plusieurs autres fichiers en fonction de champs3 et champs4, avec le(s) nouveau(x) fichier(s) ayant pour titre : champs3_champs4.txt j'ai donc pensé à utiliser une commande de la sorte : Code :
cat FICHIER1.txt | echo >> "`cut -d"|" -f3`"_"`cut -d"|" -f4`".txt Quelqu'un aurait-il un idée ou une piste pour régler mon problème ? Merci beaucoup. |
|
|
00
|
|
|
#2 | ||
![]() ![]() Idriss NeumannConsultant en SSII et étudiant au CNAM Paris (ingénieur SI) Inscription : février 2009 Messages : 1 982 ![]() |
Bonjour.
Une solution parmi beaucoup d'autre (à adapter) : Code :
Cordialement, Idriss |
||
|
10
|
|
|
#3 |
|
Invité de passage
![]() Étudiant Inscription : juin 2011 Messages : 6 ![]() |
Ca fonctionne, merci beaucoup pour ta réponse!
|
|
|
00
|
|
|
#4 | ||
|
Expert Confirmé Sénior
![]() francois Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 3 534 ![]() |
Code :
|
||
|
|
20
|
|
|
#5 |
|
Invité de passage
![]() Étudiant Inscription : juin 2011 Messages : 6 ![]() |
Oui merci, c'est sur, dans mon fichier des fois il y a jusqu'a 1000 lignes...
|
|
|
00
|
|
|
#6 | ||
|
Membre Expert
![]() |
Est-tu vraiment obligé d'utiliser cut ?! C'est pas forcément la solution la plus propre...
Edit: par exemple avec awk Code :
|
||
|
|
20
|
|
|
#7 |
|
Invité de passage
![]() Étudiant Inscription : juin 2011 Messages : 6 ![]() |
Ben, disons que je ne vois pas quelle autre commande utiliser...
|
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Étudiant Inscription : juin 2011 Messages : 6 ![]() |
Excuse moi j'avais Alek-c j'avais pas vu la suite de ton post.
En effet, avec awk c'est pas mal aussi. Après, mon champs3 et champs4 sera toujours un seul et unique mot, sans espace même entre les | qui les séparent. |
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() |
Dans ce cas, gsub n'est pas indispensable.
Code :
awk -F'|' '{print > $3"_"$4".txt" }' fic.txt |
|
|
10
|
|
|
#10 |
|
Invité de passage
![]() Étudiant Inscription : juin 2011 Messages : 6 ![]() |
ok, merci beaucoup pour ta réponse!
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com