从python中的popen获取异常

时间:2016-09-29 13:47:23

标签: python subprocess popen

我在python中执行了这段代码:(test.py)

from subprocess import Popen
p = Popen("file.bat").wait()

这是file.bat:

@echo off
start c:\python27\python.exe C:\Test\p1.py %*
start c:\python27\python.exe C:\Test\p2.py %*
pause

这是p1.py:

This line is error
print "Hello word"

p2.py不是很有趣

我想通过运行test.py来了解p1.py中的异常(不仅是编译错误)? 我怎么能这样做?

谢谢!

1 个答案:

答案 0 :(得分:0)

以下是我如何运作: test.py

from subprocess import Popen
p = Popen(["./file.sh"]).wait()

确保添加[]周围文件以及./。您还可以添加参数,如下所示: ["./file.sh", "someArg"] 请注意,我不在Windows上,但这在Ubuntu上修复了它。如果您仍有问题,请发表评论

编辑: 我认为真正的解决方案是:Using subprocess to run Python script on Windows

这样你就可以从python运行python脚本,同时仍然使用Popen