Aller au contenu

Remplacer une chaine de caractères en Perl

Voici comment remplacer en langage Perl une chaine de caractères dans un fichier.
Fichier d'origine:

fic.txt
chaine1
chaine2
chaine3

On veut changer chaine1 en mot1 directement dans le fichier, sans sauvegarde.

perl -pi -e 's/chaine1/mot1/g' fic.txt
Pour garder une sauvegarde du fichier d'origine.
On ajoute l'option .back

perl -pi.back -e 's/chaine2/mot2/g' fic.txt

Affichage du fichier sauvegardé:

fic.txt.back
mot1
chaine2
chaine3
Affichage du fichier modifié:
fic.txt
mot1
mot2
chaine3