FOR 參數(shù) %%變量名 IN (相關(guān)文件或命令) DO 執(zhí)行的命令
參數(shù):FOR有4個(gè)參數(shù) /d /l /r /f 他們的作用我在下面用例子解釋
%%變量名 :這個(gè)變量名可以是小寫(xiě)a-z或者大寫(xiě)A-Z,他們區(qū)分大小寫(xiě),FOR會(huì)把每個(gè)讀取到的值給他;
IN:命令的格式,照寫(xiě)就是了;
(相關(guān)文件或命令) :FOR要把什么東西讀取然后賦值給變量,看下面的例子
do:命令的格式,照寫(xiě)就是了!
執(zhí)行的命令:對(duì)每個(gè)變量的值要執(zhí)行什么操作就寫(xiě)在這.
可以在CMD輸入for /?看系統(tǒng)提供的幫助!對(duì)照一下
FOR %%variable IN (set) DO command [command-parameters]
%%variable 指定一個(gè)單一字母可替換的參數(shù)。
(set) 指定一個(gè)或一組文件。可以使用通配符。
command 指定對(duì)每個(gè)文件執(zhí)行的命令。
command-parameters
為特定命令指定參數(shù)或命令行開(kāi)關(guān)。
現(xiàn)在開(kāi)始講每個(gè)參數(shù)的意思
/d
僅為目錄
如果 Set (也就是我上面寫(xiě)的 "相關(guān)文件或命令") 包含通配符(* 和 ?),將對(duì)與 Set 相匹配的每個(gè)目
錄(而不是指定目錄中的文件組)執(zhí)行指定的 Command。
系統(tǒng)幫助的格式:FOR /D %%variable IN (set) DO command
他主要用于目錄搜索,不會(huì)搜索文件,看這樣的例子
@echo off
for /d %%i in (*) do @echo %%i
pause
把他保存放在C盤(pán)根目錄執(zhí)行,就會(huì)把C盤(pán)目錄下的全部目錄名字打印出來(lái),而文件名字一個(gè)也不顯示!
在來(lái)一個(gè),比如我們要把當(dāng)前路徑下文件夾的名字只有1-3個(gè)字母的打出來(lái)
@echo off
for /d %%i in (???) do @echo %%i
pause
這樣的話如果你當(dāng)前目錄下有目錄名字只有1-3個(gè)字母的,就會(huì)顯示出來(lái),沒(méi)有就不顯示了
思考題目:
@echo off
for /d %%i in (window?) do @echo %%i
pause
保存到C盤(pán)下執(zhí)行,會(huì)顯示什么呢?自己看吧!
/D參數(shù)只能顯示當(dāng)前目錄下的目錄名字,這個(gè)大家要注意!
/R
遞歸
進(jìn)入根目錄樹(shù) [Drive:]Path,在樹(shù)的每個(gè)目錄中執(zhí)行 for 語(yǔ)句。如果在 /R 后沒(méi)有指定目錄,則認(rèn)為是
當(dāng)前目錄。如果 Set 只是一個(gè)句點(diǎn) (.),則只枚舉目錄樹(shù)。
系統(tǒng)幫助的格式:FOR /R [[drive:]path] %%variable IN (set) DO command
上面我們知道,/D只能顯示當(dāng)前路徑下的目錄名字,那么現(xiàn)在這個(gè)/R也是和目錄有關(guān),他能干嘛呢?放心他比