Windows forfiles(刪除歷史文件)


介紹

forfiles是windows自帶的一個批量刪除命令,對於時間的判斷是通過文件自身的修改日期屬性進行判斷,使用它來對歷史文件進行判斷刪除是個不錯的選擇。

 

 

語法

forfiles [/p Path ] [/m SearchMask ] [/s ] [/c Command ] [/d [{+ | - }] [{MM / DD / YYYY | DD }]]

 

[/p Path ]:指定路徑,當然目錄可以用“.”
[/m SearchMask ]:搜索方式,默認是*.* 
[/s ]:遍歷子目錄進行搜索,包括當前目錄

[/d [{+ | - }] [{MM / DD / YYYY | DD }]]:選擇日期大於或等於(+ )(或者小於或等於(- ))指定日期的文件,默認+
其中MM / DD / YYYY 是指定的日期,DD 是當前日期減去DD 天,默認是DD 。DD 的有效范圍是0 - 32768
例如:
/d -15:查找15天之前的文件
/d 2016/12/9:指定查找的文件日期為2016/12/9

[/c Command ]:指定要執行的命令,格式為[ /c "cmd /c rd /s/q @path" ];雙引號里面的/c后接需要執行的命令。

變量:
@file
 顯示文件名
@fname
 顯示無擴展名的文件名
@ext
 顯示文件擴展名
@path
 顯示文件的完整路徑
@relpath
 文件的相對路徑
@isdir
 如果文件類型是目錄,則計算值為TRUE,否則值為FALSE
@fsize
 顯示用字節表示的文件大小
@fdate
 顯示文件中上次修改的日期戳
@ftime
 顯示文件中上次修改的時間戳

示例

1.查看“d:\backup\data”目錄下名稱包含“--”,且修改時間大於15天的文件或者文件夾

forfiles.exe /p d:\backup\data /m *-*-* /d -15 /c "cmd /c echo @path"

2.刪除,/s/q(/s文件夾下存在文件也刪除,/q強制刪除不提示)

forfiles.exe /p d:\backup\data /m *-*-* /d -15 /c "cmd /c rd /s/q @path"

 

備注:路徑不支持"\\url\"這種共享路徑,rd(刪除文件夾),del(刪除文件)

總結

 

 

 

備注:

    作者:pursuer.chen

    博客:http://www.cnblogs.com/chenmh

本站點所有隨筆都是原創,歡迎大家轉載;但轉載時必須注明文章來源,且在文章開頭明顯處給明鏈接。

《歡迎交流討論》


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM