IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Système] exécution de commandes unix et récupération de la sortie


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de sorenson
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 78
    Points : 84
    Points
    84
    Par défaut [Système] exécution de commandes unix et récupération de la sortie
    Bonjour,

    je suis en train de faire un petit test avec la comande exec.
    J'ai un fichier test2.txt avec ceci dedans :

    j'exécute ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    function system_o($cmd)
       {
           exec("$cmd", $f);
           foreach($f as $output) {
               $output = htmlentities($output);
               $ret .= "$output\n";
           }
           return $ret;
       }
    $monfichier="/var/www/dossier/test2.txt";
    echo system_o("awk -F\";\" '{print $1}' $monfichier");
    ça marche pas ...

  2. #2
    Membre averti Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Points : 434
    Points
    434
    Par défaut
    Bonjour,
    A mon avis ton probleme vient de l'appel a la fonction que tu as mis entre double quote ("). Du coup php tente d'interpréter $1...

    Si tu fais un
    echo "awk -F\";\" '{print $1}' $monfichier";
    as-tu la ligne désirée ?
    Cette ligne fonctionne-t-elle en ligne de commande simple ?

    Sohnic

  3. #3
    Membre régulier Avatar de sorenson
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 78
    Points : 84
    Points
    84
    Par défaut
    Bonjour,
    A mon avis ton probleme vient de l'appel a la fonction que tu as mis entre double quote ("). Du coup php tente d'interpréter $1...

    Si tu fais un
    echo "awk -F\";\" '{print $1}' $monfichier";
    as-tu la ligne désirée ?
    Cette ligne fonctionne-t-elle en ligne de commande simple ?
    en faite, il m'affiche :

    awk -F";" '{print $1}' /var/www/dossier/test2.txt

  4. #4
    Membre averti Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Points : 434
    Points
    434
    Par défaut
    Mais quelle ligne cherches-tu à obtenir ? (vérifie avant qu'elle fonctionne !).

    en faite, il m'affiche :

    awk -F";" '{print $1}' /var/www/dossier/test2.txt
    C'est bien en reponse à
    echo "awk -F\";\" '{print $1}' $monfichier";
    ?
    Si c'est le cas, je me serais attendu à voir un 0 ou rien à la place $1, comme quoi...
    Si la ligne affichée est la ligne fonctionnelle (en ligne de commande) regarde dans tes logs d'erreurs pour voir ce qui pourrait bloquer.
    Bon courage,
    Sohnic

Discussions similaires

  1. [Système] Exécuter des commandes shell
    Par Invité dans le forum Langage
    Réponses: 2
    Dernier message: 18/10/2008, 21h06
  2. [Système] Exécution de commandes
    Par perry_rhodan dans le forum Langage
    Réponses: 9
    Dernier message: 13/06/2008, 18h50
  3. [Système] Exécuter une commande java avec exec()
    Par kenny49 dans le forum Langage
    Réponses: 2
    Dernier message: 05/06/2007, 09h29
  4. [Systeme] Exécuter des commandes unix en java
    Par kenny49 dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 12/02/2007, 11h37
  5. [Système] Exécution de commande et boucle infinie ?
    Par haffouff dans le forum Langage
    Réponses: 9
    Dernier message: 22/05/2006, 16h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo