Python : stocker le résultat d'une commande
Résolu/Fermé
Bonjour,
J'aimerais pouvoir avoir dans un code python, le résultat d'une commande terminal, pour pouvoir ensuite le stocker dans une variable.
J'avais trouvé sur internet des techniques pour le faire avec le module os mais elles ne semblent pas marcher sur python 3.
Merci de vos réponses par avance.
J'aimerais pouvoir avoir dans un code python, le résultat d'une commande terminal, pour pouvoir ensuite le stocker dans une variable.
J'avais trouvé sur internet des techniques pour le faire avec le module os mais elles ne semblent pas marcher sur python 3.
Merci de vos réponses par avance.
A voir également:
- Python subprocess powershell command
- Citizen code python avis - Accueil - Outils
- Sfc scannow command - Guide
- Virus powershell - Guide
- Python generator - Télécharger - Sécurité
4 réponses
Je pense qu'il souhaite pouvoir stocker ce qui est affiché lorsqu'on tape une commande dans un terminal, non pas en stdout, mais en l'affectant à une variable.
Donc je pense qu'il souhaite ceci.
Attention toutefois à vérifier le type de la valeur retournée, par exemple avec ls ou encore dir sur linux, c'est un type bytes, d'où le decode.
Donc je pense qu'il souhaite ceci.
import subprocess result = subprocess.check_output('TA_COMMANDE') print('result', result.decode())
Attention toutefois à vérifier le type de la valeur retournée, par exemple avec ls ou encore dir sur linux, c'est un type bytes, d'où le decode.
Felice_
Messages postés
265
Date d'inscription
mardi 25 avril 2017
Statut
Membre
Dernière intervention
20 juillet 2017
11
13 mai 2017 à 11:39
13 mai 2017 à 11:39
Tu veux dire les arguments ?
Tu fais ainsi :
Tu fais ainsi :
import sys for arg in sys.argv: print(arg)
_Ritchi_
Messages postés
21311
Date d'inscription
samedi 17 mars 2007
Statut
Contributeur
Dernière intervention
25 janvier 2025
6 090
Modifié le 15 mai 2017 à 20:05
Modifié le 15 mai 2017 à 20:05
Bonjour,
Le script de gdu marche très bien quand la commande n'a pas d'option!
Tu aurais pu creuser un peu le sujet sur la fonction subprocess.check_output() afin d'en connaître la syntaxe à respecter, à savoir:
Ritchi
Le script de gdu marche très bien quand la commande n'a pas d'option!
Tu aurais pu creuser un peu le sujet sur la fonction subprocess.check_output() afin d'en connaître la syntaxe à respecter, à savoir:
import subprocess result = subprocess.check_output(['lsof', '-i']) print('result', result.decode())
Ritchi
15 mai 2017 à 19:30
FileNotFoundError: [Errno 2] No such file or directory: 'lsof -i'
(lsof -i est la commande en question).
Modifié le 15 mai 2017 à 20:15
Donc :
Oops, j'avais pas vu que _Ritchi_ avait donné la solution :D