2017-01-25 52 views
0

我想制作一个脚本来加速测试。Python [2.7] - 子流程

我有我的程序“foo”,它返回一系列控制这些命令的命令和“bar”。

FOO被如下执行:

./foo ARG(1) ARG(2) ARG(n) 

棒以相同的变元的执行:

./bar ARG(1) ARG(2) ARG(n) 

,然后等待手动或通过FOO输出给出的一系列命令。

因此,我用我的计划是这样:

./foo ARG(1) ARG(2) ARG(n) | ./bar ARG(1) ARG(2) ARG(n) 

我试图复制在Python管道的行为:
LST是我ARG()

output = subprocess.check_output([os.path.realpath("foo")] + lst) 
res = subprocess.check_output([os.path.realpath("bar")] + lst, output) 

显然的清单当然,这不是正确的方法,但我一直在尝试多种方式,并且它不工作。

+1

参见['subprocess'文档 - 更换外壳管道( https://docs.python.org/3/library/subprocess.html#replacing-shell-pipeline) – falsetru

+0

Pease查看这个有用的库:https://pypi.python.org/pypi/sh – Mortezaipo

回答