Quiero asignar la salida de un comando que ejecuto os.system
a una variable y evitar que se envíe a la pantalla. Pero, en el siguiente código, la salida se envía a la pantalla y el valor impreso var
es 0, lo que supongo que significa si el comando se ejecutó correctamente o no. ¿Hay alguna forma de asignar la salida del comando a la variable y también evitar que se muestre en la pantalla?
var = os.system("cat /etc/services")
print var #Prints 0
os.system
(nios.popen
, según la respuesta que aceptó): ¡usesubprocess.Popen
, es mucho mejor!subprocess.Popen
- ¡solo agregashell=True
!shell=True
es (generalmente) una muy mala idea! Tienes que estar muy seguro de lo que estás ejecutando :)