【发布时间】:2016-07-20 02:09:13
【问题描述】:
我有三个相互调用的脚本。它们是:
script1.sh:
s=`./script2.py`;
echo "DONE";
script2.py:
#!/usr/bin/env python3
import subprocess
subprocess.Popen(["./script3.py"])
print ("Exit script2")
script3.py:
#!/usr/bin/env python3
import time
time.sleep(20)
print ("child OK")
很遗憾,script1.sh 是第三方软件,我无法对其进行修改。
script2.py 在后台启动 script3.py 并退出。它从命令行运行良好。但是当 script1.sh 调用 script2.py 时,就是在等待 script3.py。所以,script1.sh 冻结了。如何避免?
【问题讨论】:
标签: python bash python-3.x subprocess