你还在为不知道BAT批处理文件for循环的基本格式方法而烦恼么?接下来是小编为大家收集的BAT批处理文件for循环的基本格式方法教程 , 希望能帮到大家 。
BAT批处理文件for循环的基本格式方法一 , 基本格式
对一组文件中的每一个文件执行某个特定命令 。
FOR %variable IN (set) DO command [command-parameters]
%variable 指定一个单一字母可替换的参数 。
(set) 指定一个或一组文件 。可以使用通配符 。
command 指定对每个文件执行的命令 。
command-parameters
为特定命令指定参数或命令行开关 。
在批处理程序中使用 FOR 命令时 , 指定变量请使用 %%variable
而不要用 %variable 。变量名称是区分大小写的 , 所以 %i 不同于 %I.
参数:for有4个参数 /d /l /r /f 他们的作用在下面的例子中讲解
二 , 参数/d
FOR /D %variable IN (set) DO command [command-parameters]
如果集中包含通配符 , 则指定与目录名匹配 , 而不与文件名匹配 。
例如:
@echo off
for /d %%i in (c:*) do echo %%i
pause
运行后 , 会把c盘根目录下的全部目录打印出来 , 不会打印文件
例子:
@echo off
for /d %%i in (???) do echo %%i
pause
会把当前目录下有目录名字只有1-3个字母的 , 就会显示出来 , 没有就不显示了
* 号表示任意N个字符 , 而?只表示任意一个字符
三 , 参数/r
FOR /R [[drive:]path] %variable IN (set) DO command [command-parameters]
检查以 [drive:]path 为根的目录树 , 指向每个目录中的 FOR 语句 。
如果在 /R 后没有指定目录规范 , 则使用当前目录 。如果集仅为一个单点(.)字符 ,
则枚举该目录树 。
/r 可以把当前或者你指定路径下的文件名全部读取 , 注意是文件名字 ,
注意2点:
1.set中的文件名如果含有通配符(?或*),则列举/r参数指定的目录及其下面的所有子目录中和set相符合的所有文件 , 无相符文件的目录则不列举
2.相反 , 如果set中为具体文件名 , 不含通配符 , 则列举该目录树 , 而不管set中的指定文件是否存在
例子:
@echo off
for /r d: %%i in (*.exe) do echo %%i
pause
将把d盘里以exe结尾的文件全部列出来
@echo off
for /r d: %%i in (boot.ini) do echo %%i
pause
列举d盘中存在boot.ini文件的目录
四 。
FOR /L %variable IN (start,step,end) DO command [command-parameters]
该集表示以增量形式从开始到结束的一个数字序列 。因此 , (1,1,5)将产生序列
1 2 3 4 5 , (5,-1,1)将产生序列(5 4 3 2 1)
start 为起始值 , stup为增量 , end结束值 ,
例子:
@echo off
for /l %%i in (1,1,5) do echo %%i
pause
将会列出12345 这几个值
@echo off
for /l %%i in (1,1,5) do start cmd
pause
会打开5个cmd的窗口
五 , 参数/F
迭代及文件解析
使用文件解析来处理命令输出 , 字符串及文件内容 , 使用迭代变量定义要检查的内容或字符串 , 并使用各种option选项来进一步
修改解析方式 , 使用options令牌选项指定那些令牌应该作为迭代变量传递
注意:在没有使用令牌选项时 , /f将只检查第一个令牌
文件解析过程包括读取输出 , 字符串或文件内容 , 将其分成独立的文本行以及在将每行解析成零个或更多个令牌
让后通过设置为令牌的迭代变量值 , 调用for循环 , 默认情况下 , /f传递每个文件每一行的第一个空白分隔符 , 跳过空行
命令格式:
FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN ('command') DO command [command-parameters]
带引号的字符串“options”包括一个或多个
指定不同解析选项的关键字 , 这些关键字为:
eol=c 指定一个注释字符的结尾(就一个)
【BAT批处理文件for循环的基本格式方法】skip=n 指在文件开始时忽略的行数
delims=xxx 指定分隔符集 , 这个替换了空格和跳格键的默认分隔符集
- 苹果笔记本电脑如何打开rar文件
- 电脑重装系统后怎么恢复原来的文件方法
- 360杀毒怎么恢复隔离区的文件
- 电脑打不开zip文件怎么解决并打开
- 右键菜单没有压缩文件选项,这样做轻松解决问题
- 电脑打不开xlsx文件怎么办
- 电脑qq共享文件打不开怎么办
- 三星手机qq,三星手机qq下载的文件在哪里
- win7如何安装pdf打印机
- bat电脑病毒代码