Lancer un script PHP en ligne de commande

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

6 réponses

  1. Contributeur
    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.
    1. 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
      1. 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 https://www.debian.org/security/ 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 ?
        1. j'ai un problem de creation une bon de commande avec php5 svp aide moi
          merci d'avant
      2. 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 =/
        1. Contributeur
          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....
      3. 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...
        1. Contributeur
          Tu travaille en root? o_O
      4. waip, j'suis sur un serveur virtuel de test, je passes par putty, pourquoi ?
        1. Contributeur
          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, ...