2

这是我第一次在 stackoverflow 上,希望能对我现在正在努力解决的这个特定主题提供一些帮助。我一直在四处寻找,到目前为止没有任何解决方案有帮助。我的问题如下:

我想查看不同的文件夹和子目录,并使用BATCH文件移动特定日期的文件,其余文件应删除。这是用于日常维护。

文件夹布局如下,仅作为示例:

C:\Batch\Test1  
|Kent  
  |New Folder  
    |New Folder   
      28_02.txt  
|Jordan Hal  
|Wayne Bruce  
  27_02.txt  
  26_02_Backup.txt  
  28_02_Backup.rar

这是我到目前为止的代码:

@echo off

for /d %%a in ("C:\Batch\Test1\*") do (  
  for /d %%b in ("C:\Batch\Test1\%%a\*") do (  
    IF NOT EXIST "C:\Batch\Backup\%%~nxa\%%~nxb" MD "C:\Batch\Backup\%%~nxa\%%~nxb"  
    forfiles /p "%%~b" /m *.* /d -02/29/2013 /c "cmd /c move @file  "C:\Batch\Backup\%%~nxa\%%~nxb""  
    RD /s /q "C:\Batch\Test1\%%~nxa" 2>"C:\Batch\Backup\log.txt"  
  )  
)  

pause

它只备份文件夹,而不备份子目录和文件。

提前致谢!;P

4

1 回答 1

1

使用robocopy. 它是为此类任务而设计的。

robocopy "C:\Batch\Test1" "C:\Batch\Backup" /s /minage:20130229
于 2013-03-04T18:44:19.870 回答