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命令)

{% post_link Linux/Process/'Linux-shell向进程组发信号' %}

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