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

Python Discussion :

sous linux, comment lancer un programme externe ou une commande shell dans un terminal


Sujet :

Python

  1. #1
    bul
    bul est déconnecté
    Membre confirmé Avatar de bul
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 195
    Par défaut sous linux, comment lancer un programme externe ou une commande shell dans un terminal
    bonjour à toutes et à tous,

    un problème stupide : je ne parviens pas à lancer un
    programme externe et/ou une commande dans un terminal.
    j'essaie tout ( mais surtout n'importe quoi ) et je
    n'arrive à rien.

    exemples :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    - subprocess.Popen(args=['exo-open','--launch TerminalEmulator','yaourt-gui']...
    - args=['--launch','TerminalEmulator','yaourt-gui']
      os.execv('exo-open',args)
    ...
    - tenté de créer un toto.sh
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      #!/bin/sh
      yaourt-gui
    et de la lancer avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      os.system('toto.sh'), os.system('bash toto.sh'), os.startfile('toto.sh)...
    - et autres...

    avec 'ls -a' au lieu de 'yaourt-gui', pas mieux, voire pire !

    quelque chose m'échappe...

    pourriez-vous m'aiguiller ?
    merci d'avance.

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 683
    Par défaut
    Salut,

    Citation Envoyé par bul Voir le message
    Un problème stupide : je ne parviens pas à lancer un
    programme externe et/ou une commande dans un terminal.
    j'essaie tout ( mais surtout n'importe quoi ) et je
    n'arrive à rien.
    Plutôt qu'essayez tout et n'importe quoi, vous ouvrez la documentation du module subprocess, puis vous lancez la console Python:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Python 3.4.0 (default, Apr 11 2014, 13:05:18) 
    [GCC 4.8.2] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> from subprocess import Popen
    Et vous essayez de faire fonctionner les exemples donnés dans la documentation.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre Expert
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2013
    Messages
    1 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 617
    Par défaut
    J'utilise régulièrement, par exemple, pour le logiciel "evince" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import os
    os.system("evince %s.pdf" % fichier)

  4. #4
    bul
    bul est déconnecté
    Membre confirmé Avatar de bul
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 195
    Par défaut
    Citation Envoyé par marco056 Voir le message
    J'utilise régulièrement, par exemple, pour le logiciel "evince" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import os
    os.system("evince %s.pdf" % fichier)
    certes, comme ça pas de problème.
    mais comment lancez-vous un exécutable qui doit
    être lancé sous le terminal ? ( «top» par exemple )
    et bien sûr en ne lançant pas le programme python
    sous le terminal.

    EDIT : je pense avoir cerné mon problème !
    lors de la mise au point, je lance le programme
    avec sublime_text ( l'éditeur que j'utilise ),
    et là ça ne marche pas
    si je lance avec python ou que je rende ce .py
    exécutable : ça baigne

  5. #5
    Membre Expert
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2013
    Messages
    1 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 617
    Par défaut
    Pardon, je croyais que c'était juste un programme externe qu'il fallait lancer.

  6. #6
    bul
    bul est déconnecté
    Membre confirmé Avatar de bul
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 195
    Par défaut
    wiztricks
    ah ben... c'est sympa d'avoir une telle réponse.
    ça aide drôlement tout le monde.
    comme si la plupart des gens ne lisaient rien
    des docs....

  7. #7
    bul
    bul est déconnecté
    Membre confirmé Avatar de bul
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 195
    Par défaut
    Citation Envoyé par marco056 Voir le message
    Pardon, je croyais que c'était juste un programme externe qu'il fallait lancer.
    il vous en prie, vous avez au moins répondu, finalement,
    vous aviez raison, le problème était ailleurs.
    merci de ne pas m'avoir renvoyé bêtement vers des docs.

  8. #8
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 683
    Par défaut
    Citation Envoyé par bul Voir le message
    wiztricks
    ah ben... c'est sympa d'avoir une telle réponse.
    ça aide drôlement tout le monde.
    comme si la plupart des gens ne lisaient rien
    des docs....
    La documentation Python contient un minimum d'exemples et de cas d'utilisation à partir desquels vous pouvez démarrer.
    Mais si vous préférez essayer tout et n'importe quoi pour arriver à rien (et je ne fait que citer votre premier message), et bien persévérez.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Programme C - Executer une commande shell
    Par bilbon59 dans le forum Débuter
    Réponses: 8
    Dernier message: 23/03/2014, 15h51
  2. Réponses: 7
    Dernier message: 24/06/2011, 16h12
  3. récuperer la sortie d'une commande shell dans un programme C
    Par Biosox dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 21/08/2009, 11h55
  4. Réponses: 1
    Dernier message: 23/10/2008, 17h58
  5. [Système] Lancer un programme externe depuis une page web
    Par needles94000 dans le forum Langage
    Réponses: 2
    Dernier message: 08/02/2006, 21h34

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