je rame comme un couillon
sur cette page http://www.commentcamarche.net/faq [...] et-astuces j'ai trouvé
Citation :
Joindre les lignes 2 par 2 sed '$!N;s/\n//' Joindre les lignes 3 par 3 sed '$!N;s/\n//;$!N;s/\n//;'
|
en remplaçant les tabs par des lignes d'abord : tr \\t \\n
Citation :
Kalissa 25 ans Valence Juju 23 ans Saint-Etienne Photographe 28 ans Grenoble Cécile 27 ans Grenoble
|
puis en lançant le sed ça me donne
Citation :
Kalissa25 ansValence Juju23 ansSaint-Etienne Photographe28 ansGrenoble Cécile27 ansGrenoble
|
et bien sûr je rame comme un con pour modifier le sed.
Ah, j'y suis arrivé en essayant de le comprendre mieux! sachant que chaque s/\n// était une commande de substitution pour remplacer "retour à la ligne" par "rien". donc /s\n/\t remplace retour à la ligne par tab.
Je ne sais pas ce que veux dire $!N.
";" sépare des commandes sed ("s" étant la commande sed la plus connue et utilisée, voulant dire "substitution).
Au final, avec le fichier de test cela donne
cat test.txt|tr \\t \\n|sed '$!N;s/\n/\t/;$!N ;s/\n/\t/;'
ou ce qui est identique : tr \\t \\n<test.txt|sed '$!N;s/\n/\t/;$!N ;s/\n/\t/;'
Message édité par blazkowicz le 21-04-2013 à 11:01:30