Une commande linux qu’elle est utile c’est grep :
Rechercher récursivement
1 |
grep -rl 'chaîne' |
‘r’ pour récursif & ‘l’ pour lister les fichiers
Une autre commande qu’elle est super, c’est sed :
Remplacer
1 |
sed -i 's/chaîne/nouvelle_chaîne/g' fichier_a_modifier.php |
‘i‘ pour éditer le fichier
nota : pour remplacer une url, substituer les ‘ / ‘ par des ‘ , ‘
Pour rechercher et remplacer dans plusieurs fichiers de façon récursive, voici comment faire :
Rechercher & remplacer
1 |
grep -rl 'chaîne' | xargs sed -i 's/chaîne/nouvelle_chaîne/g' |
‘xargs‘ permet de combiner notre recherche avec le remplacement !
Une commande pratique mais aussi très rapide.
Bonus
Et si vous souhaitez exclure certaines extension de fichiers, les script shell par exemple :
1 |
grep -rl 'chaîne' --exclude \*.sh* | xargs sed -i 's/chaîne/nouvelle_chaîne/g' |
A l’inverse pour traiter les fichiers d’une seule extension :
1 |
grep -rl 'chaîne' --include \*.php* | xargs sed -i 's/chaîne/nouvelle_chaîne/g' |