Rechercher : dans
Par :

Lancer un script PHP en ligne de commande

Dernière réponse le 8 jun 2009 à 15:18:46 VilainMelkor, le 8 jun 2009 à 11:23:33 
 Signaler ce message aux modérateurs

Bonjour,

Me voila confronté à un nouveau problème : en effet je n'arrive pas à lancer un script PHP depuis mon invite de commande (depuis un script sh en fait).

J'ai essayé avec lynx mais il me fait des choses bizarre, et avec php il me dit Could not open input file: test.php

Vos conseils seraient les bienvenus ^^

Configuration: Windows XP SP3 / Debian Lenny 5.0.1 command line
Firefox 3.0.10

1

Apatik, le 8 jun 2009 à 13:06:29

Il faut déjà installer les paquets "php5". Ensuite, il faut installer le paquet "php-cli" et depuis une ligne de commande taper

php <fichier.php>

Il se comportera comme un script: pas de html, et les echos seront affichés au fur et a mesure du déroulement du script.

J'espère que ça réponds a ta question. Live free, learn free, help free, Happy Hacking!
Enjoy it!

Répondre à Apatik

2

VilainMelkor, le 8 jun 2009 à 14:12:18

Merci de ta réponse Apatik.

Je lançais bien mon script php avec la bonne commande, mais pourtant rien ne marche.

php /home/www/test/test_unoconv.php


En ce qui concerne php-cli, j'ai php5-cli installé, derniere version pour debian :

# apt-cache policy php5-cli
php5-cli:
  Installé : 5.2.6.dfsg.1-1+lenny3
  Candidat : 5.2.6.dfsg.1-1+lenny3
 Table de version :
 *** 5.2.6.dfsg.1-1+lenny3 0
        500 http://security.debian.org lenny/updates/main Packages
        100 /var/lib/dpkg/status
     5.2.6.dfsg.1-1+lenny2 0
        500 http://ftp.fr.debian.org lenny/main Packages


Des idées ?

Répondre à VilainMelkor

3

VilainMelkor, le 8 jun 2009 à 14:25:29

Bon en fait, après approfondissement :

si je fais

# php /home/www/test/test_unoconv.php

ça marche (enfin j'ai des erreurs PHP mais bon rien de grave le fichier se lance).


Le truc c'est que je lance mon script PHP depuis un script bash
# sh OOstart.sh


Dans mon script bash je lance le PHP, et la ça ne marche pas, pourtant c'est exactement la même ligne que celle qui marche directement, c'est a dire
php /home/www/test/test_unoconv.php


J'ai droit à l'erreur suivant
Could not open input file: /home/www/test/test_unoconv.php


Bizarre =/

Répondre à VilainMelkor

4

Apatik, le 8 jun 2009 à 14:31:10

Ca serait pas une question de droits, ou de groupes? Sinon tu peux aussi essayer de mettre le fichier php dans le même dossier, avec les mêmes droits, et un chemin relatif.... Live free, learn free, help free, Happy Hacking!
Enjoy it!

Répondre à Apatik

5

VilainMelkor, le 8 jun 2009 à 14:36:30

Bah, mes deux fichiers sont en root:root 777 dans le même dossier.
Je viens à l'instant de réessayer avec le chemin relatif, mais rien n'y fait...

Répondre à VilainMelkor

6

Apatik, le 8 jun 2009 à 14:38:00

Tu travaille en root? o_O Live free, learn free, help free, Happy Hacking!
Enjoy it!

Répondre à Apatik

7

VilainMelkor, le 8 jun 2009 à 14:40:12

Waip, j'suis sur un serveur virtuel de test, je passes par putty, pourquoi ?

Répondre à VilainMelkor

8

Apatik, le 8 jun 2009 à 15:11:39

Règle n°1 sous Linux, ne jamais travailler en root...
Enfin ça ne nous aide pas pour ton problème... Peut-être que ton script, ou que Batch n'est pas lancé par root..
Enfin moi, je pose les armes, ... Live free, learn free, help free, Happy Hacking!
Enjoy it!

Répondre à Apatik

9

 VilainMelkor, le 8 jun 2009 à 15:18:46

Bah c'est vrai que c'est un peu crade de bosser en root, faudrait que je change mes habitudes...

Pour ce qui est du script il m'a l'air d'etre lancé en root si je ne me trompe pas :

# ps aux | grep "sh OOstart.sh"
root     12553  0.0  0.4   4332  1172 pts/1    S+   15:16   0:00 sh OOstart.sh

Répondre à VilainMelkor