Linux杀死所有子进程

杀死某一进程的所有子进程:

pkill -P <PID>

杀死当前进程的所有子进程:

pkill -P $$

如果要在脚本退出前杀死所有子进程,只需要:

trap "pkill -P $$" EXIT

但是有时候子进程又会fork出自己的子进程,如果要把这种后代进程也全部杀死,可以这样:

trap "kill -TERM -$$" EXIT

参考:

https://unix.stackexchange.com/questions/124127/kill-all-descendant-processes

Linux shell 如何捕获信号(trap命令)

Linux-shell向进程组发信号

posted @ 2024-09-28 14:13  寻找繁星  阅读(212)  评论(0)    收藏  举报