无法使用python 2.2执行bash脚本

时间:2012-06-15 19:43:08

标签: python bash cgi

所以我一直坚持这个问题一段时间了。我有一个需要执行bash脚本的cgi python脚本。我的代码中有以下行:

os.system("/complete/path/to/executable/run_summary_page.sh " + labelName)

我一直在尝试调试这几个小时,我无法找出它为什么没有正确执行。当我从命令行运行相同的精确行时,它完全正常。我已经给了该bash脚本的正确权限等等,但它仍然无法正常工作。注意,我被迫使用python 2.2所以我对我可用的实用程序数量有一点限制。

1 个答案:

答案 0 :(得分:1)

我不记得python 2.2中的所有内容和不存在的内容,但您可以尝试一种简单的替代方法来调用该命令并查看发生的情况:

import commands
stat, output = commands.getstatusoutput("command")

这不是运行命令最强大的方法,但它是一种简单的方法来检查当前正在进行的操作。如果stat!= 0,则失败。您还应该能够在output

中看到stdout和stderr

如果stat == 0并且output中没有任何内容,那么我怀疑你的bash脚本遇到了某种情况,结束了,并没有真正打印任何有用的内容。也许它期待某些环境变量,只是在事情不对时忽略并快乐地移动。