Als «subprocess» getaggte Fragen

Mit dem Python-Unterprozessmodul können Sie neue Prozesse erzeugen, eine Verbindung zu deren Eingabe- / Ausgabe- / Fehler-Pipes herstellen und deren Rückkehrcodes abrufen. Verwenden Sie diese Option, um einen Shell-Befehl oder eine ausführbare Datei in Python auszuführen.

15
Live-Ausgabe vom Unterprozessbefehl
Ich verwende ein Python-Skript als Treiber für einen Hydrodynamik-Code. Wenn es Zeit ist, die Simulation auszuführen, verwende ich subprocess.Popen, um den Code auszuführen, die Ausgabe von stdout und stderr in einem subprocess.PIPE--- zu sammeln, dann kann ich die Ausgabeinformationen drucken (und in einer Protokolldatei speichern) und auf Fehler prüfen . …


3
OSError: [Errno 2] Keine solche Datei oder kein solches Verzeichnis bei Verwendung des Python-Unterprozesses in Django
Ich versuche, ein Programm auszuführen, um einige Systemaufrufe in Python-Code auszuführen, mit subprocess.call()dem der folgende Fehler ausgegeben wird: Traceback (most recent call last): File "<console>", line 1, in <module> File "/usr/lib/python2.7/subprocess.py", line 493, in call return Popen(*popenargs, **kwargs).wait() File "/usr/lib/python2.7/subprocess.py", line 679, in __init__ errread, errwrite) File "/usr/lib/python2.7/subprocess.py", line 1249, …

17
Echtzeitausgabe mithilfe eines Unterprozesses
Ich versuche, ein Wrapper-Skript für ein Befehlszeilenprogramm (svnadmin verify) zu schreiben, das eine schöne Fortschrittsanzeige für den Vorgang anzeigt. Dies erfordert, dass ich jede Ausgabezeile des umschlossenen Programms sehen kann, sobald es ausgegeben wird. Ich dachte mir, ich würde das Programm einfach ausführen subprocess.Popen, verwenden stdout=PIPE, dann jede Zeile beim …
135 python  subprocess 



3
Verwendung des Unterprozesses popen Python
Da os.popen durch subprocess.popen ersetzt wird, habe ich mich gefragt, wie ich konvertieren soll os.popen('swfdump /tmp/filename.swf/ -d') zu subprocess.popen () Ich habe es versucht: subprocess.Popen("swfdump /tmp/filename.swf -d") subprocess.Popen("swfdump %s -d" % (filename)) # NOTE: filename is a variable # containing /tmp/filename.swf Aber ich denke, ich schreibe das nicht richtig auf. …
102 python  subprocess  popen 



8
Unterprozess, der das Verzeichnis ändert
Ich möchte ein Skript in einem Unterverzeichnis / Superverzeichnis ausführen (ich muss mich zuerst in diesem Unterverzeichnis / Superverzeichnis befinden). Ich kann subprocessmein Unterverzeichnis nicht betreten: tducin@localhost:~/Projekty/tests/ve$ python Python 2.7.4 (default, Sep 26 2013, 03:20:26) [GCC 4.7.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import …

4
Warum gibt Popen.communicate () b'hi \ n 'anstelle von' hi 'zurück?
Kann jemand erklären, warum dem gewünschten Ergebnis "Hallo" ein Buchstabe "b" und ein Zeilenumbruch vorangestellt sind? Ich benutze Python 3.3 >>> import subprocess >>> print(subprocess.Popen("echo hi", shell=True, stdout=subprocess.PIPE).communicate()[0]) b'hi\n' Dieses zusätzliche 'b' wird nicht angezeigt, wenn ich es mit Python 2.7 ausführe

13
stdout in Echtzeit aus dem Unterprozess abfangen
Ich möchte subprocess.Popen()rsync.exe in Windows und die Standardausgabe in Python drucken. Mein Code funktioniert, aber er erfasst den Fortschritt erst, wenn eine Dateiübertragung abgeschlossen ist! Ich möchte den Fortschritt für jede Datei in Echtzeit drucken. Verwenden Sie Python 3.1 jetzt, da ich gehört habe, dass es besser mit E / …

6
Lesen Sie die Streaming-Eingabe von subprocess.communicate ()
Ich verwende Pythons subprocess.communicate(), um stdout aus einem Prozess zu lesen, der ungefähr eine Minute lang ausgeführt wird. Wie kann ich jede Zeile dieses Prozesses stdoutin Streaming- Form ausdrucken , damit ich die Ausgabe so sehen kann, wie sie generiert wurde, aber trotzdem den Prozess blockieren kann, bevor ich fortfahre? …

3
Ist es möglich, eine Funktion in einem Unterprozess auszuführen, ohne eine separate Datei / ein separates Skript einzufädeln oder zu schreiben?
import subprocess def my_function(x): return x + 100 output = subprocess.Popen(my_function, 1) #I would like to pass the function object and its arguments print output #desired output: 101 Ich habe nur Dokumentation zum Öffnen von Unterprozessen mit separaten Skripten gefunden. Weiß jemand, wie man Funktionsobjekte übergibt oder wie man Funktionscode …


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.