批处理脚本:根据修改日期将文件移动到文件夹

时间:2014-05-08 10:55:55

标签: batch-file

我需要根据修改日期将某些文件移动到另一个文件夹。

我想出了以下批处理脚本。

    @ECHO OFF
    SetLocal EnableDelayedExpansion
    set "FolderA=D:\IN\Set1"
    set "FolderB=D:\IN\Set2"
    set "FolderC=D:\OUT\"

    for /f "tokens=2 delims=," %%a in (D:\input.txt) do (
    Xcopy "!FolderB!\%%~a" "!FolderC!\" 
    Echo Copied "%%~a" to "!FolderC!"
    )

    for /f "tokens=1 delims=," %%a in (D:\input.txt) do (
    Xcopy "!FolderA!\%%~a" "!FolderC!\" 
    Echo Copied "%%~a" to "!FolderC!"
    )

input.txt包含文件名: file1.dat,file_abcd_efgh_ijklmnop02-2014.dat File2.DAT的 file3.dat

  1. 目的地FolderC实际上应该设置为D:\ OUT \ 2014 \ P02,它基于file_abcd_efgh_ijklmnop02- 2014 .dat - > (2014年,02年)。

  2. 从FolderB移到FolderC时,我们应检查文件是否在过去34天内修改了日期。如果是,并且文件名是file_abcd_efgh_ijklmnop02-2014.dat,请检查文件夹D:\ OUT \ 2014 \ P02是否存在,否则创建它。

  3. 从FolderA移至FolderC时,应检查过去34天内修改日期的文件,并应移至D:\ OUT \ 2014 \ P02。

  4. 感谢。

0 个答案:

没有答案