目标:运行一个每天检查文件夹的 VBScript,并报告当天是否没有文件保存到该文件夹。忽略前几天存在的文件。
场景:每天凌晨 3 点在 C:\Temp 中创建一个日志文件。这就是告诉我们系统执行了一项任务的原因。如果未生成日志文件,则任务崩溃。我写这篇文章是为了检查 Temp 文件夹中是否有今天创建的文件,如果它不存在就给我发电子邮件。
到目前为止的解决方案:
option explicit
dim fileSystem, folder, file
dim path
path = "C:\Temp"
Set fileSystem = CreateObject("Scripting.FileSystemObject")
Set folder = fileSystem.GetFolder(path)
for each file in folder.Files
if file.DateLastModified > dateadd("h", -24, Now) then
'WScript.Echo file.Name & " last modified at " & file.DateLastModified
else
SendEmail
'WScript.Echo "this should have sent an email."
end if
next
Function SendEmail()
'Send Email notification function here (this part works already)
End Function
我遇到的问题:
我似乎无法想办法让脚本忽略文件夹中前几天的文件。
在我的测试中,我在 C:\Temp 中填充了今天修改的文件,以及 2012 年 7 月 10 日修改的文件。因为这个场景同时匹配 'then' 和 'else' 语句,所以它两者都做。
我想我只需要对循环稍作修改即可告诉它 - 忽略不是“今天”日期的文件 - 如果今天不存在文件,请发送电子邮件。
任何帮助都是极好的。我似乎无法“看到”答案。