2015-02-06 101 views
0

我正在寻找一种方法来接受在批处理文件中的用户输入为timeout。 基本上,当批处理程序启动时,用户可以选择输入一个以分钟为单位的超时值,该值将以秒计算并作为变量传递,直到下一步继续。超时/ CMD文件接受用户输入超时

不幸的是我无法找到网络上的任何东西;(

@echo off 
REM set timeout by using the input of the user 
shutdown -f -s -t (here comes in user input * 60) 

将这样的事情有可能与CMD

+1

你搜索了什么确切的字符串?因为'set/p'会做你想做的事情。 – SomethingDark 2015-02-06 18:37:31

+0

我确实发现了'set/p',但我无法理解它。 – 2015-02-06 18:51:41

+0

set/p的用法是'set/p variable = prompt',其中'prompt'是脚本在请求输入时向用户显示的内容,'variable'是输入存储的变量。 – SomethingDark 2015-02-06 19:26:45

回答

0
set /p TIMEOUT="In how many minutes should the server shut down? " 
set /a TIMEOUT = %TIMEOUT% * 60 

这将设置为任何用户输入超时变量? 。根据你的初始文章,你可以用 shutdown -f -s -t %TIMEOUT%

+0

非常感谢这个! 正是我想要的。 – 2015-02-09 15:52:16

1

实际上有一个本地TIMEOUT此方法:

set /p mtime="Enter time in minutes: " set /a stime=%mtime%*60 timeout /t %stime%

添加/NOBREAK忽略keyinput,否则用户可以按任意键终止TIMEOUT

+0

谢谢你的@meatspace! 您的方法也适用,但我熟悉@ theglossy1 的建议如果我能将该建议标记为正确答案! – 2015-02-09 15:51:50