2009-05-23 15 views
1

Ich brauche den folgenden Befehl auszuführen:Ausführen * nix-Binärdateien in Python

screen -dmS RealmD top 

Wesentlichen mit dem Session-Titel ‚RealmD‘ mit dem oberen Befehl wird ausgeführt innerhalb Bildschirm GNU-Bildschirm im Hintergrund aufgerufen wird. Der Befehl MUSS auf diese Weise aufgerufen werden, so dass zu diesem Zeitpunkt kein Ersatz für den Bildschirm vorhanden sein kann, bis der Server neu bearbeitet wurde. (Ein anderes Projekt für eine andere Zeit)

Ich habe im oberen Befehl für die Server-Binärdatei substriert, die ausgeführt werden muss. Aber oben ist ein anständiger Ersatz, während der Code für dieses Python-Modul debuggt wird.

Was ich wirklich brauche, ist eine Möglichkeit, Bildschirm mit den oben genannten Parametern in Python auszuführen.

Antwort

7

Verwendung os.system:

os.system("screen -dmS RealmD top") 

Dann in einer separaten Schale Sie einen Blick auf top indem Sie screen -rd RealmD haben.

+1

Warum nicht subprocess verwenden? –

+0

Weil ich bis jetzt noch nichts davon wusste :) – Stephan202

11

os.system ist der einfachste Weg, aber für viele weitere Möglichkeiten und Freiheitsgrade, auch einen Blick auf die Standard-Bibliothek subprocess Modul (es sei denn Stephan202 die wunderbar einfache Verwendung von os.system alle Ihre Bedürfnisse erfüllt, natürlich ;-).

bearbeiten Hier ist der Standard-Ersatz für os.system()

p = Popen("screen -dmS RealmD top", shell=True) 
sts = p.wait() 

http://docs.python.org/library/subprocess.html#replacing-os-system