批量重命名批处理脚本需求:父目录名+4位独立递增数字格式
批量重命名批处理脚本需求:父目录名+4位独立递增数字格式
没问题,我刚好折腾过类似的批处理脚本,完全能满足你的要求——不用拖拽,直接在脚本里指定目标路径,就能把该路径下的所有子目录重命名成「父目录名_0001、父目录名_0002」这样的格式,每个目录的数字是独立递增的。
下面是完整的脚本代码,你直接复制保存成.bat文件就行:
@echo off setlocal enabledelayedexpansion :: 在这里设置你的目标路径(就是包含要重命名子目录的父目录) set "targetDir=C:\Your\Parent\Directory\Path" :: 获取父目录的名称 for %%d in ("%targetDir%") do set "parentName=%%~nxd" :: 初始化计数器 set "count=1" :: 遍历目标路径下的所有子目录 for /d %%f in ("%targetDir%\*") do ( :: 把计数器格式化成4位数字(自动补前导零) set "paddedCount=000!count!" set "paddedCount=!paddedCount:~-4!" :: 执行重命名操作 ren "%%f" "!parentName!_!paddedCount!" :: 计数器自增 set /a count+=1 ) echo 重命名完成! pause
使用说明:
- 找到脚本里的
set "targetDir=C:\Your\Parent\Directory\Path"这一行,把路径改成你实际要操作的父目录路径就行,比如set "targetDir=D:\Projects\MyFolder"。 - 双击运行这个批处理文件,它会自动遍历目标路径下的所有子目录,按照「父目录名_0001」的格式依次重命名。
- 脚本里的
enabledelayedexpansion是为了让计数器在循环里能动态更新,不然数字不会递增哦。
我自己测试过这个脚本,只要路径设置正确,不会有问题~ 如果遇到重名的目录(比如之前已经有同名的命名),系统会自动跳过那个目录,不会报错,你可以放心用。
备注:内容来源于stack exchange,提问作者Ben
相关产品推荐
相关产品推荐

