在bash脚本中我处理不同的信号如下:
#!/bin/bash sighdl () { echo "signal caught" #do something exit 0 } trap sighdl SIGKILL SIGINT SIGTERM
以上代码处理信号适合以下活动:
> Ctrl C
>杀死pid
> pkill scriptname
对于kill -9 pid,它不会调用sighdl.根据我的理解(如果我没错),kill -9发送SIGKILL信号.
任何的想法?
解决方法
你不能这样做.是9是SIGKILL和Unix系统设计由于安全原因不允许任何脚本/程序陷阱SIGKILL.否则任何脚本都可以捕获&忽略SIGKILL,这将使OS无法终止该脚本.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。