Rechercher remplacer dans un fichier

Je veux remplacer toutes les occurrences de toto par tata dans le fichier exemple.txt :

    Ceci est un exemple de fichier contenant plusieurs occurrences du mot toto.
    toto 

Il me suffit d'exécuter le code suivant :

 perl -pi'*.bak' -e 's/toto/tata/g' exemple.txt

Ceci crée au passage un fichier exemple.txt.bak, et le fichier exemple.txt devient :

    Ceci est un exemple de fichier contenant plusieurs occurrences du mot tata.
    tata 

Pour plus de détails, voir man perlrun.

Rechercher remplacer dans toute une arborescence

perl permet de processer tous les fichiers passés en argument.

 perl -pi'*.bak' -e 's/toto/tata/g' *.txt

traitera tous les fichiers .txt du répertoire courant.

 perl -pi'*.bak' -e 's/toto/tata/g' `find . -name '*.txt'`

traitera tous les fichiers .txt contenus dans le répertoire courant et tous ses sous répertoires.

Page last modified on 18 novembre 2005 à 23h33