【发布时间】:2017-11-06 09:36:15
【问题描述】:
这导致我遇到here 和Popen() 的更大问题。
以下内容没有做我认为应该做的事情:
x = subprocess.Popen("cmd.exe echo a", stdout=PIPE, shell=True)
print (x.stdout.read())
返回 cmd 控制台的“title”消息,但永远不会执行 echo a。
同理:
x = subprocess.Popen(["cmd.exe", "echo a"], stdout=PIPE)
print (x.stdout.read())
和
cmd = "cmd.exe echo a"
x = subprocess.Popen(shlex.split(cmd), stdout=PIPE)
print (x.stdout.read())
最终结果是在打开的 cmd 终端中打印标准的“Microsoft Windows 版本...”和 C:\Python36> 的 CLI 位置。
【问题讨论】:
标签: python python-3.x