这是一个应该倒计时 10 秒的循环 ($rtime
)。
如果您想早点跳出循环,则必须键入 n。
我能以某种方式不等到读取得到输入吗,因为此刻循环总是
卡在读取并等待输入。
ct=$(date +"%s")
while [ $(( $ctn - $ct )) -le $rtime ] ; do
ctn=$(date +"%s")
read r
if [ "$r" = "n" ] ; then
break
fi
done
最佳答案
您可以指定超时以读取
:
read -t 1 r
如果一秒钟后没有输入任何内容,这将导致它完成。
关于linux - Shell 脚本 - 不要等待读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32355975/