2011/05/11

batch file 刪除 目錄下 五天以前的所有檔案

自上次發表所謂的batch file + VBS 刪除 目錄下 五天以前的所有檔案後,
在 Win7上發現更方便的現成工具(不確定其他OS是否有支援)
ROBOCOPY :: Robust File Copy for Windows

比較有趣的參數:
/MAX:n ::檔案大小上限 - 排除大於 n 個位元組的檔案。
/MIN:n :: 檔案大小下限 - 排除小於 n 個位元組的檔案。

/MAXAGE:n :: 檔案期限上限 - 排除 n 日/日期之前的檔案。
/MINAGE:n :: 檔案期限下限 - 排除 n 日/日期之後的檔案。
/MAXLAD:n :: 上次存取日期上限 -排除自 n 日後未使用的檔案。
/MINLAD:n :: 上次存取日期下限 - 排除自 n 日後使用的檔案。
(如果 n < 1900 則 n = n 日,否則 n = YYYYMMDD 日期)。



還有:
FORFILES [/P pathname] [/M searchmask] [/S]
[/C command] [/D [+ | -] {yyyy/MM/dd | dd}]

描述:
選取一個檔案 (或一組檔案),並在檔案上
執行命令。這對批次工作很有幫助。

/C command 表示每個檔案要執行的命令。
命令字串應該包含在雙括號
之間。

預設的命令是 "cmd /c echo @file"。

/D date 選取檔案上次修改的時間大於或
等於 (+) 、小於或等於 (-),
使用 "yyyy/MM/dd" 格式指定的日期;
或選取檔案上次修改
的時間大於或等於 (+)
目前的日期再加上 "dd" 天、
小於或等於 (-) 目前的日期減去 "dd" 天。
有效的 "dd" 可以是介於
0 - 32768 之間的數字。
如果未指定,"+" 將被視為預設符號。