Bash: 忽略 SIGNT (ctrl-c) x 次
Bash: Ignore SIGNT (ctrl-c) x amount of times
所以,在这个程序中,使用 BASH,我试图在需要之前多次(不是无限次)忽略或捕获 CTRL-C。
目前我知道如何忽略一次命令。
但是我不知道如何增加或减少它被忽略的次数。
代码:
#! /bin/bash
trap 'justonce' 2
justonce()
{
echo "you sure?"
trap 2
}
while true; do
echo -n "."
sleep 1
done
谢谢
使用循环和变量:
#! /bin/bash
ignore=4
trap 'justonce' 2
justonce()
{
echo "you sure? $ignore left"
if [ $((ignore)) -eq 0 ]
then
exit 1
fi
ignore=$((ignore-1))
}
while true; do
echo -n "."
sleep 1
done
所以,在这个程序中,使用 BASH,我试图在需要之前多次(不是无限次)忽略或捕获 CTRL-C。
目前我知道如何忽略一次命令。 但是我不知道如何增加或减少它被忽略的次数。
代码:
#! /bin/bash
trap 'justonce' 2
justonce()
{
echo "you sure?"
trap 2
}
while true; do
echo -n "."
sleep 1
done
谢谢
使用循环和变量:
#! /bin/bash
ignore=4
trap 'justonce' 2
justonce()
{
echo "you sure? $ignore left"
if [ $((ignore)) -eq 0 ]
then
exit 1
fi
ignore=$((ignore-1))
}
while true; do
echo -n "."
sleep 1
done