我正在使用以下命令启动一个子进程:
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True)
然而,当我尝试使用以下方式杀死进程时:
p.terminate()
或者p.kill()
这个命令在后台一直运行,我想知道如何终止该进程。
需要注意的是,当我使用以下命令运行时:
p = subprocess.Popen(cmd.split(), stdout=subprocess.PIPE)
当执行p.terminate()
时,它会成功地终止。
cmd
长什么样子?它可能包含一个触发多个进程启动的命令。因此,不清楚你指的是哪个进程。 - Robert Siemershell=True
会有很大的区别吗? - Charlie Parker