Re: remplacer de caractères dans une chaine

Top Page

Reply to this message
Author: Xavier Bestel
Date:  
To: anne aublanc
CC: guilde
Subject: Re: remplacer de caractères dans une chaine
Le samedi 27 novembre 2004 à 11:01 +0100, anne aublanc a écrit :
> ----- Original Message -----
> From: "Xavier Bestel" <xavier.bestel@???>
> To: "anne aublanc" <anne.aublanc@???>
> Sent: Saturday, November 27, 2004 10:25 AM
> Subject: Re: remplacer de caractères dans une chaine
>
>
> Le samedi 27 novembre 2004 à 09:35 +0100, anne aublanc a écrit :
> > bonjour,
> >
> > J'ai besoin de remplcer les / en \/
> >
> > pour cela :
> > s/\//\\\//
>
> Déjà, tu peux essayer s_/_\\/_g (tu peux remplacer le '/' par un autre
> caractère si ça t'arrange, et le 'g' final dit de ne pas faire qu'une
> substitution par ligne)
>
> J'ai essayé avec le g sans le g....
> Je crois que le problème c'est que je fais comme si j'étais en perl...
> $var=~s/\//\\\//g
> et je pense qu'il ne comprend pas ce que je lui demande!
> La syntaxe ne doit pas être bonne...
>
> > mais cela ne fonctionne pas : erreur!
>
> Il faudrait que tu sois plus précise pour qu'on puisse t'aider.
> Je vais essayer....
>
> Je suis en bash.
>
> J'ai besoin de transformer la chaine de caractères :
> "/home/JOB.done /home/JOB.suspended"
> en
> "\/home\/JOB.done \/home\/JOB.suspended"


[xav@bip:~]$ echo "/home/JOB.done /home/JOB.suspended" | sed 's_/_\\/_g'
\/home\/JOB.done \/home\/JOB.suspended