Bonjour,
totoAussi wrote:je voudrais savoir quelle est la ligne de commande qui permet de remplacer une chaine de caractère par une autre dans plusieurs fichiers d'un dossier ?
Avec sed et find, rien de plus simple :
find /chemin/du/dossier/à/traiter/ -name "*.txt" -exec sed -i.bak "s/mot1/mot2/g" {} \;
Cette commande va remplacer dans tous les fichiers .txt dans le dossier /chemin/du/dossier/à/traiter/ la chaîne « mot1 » par « mot2 ». Elle créera aussi une copie de sauvegarde des fichiers modifiés, suffixée par .bak.
Je pense que si on fait ça on ne peut plus revenir en arrière (comme on peut faire sur Notepad++ en cliquant sur Undo) => vrai ou faux ?
C'est l'intérêt des copies de sauvegarde faites plus haut ; pour revenir en arrière :
find /chemin/du/dossier/à/traiter/ -name "*.txt.bak" -exec rename .txt.bak .txt {} \;