在臨江等地區(qū),都構建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供網(wǎng)站設計制作、網(wǎng)站制作 網(wǎng)站設計制作按需設計網(wǎng)站,公司網(wǎng)站建設,企業(yè)網(wǎng)站建設,品牌網(wǎng)站制作,成都全網(wǎng)營銷,成都外貿網(wǎng)站建設,臨江網(wǎng)站建設費用合理。
備注:
1.如XP下因為沒有forfiles.exe,拷貝windows2003下的forfiles.exe文件到XP的system32目錄即可使用forfiles命令。?
2.該文檔適用于windows客戶端操作系統(tǒng)xp win7/8/10,windows服務器端操作系統(tǒng) server 2003/2008/2012/2016。
3.如有錯漏,煩勞指出,謝謝!
forfiles.exe及幫助
描述:
? ? 選擇一個文件(或一組文件)并在那個文件上執(zhí)行一個命令。這有助于批處理作業(yè)。
語法:
forfiles /p <目標目錄名> /d <天數(shù)> /c <執(zhí)行的命令>?
1.看看列出的三個參數(shù)都有什么用處:(簡單解析)
/p ?指定了要在哪個目錄里查找文件,默認是當前工作目錄。?
/d ?指定一個日期或天數(shù),用于比較文件的最后修改日期是否符合條件。?
/c ?對每個找到的文件執(zhí)行的命令。?
2.看看列出的三個參數(shù)都有什么用處:(詳細解析)
/p
/m
/d [{+|-}][{
當然這里還可以指定具體時間,例如:"/d -08/18/2009"這樣所有早于2009年8月18日的文件。注意指定的時間必須是"MM/DD/YYYY"的格式。?
/c 對所有文件以此執(zhí)行指定的命令,命令體須在雙引號(")內,默認是"cmd /c echo @file"。上文中用到的是"cmd /c del /f @path"刪除指定文件。(這里的@file 和 @path 為變量,下文中將進行解釋。
====================例子說明========
例1.要把在C盤根目錄下最后修改日期大于或等于2007年7月1日的文件復制到D盤根目錄下:?
forfiles /p "c:\" /d "2007-7-1" /c "cmd /c copy @path d:\"?
例2.1 刪除在C盤backup目錄下最后修改日期在10天前的文件:?
forfiles /p "c:\backup" /d -10 /c "cmd /c echo deleting @file ... && del /f @path"?
例2.2?自動刪除D盤test目錄最后修改日期在7天前文件
forfiles /p "d:\test" /s /m *.* /d -7 /c "cmd /c del @path"?
例2.3?刪除當前目錄下28天以前的擴展名為bkf文件(以當前系統(tǒng)時間為基準)?
forfiles /m *.bkf /d -28 /c "cmd /c del @file /f"?
刪除文件的語法解析
forefiles /p /m -d /c
forfiles /p 包含要刪除文件的完整路徑(如:F:\Logfiles) /m *.log -d -7 /c "cmd /c del /f @path"?
解釋一下相關參數(shù)及命令?
@PATH : 表示文件的完整的路徑。?
@File : 表示文件名稱。?
==========案例操作==========
1.刪除所有的空目錄(以刪除d:\test目錄下為例)?
dir /ad/b/s d:\test\ |sort /r >d:\kill.txt?
For /f "tokens=*" %%i in (d:\kill.txt) DO rd "%%i"?
del d:\kill.txt?
2.自動刪除7天前文件和目錄
{建一個bat文件的快捷方式在啟動,d:\test換成你要的目錄路徑。日期是指修改的日期。 }
原理:先刪過期文件,再刪所有的空目錄,這才是一個完整的刪除過程?
@echo off?
forfiles /p "d:\test" /s /m *.* /d -7 /c "cmd /c del @path"?
dir /ad/b/s d:\test\ |sort /r >d:\kill.txt?
For /f "tokens=*" %%i in (d:\kill.txt) DO rd "%%i"?
del d:\kill.txt?