python终止/终止子进程组

时间:2012-09-27 16:28:23

标签: python subprocess popen kill kill-process

我有一些python脚本通过subprocess.Popen()以级联方式打开自己。

(我将script1.py称为script2.py的一个人,他们制作了script3.py的popen等)

有没有办法从script1.py PID中终止/终止script1.py的所有子进程。

os.killpg()不起作用。

感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

通过在script2.py执行开始时更改gid,后续进程属于script2 gid。所以从script1.py用script2的pid调用killpg()就可以了。

答案 1 :(得分:0)

在script1.py中,终止打开script2.py的子进程。

Popen.terminate()

或     Popen.kill()