如何检测文件更改VBS

时间:2014-02-13 15:13:07

标签: vbscript changelog

我想创建一个Visual Basic脚本控制台应用程序,如果文件已被修改,则打印已编辑。例如,如果我有一个带有一些注释的文本文件,我将其添加到文件夹,当它编辑程序检查文件夹,然后文件然后打印文件的名称并修改或不修改 我将如何去做这个我相对较新的Visual Basic脚本我可能有4个月的基本经验。

    console.writeline("what do i do?")
    console.writeline("and how do i do it")

我正在尝试将其作为控制台应用程序,因此我希望看到的首选结果是

    File Checker
    test.txt - Edited
    test2.pptx - Un-edited
    etc etc etc

1 个答案:

答案 0 :(得分:2)

如果您需要立即通知,WMI可能是最佳途径。但是WMI也会要求您的进程始终在运行(处于阻塞状态)。或者,您可以安排在某个时间间隔启动VBScript,它可以根据您上次运行脚本时用于存储修改日期的文本文件或数据库来检查每个文件的最后修改日期。

更简单的解决方案是检查自上次运行以来修改时间是否发生了变化。例如,如果您的脚本每10分钟运行一次并且您发现在过去10分钟内更改过的文件,请报告该文件。

With CreateObject("Scripting.FileSystemObject")
    For Each File In .GetFolder("c:\folder").Files
        If DateDiff("n", File.DateLastModified, Now) < 10 Then
            ' File has been modified in past 10 minutes.
        End If
    Next
End With