Time 批量变量评估

Time 批量变量评估,time,batch-file,wait,Time,Batch File,Wait,新批处理。我已经把我的问题缩小到如何计算批处理变量 setlocal enableextensions enabledelayedexpansion set timelimit=30 for /F "USEBACKQ tokens=4,6,8" %%a in (`systeminfo ^| qgrep -e "System Up Time:"`) do set /A timepassed=%%a*24*60+%%b*60+%%c IF "!timepassed!" LEQ "%timelimi

新批处理。我已经把我的问题缩小到如何计算批处理变量

setlocal enableextensions enabledelayedexpansion
set timelimit=30
for /F "USEBACKQ tokens=4,6,8" %%a in (`systeminfo ^| qgrep -e "System Up Time:"`) do set /A timepassed=%%a*24*60+%%b*60+%%c

IF "!timepassed!" LEQ "%timelimit%" (

echo %timelimit%

) ELSE (

echo !timepassed!

)

运行时,我希望批处理能够输出!时间过去了!(目前为1250)然而,它总是输出%timelimit%(30),这使我相信正在使用LEQ IF,这对我来说毫无意义

按照建议,在代码中尝试以下更改

使用
/A
选项设置变量值

set /a timelimit=30
并将这些值与

IF !timepassed! LEQ !timelimit! (
在设置变量值和删除if条件中的引号时,请尝试使用“set/a”。现在您有了字符串比较。