前端之家收集整理的这篇文章主要介绍了
当我的shell脚本退出时,如何杀死后台进程/作业?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在寻找一种
方法,当我的顶级脚本
退出时,清理混乱。
特别是如果我想使用set -e,我希望后台进程会死在脚本退出时。
要清理一些乱,可以使用陷阱。它可以提供在特定信号到达时执行的东西的列表:
trap "echo hello" SIGINT
但也可以用于在shell退出时执行某些操作:
trap "killall background" EXIT
这是一个内置的,所以帮助陷阱将给你的信息(与bash工作)。如果你只想杀死后台作业,你可以做
trap 'kill $(jobs -p)' EXIT
注意使用single’,以防止shell立即替换$()。
原文链接:https://www.f2er.com/bash/392981.html