1
kill -9 `cat ~/code/posbox/posbox.pid` 

我正在运行上面的命令来终止一个进程。pid 在文件中,它正确地杀死了进程,但子进程仍在运行

当我做

kill <PID number> 

它会杀死该进程以及所有子进程。如何从 pid 文件中给出的 pid 中杀死所有父进程和子进程?

4

1 回答 1

3

由于kill <PID number>工作,只需使用它:

# By default, send SIGTERM, not SIGKILL (9)
kill $(cat ~/code/posbox/posbox.pid)

听起来您的进程捕获了 TERM 信号并在退出之前将其传递给它的子进程,让它们都干净地退出。using立即kill -9结束父级,根本没有机会告诉其子级退出。

于 2013-11-01T16:03:06.487 回答