这将是会发生什么,显示一条消息,指定的时间等待按键,如果没有按键则会恢复。
实施例
“按ESC退出,否则你会死... 3..2..1”
“按'x'拖延并查看电子邮件,阅读一些博客,脸谱,推特......否则你将恢复工作12小时.. 3..2..1”
这应该是一个非常方便的功能。如何在bash中创建此功能?
答案 0 :(得分:6)
在bash手册页上查看“read”命令并注意“-t timeout”选项。这样的事情应该让你开始
for i in 3 2 1 ; do
read -p $i... -n 1 -t 1 a && break
done
答案 1 :(得分:3)
使用read bash builtin命令的-t和-n选项,也不要忘记-r和-s。 (详见手册)
#!/bin/bash
timeout=3
echo -n "Press ESC to exit, otherwise you will die..."
while [ $timeout -gt 0 ]; do
echo -n " $timeout"
if read -n1 -t1 -r -s x; then
echo
exit 0
fi
let timeout--
done
echo