In Python - wie Systembefehl ohne Ausgabe ausgeführt wird

8

Gibt es in Python eine eingebaute Methode, um einen Systembefehl auszuführen, ohne die Ausgabe anzuzeigen? Ich möchte nur den Rückgabewert abrufen.

Es ist wichtig, dass es plattformübergreifend ist, also wird das Umleiten der Ausgabe nach / dev / null unter Windows nicht funktionieren und umgekehrt. Ich weiß, ich kann os.platform einfach überprüfen und die Umleitung selbst bauen, aber ich hoffe auf eine eingebaute Lösung.

    
Gilad Naor 01.02.2009, 09:20
quelle

2 Antworten

17
___ antwort500483 ___

Sie können die Ausgabe in eine temporäre Datei umleiten und anschließend löschen. Es gibt aber auch eine Methode namens popen, die die Ausgabe direkt an Ihr Programm weiterleitet, so dass es nicht auf dem Bildschirm erscheint.

    
___ qstnhdr ___ In Python - wie Systembefehl ohne Ausgabe ausgeführt wird ___ qstntxt ___

Gibt es in Python eine eingebaute Methode, um einen Systembefehl auszuführen, ohne die Ausgabe anzuzeigen? Ich möchte nur den Rückgabewert abrufen.

Es ist wichtig, dass es plattformübergreifend ist, also wird das Umleiten der Ausgabe nach / dev / null unter Windows nicht funktionieren und umgekehrt. Ich weiß, ich kann os.platform einfach überprüfen und die Umleitung selbst bauen, aber ich hoffe auf eine eingebaute Lösung.

    
___ tag123python ___ Python ist eine dynamische und stark typisierte Programmiersprache, die die Usability betont. Zwei ähnliche, aber größtenteils inkompatible Versionen von Python sind weit verbreitet (2 und 3). Wenn Sie eine versionsspezifische Python-Frage haben, sollten Sie die Tags [python-2.7] oder [python-3.x] zusätzlich zum Tag [python] verwenden. Wenn Sie eine Python-Variante wie jython, pypy, iron-python usw. verwenden, kennzeichnen Sie diese bitte entsprechend. ___ antwort500512 ___
%Vor%     
___
oefe 01.02.2009, 09:50
quelle
2
___ antwort500483 ___

Sie können die Ausgabe in eine temporäre Datei umleiten und anschließend löschen. Es gibt aber auch eine Methode namens popen, die die Ausgabe direkt an Ihr Programm weiterleitet, so dass es nicht auf dem Bildschirm erscheint.

    
___ qstnhdr ___ In Python - wie Systembefehl ohne Ausgabe ausgeführt wird ___ qstntxt ___

Gibt es in Python eine eingebaute Methode, um einen Systembefehl auszuführen, ohne die Ausgabe anzuzeigen? Ich möchte nur den Rückgabewert abrufen.

Es ist wichtig, dass es plattformübergreifend ist, also wird das Umleiten der Ausgabe nach / dev / null unter Windows nicht funktionieren und umgekehrt. Ich weiß, ich kann os.platform einfach überprüfen und die Umleitung selbst bauen, aber ich hoffe auf eine eingebaute Lösung.

    
___ tag123python ___ Python ist eine dynamische und stark typisierte Programmiersprache, die die Usability betont. Zwei ähnliche, aber größtenteils inkompatible Versionen von Python sind weit verbreitet (2 und 3). Wenn Sie eine versionsspezifische Python-Frage haben, sollten Sie die Tags [python-2.7] oder [python-3.x] zusätzlich zum Tag [python] verwenden. Wenn Sie eine Python-Variante wie jython, pypy, iron-python usw. verwenden, kennzeichnen Sie diese bitte entsprechend. ___ antwort500512 ___
%Vor%     
___
vava 01.02.2009 09:23
quelle

Tags und Links