win11可用bat脚本批量重命名pdf为“客户名_签约日期_序号”格式:需新建rename.bat,编码选utf-8,同目录运行,关闭onedrive同步,取消只读属性,并用for /f安全处理特殊字符。

Win11怎么用BAT批处理脚本批量按规律重命名文件
你需要把一个文件夹里327个PDF合同统一改成“客户名_签约日期_序号”格式,比如“华为_20261018_001.pdf”,但手动改要半小时、PowerShell又怕权限报错、PowerToys还没装——这时候一个双击即跑的.bat脚本就是最稳的工业级解法。
准备:创建并保存脚本文件
在目标文件夹空白处右键→“新建”→“文本文档”,重命名为rename.bat(注意后缀必须是.bat,不是.txt)。
右键该文件→“编辑”,粘贴以下基础框架代码:
@echo off
setlocal enabledelayedexpansion
set COUNT=1
for /f "delims=" %%F in ('dir /b /a-d *.pdf 2^>nul') do (
ren "%%F" "客户名_20261018_!COUNT:000!.pdf"
set /a COUNT+=1
)
这一步必须做:记事本→“文件”→“另存为”→在“编码”下拉菜单中选UTF-8,否则中文路径或文件名会变乱码;保存类型选“所有文件”,确认扩展名是.bat。
执行前必做的三件事
① 把脚本文件和待重命名文件放在同一文件夹内,不能跨目录运行——bat脚本默认只处理当前目录,没有cd命令它根本找不到子文件夹里的文件。
② 关闭OneDrive同步图标正在转动的文件——那些带蓝色云/绿色勾的文件处于锁定状态,ren命令会直接跳过,不报错也不提醒,导致部分文件漏改。
③ 双击运行前先右键→“属性”→勾掉“只读”属性,否则脚本可能因权限被系统静默拦截。
五种常用命名规律对应写法
方法一:给所有.jpg加前缀“Vacation_”
for %%F in (*.jpg) do ren "%%F" "Vacation_%%F"
方法二:给所有文件统一编号,三位数补零(001、002…)
set COUNT=1
for /f "delims=" %%F in ('dir /b /a-d *.* 2^>nul') do (
set "ext=%%~xF"
ren "%%F" "Photo_!COUNT:000!!ext!"
set /a COUNT+=1
)
一款AI开发辅助工具,主要用于从 AI 编程会话日志(Clawdbot、Claude Code、Codex)中提取对话记录。该功能用于在用户要求导出提示词历史、会话日志或 `.jsonl` 格式的会话文件时使用,适合需要提升相关任务效率的用户。
方法三:删除文件名开头5个字符(如把“OLD_报告_v2.docx”变成“报告_v2.docx”)
for %%F in (*.docx) do (
set "name=%%~nF"
setlocal enabledelayedexpansion
set "newname=!name:~5!"
ren "%%F" "!newname!%%~xF"
endlocal
)
方法四:把文件名中的空格全替换成下划线
for %%F in (*.*) do (
set "name=%%~nF"
set "ext=%%~xF"
setlocal enabledelayedexpansion
set "newname=!name: =_!"
ren "%%F" "!newname!!ext!"
endlocal
)
方法五:按原始文件名长度排序后编号(短名优先,避免“IMG_1.jpg”排在“Screenshot_20261018_123456.jpg”后面)
for /f "delims=" %%F in ('dir /b /a-d *.jpg ^| sort /+1') do (
ren "%%F" "Sorted_!COUNT!.jpg"
set /a COUNT+=1
)
关键避坑点
如果文件名含&、^、|、等符号,直接用for %%F in (*)会崩溃——必须改用for /f "delims=" %%F in ('dir /b /a-d 2^>nul')这种结构,否则cmd会把&当成命令分隔符提前执行。
执行后发现文件没变?立刻打开CMD窗口,cd到该文件夹,输入rename.bat回车——这样能看到实时报错信息,比如“系统找不到指定的文件”,说明你漏写了引号或路径有空格未包裹。
【严禁在系统盘根目录(如C:\)直接运行重命名脚本】——那里有大量隐藏系统文件,bat脚本无过滤逻辑,一旦匹配到desktop.ini之类就会触发权限拒绝错误并中断整个流程。
验证与收尾
双击运行rename.bat,窗口闪退是正常现象——只要没弹出错误提示框,就说明已执行完毕。
刷新文件夹,检查前3个和最后1个文件是否符合预期格式;若发现异常,立即从回收站还原(bat不走回收站,但Windows资源管理器误操作可恢复)。
右键脚本→“编辑”,把第一行@echo off改成@echo on,再运行一次——这时窗口会停留并逐行显示每条命令,方便定位哪一行卡住或失败。










