Le 8 nov. 06 à 08:56, David Pintor a écrit :

Bonjour,

J'ai une arborescence de repertoires (un site web en fait) que j'ai transferé d'une machine à une autre. Sur pas mal de pages d'accede a une base de données MySQL avec la fonction mysql_connect('...'). Puisque les parametres de connexion de cette fonction ont changé j'essaie de faire des substitutions avec sed, mais le probleme c'est que je suis obligé de rediriger ca vers un nouveau fichier.

Par exemple, si je fais la commande suivante:

$ sed 's/toto/titi/g' index.php > index.php

il me vide carrement l'index.php. Si je fais la redirection vers un autre fichier (index2.php, par exemple) ça se passe bien.

Mon idée c'est de faire un find avec un grep derriere sur toute l'arborescence et puis faire des substitutions avec sed, le tout dans une seule commande ou dans un petit script afin de tout remplacer d'un coup.

Si quelqu'un a une piste...

Avec Perl :

    perl -pi -e 's/.../...g' file1 file2 ...

exécute la substitution sur place, sur les fichiers passés en argument.

--
Sébastien Aperghis-Tramoni

Close the world, txEn eht nepO.
Linux-Azur :      http://www.linux-azur.org
Désinscriptions: http://www.linux-azur.org/liste.php3
**** Pas de message au format HTML, SVP ****

Répondre à