Imprimer résultat d'une commande Shell

Eléphant du PHP | 256 Messages

20 avr. 2011, 19:39

Bonjour,

J'hésite à écrire dans ce forum, car je suis plutôt un débutant en Php, mais ma question est assez pointue, au risque de sembler prétentieux ! :mrgreen:

Sur mon serveur, j'utilise la commande Shell...

Code : Tout sélectionner

ntpq -p

pour vérifier que mes serveurs de temps (Network Time Protocol - Ntp) sont bien synchronisés.

Comment afficher avec Php le résultat de cette commande, en vue de l'écrire ultérieurement dans un fichier ?

Je m'interroge aussi le Chmod à appliquer au fichier Php, mais je verrai ce point plus tard.

Auriez-vous un début de piste. :D

Mille mercis pour vos lumières.

Gaspard

Eléphant du PHP | 256 Messages

20 avr. 2011, 20:00

Bonsoir,

Au risque de polluer le forum, je me réponds à moi-même...
exec("ntpq -p",$result);
var_dump($result);
print_r($result);
La solution fonctionne, mais je m'interroge sur la mise en forme. :mrgreen:

Cordialement,

Gaspard

Eléphant du PHP | 92 Messages

26 avr. 2011, 11:45

hello,

Pas de remarque particulière sur le code... Sauf que la doc PHP dit que si on veut faire de la ligne de commande sans faire de traitement sur la sortie, il vaut mieux utiliser passthru().

Si tu veux écrire la sortie, soit tu passes par PHP en faisant un peu de code soit comme tu es déjà dans le exec() tu peux te rajouter une sortie avec '>>' directement dans la commande.
Programmer c'est 20% de syntaxe pour 80% de réflexion et dans les 20% de syntaxe il faut encore compter une bonne dose de réflexion...
Je vous donne des conseils, pas des solutions toutes faites...

Eléphant du PHP | 256 Messages

27 avr. 2011, 18:57

Bonjour,

Merci tardivement Maskime ! :)

Je ne connais pas l'excellent passthru().

Bien à toi,

Gaspard