方案背景图

文件批量重命名用 bat 脚本能做到:先用 dir /b /o:n 把原文件名导出成清单留底,再写一段最简单的加前缀脚本,需要 001 到 100 连续编号就开延迟变量补零,顺序不对换成按修改时间排。

改名前把整个文件夹复制一份,只在副本上试跑,几百个文件按 F2 手改太慢的问题就能解决,也不怕改坏了回不去。以下方法在 Windows 10/11 实测可用。

适用系统:Windows 10/11;最后更新:2026-09-22。

几百个文件按 F2 手改太慢,bat 到底从哪下手

文件夹里几百张照片要统一加前缀,按 F2 一个个改一下午也改不完。第一次写 bat 常见的画面是:双击脚本后窗口一闪而过,文件名一个都没变,偶尔弹一行「命令语法不正确」或者「系统找不到指定的文件」。

文件批量重命名 bat 改名前要做的几件事-软领Win解压缩

卡住的地方通常就两处,循环变量写法和排序补零逻辑。先判断自己卡在哪一层,再对症改脚本,能省掉大量反复重来的时间。

方法1 先备份文件夹并导出原文件名清单

改名前先留底,脚本跑错了能照着清单一条条改回来。最稳的做法是把整个目标文件夹复制一份到 D:\rename_bak,所有试验都在副本上做,原始文件不动。

导出清单要在目标文件夹里打开命令提示符。在文件资源管理器地址栏直接敲 cmd 回车,窗口就落在当前目录,比一层层 cd 进去省事。

文件批量重命名前备份文件夹和导出文件名清单的先后顺序-软领Win解压缩

操作步骤

  1. 把整个目标文件夹复制一份到 D:\rename_bak,只在副本上试脚本
  2. 在目标文件夹地址栏直接输入 cmd 回车,命令提示符就落在当前目录
  3. 执行 dir /b /o:n > name_list.txt,把原文件名按顺序导出成清单
  4. 核对 name_list.txt 里的行数和文件夹里的文件数量是否一致
  5. 清单和备份都在位,再开始动改名脚本

方法2 写一段最短的加前缀 bat 脚本

十行以内就能跑通统一前缀,这是新手最容易成功的第一段批处理。脚本内容只写两行,第一行 @echo off,第二行 for %%f in (*.jpg) do ren "%%f" "IMG_%%f"。

循环变量在 bat 文件里要写两个百分号 %%f,在命令提示符窗口里直接敲才是单个 %f。这两个写反了,双击后变量不展开,文件一个都不会改。保存时编码选 ANSI,否则中文文件名容易变成乱码。

bat 批量重命名循环变量 %f 与 %%f 写法对照-软领Win解压缩

操作步骤

  1. 在目标文件夹里新建文本文件,重命名为 rename.bat,扩展名必须是 .bat 不能是 .txt
  2. 内容只写两行:@echo off 和 for %%f in (*.jpg) do ren "%%f" "IMG_%%f"
  3. 保存时编码选 ANSI,否则中文文件名容易乱码
  4. 双击运行前先把 ren 换成 echo 试跑一遍,只打印新名字不改名
  5. 确认打印结果符合预期,再改回 ren 双击执行

方法3 用延迟变量做 001 到 100 连续编号

要做 001、002、003 这种连续编号,必须开延迟变量。bat 默认在循环开始前就把变量一次性展开,不开延迟变量,每条循环拿到的都是同一个旧值,新名字会撞成一堆。

关键在于用感叹号取变量。写成 %num:~-3% 会全部展开成同一个号,改成 !num:~-3! 才会一个一个往下走。开头还要加 setlocal enabledelayedexpansion,再 set n=0 初始化计数器。

操作步骤

  1. 开头写 setlocal enabledelayedexpansion,再写 set n=0 初始化计数器
  2. 循环体里 set /a n+=1 自增,再用 set num=000!n! 把数字补成三位
  3. 取末三位拼新名:ren "%%f" "pic_!num:~-3!.jpg"
  4. 写成 %num:~-3% 会全部展开成同一个号,延迟展开必须用感叹号
  5. 先只 echo 新名字跑一遍,确认 001、002 连续再真正执行

用「软领Win解压缩」更省事

软领Win解压缩里的文件管理支持选中一批文件后直接生成新名字,可以按加前缀、替换文字、顺序编号几种方式组合。点执行前先看预览列表,跑完不满意还能对着 name_list.txt 改回来,全程不用打开记事本写脚本,也不用记 %%f 和 !num:~-3! 这类写法。

一批照片或者扫描件改完名,用创建压缩包一次打成压缩包,整批发走或者归档,不用在文件夹里一个个勾选。

批量重命名后的文件用创建压缩包一次打包-软领Win解压缩

