0
这是对我已发布here已解析的帖子的扩展。我有一个python script
其在它下面的jar
执行代码(非常久远一些其他的代码):从另一个Python脚本调用的Python脚本执行.jar文件时出错,作为子进程
python_file2.py
import os
cmd_txt = "ssh -i pem_file.pem [email protected]" + host_name + " 'cd /user/folder1/ && java -cp jar-file.jar'"
os.system(cmd_txt)
现在这个python script
文件(python_file2.py)被称为一个subprocess
从另一个python script
。
Main_script.py
ret = subprocess.Popen([sys.executable,"python_file2.py"])
当我运行这个Main_script.py那么jar
文件从python_file2.py
执行似乎变得忌用。当我单独运行第一个脚本时,它可以正常工作,但是当我尝试将其作为subprocess
执行时,jar
执行挂起并超时。
从subprocess
脚本内部执行这个jar
执行会被吊死的可能原因是什么?我所要做的就是运行一个jar文件,该文件从一个运行为subprocess
的python脚本内部出现在远程机器上。
有什么区别呢'subprocess.call'从'subprocess.Popen'可能导致这种行为提供? – user2966197
如果我是正确的'subprocess.call'反过来调用'subprocess.Popen'的权利? – user2966197
任何人都可以指出subprocess.call从subprocess.Popen提供的可能导致解决问题的区别吗? – user2966197