Board logo

标题: [日期时间] 新手献丑--批处理获取电脑启动了多长时间 [打印本页]

作者: likeyou32    时间: 2024-3-8 16:34     标题: 新手献丑--批处理获取电脑启动了多长时间

本帖最后由 likeyou32 于 2024-3-13 09:12 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=1,2 delims=:" %%i in ('time/t') do (
  4. set xian=%%i%%j & set xianshi=%%i & set xianfen=%%j
  5. for /f "skip=1 tokens=10,11 delims=-: " %%a in ('query user') do (
  6. set chu=%%a%%b & set chushi=%%a & set chufen=%%b
  7. )
  8. )
  9. rem endlocal
  10. set /a xianshi=1%xianshi%-100,xianfen=1%xianfen%-100
  11. for /f "skip=1 tokens=6,7,8 delims=- " %%u in ('query user') do (
  12. for /f "tokens=1,2,3 delims=- " %%r in ('date/t') do (
  13. SET DateA=%%u%%v%%w & set DateB=%%r%%s%%t
  14. echo !DateA! !dateb!
  15. )
  16. )
  17. call :DateToDays %DateA:~0,4% %DateA:~4,2% %DateA:~6,2% DaysX
  18. call :DateToDays %DateB:~0,4% %DateB:~4,2% %DateB:~6,2% DaysY
  19. if %DaysX% geq %DaysY% (set /a DayZ=DaysX-DaysY) else (set /a DayZ=DaysY-DaysX)
  20. echo %DateA%和%DateB%间隔的天数是:%DayZ%天
  21. if %xianshi% geq %chushi% (if %xianfen% geq %chufen% set /a fen=%xianfen%-%chufen% & set /a shi=%xianshi%-%chushi% )else (
  22. if %xianfen% geq %chufen% (set /a fen=xianfen-chufen,shi=24-chushi+xianshi-24) else (set /a fen=60+xianfen-chufen,shi=24-chushi+xianshi-24-1)
  23. )
  24. set /a zongshi=DayZ*24+shi
  25. echo 合计%zongshi%小时%fen%分钟
  26. goto :eof
  27. :DateToDays %yy% %mm% %dd% days
  28. setlocal ENABLEEXTENSIONS
  29. set yy=%1&set mm=%2&set dd=%3
  30. if 1%yy% LSS 200 if 1%yy% LSS 170 (set yy=20%yy%) else (set yy=19%yy%)
  31. set /a dd=100%dd%%%100,mm=100%mm%%%100
  32. set /a z=14-mm,z/=12,y=yy+4800-z,m=mm+12*z-3,j=153*m+2
  33. set /a j=j/5+dd+y*365+y/4-y/100+y/400-2472633
  34. endlocal&set %4=%j%&goto :EOF
复制代码
请大家指教
作者: hfxiang    时间: 2024-3-8 17:45

回复 1# likeyou32
  1. @echo off
  2. rem 建议保存为ANSI编码格式
  3. for /f "tokens=1-2 delims=: " %%a in ('powershell "(get-date) - (gcim Win32_OperatingSystem).LastBootUpTime"') do set "%%a=%%b"
  4. echo;系统运行时长为:%Days%天%Hours%时%Minutes%分%Seconds%.%Milliseconds%秒
  5. pause>unl
复制代码

作者: 77七    时间: 2024-3-9 12:07

  1. 以零为除数的错误。
  2. 天时分
  3. 找不到操作数。
  4. 合计时分
复制代码

时间差计算参考 批处理计算日期时间差,精确到秒
作者: 77七    时间: 2024-3-13 10:58

参考 : [连载]对批处理新人的若干建议(2009年8月9日更新) 先自查下




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2