DOS命令行删除N天以前的文件
:: DelOldFile.cmd - 删除指定日期前的所有文件 :_usage :_err1 :_quit |
:: DateDel2.bat - 删除指定路径下指定日数以前修改的文件 :Date2Day :Day2Date |
:: DateDel2.bat - 删除指定路径下指定日数以前修改的文件 :Date2Day :Day2Date |
::DelOldFile.cmd
::删除固定日期前的文件
::Win2003语法
DelOldFile.cmd 2008-01-05 d:/conf
::Win2000语法
DelOldFile.cmd 08-01-05 d:/conf
::将变量扩展到文件的日期/时间
for /r d:/conf %i in (test.txt) do set tt=%~ti
::Win2003结果
tt=2008-01-10 00:33
::Win2000结果
tt=08-01-10 00:33
::DateDel2.bat
::统一语法
::删除指定路径下指定日数以前修改的文件
::set /a将日期与相对天数进行相互换算,以求得差值日期
::删除昨天前修改的文件(包含昨天)
DateDel2.bat 1 d:/conf
::注意根据不同系统修改相应的date扩展变量
DelOldFile.cmd 2008-01-05 d:/conf
::Win2003 date扩展变量
echo %date:~0,10%
2009-01-06
::Win2000 date扩展变量
echo %date:~4,10%
2009-01-06
::Win2000 下需要扩展这个difdate变量以适应FOR命令的文件日期时间扩展变量
%difdate:~2,14%
09-01-06