Born to be geek!

miércoles, mayo 04, 2005

Cómo leer la salida estándar de un comando usando Python

Muchas veces necesito leer la salida estándar de un comando, que he ejecutado desde Python. Suelo usar Python para hacer scripts para administrar el sistema, o para ejecutar tareas repetitivas, y hasta hace poco no sabía cómo podía capturar la salida estándar del comando.

Si lo ejecutamos usando os.system(comando), lo que obtenemos es el código de salida del comando (0 si no hay errores).

Para capturar la salida estándar, tenemos que escribir (habiendo previamente importado el módulo os con import os):

comando = 'ls'
tuberia = os.popen(comando)
salida_estandar = tuberia.readlines()
tuberia.close()
for linea in salida_estandar:
    print linea # O haz lo que quieras ;-)

1 Comentarios:

  • Y os.popen3(comando).read() está aún mucho mas chulo :)

    luis

    Escrito por Anonymous Anónimo, a las 1:00 a. m.  

Publicar un comentario

<< Página principal