sebeni Posté 24 Janvier 2006 Partager Posté 24 Janvier 2006 Bonjour, j'ai un problème avec un script qui marche sous wamp. Et quand je le fais sous linux ça marche pu... <?php $var=`serv.sh`;echo $var;?> Biensur avec wamp j'exécuter un .bat, mais sous linux j'ai même tester un simple commande ls et rien ne se passe!!!! J'ai également tester avec sytem(), exec().... Une idée please.... Toutes les idées sont bonnes. MERci Lien vers le commentaire Partager sur d’autres sites More sharing options...
Dan Posté 24 Janvier 2006 Partager Posté 24 Janvier 2006 Bonjour, Si tu veux exécuter le script, il faut qu'il ait les permissions d'exécution. Donc un "chmod +x serv.sh" sous linux lui donnera ces permissions. A partie de là tu pourras utiliser system() ou exec()... voire même passthru() selon ce que ce script affiche. Dan Lien vers le commentaire Partager sur d’autres sites More sharing options...
sebeni Posté 24 Janvier 2006 Auteur Partager Posté 24 Janvier 2006 Slt Dan, Pour faire bien j'avais mis chmod 777 a serv.sh. dans le point sh j'ai juste la commande service smb stop. Mais autre chose aussi, si je fais system("service smb stop") ça ne fonctionne pas... Lien vers le commentaire Partager sur d’autres sites More sharing options...
destroyedlolo Posté 24 Janvier 2006 Partager Posté 24 Janvier 2006 Il ne faut pas oublier que le script qui s'execute dans ton shell n'a pas le meme environement lorsqu'il est lance par PHP. Alors, si ton script ne fonctionne pas, c'est peut etre pask'il n'arrive pas a trouver ses petits. Dans le meme genre, il sera execute par le user qui fait tourne ton web (c'est idio, mais c'est souvent la cause du probleme ). Enfin ... est-ce que ton PHP est configurer pour que les fonctions system(), exec() et consore fonctionnent ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
sebeni Posté 24 Janvier 2006 Auteur Partager Posté 24 Janvier 2006 je pense qu'il est configuré pour ses fonction car : *Safe mode =off *et quand je fais system("ls-l"); le résultat s'affiche sur ma page web. En revanche si je fais system("ls>toto.txt"); rien ne se passe Lien vers le commentaire Partager sur d’autres sites More sharing options...
sebeni Posté 24 Janvier 2006 Auteur Partager Posté 24 Janvier 2006 C'est bon j'ai trouvé pour exécuter un .sh SOLUTION: `sh toto.sh` tout simplement.... je l'ai trouvé par hazared mais y'en a Lien vers le commentaire Partager sur d’autres sites More sharing options...
Morgan_R Posté 25 Janvier 2006 Partager Posté 25 Janvier 2006 Bonjour, Pour éviter d'avoir a taper le sh, il faut mettre ceci sur la premiére ligne de ton script : #!/bin/sh C'est valable pour tout type de script, par exemple, pour un script php en ligne de commande: #!/usr/bin/php etc ... Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant