我试图用选项和参数调用shell脚本并获取输出。 它没有按预期工作。请帮忙。 我对Python不太熟悉。
output=subprocess.Popen(['/home/muthu/Downloads/check_jstat.sh', '-p', str(pid)])
我也试过了;
ul
答案 0 :(得分:-1)
我在我的代码中使用了这样的东西来调用命令和我的bash脚本,其中cmd可以是“my_script.sh -p sth”。还要检查你的bash脚本是否具有正确的权限;)(Chmod u + x script.sh)。我希望如此有用。
def run_cmd(self,cmd):
"""
:param cmd: command to invoke
:return: status of command
"""
try:
result = subprocess.check_output(cmd, stderr=subprocess.STDOUT, universal_newlines=True, shell=True)
except subprocess.CalledProcessError as grepexc:
return {"status": "ERROR", "code" : grepexc.returncode, "output" : grepexc.output}
return {"status": "OK", "code": 0, "output" : result}