[shell] Doublement d'un caractère

Résolu/Fermé
Erielle - 14 févr. 2011 à 16:32
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 - 14 févr. 2011 à 16:55
Bonjour,

comment peux -t -on remplacer \ par \\\ dans une chaîne de caractère contenue dans une variable ?

Par exemple j'ai la variable maChaine qui contient eer\ijh \uy\
je voudrais obtenir eer\\\ijh \\\uy\\\

Comment est-ce que je peux faire ça ?
echo $maChaine | sed 's/\\/\\\\\\/' ne remplace que le premier \.

Merci

Configuration: shell bash
A voir également:

2 réponses

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
14 févr. 2011 à 16:43
Salut,

sed 's/\\/\\\\\\/g'
0
Merci ça fonctionne nickel !
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
14 févr. 2011 à 16:55
Tu peux aussi faire avec le shell pur :

$ echo ${A}
eer\ijh \uy\

$ echo ${A//\\/\\\\\\}
eer\\\ijh \\\uy\\\

;-))
0