Recherche et remplace

Ce script permet de trouver et remplacer, soit une chaîne en texte pur, soi un mot-clé de langage, dans un fichier, ou un ensemble de fichiers.

Ligne de commande et options de recherche

Une fois le fichier compilé en binaire, la syntaxe de la commande est:

search [options] texte fichier

Avec PHP la commande est:

php search.php [options] texte fichier

L'argument fichier peut être un simple nom de fichier ou une définition avec jokers, par exemple *.* pour tous les fichiers dans les répertoire. Le code générique ? est aussi supporté.
Exemple:

search texte monfic.html
search texte *.html
search string *.htm?

La commande n'est pas récursive, elle s'applique seulement au répertoire courant ou au chemin spécifié.
Les options peuvent être concaténées, par exemple -ic est équivalent à -i -c.

Options

-i ignore la casse pour la chaîne cherchée et le contenu du fichier, sensible par défaut.
-c recherche des identifieurs et utilise les caractères spéciaux de C comme séparateurs.
-f affiche tous les fichiers parsés, par défaut seulement ceux où on trouve le texte.
-u sensibilité à la casse pour les noms de fichier comme sous Unix, pas par défaut.

Commande de remplacement

Pour remplacer une chaîne par une autre, la commande est:

search [options] texte1 texte2 fichier

La présence d'une seconde chaîne, qui est le texte de remplacement, tandis que la première est celle qui doit être remplacée, suffit pour faire du script un outil de remplacement.

Télécharger