Heim >Backend-Entwicklung >Python-Tutorial >Wie leite ich die Befehlsausgabe mit subprocess.run in Python in eine Datei um?
Ausgabe mit Unterprozess in Python umleiten
In diesem Snippet wollen wir einen Befehl ausführen, der den Inhalt mehrerer Dateien in einer einzigen kombiniert Datei mithilfe des Unterprozessmoduls von Python. Unser Ziel ist es, die Ausgabe des Befehls in eine Datei umzuleiten, ohne sie in der Konsole anzuzeigen.
In Python 3.5 können Sie diese Umleitung erreichen, indem Sie ein offenes Dateihandle an das stdout-Argument von subprocess.run übergeben:
input_files = ['file1', 'file2', 'file3'] my_cmd = ['cat'] + input_files with open('myfile', "w") as outfile: subprocess.run(my_cmd, stdout=outfile)
Der with-Block stellt sicher, dass die Datei „myfile“ nach dem Vorgang ordnungsgemäß geschlossen wird. Die Funktion subprocess.run führt den Befehl aus und leitet die Ausgabe in die angegebene Datei um.
Beachten Sie, dass die Verwendung eines externen Befehls wie cat für diese Aufgabe nicht erforderlich ist. Sie können die Dateien einfach lesen und ihren Inhalt in Ihrem Python-Programm verketten.
Das obige ist der detaillierte Inhalt vonWie leite ich die Befehlsausgabe mit subprocess.run in Python in eine Datei um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!