我想向 nohup 进程发送 SIGTERM 信号,但该信号会被完全忽略,只有 SIGKILL 有效,这被认为是终止 shell 脚本的糟糕选择。我在这里有什么选择吗,还是必须坚持使用 SIGKILL?提前致谢。
答案1
我确信 nohup 只会捕获 SIGHUP 而不会捕获 SIGTERM。
如果我没记错的话,b忽略所有发送给它的 SIGTERM 和 SIGQUIT 信号,除非已设置陷阱。查看此处了解如何在脚本中设置陷阱:http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_12_02.html
您可以通过首先在没有 nohup 的情况下启动脚本来验证这是否是问题所在,然后向其发送 SIGTERM 并查看它是否被忽略。