Page 1 sur 1

command exec et les caractères spéciaux

Posté : 17 avr. 2008, 12:33
par vibou_
Bonjour tout le monde!

Voila mon probleme je cherche a utiliser exec qui va executer un script perl en passant en parametre un fichier.

Mon exec ressemble a ceci:
exec("script.pl --input=monfichier.txt",$output);
Ceci marche tres bien mais si le nom de mon fichier contient des () ou | et autre caractere detester par le shell cela ne fonctionne pas. Car lorsque que je l'execute dans un terminal il ajoute des \ devant les () etc...

J'ai essayer avec addslashes mais cela ne fonctionne pas ca n'ajoute pas de \() ms seulement au quote ...

Je pensais sinon peut etre le faire avec un eregi_replace mais quelqu'un sait il ou je peux trouver touts les caractères a remplacer?

Posté : 17 avr. 2008, 13:00
par Calimero
Bonjour,

Lire le manuel des fonctions php qu'on utilise (et surtout les encadrés rouge de la page de manuel) est souvent bien utile ;-) Car tu y aurais trouvé un lien vers cette fonction : http://www.php.net/manual/fr/function.e ... ellarg.php

Posté : 17 avr. 2008, 13:10
par vibou_
Le pire c'est que j'ai regarder la doc.... j'ai honte !!!

Merci en tout cas je ferai gaffe au cadre rouge now :D