
标题: [其他] [已解决]批处理怎样设置执行命令超时? [打印本页]
作者: garyng 时间: 2011-8-14 17:47 标题: [已解决]批处理怎样设置执行命令超时?
本帖最后由 garyng 于 2011-8-15 20:13 编辑
我有一个问题~
能不能让 set /p a= 在等待用户输入时,等待时间超过一定的时间就执行下一个命令?
作者: mxxcgzxxx 时间: 2011-8-14 19:11
当然用 set/p 是没办法的,因为他会停止下所有的工作
建议你换个别的可以输入的命令,
记得这个问题被问过,自己找找吧
作者: ArdentMan 时间: 2011-8-15 01:28
本帖最后由 ArdentMan 于 2011-8-15 01:47 编辑
实现起来相当麻烦(密码是m,记得按回车)- @Echo Off
- If Defined Flag Goto Next
- ::请将下面的空格换成TAB制表符
- Set "Tab= "
- For /L %%I In (1,1,92) Do Call,Set "tg=%%tg%%"
- Set "Flag=a"&Start /b "" %0
- For /L %%j In (1,1,500) Do Echo>Nul
- For /L %%i In (10,-1,1) Do (
- If Not Exist "%Temp%\bathome" (
- 2>Nul Echo %Tab%%tg%&Set /p= <Nul
- Set /p=%tg:~,20%请在%%i秒内输入密码<Nul
- Echo,&Set /p=密码?<Nul
- For /L %%j In (1,1,4000) Do Echo>Nul
- )
- )
- If Not Exist "%Temp%\bathome" TaskKill /f /im cmd.exe>Nul
- Exit
- :Next
- Echo,&Set /p Str=密码?
- If "%Str%" EQU "m" Cls&Echo 密码正确&Cd.>"%Temp%\bathome"
- Pause>Nul
- Del "%Temp%\bathome" 2>Nul&Exit
复制代码
作者: lfoqtal 时间: 2011-8-15 08:58
回复 3# ArdentMan
但也发现只有一次输入密码的机会能不能让他有三次机会?
作者: Hello123World 时间: 2011-8-15 09:46
set /p ardentman实现了,用个choice更省事:- @echo off
- CHOICE /T 10 /C:yn /CS /D y
- If ErrorLevel 2 goto n
- If ErrorLevel 1 goto y
- :y
- echo 10秒内没选择就显示这个
- pause&exit
- :n
- echo You choice n,good.
- pause>nul
复制代码
作者: garyng 时间: 2011-8-15 20:12
谢谢~麻烦你们了~
作者: xiaoququ1 时间: 2012-6-21 12:45
就是这样的东西
我想2秒超时以后自动刷新当前时间,也就是自动选择0
实在不知道怎么写啊=。=
作者: garyng 时间: 2012-6-22 11:16
回复 7# xiaoququ1
请勿挖坟。。那么就的的东东你也挖来回复?!
另开主题 自己问问呗~
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |