批处理之for用法大全
在批处理脚本中,for循环是最常用的控制结构之一,它可以让你重复执行一系列命令,直到满足某个条件为止,本文将详细介绍for循环的用法,包括基本语法、控制语句、循环变量的使用以及一些高级技巧。
基本语法
1、初始化
在使用for循环之前,需要先初始化一个计数器变量,这个变量用于记录循环的次数,在for循环中,可以使用set命令来设置计数器的初始值和每次循环后递增的值。
set count=0 for %%i in (*.txt) do ( set /a count+=1 echo 文件名:%%i,计数:!count! )
2、循环体
for循环的主体部分是一个或多个命令序列,这些命令会在每次循环时执行一次,通常情况下,我们会使用echo命令来输出当前循环的相关信息。
3、结束条件
for循环会在满足结束条件时自动终止,结束条件可以是任何比较表达式,例如比较两个变量的值、检查文件是否存在等,当结束条件为真(非零)时,循环将终止。
set /a a=5 set /a b=10 for %%i in (1,2,3) do ( if %%i==3 ( echo 找到了数字3! exit /b ) else ( echo i:%%i,a:%%a,b:%%b! ) )
控制语句
1、break
当遇到break关键字时,for循环将立即终止,不再执行后续的循环体,这在我们需要在满足某个条件时提前退出循环时非常有用。
for %%i in (1,2,3,4,5) do ( if %%i==3 ( break ) else ( echo i:%%i! ) )
2、continue
当遇到continue关键字时,for循环将跳过当前循环体中剩余的所有命令,直接进入下一次循环,这在我们需要在满足某个条件时跳过当前循环体中的某些操作时非常有用。
for %%i in (1,2,3,4,5) do ( if %%i==3 ( continue ) else ( echo i:%%i! ) )
循环变量的使用
在for循环中,可以使用多种类型的变量作为循环变量,以下是一些常见的用法:
1、不带参数的变量(默认从1开始)
set /a i=1000000000%1000000000+1000000000%1000000000-1000000000%100+100%10+(1977*289)+(2^32-1)/(2^32)*289+(2^64-1)/(2^64)*289-(2^64-1)/(2^64)*289+(2^64-1)/(2^64)*289-(2^64-1)/(2^64)*289+(2^64-1)/(2^64)*289-(2^64-1)/(2^64)*289+(2^64-1)/(2^64)*289-(2^64-1)/(2^64)*289+(2^64-1)/(2^64)*289*((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((1977*289))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5))%(1+sqrt(5))/5)+N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*(N*))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))}}}}))))}}}}))))}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}$}}}}}}}|$}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$}|}$|}$}|}$|$}$|$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$}$$$$$$$$$$$$$$
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/246344.html