2

これは私にとって初めてのスタックオーバーフローであり、私がしばらく苦労しているこの特定のトピックに関する助けをいただければ幸いです。私は周りを探し回っていますが、これまでのところ解決策はありません。私の問題は次のとおりです。

さまざまなフォルダーとサブディレクトリを調べて、特定の日付のファイルを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 に答える