2017年9月20日 星期三
使用cmd指令刪除n天前的檔案(forfiles)
FORFILES [/P pathname] [/M searchmask] [/S] [/C command] [/D [+ | -] {yyyy/MM/dd | dd}]
/P pathname 表示要開始搜尋的路徑。
預設資料夾是目前的
目錄 (.)。
/M searchmask 根據 searchmask 搜尋檔案。
預設的 searchmask 是 '*'。
/S 指示 forfiles 遞迴搜尋
子目錄。例如 "DIR /S"。
/C command 表示每個檔案要執行的命令。
命令字串應該包含在雙括號
之間。
預設的命令是 "cmd /c echo @file"。
/D date 選取檔案上次修改的時間大於或
等於 (+) 、小於或等於 (-),
使用 "yyyy/MM/dd" 格式指定的日期;
或選取檔案上次修改
的時間大於或等於 (+)
目前的日期再加上 "dd" 天、
小於或等於 (-) 目前的日期減去 "dd" 天。
有效的 "dd" 可以是介於
0 - 32768 之間的數字。
如果未指定,"+" 將被視為預設符號。
範例如下
刪除放在D:\LOG目錄內10天以前的記事本檔案
forfiles /P "D:\LOG" /S /M *.txt /D -10 /C "cmd /c del @path"
列出並刪除放在D:\LOG目錄內10天以前的記事本檔案
forfiles /P "D:\LOG" /S /M *.txt /D -10 /C "cmd /c echo delete @path && del @path"
列出放在D:目錄內所有的批次檔
forfiles /P "D:" /S /M *.bat /C "cmd /c echo @path"
複製D:\WORK目錄內10天以前的檔案到E:\Archive
forfiles /P "D:\WORK" /S /D -10 /C "cmd /c copy @path E:\Archive"
列出並複製D:\WORK目錄內10天以前的檔案到E:\Archive
forfiles /P "D:\WORK" /S /D -10 /C "cmd /c echo copy @path && copy @path E:\Archive"
搬移D:\WORK目錄內10天以前的檔案到E:\Archive
forfiles /P "D:\WORK" /S /D -10 /C "cmd /c move @path E:\Archive"
列出並搬移D:\WORK目錄內10天以前的檔案到E:\Archive
forfiles /P "D:\WORK" /S /D -10 /C "cmd /c echo move @path && move @path E:\Archive"
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言