Re: Substitution par 'sed' une seule fois dans un fichier...
David BERCOT a écrit, dimanche 24 février 2008, à 17:10 :
> Bonjour,
bonsoir,
> J'ai un petit problème avec 'sed'. Je souhaite effectuer le
> remplacement d'une expression par une autre, mais uniquement une seule
> fois dans un fichier.
> Or, si je fais 'sed s/expr1/expr2/ monfichier', si expr1 est présent
> plusieurs fois, elle sera remplacée à chaque fois.
> Les recherches que j'ai effectuées ne parlent que du nombre de
> substitutions (1, toutes, la dernière, etc...) sur une ligne, et pas
> sur un fichier...
>
> Auriez-vous une piste ?
~ $ echo 'toto
> ]titi
> ]toto
> ]tata' > fic
~ $ sed -e '/toto/{s//Glop/;:A;N;bA}' <fic
Glop
titi
toto
tata
Variantes :
sed -e ':A;N;$!bA;s/toto/Glop/' <fic
sed -ne 'H;${g;s/^\n//;s/toto/Glop/;p}' <fic
> Merci d'avance.
Hop zat elpse
--
Jacques L'helgoualc'h
Reply to: