不用装软件,5 分钟把手上一堆文件按规则批量改名

我经常遇到同一类活:一堆文件要按规则改名------照片要按日期、日志要按月份、下载的文件要去掉一堆后缀。 以前我手动改,改到第 30 个就开始出错(漏一个、改重一个、把扩展名也改掉)。

这篇文章给你一个不用装任何软件的做法,附带我踩过的四个坑。

一、先说结论:三种改法,按场景选

场景 做法 优点 风险
少量文件(<20) 资源管理器里 F2 → Tab → 输入 连续改名 不用命令 手滑就改名错
规则明确、量中等 PowerShell 一行改(下面给) 可预览、可回滚 写错正则就批量毁名
规则复杂、要试 先脚本生成"改名清单",人工过一遍再执行 最安全 多一步

核心原则只有一条 :先打印出"谁改成谁",确认无误,再真改。 不预览直接改名的,迟早会毁掉一批文件。

二、PowerShell 一行(可预览、可回滚)

第一步:只看不改(这条最关键)

powershell 复制代码
Get-ChildItem *.jpg | ForEach-Object {
  $new = "IMG_{0:yyyyMMdd_HHmmss}{1}" -f $_.LastWriteTime, $_.Extension
  [pscustomobject]@{旧=$_.Name; 新=$new}
} | Format-Table -AutoSize

它会列出 每个文件"旧名 → 新名"。确认没问题再执行第二步:

powershell 复制代码
Get-ChildItem *.jpg | ForEach-Object {
  $new = "IMG_{0:yyyyMMdd_HHmmss}{1}" -f $_.LastWriteTime, $_.Extension
  Rename-Item -LiteralPath $_.FullName -NewName $new
}

回滚 :改名是可逆的(把 旧/新 两列存下来就能反着改)。 ⇒ 所以第一步的表格要复制到文件里保存,别只是看一眼。

三、我踩过的四个坑

坑 1:用 -f 拼接时忘了扩展名。 "IMG_$($_.LastWriteTime)" 会把 .jpg 丢掉,生成一堆没有扩展名 的文件。 ⇒ 永远用 $_.Extension 显式带上,别靠记忆。

坑 2:同名冲突,静默覆盖。 两个文件的 LastWriteTime 精确到秒可能一样 ⇒ 生成同名 ⇒ Rename-Item 直接报错 (还算好), 但如果加了 -Force,就是静默覆盖 。⇒ 不要加 -Force,让它报错。

坑 3:文件名里有方括号 / 空格 / 中文引号。 Rename-Item -Path 会把 [ ] 当通配符 解析 ⇒ 匹配不到或匹配错。 ⇒ 一律用 -LiteralPath(我上面给的写法就是)。

坑 4:把"改名"和"移动"混在一起做。 一次做两件事,出问题时不知道是哪一步错了 。⇒ 分两次:先改名(原地),确认后再移动。

四、如果你想更稳:先生成"改名清单",人工过一眼

规则复杂时(比如"去掉前面 8 位数字 + 把 -final 换成 _v2"),我会先输出一份 CSV : 两列 旧路径、新路径,用 Excel 或记事本过一遍,删掉不想改的行,再按 CSV 执行 。 这样人工只做审核,不做打字 ------ 出错率低一个数量级。

五、三个"要不要装软件"的回答

  • 要不要装批量改名软件? 上面这套够用,不需要;
  • 要不要写代码? 一行 PowerShell 就是"代码",但它可预览、可回滚,比软件更可控;
  • 要不要备份? 要。改名之前把那个文件夹复制一份,是最省事的"回滚点"。

六、一句话

批量操作的第一原则不是"快",是"先看清楚再动手"。 我改坏了两次文件名,两次都是因为跳过了预览那一步。

相关推荐
threerocks7 小时前
2027 年最赚钱的 AI 创业方向
aigc·openai·ai编程
ZzT8 小时前
AI-SDLC 实践 01|用好 Claude Code/Codex 提供的六种能力
ai编程·claude
梯度下降者8 小时前
3天时间,我使用 Cursor 开发了一个提示词生成器
ai编程·next.js·cursor·产品开发·提示词生成器
70后写java的老码农8 小时前
换模型只改三行配置:LangChain4j + Spring Boot 3.5 实战,一次分别接入 9 家模型服务
后端·ai编程
Rain的Java大神实战圈9 小时前
面试官让你把 LLM、RAG、Agent、MCP 串起来讲清楚,90% 的 Java 工程师当场露馅
ai编程
西安小哥10 小时前
视口高度为 0:一次浏览器自动化调试的完整复盘
ai编程
孔令飞10 小时前
很多人想学AI Infra,今天推荐一个 AI Agent / AI Infra 学习路线
云原生·go·ai编程
前端双越老师10 小时前
程序员 1v1 访谈系列第十一期:应届生别做开发
java·agent·ai编程
VIP_CQCRE10 小时前
在 VS Code 等编辑器里用 OpenCode 接入 Ace Data Cloud:Provider 配置与 IDE 验证
大模型·ai编程·vs code·opencode·ace data cloud
熊猫钓鱼>_>10 小时前
三方库 NDK 原生模块跨平台适配与调试【鸿蒙心迹】
开发语言·华为·ai编程·harmonyos·鸿蒙·openharmony·鸿蒙心迹