1

当我在 Windows Server 2008 上运行以下批处理时遇到问题,它将选择昨天和今天日期的那些文件,但我只想要今天。当我尝试在 Windows 7 上测试这个批处理文件时,它工作正常,它只会复制今天的文件。
那么是因为Windows不同还是代码?有什么建议吗??
我的批处理文件代码:
robocopy "D:\Program Files\My LogFiles\JobServer_01" "D:\Program Files\My LogFiles\LogDestination" s*.txt /MAXAGE:1

4

1 回答 1

0

您是否尝试过使用 vb 脚本?使用 vb 处理基于日期的操作然后使用批处理调用相同的 vb 脚本要简单得多。

target="d:\path2\"
Set objFSO = CreateObject("Scripting.FileSystemObject")
objStartFolder = "D:\path1"
Set objFolder = objFSO.GetFolder(objStartFolder)
Set colFiles = objFolder.Files
For Each objFile in colFiles
    if (DateDiff("d",objFile.DateCreated, NOW)=<1) Then  
    objFSO.MoveFile objFile, target
    Wscript.Echo objFile.Name & vbcrlf  
    end if
Next

将上述代码保存在 .vbs 文件中。用所需的文件夹替换 startfolder 和 target 变量。这将轮询今天创建的任何文件并将其复制到目标文件夹。

于 2013-01-21T07:14:28.987 回答