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