如果我echo a; echo b
在 bash 中运行,结果将是两个命令都运行。但是,如果我使用 subprocess 则运行第一个命令,打印出整个行的其余部分。下面的代码回显a; echo b
而不是a b
,我如何让它运行这两个命令?
import subprocess, shlex
def subprocess_cmd(command):
process = subprocess.Popen(shlex.split(command), stdout=subprocess.PIPE)
proc_stdout = process.communicate()[0].strip()
print proc_stdout
subprocess_cmd("echo a; echo b")