我想使用tail命令来观看并继续我的脚本。 当我按“Ctrl + C”键时,我不想停止整个脚本。 有什么好方法吗?
#!/bin/sh
tail -f ./a.txt
echo "I want to print this line after tailing"
答案 0 :(得分:4)
您可以尝试这样的事情:
#!/bin/sh
trap ctrl_c INT
function ctrl_c() {
echo "You slay me!"
}
tail -f ./a.txt
echo "I want to print this line after tailing"
在tail -f
完成或之后,您要恢复默认的Ctrl-C行为时,您会这样做:
trap - INT
或者您可以通过声明新的陷阱功能来“自定义”中断:
#!/bin/sh
trap ctrl_c INT
function ctrl_c() {
echo "You slay me!"
}
function my_default_ctrl_c() {
echo "You just interrupted me!"
exit 1
}
tail -f ./a.txt
echo "I want to print this line after tailing"
trap my_default_ctrl_c INT
在这里,来自键盘的后续Ctrl-C将中断脚本并发出自定义消息,“你刚打扰我!”。