Suppimer des espace sur un champ contenant des "|" unix
Résolu
JsuisNul
Messages postés
137
Statut
Membre
-
JsuisNul -
JsuisNul -
Bonjour,
Je souhaite supprimer des espace dans un champs qui contient des "|"
$ ligne=' toto,,Hello |Revoir |test,TTTT,michael '
$ echo "'$(echo "${ligne}" |sed 's/ \|/\|/g'
Résultat attendu => ' toto,,Hello|Revoir|test,TTTT,michael '
J'ai essayé le sed ci-dessus mais au lieu de supprimer les espaces cela met chaque caractère entre pipe
si quelqu'un veut bien me donner la bonne syntaxe, je suis preneur.
Merci d'avance pour votre aide.
J.
4 réponses
-
hello
$ ligne=' toto,,Hello |Revoir |test,TTTT,michael ' $ sed -r 's/ +| +//g' <<<"$ligne" toto,,Hello|Revoir|test,TTTT,michael
-
Merci Dubcek
Je viens de tester et ça fonctionne comme souhaité.
Merci encore ! Sujet résolu !
-
correction
mon code supprime tout les espaces
pour supprimer les espaces avant et/ou après |
$ sed -r 's/[ ]*\|[ ]*/|/g' <<<"$ligne"
-
Bonjour dubcek,
Merci pour la précision même si le premier code fonctionne comme je le souhaite pour moi.
Bon week-end