Date 将年月日转换为年月日,并检查当前系统日期

Date 将年月日转换为年月日,并检查当前系统日期,date,vbscript,Date,Vbscript,如果防病毒更新时间不超过5天,我想锁定或重新启动/关闭Windows系统 所以我决定从AV应用程序获取最后更新的数据,并重定向到文本文档。但日志中显示的最后更新日期为“dd monthname yyyy” 我想将此日期与当前系统日期匹配。我需要在系统日期前5天验证上次更新的日期。如果AV在5天或更长时间内未更新,我希望锁定或重新启动系统。我希望通过使用vbsrcipt来实现这一点,以便在组策略中部署 下面是我从Mcafee AV下载的示例日志文件 CommonShell Command Line

如果防病毒更新时间不超过5天,我想锁定或重新启动/关闭Windows系统

所以我决定从AV应用程序获取最后更新的数据,并重定向到文本文档。但日志中显示的最后更新日期为
“dd monthname yyyy”

我想将此日期与当前系统日期匹配。我需要在系统日期前5天验证上次更新的日期。如果AV在5天或更长时间内未更新,我希望锁定或重新启动系统。我希望通过使用vbsrcipt来实现这一点,以便在组策略中部署

下面是我从Mcafee AV下载的示例日志文件

CommonShell Command Line Scanner Lite (VSCORE.15.6.0.1551)

Engine Version     : 5900.7806
Engine Load Time   : 5312 milliseconds
AV     DAT Version : 8673.0000   668571 detections   Built 03 October 2017

Extra DAT          :                  0 detections

请使用vbscript代码帮助完成相同的操作。

在SetLocale的帮助下,CDate()可以理解英文月名:

Option Explicit

SetLocale "en-us" ' now it understands "October", but won't do m/d/y

Dim d : d = Date()
Dim s
For Each s In Split("03 October 2017*01 October 2017*29 September 2017", "*")
    Dim di : di = CDate(s)
    Dim dd : dd = Datediff("d", d, di)
    WScript.Echo d, di, dd, CStr(dd < -4)
Next
cscript 46570030.vbs
04.10.2017 03.10.2017 -1 Falsch
04.10.2017 01.10.2017 -3 Falsch
04.10.2017 29.09.2017 -5 Wahr