我在cmd批处理中使用了超时事件,但是当它超出时间时,如何捕获用户按下事件的键?或者知道时间已经过去了?
可能是这样:
@echo off echo "Please press anykey to continue or Program will exit" timeout /t 5 ( if(timeout == true and keypress != "null")( goto continue ) else ( exit ) )P / S:抱歉在这里使用了一些java代码,因为我仍然无法想象它在cmd批处理中是如何工作的(googled it但仍然不能。)
请帮助,谢谢!
答案 0 :(得分:1)
另一个选择是选择命令。
choice /c abcd /n /t 5 /d defaultchoice /m "Please press a or b or c or d to continue or Program will exit"
if errorlevel 1 set choice=a
if errorlevel 2 set choice=b
if errorlevel 3 set choice=c
if errorlevel 4 set choice=d
选择命令的缺点是您无法按任意键,您必须设置用户能够按下的所有键。但是,可能有更好的解决方案。
/ t用于超时
/ d是默认选择,例如/d a
/ n隐藏选项列表
/ c abcd将可用选项设置为a,b,c和d
为区分大小写添加/ cs