【问题标题】:Manipulating time in a batch file在批处理文件中处理时间
【发布时间】:2009-10-16 11:54:23
【问题描述】:

我想知道是否有人可以在这里帮助处理这个 lil' 批处理文件。我正在尝试检查上次成功的 Windows 更新是什么时候。 这是这里的代码..

@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 分钟 前 如果那是可能的,那就太棒了。

在此先感谢各位,

道德

【问题讨论】:

    标签: windows scripting batch-file


    【解决方案1】:

    我找到了this article,它带有一个命令行实用程序来执行日期/时间计算并帮助您解决问题。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-25
      • 1970-01-01
      • 1970-01-01
      • 2021-01-16
      • 2010-11-12
      • 1970-01-01
      • 2017-06-24
      相关资源
      最近更新 更多