Lanzar los comandos shell con el módulo subprocess

Desde un script habitualmente es necesario ejecutar comandos externos o comandos UNIX, ejecutables a través de una shell Bash. El módulo subprocess permite ejecutar un comando y recuperar el código de retorno de este. El módulo subprocess permite recuperar el resultado generado en forma de flujo de texto mediante la ejecución de un comando, con el objetivo de poder trabajar con aquel. Este módulo va a permitir lanzar comandos shell para recuperar, una vez más, información acerca de la Raspberry Pi. Para poder lanzar un comando, es necesario utilizar la función call() del módulo, tal y como se muestra a continuación:


>>> import subprocess 
>>> subprocess.call(['ls', '/'], shell=False) 
bin  boot  dev  etc  home  lib  lib32  lib64  lost+found  media 
  mnt  opt  proc  root  run  sbin  sys  tmp  usr  var 
0
 

Observe la llamada a la función, usando como argumento shell=False. Esto significa que Python no invoca a la shell para ejecutar el comando que se pasa como argumento, sino que llama directamente al comando. Observe también el 0 después del resultado del comando. Esta cifra se corresponde con el código devuelto por el comando ejecutado. Sin embargo, el uso de la función call() presenta un problema: es útil en el compilador Python para lanzar un comando...

Si desea saber más, le proponemos el siguiente libro:
couv_RITRASPYT.png
60-signet.svg
Versión impresa
20-ecran_lettre.svg
Versión online
41-logo_abonnement.svg
En ilimitado con la suscripción ENI
130-boutique.svg
En la tienda oficial de ENI
Anterior
Interactuar con el compilador Python a través del módulo sys
Siguiente
Filtrar una cadena de caracteres con el módulo re