Re: remplacement occurence dans plusieurs fichiers
Le Wed, 26 Nov 2003 09:37:06 +0100, Charles Plessy a écrit :
>
>> N'est-il pas plus simple de faire un for?
>> for i in `find . -f type f -print`; do cp $i $i.sed; sed
>> "s/\/home\/toto\/gallery\//\/home\/sites\/toto\/gallery\//g" $i.sed >
>> $i; rm $i; done
>
> et pour les amateurs de perl et de bash:
>
> for i in $(find -f type f -print)
> do perl -pe 's:/home/toto/gallery/:/home/sites/toto/gallery/:g'
> done
Bonjour,
J'ai essayé la version perl et bash, et malheureusement cela ne
fonctionne pas chez moi.
Lorsque je laisse perl -pe, le shell ne se termine jamais.
Lorsque je ne met que perl -e, je récupère la main, mais la substitution
ne s'est pas faite dans le fichier.
Voici mon script :
for i in $(find /var/lib/sympa/enseignant -name config -print)
do perl -e
's:/5000000/:/6000000/:g' done
Voici ce que ramène find /var/lib/sympa/expl/enseignant -name config
-print
: /var/lib/sympa/expl/enseignant/config
Voici ce que ramène grep 5000000 /var/lib/sympa/expl/enseignant/config :
max_size 5000000
Pouvez vous m'aider ?
Merci
Reply to: