Aller au contenu

Commandes linux et . sh avec php


Sujets conseillés

Posté

Bonjour,

j'ai un problème avec un script qui marche sous wamp.

Et quand je le fais sous linux ça marche pu... :wacko:

<?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 ;)

Posté

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

Posté

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... :angry:

Posté

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 :unsure: ).

Enfin ... est-ce que ton PHP est configurer pour que les fonctions system(), exec() et consore fonctionnent ?

Posté

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

Posté

C'est bon j'ai trouvé pour exécuter un .sh :fete:

SOLUTION:

`sh toto.sh` tout simplement....

je l'ai trouvé par hazared mais y'en a :fou:

Posté

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 ... B)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...