介紹 forfiles是windows自帶的一個批量刪除命令,對於時間的判斷是通過文件自身的修改日期屬性進行判斷,使用它來對歷史文件進行判斷刪除是個不錯的選擇。 語法 forfiles [/p Path ] [/m SearchMask ] [/s ] [/c Command ] [/d [{+ | ...
介紹
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 本站點所有隨筆都是原創,歡迎大家轉載;但轉載時必須註明文章來源,且在文章開頭明顯處給明鏈接。 《歡迎交流討論》 |