在超时命令中按CTRL + C

时间:2014-01-29 12:28:27

标签: windows batch-file

如果我使用timeout sec /nobreak,按Ctrl + C仍然可以跳过它,如何避免它?

3 个答案:

答案 0 :(得分:2)

您无法阻止用户使用CTRL-C停止播放,但您可以使用&n; nul来抑制提示,'例如:

超时-t 10 -nobreak> NUL

我发现,对于几乎所有用户来说,这将阻止他们尝试按键。

答案 1 :(得分:1)

好吧,如果按下CTRL + C,超时命令会将%errorlevel%设置为1.

所以你可以试试这个:

@echo off
:settime
timeout 5 /nobreak
if %errorlevel% == 1 goto settime
echo/Yes! CTRL+C were not pressed!
pause

答案 2 :(得分:1)

您可以使用start /b超时。

start "title" /b cmd /c "timeout 5 /nobreak"

无法取消,因为超时在同一窗口中运行,但在不同的cmd.exe实例中运行。