学而实习之 不亦乐乎

Windows批处理:实现 while 循环

2022-03-19 10:18:11

一、思路

在批处理脚本中没有直接的while语句,但是可以通过使用if语句和标签来很容易地实现这个循环。

以下是while语句的一般实现的语法。

Set counters
:label
If (expression) (
   Do_something
   Increment counter
   Go back to :label
)

while实现的完整代码放置在标签内。
counter变量必须在while循环实现开始之前设置或初始化。
while条件的表达式使用if语句完成。 如果表达式的值为true,那么执行if循环内的相关代码。
计数器需要在if语句中正确增加,以便while实现可以在某个时间点终止。
最后将回到标签,以便再次评估if语句。

二、实例

SET /A "index=1"
SET /A "count=5"

:while
if %index% leq %count% (

    echo The value of index is %index%
    SET /A "index=index + 1"
    goto :while
)