Passer au contenu

Comment modifier rapidement une expression dans plusieurs fichiers ?

Solution : en utilisant une commande perl. Testé avec Mandrake 7.1/RedHat 6.2/SuSE 6.4/OpenLinux 2.4/CorelLinux 1.1/StormLinux 2000.

Vous développez un site Internet et chaque page HTML contient votre logo. Vous avez inséré ce dernier à l’aide d’une adresse ou lien statique (http://www.test.fr/images/logo.gif). Mais après avoir réorganisé l’arborescence du site, vous avez déplacé l’image dans un autre dossier et vous devez modifier le lien dans tous les fichiers HTML.Au lieu de les modifier un à un, ce qui serait très fastidieux, saisissez dans une xterm, perl -p -i -e ‘s/XXX/YYY/gi’ *.html, où XXX représente l’expression à remplacer par la chaîne YYY.Attention, si le caractère / est présent dans une des deux expressions, vous devez le faire précéder du signe afin qu’il ne soit pas interprété par l’interpréteur perl comme la fin de l’expression.De plus, si d’autres fichiers HTML sont stockés dans les sous-répertoires, remplacez *.html par ‘find ./ -name *.html’ (en conservant les caractères ). Changez éventuellement *.html par une autre expression correspondante aux fichiers que vous désirez modifier.

🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.


Filigrane Press