批处理文件选择指定在Windows Server 2008 R2 Enterprise上由今天日期创建/修改的文件

时间:2013-01-21 06:33:20

标签: batch-file batch-processing

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

1 个答案:

答案 0 :(得分:0)

您是否尝试过使用vb脚本? 使用vb& amp;基于日期处理操作要简单得多然后使用批处理调用相同的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文件中。用所需的文件夹替换起始文件夹和目标变量。这将轮询今天创建的任何文件,并将其复制到目标文件夹。