我正在用bash创建一个简单的问答游戏。我想用一定的时间限制来运行这个问题。怎么做? TIA
我尝试使用此命令:
sleep 2m && kill $$ &
但它会终止整个脚本。 另外:我想显示一个“次数”短语
答案 0 :(得分:2)
与原始尝试类似,请考虑创建一个睡眠并发送信号的子流程,但这次one that you catch:
handle_hup() {
echo "Times up"
# do more things
}
trap handle_hup SIGHUP
mypid=$$
(sleep 2m && kill -HUP $mypid)&
echo "Quiz question: ..."
答案 1 :(得分:1)
答案 2 :(得分:0)
由于您尚未显示完整的代码或要求,因此仅在此处提供一小段代码,等待用户输入10秒,否则会打印该用户已超时,您可以把它作为一个启动点,并可以相应地调整到你的脚本。
read -t 10 -p "User, please enter your Input or it will time out in 10 seconds." ; echo ; date