首页 > 解决方案 > 如何在批处理语言中使用 timeout 命令?

问题描述

我实际上想使用批处理程序创建一个计时器,当我运行代码时,输​​出不是我想要的方式。屏幕继续闪烁,秒数不减。有人能帮我吗。非常感谢。

@echo off
set countdown=10
:loop
if %countdown% == 0 goto end
cls
echo %countdown% 
timeout /t 1 /NOBREAK
set/a count=%countdown%-1
goto loop
:end
cls
echo Time's up!
pause

标签: windowsbatch-filetesting

解决方案


您应该将此行替换set/a count=%countdown%-1为这一行set /a countdown=countdown-1或缩短的set /a countdown-=1.

@echo off
set "countdown=10"
:loop
if "%countdown%" EQU "0" goto end
cls
echo %countdown% 
set /a countdown-=1
timeout /t 1 /NOBREAK>nul
goto loop
:end
cls
echo Time's up!
pause

推荐阅读