我正在编写一个脚本,该脚本会在任务完成后读取答案,然后将其写入文本文件中。我希望这个答案只是一个字符:
task1
read -n 1 answer < /dev/tty
echo $answer >> result.txt
task2
read -n 1 answer < /dev/tty
echo $answer >> result.txt
问题是,如果我不小心按了两次键盘,第二个字符将保留在内存中,并将其写为下一个答案。
我想插入一个命令,在将第一个字符写入file.txt后刷新内存
由于您没有使用它ENTER来捕获答案,因此需要建立延迟来确定什么是意外按下。因此,在读取第一个字符后,您可以read -e -t2
在2秒内丢弃任何按键。
task1
read -n 1 answer
echo $answer >> result.txt
read -e -t2 #Discard additional input within 2 seconds.
task2
read -n 1 answer
echo $answer >> result.txt
read -e -t2 #Discard additional input within 2 seconds.
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句