我有以下bash脚本:
# do some time consuming task here
read -p "Give me some input: " input
现在您可能已经猜到,如果用户在“耗时任务”期间按下某些随机密钥,则也会考虑不需要的输入。stdin
在发出read命令之前,如何清除(或至少忽略它)?
1
我自己,除非你正在写一个类似诅咒的程序,否则我会发现你想做什么才能成为你程序中的设计缺陷。UNIX / Linux具有缓冲输入(“预先输入”)的非常有用的功能,我通常使用此功能。通过你的程序,你丢弃我键入的内容,我可能会提交一个错误并停止使用你的程序,直到它被修复。
—
Arcege 2011年
一些用户习惯于在他们的程序忙于做某事时用键盘弹钢琴。我宁愿扔掉那些按键并重新开始。但你是对的,“提前输入”很有用,但并非总是如此。
—
rabin 2011年