[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[日期时间] 记录批处理运行时间

记录运行时间

调用方式
  1. call :C_timer
  2. call :C_timer sum
复制代码
log文件 time.txt
  1. b1.bat  0  11:04:04.59
  2. b1.bat  1  11:04:42.21  37.62
  3. b1.bat  2  11:05:10.62  28.41
  4. b1.bat  3  11:05:25.92  15.30
  5. b1.bat                  81.33
复制代码
  1. :C_timer [sum]
  2. if not defined _ti_ set _ti_=-1
  3. set/a _ti_+=1
  4. set _tb_=%_te_%
  5. set _te_=%time%
  6. if %_ti_% EQU 0 (
  7.     set _tb_=%_te_%
  8. )
  9. set/a _tdiff_=(9%_te_:~0,2%-9%_tb_:~0,2%)*360000+(9%_te_:~3,2%-9%_tb_:~3,2%)*6000+(9%_te_:~6,2%%_te_:~9,2%-9%_tb_:~6,2%%_tb_:~9,2%)
  10. set/a _tdiff_=%_tdiff_:-=8640000-%
  11. set/a _tdiffSum_+=%_tdiff_%
  12. if "%_ti_%" == "0" (
  13.     (echo,) >>time.txt
  14.     (echo %~nx0  %_ti_%  %_te_%) >>time.txt
  15. ) else (
  16.     (echo %~nx0  %_ti_%  %_te_%  %_tdiff_:~0,-2%.%_tdiff_:~-2%) >>time.txt
  17. )
  18. if %1.==sum. (
  19.     (echo %~nx0                  %_tdiffSum_:~0,-2%.%_tdiffSum_:~-2%) >>time.txt
  20. )
  21. goto :eof
复制代码

有点小瑕疵,如果时长小于1秒,输出会有些问题
0.01 秒 是 .1
0.1 秒 是 .10

TOP

本帖最后由 newswan 于 2023-1-17 10:29 编辑
  1. set ts=HH:mm:ss
  2. set t1=%date% %time%
  3. pause
  4. set t2=%date% %time%
  5. powershell " $a = ((get-date -date '%t2%') - (get-date -date '%t1%')) ; get-date -date $a.tostring() -format '%ts%' "
复制代码

TOP

返回列表