我正在使用以下命令启动子流程:
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True)
但是,当我尝试杀死使用:
p.terminate()
要么
p.kill()
该命令一直在后台运行,所以我想知道如何才能真正终止该过程。
请注意,当我使用以下命令运行命令时:
p = subprocess.Popen(cmd.split(), stdout=subprocess.PIPE)
发出时,它确实成功终止p.terminate()
。
shell=True
太大的不同吗?
cmd
长什么样 它可能包含触发多个进程启动的命令。因此,目前尚不清楚您在谈论哪个过程。