2012-01-04 62 views
6

我对Python和bash都比较陌生。不过,我发现Python比bash更直观更简单。我有几个bash脚本,我已经设法拼凑在一起,但我想用Python脚本替换它们 - 为了便于维护等。如何从另一个python脚本运行python脚本并获取返回的状态码?

bash脚本本质上运行python脚本,检查返回的状态代码并采取适当的行动(例如,记录消息,发送电子邮件等) - 这是我可以在大多数情况下可以重现的功能。

我不知道该怎么做的一件事是如何从另一个python脚本运行python脚本并获取返回的状态码。

任何人都可以在这里发布一个片段,将展示如何从主python脚本“master.py”运行一个小的Python脚本“test.py”,并正确地从master.py运行test.py后取回返回码?

+2

您可以随时导入另一个python程序(即:在运行代码的同一目录中具有'test.py',并调用:import test)轻松运行二级代码,但它不会管理您的返回代码业务 – 2012-01-04 09:34:11

回答

6

使用subprocess模块

master.py

import subprocess 
retcode = subprocess.call(["/usr/bin/python", "/path/to/test.py"]) 
print "Return code of test.py is ", retcode 
+0

太棒了!这正是我所需要的。 – 2012-01-04 10:20:53

0

我建议你看看在Python的子模块。您可以使用它开始另一个进程,操纵它的流并获取返回代码。

相关问题