在退出时杀死子进程

陷阱表达式不必是单独的函数或程序,它们也可以是更复杂的表达式。

通过组合 jobs -p 和 kill,我们可以在退出时杀死 shell 的所有衍生子进程:

trap 'jobs -p | xargs kill' EXIT