os.system('command')
gibt eine 16-Bit-Zahl zurück, wobei die ersten 8 Bits von links (lsb) über das Signal sprechen, das von os zum Schließen des Befehls verwendet wird, die nächsten 8 Bits sprechen über den Rückkehrcode des Befehls.
Weitere Einzelheiten finden Sie in meiner Antwort unter Was ist der Rückgabewert von os.system() in Python?
os.system()
gibt den (kodierten) Prozess-Exit-Wert zurück. 0
bedeutet Erfolg:
Unter Unix ist der Rückgabewert der Exit-Status des Prozesses, der in dem für wait()
angegebenen Format codiert ist . Beachten Sie, dass POSIX die Bedeutung des Rückgabewerts der C-Funktion system() nicht spezifiziert, daher ist der Rückgabewert der Python-Funktion systemabhängig.
Die Ausgabe, die Sie sehen, wird in stdout
geschrieben , also Ihre Konsole oder Ihr Terminal, und nicht an den Python-Aufrufer zurückgegeben.
Wenn Sie stdout
erfassen wollten , verwenden Sie subprocess.check_output()
stattdessen:
x = subprocess.check_output(['whoami'])