登录
首页 >  文章 >  软件教程

Windows批处理遍历文件技巧

时间:2026-03-29 20:16:06 400浏览 收藏

推广推荐
前往下载Windows工具 ➜
支持 PC / 移动端,安全直达
本文系统介绍了Windows批处理中五种高效、实用的文件遍历方法:从基础的当前目录文件枚举、按扩展名精准匹配,到跨子目录的递归扫描,再到解析文件大小进行条件筛选,以及基于数字序列构造文件名的批量操作;每种方法均提供可直接运行的完整代码示例和典型应用场景说明,帮助用户无需第三方工具即可灵活、可靠地实现各类自动化文件处理任务。

Windows怎么批处理循环遍历文件_Windows如何用for命令遍历处理目录中的文件【方法】

如果您需要在Windows系统中批量处理目录下的多个文件,可以使用批处理脚本中的for命令实现自动遍历。以下是几种常用且互不依赖的实现方法:

一、使用for /F配合dir命令遍历当前目录所有文件

该方法通过dir命令生成文件列表,并由for /F逐行读取输出,适用于需对文件名进行字符串处理或过滤的场景。

1、新建一个文本文件,将后缀改为.bat,例如listfiles.bat

2、用记事本打开该文件,输入以下内容:

@echo off

for /F "delims=" %%i in ('dir /b /a-d 2^>nul') do (

  echo 正在处理:%%i

)

3、保存文件,双击运行,即可在命令行窗口中看到当前目录下每个文件名被依次打印。

二、使用for直接遍历指定扩展名文件

该方法利用for内置通配符匹配能力,无需调用dir,执行效率更高,适合仅需处理特定类型文件(如所有.txt)的情况。

1、新建批处理文件,例如process_txt.bat

2、写入如下内容:

@echo off

for %%f in (*.txt) do (

  echo 发现文本文件:%%f

  type "%%f" | findstr /c:"ERROR" >nul && echo %%f 包含错误标记

)

3、将该批处理文件置于目标目录中,运行后会检查每个.txt文件是否含有“ERROR”字符串。

三、使用for /R递归遍历子目录中所有文件

该方法可穿透当前目录及其全部子目录,对层级结构中的文件统一处理,适用于需全局扫描的维护任务。

1、创建批处理文件scan_all.bat

2、输入以下代码:

@echo off

setlocal enabledelayedexpansion

for /R %%a in (*) do (

  set "fullpath=%%a"

  set "filename=%%~nxa"

  if "!filename:~0,1!"=="_" (

    echo 跳过隐藏命名文件:!filename!

  ) else (

    echo 处理文件:!filename!(路径:!fullpath!

  )

)

3、保存并执行,脚本将递归列出所有非下划线开头的文件及其完整路径。

四、使用for /F解析带路径的dir输出以分离文件名与大小

该方法从dir详细列表中提取文件名和字节数,适合需依据文件大小做条件判断的场景,如筛选大于1MB的文件。

1、新建filter_large.bat

2、填入以下内容:

@echo off

for /F "tokens=3,4 delims= " %%i in ('dir /-c /a-d ^| findstr "^[0-9]"') do (

  if %%i GTR 1048576 (

    echo 超大文件:%%j(%%i 字节)

  )

)

3、运行后,仅显示大小超过1048576字节(即1MB)的文件名及对应字节数。

五、使用for /L配合字符串索引批量重命名序列文件

该方法不依赖文件系统枚举,而是基于数字范围构造文件名,适用于已知命名规律(如file001.jpgfile100.jpg)的批量操作。

1、新建rename_seq.bat

2、写入以下指令:

@echo off

for /L %%n in (1,1,10) do (

  setlocal enabledelayedexpansion

  set "num=00%%n"

  set "num=!num:~-3!"

  if exist "photo!num!.jpg" (

    ren "photo!num!.jpg" "archive_!num!.jpg"

    echo 已重命名:photo!num!.jpg → archive_!num!.jpg

  )

  endlocal

)

3、保存后运行,将尝试对photo001.jpgphoto010.jpg共10个文件执行重命名操作。

好了,本文到此结束,带大家了解了《Windows批处理遍历文件技巧》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多文章知识!

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>