Ouverture Terminal Linux + Ligne de commande

Ouverture Terminal Linux + Ligne de commande - PHP - Programmation

Marsh Posté le 17-08-2013 à 18:39:17    

Bonjour,
 
Sous "Mint" , je souhaite quand appuyant (en local) sur un lien PHP s'ouvre le terminal linux et exécute une requête.
Je souhaite que le terminal reste ouvert et affiche le résultat.
 
Actuellement voici comment j'opère :
 
Page : Test.php
 

Code :
  1. <?
  2. exec('/var/www/Script/Hello.sh');
  3. ?>


 
Script : Hello.sh

Code :
  1. #!/bin/bash
  2. ifconfig


 
Dans cette config, en appelant la page Test.php, la page reste blanche.
Avec un echo : résultat idem.
 
Si je modifie le Hello.sh avec "echo "Hello !", la page PHP affiche "Hello !" mais aucune ouverture de terminal.
 
Pourriez vous m'indiquer une piste de résolution car actuellement aucune de mes tentatives n'a abouties.
 
Merci :)

Reply

Marsh Posté le 17-08-2013 à 18:39:17   

Reply

Marsh Posté le 18-08-2013 à 10:58:39    

Je ne pense pas que tu puisses afficher le retour de la console.
Donc ce que je te conseille c est dans ton script Hello.sh
 

Code :
  1. #!/bin/bash
  2.     ifconfig > /var/www/Script/result_script.txt


le " > /var/www/Script/result_script.txt " va envoyer le retour du resultat d ifconfig dans le fichier texte.
et avec ton code php d'afficher le contenu du fichier /var/www/Script/result_script.txt

Reply

Marsh Posté le 18-08-2013 à 14:07:34    

Merci pour la réponse.
 
Pensez vous qu'il aurais un langage WEB capable de faire cela ? (ouverture terminal + exécution ligne de commande)

Reply

Marsh Posté le 18-08-2013 à 17:10:18    

Bonjour, je sais pas.
tu préfèrerais pas un xterm ?

Reply

Marsh Posté le 19-08-2013 à 09:49:19    

Non je ne pense pas qu un langage web permet de faire ca par souci de sécurité.
Il faut que tes pages php soient sur le meme serveur qui exécutent les scripts.
Explique plus précisement ta demande car tu peux contourner le problème mais en terme de sécurité ca sera porte ouverte... tout dépend si c est pour un usage en local ou sur le web...


Message édité par deejay59 le 19-08-2013 à 09:50:15
Reply

Marsh Posté le 19-08-2013 à 09:58:33    

Cela concerne une interface WEB en local permettant l’exécution de commande linux.
 
Le but est d'appuyer sur un bouton qui ouvre un terminal avec une commande précise.

Reply

Marsh Posté le 19-08-2013 à 10:11:37    

Attention c est pas du tout extra en terme de sécurité... mais pour te dépanner...
ouvrir un terminal déja ca sera pas possible.
La commande sera effectué avec l'utilisateur qui execute apache donc verifie bien les droits de cet utilisateur.
 
Page : Test.php  

Code :
  1. <?
  2.     exec('/var/www/Script/execute.sh '.$_GET["cmd"]);
  3.      echo file_get_contents('/var/www/Script/result_script.txt');
  4.     ?>


Le script execute.sh :

Code :
  1. #!/bin/bash
  2. eval $1 > /var/www/Script/result_script.txt


 
exemple d'utilisation -> Test.php?cmd=ifconfig
 
perso je vois la chose comme ca après y a surement une meilleure solution de maniere plus sécurisé.
 
 
edit: correction sur le script execute c est pas un sh mais un eval


Message édité par deejay59 le 19-08-2013 à 10:22:36
Reply

Marsh Posté le 19-08-2013 à 11:37:26    

shell_exec c'est pas plus simple ?
 
http://fr2.php.net/shell_exec


---------------
"Il a inventé le bougisme : je bouge donc je suis" :sol: - Dupont-Aignan à propos de Son Altesse Sérénissime Sarkal 1er. Merci Handsome Devil et Meriadeck.
Reply

Marsh Posté le 19-08-2013 à 11:41:19    

Je ne connaissais pas cette fonction, merci pour l'info si un jour j en ai besoin ;)

Reply

Marsh Posté le 19-08-2013 à 14:50:09    

Je précises aussi pour la manière de faire pour covin85:
PHP est un langage côté serveur, tout processus lancé par lui (sauf utilisations de f() particulières) se lancera sur le serveur web, donc faut oublier les interfaces graphiques, et plutôt raisonner en terme de ligne de commande.


Message édité par FranceDenBas le 19-08-2013 à 14:50:24

---------------
"Il a inventé le bougisme : je bouge donc je suis" :sol: - Dupont-Aignan à propos de Son Altesse Sérénissime Sarkal 1er. Merci Handsome Devil et Meriadeck.
Reply

Marsh Posté le 19-08-2013 à 14:50:09   

Reply

Marsh Posté le 20-08-2013 à 16:20:26    

Merci pour la commande "its'work" !!!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed