Windows 使用技巧

Windows 批量修改文件名和扩展名:先预览再执行

在 Windows 中批量改名时,先显示扩展名、复制备份并用 PowerShell -WhatIf 预览,再执行有限范围的重命名。

4 分钟阅读 1658 字

先显示扩展名,并分清改名与转换格式

批量改文件名之前,先在文件资源管理器显示扩展名。Windows 11 可在“查看 > 显示 > 文件扩展名”开启;Windows 10 也可通过“查看 > 选项 > 查看”,取消“隐藏已知文件类型的扩展名”。Microsoft 的当前说明适用于 Windows 11 和 Windows 10;较旧的系统菜单位置不同,本文不适用于只按新版界面操作的说明。

文件名中最后一个点号后的部分通常是扩展名,例如 报价.docx 里的 docx。把它手动改成 .pdf,或用批量命令改成 .pdf,只会改变名称,不会把 Word 文档转换成 PDF。Microsoft 也明确说明,改扩展名不会转换格式或改变文件内的其他内容。遇到这种需求,应使用原应用程序的导出功能,而不是重命名。

先选一个专用工作文件夹,不要在桌面、同步盘根目录或唯一原件所在位置直接批量操作。将要处理的文件复制到例如 C:\Work\rename-test,保留原文件夹作为备份。再挑十个具有代表性的副本:普通名称、带空格的名称、不同扩展名以及已经可能重名的文件。这样才能发现规则会不会误伤。

简单编号可先用文件资源管理器,但仍要看结果

如果只是把一组照片编号,文件资源管理器的多选重命名较直观。选中副本,按 F2,输入共同名称,例如“活动照片”,再确认。Windows 会为同名项目自动附加编号。该方法适合小批量、单一类型的文件;若文件名还要替换日期、统一大小写或删除固定前缀,先写清楚规则再考虑 PowerShell。

在开始前,把“旧名到新名”的规则写成一句话,例如“只把 .txt 文件开头的 draft_ 换成 2026_,不改扩展名”。可以先在 大小写转换工具 里把预期的前缀或命名样式整理好;这个工具只转换你输入的文字供复制和检查,不会读取、预览或改动 Windows 文件。若需要核对两份命名清单,可把导出的列表放进 文本对比工具 比较差异,同样不能替代对实际文件夹的人工确认。

命名规则必须有边界。不要以“包含 report 的都改”为条件,因为 old-reportreport-final 和无关附件都可能被选中。针对扩展名、固定前缀或事先创建的测试目录限定范围,能让结果更容易复查。

PowerShell 必须先复制备份并用 -WhatIf 预览

以下示例仅针对你已经复制好的测试副本。打开 PowerShell 后,先进入明确的测试目录;不要把路径替换为磁盘根目录。第一条命令会建立备份,第二条只显示将发生什么,并不会执行改名。-WhatIf 是 Rename-Item 的通用参数,Microsoft 说明它只显示操作结果而不运行命令;PowerShell 7.5 和 Windows PowerShell 5.1 都提供 Rename-Item 与 -WhatIf,但本文的命令不承诺在更早版本或受企业策略限制的环境可用。

$work = 'C:\Work\rename-test' $backup = 'C:\Work\rename-test-backup' Copy-Item -LiteralPath $work -Destination $backup -Recurse Get-ChildItem -LiteralPath $work -Filter 'draft_*.txt' -File | Rename-Item -NewName { $_.Name -replace '^draft_', '2026_' } -WhatIf

先逐行看 -WhatIf 输出:目录是否正确、对象数量是否合理、新名称是否符合规则,以及有没有与现有文件冲突。Rename-Item 不能用来覆盖已存在的目标文件,也不能借由 NewName 同时移动文件;如果预览结果不对,应停止、调整规则或从备份重新开始。不要为了压过冲突加上 -Force,那也不能替换目标名称。

确认预览无误后,仍建议先只对那十个测试副本执行。将最后的 -WhatIf 删除,保留其余条件不变,再检查文件名、文件能否打开以及备份仍存在。只有这些检查都通过,才考虑把同一套经过审阅的规则用在已复制的工作副本。任何有业务价值或唯一的数据,都应在执行前再建立独立备份。

改扩展名时停下来验证格式

批量规则中最危险的一类是替换扩展名。例如把 .jpeg 改为 .jpg 可能只是统一一个常见的名称后缀,但仍应在副本上验证接收系统是否接受。把 .docx 改为 .pdf 则不是转换,文件内容仍是 Word 文档,接收方可能打不开或提示格式错误。先在文件资源管理器显示扩展名,再用实际应用打开一两个结果文件。

如果需求其实是转换图片、文档或音频格式,应回到能够输出目标格式的应用或转换流程。改名只能改变文件名,不能压缩、修复损坏、更新元数据或生成新文件内容。预览、备份和抽样打开,是这个流程不可省略的限制。

常见问题

-WhatIf 会真的改掉文件名吗?

不会。对 Rename-Item 而言,-WhatIf 仅显示命令会做什么,不执行重命名。仍要仔细看输出,因为删除该参数后的同一命令才会作用于文件。

可以不备份,直接在原文件夹试吗?

不建议。批量规则一旦选错范围,恢复名称需要额外判断。先复制到测试目录和独立备份目录,能让你在发现问题时回到原始状态。

改成 .pdf 就会得到 PDF 吗?

不会。扩展名只是名称的一部分;它不会转换文件内容。请用 Word 或其他原始应用导出 PDF,并打开结果验证。

为什么命令没有改到所有文件?

示例使用 -Filter 'draft_*.txt',只匹配测试目录内符合该名称和扩展名的文件。这是有意的范围限制;先检查实际文件名,再决定是否需要调整条件。

Windows 10 还能用这个流程吗?

可以使用显示扩展名、复制测试副本和 PowerShell 预览的原则。Windows 10 与 Windows 11 的文件资源管理器菜单不同,PowerShell 版本、权限和组织策略也可能不同;先在自己的测试副本上确认。