批处理-for遍历搜索

2025-10-26 22:27:56

1、for /r 参数 遍历搜格式:FOR /R [[drive:]path] %%variable IN (set) DO command [command-parameters]

检查以  [drive:]path  为根的目录树,指向每个目录中的 FOR  语句。如果在  /R  后没有指定目录,则使用当目录。如果集仅为一个单点(.)字符,则枚举该目录树。

这个R可以理解为recursive的缩写,也就是递归的意思。所谓递归简单点来说就是对其目录及其子目录的所有文件行操作。

2、示例1:

@echo off for /r c:\ %%i in (*.exe) do echo %%i pause

把 C 盘根目录,和每个目录的子目录下面全部的EXE 文件都列出来。

批处理-for遍历搜索

3、示例2:

@echo off for /r c:\ %%i in (*.exe) do echo %%i pause

这个命令前面没加那个 c:\ (也就是搜索路径),这样它就会以当前目录为搜索路径bat文件放在桌面运行如下。

批处理-for遍历搜索

4、如果 set  中为具体文件名,不含通配符,则枚举该目录树(即列举该目录及其下面的所有子目录),而不、set 中的指定文件是否存在。这与前面所说的单点(.)枚举目录树是一个道理,单点代表当前目录,也可视为一文件。

5、示例3:

@echo off for /r c:\ %%i in (boot.ini) do echo %%i pause

执行后,它不管boot.ini是否存在而将枚举c 盘所有目录。

批处理-for遍历搜索

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