使用subprocess.Popen顺序执行python脚本

时间:2014-08-21 07:07:14

标签: python c python-2.7 subprocess

我正在使用python的subprocess来执行针对C代码库的脚本。具体来说,我有一些脚本,我一个接一个地运行一个程序的单个实例。这就是我想要做的事情:

start process ABC

execute python scripts 01 against ABC and store output from ABC in file A

execute python scripts 02 against ABC and store output from ABC in file B

execute python scripts 03 against ABC and store output from ABC in file C

我目前的计划

myProcess = subprocess.Popen(PATH, BUFFSIZE, STDOUT= myFilePointer ...)

但是这不能从每次执行进程ABC产生返回输出,只记录脚本01的输出而不是其余的。

我查看了official documentation和其他resources但找不到。

1 个答案:

答案 0 :(得分:0)

试试这个:

 cmd = subprocess.Popen("ABC %s" % command,
                    stdout=out,
                    stderr=subprocess.PIPE)
 stdout, stderr = cmd.communicate()
 retcode = cmd.returncode

使用命令参数将命令行参数传递给ABC。从ABC执行Popen输出后,将存储在 stdout 中。可能发生的错误存储在 stderr 中。