改名后的图片体积偏大,上传前用图片压缩顺手压一遍,尺寸不变也能明显瘦身,整批发出去的速度快不少。

改名后的图片用图片压缩减小体积再上传-软领Win解压缩

软领是知名国产软件品牌,20 年技术沉淀、服务千万用户。软领官网 wyouhua.com 直接下载,安装无捆绑勾选项。

软件里有客服按钮,点一下就能联系真人客服,情况复杂时还有工程师远程协助。

软领Win解压缩下载

方法4 让编号按修改时间或拍摄时间排

for %%f in (*.jpg) 默认按文件名的字母序取文件,跟拍摄先后没关系。手机导出的照片名是 IMG_20240512_101533.jpg 这类,字母序和拍摄时间基本对得上;相机连拍导出的名字比较随意,顺序就乱了。

按修改时间排要把循环换成读 dir 的输出。dir /b /o:d *.jpg 从旧到新,把开关换成 /o:-d 就是从新到旧倒序编号。

bat 批量重命名按文件名、修改时间、倒序编号的区别-软领Win解压缩

操作步骤

  1. 默认 for %%f in (*.jpg) 走的是文件名字母序,跟拍摄先后没关系
  2. 按修改时间排要改成 for /f "delims=" %%f in ('dir /b /o:d *.jpg') do ...
  3. 把 /o:d 换成 /o:-d 就是从新到旧倒序编号
  4. 要连子文件夹一起处理,给 dir 加 /s,注意 /b /s 会带上完整路径
  5. 跑之前先用 echo 打印编号,核对顺序和预期一致

方法5 处理重名冲突和批量回滚

ren 碰到目标名已经存在,会直接跳过这个文件,不报错也不中断脚本,跑完才发现少改了几十个。这种情况看窗口是看不出来的,得自己查。

先确认有没有撞名,命令是 dir /b *.jpg | findstr /i "IMG_",列出来的就是已经带前缀的文件。脚本里加一句 if not exist "新名" 判断,能主动跳过被占用的目标名。

文件批量重命名没生效时怎么判断原因-软领Win解压缩

操作步骤

  1. 目标名已被占用时 ren 会直接跳过这个文件,不会中断脚本也不报错
  2. 先查有没有撞名:dir /b *.jpg | findstr /i "IMG_"
  3. 脚本里加 if not exist "新名" 判断,主动跳过被占用的目标名
  4. 改坏了就对着 name_list.txt 一条条改回原名
  5. 想整批重来,删掉改坏的副本,从 D:\rename_bak 重新复制一份

常见问题

文件批量重命名 bat 怎么写才能从 001 排到 100?

开头 setlocal enabledelayedexpansion,set n=0;循环里 set /a n+=1 自增,set num=000!n! 补三位,再用 ren "%%f" "pic_!num:~-3!.jpg" 取末三位。先 echo 一遍确认 001、002 连续再执行。

bat 里 for 循环写 %%f 还是 %f,为什么双击后没反应?

写进 .bat 文件用 %%f,在命令提示符窗口里直接敲用 %f。写成单个 %f 再双击,循环变量不会正常展开,文件一个都不改。

ren 命令提示文件已存在,批量改名失败怎么处理?

目标是同名的文件会被跳过,脚本不报错也不中断。先用 dir /b *.jpg | findstr /i "IMG_" 查一遍,再在脚本里加 if not exist 判断,跳过被占用的目标名。

批量重命名以后想改回原名,没导出清单还有办法吗?

没清单就只能凭印象手动改,照片还看 EXIF 里的拍摄时间对照。所以改名前一定先跑 dir /b /o:n > name_list.txt,把原名按顺序存下来。

bat 脚本处理中文文件名乱码,保存成什么编码?

在记事本里另存为时把编码选 ANSI,中文名就能正常显示。存成 UTF-8 又没加 chcp 65001,窗口里的中文会变成问号,文件名也跟着出错。

推荐阅读

文件批量重命名整理怎么弄?4种方法从基础到高级,完整覆盖

mac压缩包Windows打开乱码,换解压工具或批量重命名也能解决

批量压缩图片大小用哪个工具 4种方法

相关推荐

文件夹怎么压缩发送到微信?

压缩文件太大如何分卷 分卷压缩包序号错乱先排序再批量补零

文件夹怎么压缩成7z体积不减小,先改压缩级别再核对源文件大小

什么是CPIO格式文件?如何打开cpio文件

什么是NSIS格式文件?如何打开nsis文件

什么是UDF格式文件?如何打开udf文件

文件批量重命名工具文件批量重命名软件bat脚本批量重命名软领Win解压缩
Win解压缩下载

客服
扫描与客服沟通

回顶部
提示

正在拉起鸿蒙应用市场,如遇无法拉起/无法下载的情况,可使用鸿蒙设备,自行前往应用市场,搜索「Win解压缩」安装。

知道了