Windows批處理文件中FOR循環的語法是什麼?如何在Windows批處理文件中循環?
回答
FOR %%A IN (list) DO command parameters
列表是任何元素的列表,由任一空間,逗號或分號分隔。
命令可以是任何內部或外部的命令,批處理文件或甚至 - 在OS/2和NT - 命令
參數的列表包含命令的命令行參數。 在這個例子中,對於列表中的每個元素,將使用參數(如果指定)執行一次命令。
一個特殊類型的參數(甚至是命令)是%% A,它將被列表中的每個元素連續替換。
類型:
for /?
,你會得到幫助文本的幾頁。
我比接受的答案更喜歡這個,因爲它處理不同版本的DOS/Windows。 「For」在過去幾年中得到了非常顯着的提升,問題並未說明目標版本是什麼,也沒有說明正在嘗試什麼樣的情況。 – 2012-09-27 03:35:13
如果你想要做的事x次,你可以這樣做:
例(X = 200):
FOR /L %%A IN (1,1,200) DO (
ECHO %%A
)
1,1,200
表示:
- 開始= 1
- I每步= 1
- 結束ncrement = 200
感謝您的加入。如果將示例中的起始值更改爲與增量不同的值,可能會更清楚。 – 2013-12-13 15:28:52
最終值包含在內。 – 2016-12-11 02:41:23
FOR
會給你,你永遠需要了解FOR循環,包括適當的用法示例的任何信息。
嘗試此代碼:
@echo off
color 02
set num1=0
set num2=1
set terminator=5
:loop
set /a num1= %num1% + %num2%
if %num1%==%terminator% goto close
goto open
:close
echo %num1%
pause
exit
:open
echo %num1%
goto loop
num1
將遞增的數量和num2
是添加到num1
和終止子的值是其中num1
將結束值。您可以在此聲明中指示終止符的不同值(if %num1%==%terminator% goto close
)。這是布爾表達式goto close是進程,如果布爾值爲true並且打開是進程,如果布爾值爲false。
你不能使用'FOR'命令嗎? – 2016-11-30 16:45:21
@echo off
echo.
set /p num1=Enter Prelim:
echo.
set /p num2=Enter Midterm:
echo.
set /p num3=Enter Semi:
echo.
set /p num4=Enter Finals:
echo.
set /a ans=%num1%+%num2%+%num3%+%num4%
set /a avg=%ans%/4
ECHO %avg%
if %avg%>=`95` goto true
:true
echo The two numbers you entered were the same.
echo.
pause
exit
有條件地執行多次命令。
在路徑
FOR /R [[drive:]path] %%parameter IN (set) DO command
語法-FOR-文件夾
FOR /D %%parameter IN (folder_set) DO command
語法-FOR-文件
FOR %%parameter IN (set) DO command
語法-FOR-文件層次語法-FOR -list數字
FOR /L %%parameter IN (start,step,end) DO command
語法-FOR-文件內容
FOR /F ["options"] %%parameter IN (filenameset) DO command
或
FOR /F ["options"] %%parameter IN ("Text string to process") DO command
語法-FOR-命令結果
FOR /F ["options"] %%parameter IN ('command to process') DO command
它
- 以使一個用於參數
%%G
等於數據 - 執行命令的一些部分(任選地使用的參數作爲命令的一部分)的一組數據
- 的。
- - >數據
的每個項目重複。如果你使用的是在命令行,而不是在一個批處理程序指令,只使用一個百分號:中%G
代替%%G
。
FOR參數
第一個參數必須使用一個單獨的字符被定義爲,例如字母G.
FOR %%G IN
...在FOR的每次迭代循環,評估
IN (....)
子句並將%%G
設置爲不同的值如果該子句產生單個值,則%% G設置爲等於該值,並執行該命令。
如果子句導致多個值,則會隱式定義額外的參數以保存每個參數。這些按字母順序自動分配
%%H %%I %%J
...(隱式參數定義)如果參數引用文件,則可以使用增強型變量引用來提取文件名/路徑/日期/大小。
你當然可以選擇除
%%G
以外的其他字母。但它是一個不錯的選擇,因爲它不會與任何路徑名格式字母(a,d,f,n,p,s,t,x)相沖突,並提供最長的非衝突字母作爲隱式參數。
FOR /?
從幫助文檔:
FOR%變量IN(組)DO命令[命令參數]
%變量指定一個單一的字母替換的參數。
(set)指定一組一個或多個文件。可以使用通配符。 command指定要爲每個文件執行的命令。
命令參數
指定指定命令的參數或開關。
要在批處理程序中使用FOR命令,請指定%%變量%
%變量。變量名稱區分大小寫,因此%i與%I不同
。
如果命令擴展被啓用,以下附加
形式FOR命令支持的:
FOR IN(組)/ d%變量DO命令[命令參數]
If set contains wildcards, then specifies to match against directory
names instead of file names.
FOR/R [[drive:]路徑]%變量IN(設置)DO命令[命令參數]
Walks the directory tree rooted at [drive:]path, executing the FOR
statement in each directory of the tree. If no directory
specification is specified after /R then the current directory is
assumed. If set is just a single period (.) character then it
will just enumerate the directory tree.
FOR/L%變量IN ,步驟,結束)DO命令[命令參數]
The set is a sequence of numbers from start to end, by step amount.
So (1,1,5) would generate the sequence 1 2 3 4 5 and (5,-1,1) would
generate the sequence (5 4 3 2 1)
- 1. Windows批處理文件處理 - 循環
- 2. 循環在Windows批處理文件
- 3. Windows批處理文件循環問題
- 4. 如何在Windows批處理文件中創建無限循環?
- 5. 帶批處理的Windows批處理文件夾循環
- 6. Windows批處理文件循環通過目錄處理文件?
- 7. 在Windows批處理文件中循環搜索文件
- 8. 處理Windows批處理文件for循環中的變量
- 9. Windows批處理循環
- 10. Windows批處理循環如何?
- 11. 在批處理文件中循環
- 12. 在批處理文件中循環
- 13. 避免在Windows批處理文件的for循環中打印
- 14. 批處理文件在循環中運行windows命令
- 15. 在Windows批處理文件的FOR循環中轉義星號
- 16. FOR批處理文件中的循環
- 17. 如何在批處理中循環?
- 18. 在批處理循環中處理文件名中的空格
- 19. 如何在批處理文件中打破FOR循環?
- 20. 如何在批處理文件中使用嵌套FOR循環
- 21. 如何在Windows批處理文件中實現嵌套的do while循環?
- 22. windows批處理文件:for循環中的設置變量
- 23. windows批處理文件中的字符串循環
- 24. Windows批處理文件 - 嵌套FOR循環中的變量
- 25. 在Windows批處理文件FOR/F循環故障
- 26. 如何在Windows批處理文件
- 27. cmd編程批處理文件循環
- 28. 通過文件循環批處理
- 29. FOR批處理文件問題循環
- 30. 批處理文件:轉到for循環
這是Google中「批處理文件循環」的第一個結果。它是否使它成爲一個無限循環?遞歸搜索?我很困惑! – Ben 2013-03-06 07:49:43