Re: [limite HS]modifier un bloc de texte dans plusieurs fichiers
Aux Saveurs Gourmandes a écrit, samedi 22 janvier 2005, à 18:02 :
> Bonjours,
bonjour.
> Je cherche le moyen pour remplacer un bloc de texte dans plusieurs
> fichiers (le contenus d'un repertoire et de ses sous-rep en fait)
> en gros : si le bloc de texte texte1.txt est trouvé dans le fichier le
> remplacer par le bloc de texte texte2.txt .
Ce sont les blocs avant/après eux-mêmes, pas deux fichiers contenant ces
blocs (multilignes ?) ?
> En fait j'ai un tag surtout les fichiers d'un script en php et comme la
> version a changé et l'url aussi je doit le modifier mais je compte pas
> me taper la centaine de fichiers a la main.
Bon, c'est un peu trop pour le faire en interactif avec Emacs (ouvrir
dans le répertoire principal, et appuyer sur Q ...).
> Comment puis je faire ?
Cf. dans les archives de la liste fin novembre 2003, le fil de
discussion "remplacement occurence dans plusieurs fichiers".
find cible/ -type f -name \*.php | xargs sed -i 's,texte1,texte2,g'
(Sed version 4, -i.old pour avoir une sauvegarde, et pas de virgule dans
le texte).
--
Jacques L'helgoualc'h
Reply to: