一般情况下用下面的代码即可,但批处理的默认0开头的数字以为是8进制,导致获取的时间不准确 1 2 3 4 | for /f "tokens=1,2 delims=:" %%i in ('time/t') do ( set/a xiaos=%%i set/a fenz=%%j ) |
使用上面的代码提取系统的小时和分钟,原本运行的结果如下: xiaos=9 fenz=18 但今天提取的却是下面格式(同一台机器,同一个系统): xiaos=09 fenz=18 由此带来后期计算的错误。 因为接触批处理不久,不知是哪里出了问题?特请教。 bathome的管理员给出的答案1 2 3 4 5 6 7 8 9 10 11 12 | @echo off for /f "tokens=1,2 delims=:" %%i in ('time /t') do ( set xiaos=%%i set fenz=%%j ) set xiaos=10%xiaos: =% set fenz=10%fenz% set /a xiaos=xiaos%%100 set /a fenz=fenz%%100 echo %xiaos% echo %fenz% pause |
|