【问题标题】:How to copy files from specific time range?如何从特定时间范围复制文件?
【发布时间】:2016-02-04 16:40:43
【问题描述】:

我有一个文件夹,其中包含每天创建的文件,该文件夹中几乎没有不同类型的文件(txt、msg 等),但我需要提供一个脚本来允许我复制特定的文件文件,假设是 2015-05-05 格式的 msg 文件。这些文件会在某些时间窗口出现,例如上午 10 点之后会有一个 txt 文件,但没有更清晰等等。

我的脚本要求用户输入一个日期,例如 2015-05-05,该文件应该被复制到哪个日期。脚本会在该日期上添加一个小时戳(晚上 10:00:00),因此“截止”日期将是:2015-05-05 10:00:00 PM。 然后我使用DateDiff,间隔为12,脚本跨越所有间隔,“截止日期”和txt文件的创建日期并将它们复制到另一个文件夹。 但是,它会复制所有满足该要求的 txt 文件,因此所有在上午 10 点到晚上 10 点之间创建的文件,无论日期、月份和年份如何。我只需要从那一天复制 txt 文件! 我该怎么做才能使该脚本检查时间窗口,例如 2015-05-05 10:00:00 PM ±12 小时?我需要一种方法来制作时间范围,该范围的中心将是用户将标记的一天的晚上 10 点,例如 2015-05-05,从那时起(2015-05-05 10:00:00 PM)我需要检查±12小时。

这是我的脚本,但它没有按我想要的方式工作:

Dim inputday

sourcepath = "C:\EveryDayFiles\"
NewFolder = "C:\Copy\EDF"

Do
    inputday = InputBox ("Type in a date:", "Copy Date")
    If inputday = "" Then
        Msgbox "Wrong Date!"
    End If
Loop Until inputday > ""
cutofdate = inputday & " 10:00:00 PM"
Set objfso = CreateObject("Scripting.FileSystemObject")
Set objFolder = objfso.GetFolder(sourcepath)
For Each objFile In objFolder.Files
    dFileCrDate = objfso.GetFile(objFile).DateCreated
    If timediff = DateDiff("h", dFileCrDate, Datapodana) =< 12 Then
        If objfso.GetExtensionName(objFile) = "txt" Then
            objfso.GetFile(objFile).Copy NewFolder & "\", True
        End If
    End If
Next

【问题讨论】:

    标签: file date vbscript copy datediff


    【解决方案1】:

    通过分别添加和减去参考日期的 12 小时来构建您的日期边距:

    refdate = CDate(inputday & " 22:00:00")
    mindate = DateAdd("h", -12, refdate)
    maxdate = DateAdd("h", 12, refdate)
    

    然后检查您的文件的创建日期是否在这些边距之间:

    For Each objFile In objfso.GetFolder(sourcepath).Files
      If objFile.DateCreated >= mindate And objFile.DateCreated <= maxdate Then
        objFile.copy NewFolder & "\", True
      End If
    Next
    

    【讨论】:

    • 谢谢队友!我实际上正在考虑那个解决方案,但我搞砸了“mindate”和“maxdate”。非常感谢您的帮助!
    猜你喜欢
    • 2013-02-15
    • 1970-01-01
    • 2017-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-13
    • 2013-11-26
    • 1970-01-01
    相关资源
    最近更新 更多