繁体   English   中英

在批处理文件中处理时间

[英]Manipulating time in a batch file

我想知道是否有人可以在这里帮助这个小批处理文件。 我正在尝试检查上一次成功的Windows Update是何时。 这是这里的代码..

@ECHO OFF
SETLOCAL
SET RegKey=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion
SET RegKey=%RegKey%\WindowsUpdate\Auto Update\Results\Install
FOR /F "skip=1 tokens=2*" %%A IN ('REG Query "%RegKey%" /v "LastSuccessTime"') DO SET LastWUpd=%%B
IF "%~1"=="" ECHO Last successful Windows Update: %LastWUpd%
PAUSE
ENDLOCAL & SET LastWUpd=%LastWUpd%
IF "%~1"=="" GOTO:EOF

这是我得到的输出:

上次成功的Windows更新:2009-10-14 09:02:52

我想知道'是否有一种方法可以计算出与现在的时差? 这样该行可以更改为:

上一次成功的Windows更新是x年x个月x天x小时x分钟之前。如果可能的话,那就太好了。

在此先感谢大家,

道德的

我发现本文具有命令行实用程序,可以执行日期/时间计算并帮助您解决问题。

但是,您可以考虑使用PowerShell完成同一任务吗? 我不是主题专家,但是由于您可以在PS上运行.NET托管代码,因此您应该能够更轻松地完成类似的任务。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM