Questions marquées «subprocess»

Le module de sous-processus Python vous permet de générer de nouveaux processus, de vous connecter à leurs canaux d'entrée / sortie / d'erreur et d'obtenir leurs codes de retour. Utilisez-le pour exécuter une commande shell ou un exécutable en Python.

909
Exécution de la commande shell et capture de la sortie

Je veux écrire une fonction qui exécutera une commande shell et retournera sa sortie sous forme de chaîne , peu importe, est-ce un message d'erreur ou de réussite. Je veux juste obtenir le même résultat que j'aurais obtenu avec la ligne de commande. Quel serait un exemple de code qui ferait une...

325
Utilisation du module «sous-processus» avec timeout

На этот вопрос есть ответы на Stack Overflow на рdedом : Прерывание процесса и задержка на исполнение Voici le code Python pour exécuter une commande arbitraire renvoyant ses stdoutdonnées, ou déclencher une exception sur les codes de sortie non nuls: proc = subprocess.Popen( cmd,...

300
Stocker la sortie de l'appel subprocess.Popen dans une chaîne

J'essaie de faire un appel système en Python et de stocker la sortie dans une chaîne que je peux manipuler dans le programme Python. #!/usr/bin/python import subprocess p2 = subprocess.Popen("ntpq -p") J'ai essayé quelques choses, y compris certaines des suggestions ici: Récupération de la sortie...

235
lire le sous-processus stdout ligne par ligne

Mon script python utilise un sous-processus pour appeler un utilitaire Linux très bruyant. Je veux stocker toute la sortie dans un fichier journal et en montrer une partie à l'utilisateur. Je pensais que ce qui suit fonctionnerait, mais la sortie n'apparaît dans mon application que lorsque...

135
Obtenir une sortie en temps réel à l'aide d'un sous-processus

J'essaie d'écrire un script wrapper pour un programme de ligne de commande (svnadmin verify) qui affichera un bel indicateur de progression pour l'opération. Cela me oblige à être en mesure de voir chaque ligne de sortie du programme encapsulé dès sa sortie. J'ai pensé que j'exécuterais simplement...