如果正在运行的命令是setsid,如何终止使用shell = True的Python子进程

时间:2015-04-09 00:59:30

标签: python linux subprocess kill-process

我正在使用此命令启动Python子进程:

p = subprocess.Popen(command, stdout=subprocess.PIPE, shell=True, start_new_session=True)

根据this answerstart_new_session=True(等同于preexec_fn=os.setsid)允许我使用os.killpg(p.pid, signal.SIGTERM)终止该过程。

但是,如果command恰好是setsid sleep 10000,则该过程不会终止。在Python中,我如何终止像这样的子进程?

0 个答案:

没有答案