Solución:
os.system()
devuelve el valor de salida del proceso (codificado). 0
significa éxito:
En Unix, el valor de retorno es el estado de salida del proceso codificado en el formato especificado para
wait()
. Tenga en cuenta que POSIX no especifica el significado del valor de retorno de la función C system (), por lo que el valor de retorno de la función de Python depende del sistema.
La salida que ves está escrita en stdout
, por lo que su consola o terminal, y no devuelto al llamador de Python.
Si quisieras capturar stdout
, usar subprocess.check_output()
en lugar de:
x = subprocess.check_output(['whoami'])
os.system('command')
devuelve un número de 16 bits, los primeros 8 bits de la izquierda (lsb) hablan de la señal utilizada por el sistema operativo para cerrar el comando. Los siguientes 8 bits hablan del código de retorno del comando.
Consulte mi respuesta para obtener más detalles en ¿Cuál es el valor de retorno de os.system () en Python?