|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 3 ![]() |
Bonjour à tous.
Voila mon problème, étant nouveau dans la programmation en shell, je ne m'en sort pas. J'ai déja fait quelques scripts (qui marchent bien entendu) mais j'arrive à bout Je part d'un fichier de la forme : Citation:
Citation:
- tr qui remplace les \n par des , - un for avec un awk afin de modifier, suivant le no de champs, la chose qui les séparent. Merci d'avance. Bazouil |
||
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() |
Il te suffit d'utiliser la commande sed de la manière suivante :
Enfin, c'est l'idée car je ne suis ni un pro des expressions régulières ni de sed. Un pro pour confirmer la syntaxe svp ?! |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 3 ![]() |
Merci pour ta réponse mais ça ne marche pas.
Je vais donc approfondir la commande SED car il semble que ça soit la meilleur solution pour palier à mon problème. Je vous tiens au courant. Bazouil |
|
|
00
|
|
|
#4 | ||
|
Expert Confirmé Sénior
![]() francois Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 3 546 ![]() |
la syntaxe sed est peut etre erronné mais le principe est de
faire un remplacement de chaque caractere alphabetique+fin de ligne par luimême+",". peut etre sans les \ selon les shells ayé j'ai retrouver comment faire un join.... Code :
sed -e :a -e '/[a-zA-Z]$/N; s/\n/, /; ta' FICHIER autrement n'importe quel caractere a à Z en n'importequel nombre suivit de fin de ligne (pas de ponctuation ou de chiffres comme ça tes lignes chiffrées sont automatiquement mise en fin de ligne. à remplacer par un \n/, comme séparateur un exemple valant mieux qu'un long discours..... Code :
|
||
|
|
00
|
|
|
#5 | ||
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 3 ![]() |
Bonjour et merci frp31
J'ai essayé ta solution mais dans mon cas, j'ai oublié de préciser que les noms avec des lettres pouvaient également comprendre des chiffres. Quelqu'un m'a donné la solution miracle. Surtout, ne me demandez pas comment fonctionne cette fonction, je ne comprend pas tout Code :
A bientôt. Bazouil |
||
|
|
00
|
|
|
#6 |
|
Expert Confirmé Sénior
![]() francois Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 3 546 ![]() |
pour chaque ligne ca la lit,
ca substitue elle meme par elle meme, la suivante tant que le compteur n'est pas a 3 sinon ca reinitialise la variable new et la variable nombre.... autrement dit ca joue sur le nombre de ligne et en utilisant que le shell... pas mal comme methode... un code esthetique... et sympa.... je me le mets dans mes archives d'astuces....
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com