replace en masse dans un répertoire et ses sous repertoires.

WRInaute discret
Bonjour

J'ai transféré mon site d'un serveur à un autre et je dois faire un replace en masse dans mon répertoire cgi-bin (et dans tous les répertoire qui sont dans ce répertoire)

Je dois remplacer la chaine suivante :
#!/usr/local/bin/perl

par la chaine
#!/usr/bin/perl

Comment faire ?
via une commande shell? quelle est alors la syntaxe ?


Merci
C H R I S
 
WRInaute impliqué
"sed" semble convenir...

"man sed" pour avoir toute la doc

"sed s/helo/ehlo/g"

remplacera tous les helo en ehlo
 
WRInaute impliqué
Ooops oublié....

Et utilises le wildcard '*' pour passer dans les repertoires...

"*/*" ira dans deux niveaux d'arborescence..

"*/*/*" dans trois niveaux, etc...etc...
 
WRInaute discret
la solution au replace en masse

merci j'ai trouvé également une réponse.... merci pour ton aide... :D

:arrow: pour ceux que ça interesse, dans mon rep cgi-bin j'ai fait
perl -p -i -e 's|\Q#!/usr/local/bin/perl|#!/usr/bin/perl|g' `grep -r -l '#!/usr/local/bin/perl' .`

le replace s'est fait correctement

Merci
C H R I S
 
Discussions similaires
Haut