批处理脚本根据修改日期(不包括某些文件)将文件从一个位置移动到另一个位置x天

时间:2017-05-04 10:59:04

标签: batch-file cmd

我正在为特定目的开发批处理脚本。 我的要求是将特定日期(修改日期)之前的文件从一个位置移动到另一个位置。

使用以下脚本: -

@echo off  
set "src=C:\move_file_1_loc_2_another\In"
set "dest=C:\move_file_1_loc_2_another\Out"
 for %%F in ("%src%\*.*") do (
    for /f "tokens=1,2,3 delims=/ " %%A in ("%%~tF") do (
        if not exist "%dest%\%%A" mkdir "%dest%\%%A"
            forfiles -p "%src%" -d -2 -m *.* /C "cmd /c move "%%~fF" "%dest%\%%A"" 
    )
 )

该脚本成功移动文件,留下一些扩展名。让我说清楚一点。

上面的脚本说要将所有文件移动2天以上,但系统也会移动最近2天的某些文件,而某些文件则不会移动。

我的需要是,无论文件的扩展名是什么,它都应该排除最近2天的所有文件。

请建议我哪里出错了。 谢谢。

0 个答案:

没有答案