KioskeaKioskeaCommentCaMarcheInscrivez-vous, c'est gratuit !
Samedi 17 mai 2008 - 14:34:33

Execution script shell avec php

Rechercher : dans
Execution script shell avec php
par djspank
 Fil de Discussions
Statut : Résolu
mardi 13 mars 2007 à 15:09:43
Bonjour,

Je suis actuellement entrain d'essayer de lancer une commande Linux ,ls par exemple, à travers un script php.
J'utilise la commande exec de php. Comme je suis sous windows, j'utilise Cygwin. Je peux dans la ligne de commande lancer des commande comme ls ou pwd par contre dès que je veux les lancer dans mon script php rien ne se passe :
<?php
	$ligne = exec('pwd');
	echo $ligne;
?>


Alors que par exemple ceci fonctionne correctement :
<?php
	$ligne = exec('dir');
	echo $ligne;
?>


Est ce que quelqu'un aurait une idée?

Merci d'avance!
Configuration: Windows XP
Firefox 2.0.0.2
Cygwin
Répondre à djspank  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par lefoufighter, le mardi 13 mars 2007 à 15:15:07 Fil de Discussions
Salut,
Je ne connais pas Cygwin mais ca me semble logique que le pwd ne fonctionne pas alors que le dir fonctionne puisque c'est ton windows qui va interpréter la commande et qu'il ne connait pas la commande pwd alors qu'il connait le dir.
Mais chez moi sous linux les 2 fonctionne bien
Il n'existe que deux choses infinies, l'univers et la bêtise humaine...
mais pour l'univers, je n'ai pas de certitude absolue. <Albert Einstein>
Répondre à lefoufighter

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par djspank, le mardi 13 mars 2007 à 15:20:33 Fil de Discussions
Merci pour ta réponse rapide! :D

En fait non, cela n'est pas logique, car les executables de cygwin sont dans mon PATH, donc les commandes linux devraient fonctionner. Lorsque je tape la commande ls dans l'interpreteur elle fonctionne correctement, c'est la raison pour laquelle je ne comprends pas pourquoi cela ne fonctionne pas...
Répondre à djspank

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par lefoufighter, le mardi 13 mars 2007 à 15:37:08 Fil de Discussions
Alors je comprends pas tres bien mais pour être honnete g appris la semaine passée qu'on pouvait exécuter des commandes en php avec le exec donc je pourrais pas t'aider des masses.
Il n'existe que deux choses infinies, l'univers et la bêtise humaine...
mais pour l'univers, je n'ai pas de certitude absolue. <Albert Einstein>
Répondre à lefoufighter

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par tlep, le mardi 13 mars 2007 à 16:27:11 Fil de Discussions
Probablement parce que php via apache n'a pas accès au même PATH:

essaie
<?
$test=shell_exec('echo $PATH');
echo $test;
$ou_est_ls=shell_exec('which ls');
echo $ou_est_ls;
?>
Répondre à tlep

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par djspank, le mardi 13 mars 2007 à 16:41:04 Fil de Discussions
Cela ne donne rien dans l'affichage de la page...
Par contre ceci :
       $test=exec('echo $PATH',$tab,$i);
	echo $i;
	echo $test;
	$ou_est_ls=exec('which ls');
	echo $ou_est_ls; 


affiche 0 suivi de $PATH...
Je commence à me demander si cela est possible...
Répondre à djspank

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par tlep, le mercredi 14 mars 2007 à 09:23:43 Fil de Discussions
essaie comme çà:

<?
$commande="which ls";
$result=shell_exec($commande);
echo $result;
?>
Répondre à tlep

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par djspank, le jeudi 15 mars 2007 à 09:29:38 Fil de Discussions
Salut,

Merci pour ta réponse, ca fonctionne. Je ne comprends pas trop pourquoi ca ne fonctionnait pas auparavant... Enfin merci de ton aide!
Répondre à djspank

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par moussadjijunior, le samedi 6 octobre 2007 à 17:33:20 Fil de Discussions
Bonjour, salut a vous
moi je suis sur linux fedora je ecrire un script pour qu'il execute la commande "/etc/init.d/httpd start" comment faire s'il vous plait
Merci d'avance
Répondre à moussadjijunior

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par lami20j, le samedi 6 octobre 2007 à 17:56:35 Fil de Discussions
Salut,
#!/bin/bash
/etc/init.d/httpd start
tu donnes un nom pour ton script. Pour l'exécution regarde ici executer un script shell lami20j
Répondre à lami20j

10


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par moussadjijunior, le mercredi 10 octobre 2007 à 15:28:46 Fil de Discussions
bonjour à tous ! j'esperes que le tres haut vous combles de ses bien faits!!

Je vous remercies pour la reponse à ma demande mais je suis un peu perdu je me demande ou je dois mettre le script pour qu'il soit exectuter par un autre script.
Je dois le mettre dans celui ci ou je dois le mettre dans un fichier particulier .
le script est bien celuici:
<?
#! /bin/bash
/etc/init.d/httpd start
?>

Merci d'avance pour votre future reponse
Que DIEU nous garde envie pour longtemps et dans la paix
Répondre à moussadjijunior

11


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par moussadjijunior, le mercredi 10 octobre 2007 à 15:35:00 Fil de Discussions 
s'il vous plait comment je peux faire pour voir la confirmation de l'execution du script sur un autre script
Répondre à moussadjijunior
Discussions pertinentes trouvées dans le forum
27/02 15h55Exécuter script shell en php : Pb de droitsWebmastering27/02 15h550
17/05 09h19[java] execution script shellProgrammation17/05 09h190
03/12 10h21Execution script via PHPWebmastering05/12 17h5613
02/05 10h47executer un script shell avec phpProgrammation26/07 19h165
Plus de discussions sur « Execution script shell avec php » Discussion en cours Discussion fermée Problème résolu
Répondre
Titre du message :
Votre pseudo:
Votre email :
Message: 
  •  
  •  
Options: Recevoir les réponses par mail.
 

Aide