User Tools

Site Tools


doc:appunti:prog:python_program_execution

This is an old revision of the document!


Program execution from Python

The right module to use is subprocess. Older modules and functions that should be avoided are:

  • os.system
  • os.spawn*
  • os.popen*
  • popen2.*
  • commands.*

Run a command

Run command with arguments. Wait for command to complete, then return the returncode attribute.

retcode = subprocess.call(["ls", "-l"])

Get the output of a program

subproc = subprocess.Popen(cmd, stdin=None, stdout=subprocess.PIPE)
output  = subproc.communicate()[0]
retcode = subproc.returncode
for line in output.splitlines():
    print line
doc/appunti/prog/python_program_execution.1254404125.txt.gz · Last modified: 2009/10/01 15:35 by niccolo