当前位置:  技术问答>linux和unix

如何清空标准键盘输入流?

    来源: 互联网  发布时间:2017-01-25

    本文导语:  #!/bin/bash echo "begain" #....... #....... #....... echo "end" echo -n "reboot system now? (n|y) : " read answer if [ "$answer" = "y" ] then     reboot else     echo "reboot later, your input is : $answer" fi 问题: 假设在打印“begain”和...

#!/bin/bash

echo "begain"
#.......
#.......
#.......
echo "end"

echo -n "reboot system now? (n|y) : "
read answer
if [ "$answer" = "y" ]
then
    reboot
else
    echo "reboot later, your input is : $answer"
fi

问题:
假设在打印“begain”和“end”之间用户不小心碰到键盘,输入了字符,那么用户输入“y”后,系统也不会重启。

例如:
假设不小心碰到了“0”,则会打印:
begain
.....(略)不小心碰到了“0”键
end
reboot system now? (n|y) : y
reboot later, your input is : 0y

如何处理意外输入:
我想在打印“end”之后,请空键盘的输入终端,本例中,即需要清空“0”这个字符。该如何办不到?


|
再多一步好了,用户输入后让用户确认是否执行刚才的操作,如何输入正确就执行reboot,否则重新输入

|
在read answer之前加入一句read -t 0 -n 10000 garbage

    
 
 

您可能感兴趣的文章:

  • 如何清空键盘缓冲区?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ I/O 成员 flush():清空缓冲区
  • 在线等待:如何把vector清空,再用该清空vector是,索引是从0开始,而不是紧接着上次清空是的索引?
  • C++ Bitsets 成员 reset():清空所有位
  • [文件 重定向 清空] Linux 清空文件问题
  • C++ Vectors 成员 clear():清空所有元素
  • linux下如何清空串口的输入输出缓存
  • JSP中清空cookie代码参考
  • C#清空添加的txt文件的实例代码
  • JSP 重置按钮清空传入的表单数据实例
  • unix下用c如何清空一个文件?
  • linux 下清空串口发送接收缓冲区的函数.
  • linux 能否清空文件缓存?
  • MSSQL 清空数据库的方法
  • jquery清空textarea等输入框中内容的代码
  • 清空mysql 查询缓存的可行方法
  • 请问,下拉框怎样来清空,?
  • 如何将一个文本文件在写入前先清空?急待回答。代码如下:
  • 在JSP中如何从内存中清空APPLICATION,
  • 怎样清空vector中的内容??急
  • 如何清空所有SESSION
  • 如何清空session变量的值,或者删除一个session变量


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3