Windows 快速批量重命名指南:使用 PowerShell 移除文件名中的空格与括号

在 Windows 系统中,使用自带的批量重命名功能(全选文件后按 F2)可以快速为文件加上统一前缀,但系统会自动在后续文件生成带有空格和括号的序号(例如:产品主图 (1).jpg产品主图 (2).jpg)。

为了让文件名更符合电商后台上传、代码引用或文件归档的规范,可以利用 Windows 自带的 PowerShell 工具,免安装任何第三方软件,一键批量去除这些括号与空格,或者将其替换为更规范的下划线(如 产品主图_1.jpg)。


🛠️ 核心操作步骤

第一步:打开目标文件夹

打开 Windows 资源管理器(我的电脑),进入存放需要修改文件名的图片或文件所在的文件夹。

第二步:快捷打开 PowerShell 窗口

  1. 在当前文件夹的空白处,按住键盘上的 Shift
  2. 同时点击鼠标右键
  3. 在弹出的右键菜单中,点击 “在此处打开 PowerShell 窗口”(部分 Windows 11 系统显示为 “在终端中打开”)。

第三步:输入并执行重命名命令

根据您的实际业务排版需求,从下方两个选项中选择一个,复制对应的代码粘贴到打开的蓝/黑色命令行窗口中,并按下 Enter (回车键) 执行:

选项 A:完全去掉括号和空格(序号紧跟文件名)

如果您希望将文件名从 产品主图 (1).jpg 变成 产品主图1.jpg,请使用以下命令:

Get-ChildItem | Rename-Item -NewName { $_.Name -replace '\s\((\d+)\)', '$1' }

选项 B:将空格和括号替换为下划线(电商/技术标准,推荐)

为了避免数字和汉字混在一起不易分辨,更推荐用下划线连接。如果您希望将文件名从 产品主图 (1).jpg 变成 产品主图_1.jpg,请使用以下命令:

Get-ChildItem | Rename-Item -NewName { $_.Name -replace '\s\((\d+)\)', '_$1' }

💡 命令原理解析(供进阶参考)

该命令使用了 PowerShell 的管道符与正则表达式技术,具体拆解如下:

  • Get-ChildItem:获取当前文件夹下的所有文件和文件夹对象。
  • | (管道符):将左边获取到的文件列表,逐个传递给右边的命令进行处理。
  • Rename-Item:Windows 自带的重命名执行命令。
  • -replace '\s\((\d+)\)', '_$1':利用正则表达式进行精准文本匹配与替换:
    • \s:匹配文件名中的空格。
    • \(\):匹配原文件名中的左括号 ( 和右括号 )
    • (\d+):匹配括号里面的数字(捕获组 1)。
    • _$1:将匹配到的"空格+括号+数字"整体替换为"下划线+刚刚捕获的数字"。