如何使终端不能打印“^被信号2杀死”

时间:2010-07-02 12:10:56

标签: scripting shell

我正在为我的项目编写我的一个脚本中的信号SIGINT。

trap sigint_handler SIGINT

我有信号处理程序

sigint_handler()
{
#    echo caught signal, now quiting....

     exit $?
}

所以现在当脚本获得CTRL + C信号时,它会得到它并退出。

在终端上打印此消息:

$^Killed by signal 2.
$

我知道这条消息是由系统生成的。我想这是因为某些中断而发生的,我可能不对。

所以现在我只是想要以某种方式在退出脚本时因为该信号而不应该在终端上显示该消息。

我的预期行为是,当我按下CTRL + C时,它不应该打印任何消息,并且会像通​​常那样静默地退出脚本。

任何人都可以告诉我或建议我做些什么来忽略这个消息。 有没有办法忽略这条消息。

感谢。

Alok.Kr。

1 个答案:

答案 0 :(得分:0)

陷阱声明在哪里?

trap 'echo "signal received, exiting"' 2

将是捕获信号#2的示例陷阱语句 - 它是POSIX系统上的SIGINT(ctrl / c)。