Jay*_*hoi 8 linux bash signals
在bash脚本中我处理不同的信号如下:
#!/bin/bash
sighdl ()
{
echo "signal caught"
#do something
exit 0
}
trap sighdl SIGKILL SIGINT SIGTERM
Run Code Online (Sandbox Code Playgroud)
以上代码处理信号适合以下活动:
kill pidpkill scriptname因为kill -9 pid它没有打电话sighdl.根据我的理解(如果我没有错)kill -9发送SIGKILL信号.
任何的想法?
anu*_*ava 14
你不能这样做.是9是由于安全原因SIGKILL,Unix系统设计不允许任何脚本/程序陷阱SIGKILL.否则,任何脚本都可以捕获并忽略SIGKILL,这将使OS无法终止该脚本.