我在python 3.4中遇到常见错误,当我调用命令时,请net view
以subprocess.call("net view")
的形式返回error code 0
(即成功)< / p>
但当我subprocess.call("net view > targets.txt")
时,它会返回error code 1
(不成功)。
为什么这个错误出现在python中,是否有办法以类似的方式将输出传递给文件?
答案 0 :(得分:3)
执行所需操作的最简单方法是将stdout
重定向到文件对象:
from subprocess import check_call
with open("targets.txt","w" ) as f:
check_call(["net", "view"], stdout=f)
check_call
会引发any non-zero
退出状态的错误。