确认使用陷阱退出

时间:2011-06-28 06:19:02

标签: shell unix

我正在尝试捕获 Ctrl + C 信号,询问用户的确认。诱捕部分工作正常。但是一旦信号被捕获并且用户按下NO,它就不会返回到正常执行状态。相反,它退出脚本。当用户按下no时如何使其恢复执行?

这是我的代码:

hell()
{
    echo "Do you want to quit? Press 1 for yes and 0 for no";
    read n;
    if [ $n == 1 ]; then
    exit 1;
    fi
}

trap "hell" SIGINT

find /

1 个答案:

答案 0 :(得分:0)

这里的问题是您的脚本和您的命令find /正在接收INT信号,因此它会退出。

您可以完全忽略以下信号:

trap '' SIGNINT

我不知道是否可以捕获信号并阻止您的命令接收它。