linux – 为什么我没有在bash中使用kill -9命令获取SIGKILL信号?

前端之家收集整理的这篇文章主要介绍了linux – 为什么我没有在bash中使用kill -9命令获取SIGKILL信号?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在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无法终止该脚本.

猜你在找的Linux相关文章