在Windows上运行,以下Python程序产生上述输出(输出变量的内容)
import commands
cmd = "dir"
(output) = commands.getoutput(cmd)
print output
Run Code Online (Sandbox Code Playgroud)
非常有趣和令人沮丧.有人可以指点我的解释吗?
查看文档:
cmd实际上是以{cmd; } 2>&1
这是哪里{来的.你应该使用subprocess.
import subprocess
p = subprocess.Popen(['dir'],stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
stdout,stderr = p.communicate()
Run Code Online (Sandbox Code Playgroud)
的shell=True需要在该特定情况下,dir是一个内部DOS命令.通常,应该提供可执行文件的完整路径并保持shell禁用.
| 归档时间: |
|
| 查看次数: |
1807 次 |
| 最近记录: |