要批量删掉文件名中 '-' 前面的字符,可以先全选按 F2 试手,再用 PowerShell 一行正则替换,最后用软领Win解压缩的批量重命名工具可视化处理。Windows 10/11 上实测可用。
多数文件批量改名只是文件名带了同一段前缀,文件本身没坏,不用急着重装或请人修。
适用系统:Windows 10/11;最后更新:2026-08-19。
一批文件名都带同一段前缀,怎么把 '-' 前面的部分删掉
你可能会遇到一堆文件叫 2024-销售报告.docx、2024-合同.docx,想改成 销售报告.docx、合同.docx。这是一批文件的标题前缀重复,要统一删掉 '-' 和它前面的内容。
拿到这类文件,先确认是不是每个名字都在相同位置带 '-'。确认之后选命令或者工具,能省掉大量逐个改名的操作。
方法1 全选文件后按 F2 快速改名
全选按 F2 是 Windows 自带最快的改名方式,但它只适合把一批文件改成同一个名字再加序号。这个方法删不掉 '-' 前面的内容,只能先试手感。
操作步骤
- 打开目标文件夹,按
Ctrl+A全选文件。 - 按
F2,第一个文件进入重命名状态。 - 输入新名称并回车,所有文件会变成「名称 (1)、名称 (2)…」。
- 这个改法会丢掉原文件名里的 '-' 前内容,不能满足你要删除 '-' 前文字的要求。
方法2 用 PowerShell 一行正则批量删除 '-' 前的字符
PowerShell 用一行正则就能把 '-' 及之前的内容全部替换成空,文件再多也一次改完。
操作步骤
- 在文件资源管理器地址栏输入
powershell后回车,当前文件夹会打开 PowerShell 窗口。 - 先执行
cd进入目标文件夹,确认不会改到别处的文件。 - 执行
Get-ChildItem | Rename-Item -NewName { $_.Name -replace '^.*?-', '' }。 - 文件名里有空格时,正则部分用单引号包住,比如
-replace '^.*?-'。
这里的 ^.*?- 表示从文件名开头一直匹配到第一个 '-',再把匹配到的部分替换成空。命令本身没有撤销键,执行前要先看准文件夹位置。
改完后,2024-销售报告.docx 会变成 销售报告.docx;名字里没有 '-' 的文件不会被这条规则改动。想稳一点,可以先复制两个文件出来试命令,确认没问题再对原文件跑一遍。
用「软领Win解压缩」更省事
软领Win解压缩的「文件管理」里带批量重命名工具,把查找替换做成可视化规则。你想删 '-' 前的字符,就选「将 '-' 前的内容替换为空」,右边直接出预览。不想记 PowerShell 正则的人,用这个更稳。
用软领Win解压缩的「创建压缩包」功能,先把这批文件压成一个压缩包再动手,是最稳的一步。批量重命名命令一旦写错,文件名可能整段被删掉;有压缩包在手,错了还能解压回来。这个功能在软领Win解压缩首页就能找到,右键选中文件也能直接创建压缩包。

如果这批文件里有大量图片,改完名后可以用图片压缩顺手压一遍。批量重命名整理完的图片,压缩后体积变小,发邮件或存网盘都更方便。

软领是知名国产软件品牌,20 年技术沉淀、服务千万用户。官网 wyouhua.com 直接下载,安装无捆绑勾选项。遇到复杂情况,软件里能联系真人客服。

方法3 先备份再改,防止命令写错把原名弄丢
批量重命名没有撤销键,提前复制一份原文件最保险。命令写错了,从备份文件夹里拖回来就行。
操作步骤
- 在目标文件夹里新建
backup文件夹,把要改的文件复制进去。 - 在地址栏打开 PowerShell,并
cd到目标文件夹。 - 执行
Get-ChildItem | Rename-Item -NewName { $_.Name -replace '^.*?-', '' }。 - 改完检查文件名,发现乱的立刻从 backup 复制回来重来。
备份文件夹最好放在目标文件夹外面,避免批量命令把它一起扫到。如果 backup 文件夹也在目标文件夹里,确认名字里没有 '-',否则会被一起改名。改完扫一眼全部文件,确认没有多删或少删,再清掉备份。
方法4 用软领Win解压缩的批量重命名工具一句话搞定
软领Win解压缩的批量重命名把删除 '-' 前文字做成了一个查找替换规则,不记命令也能改。
操作步骤
- 打开软领Win解压缩,进入批量重命名工具。
- 导入目标文件夹的全部文件。
- 在查找替换里把规则设为「将 '-' 前的内容替换为空」。
- 预览改名结果,确认无误后点应用。
它适合不想碰 PowerShell 的人。导入、设规则、预览、应用都在软件里点选完成,看到的结果就是最终改出来的名字。
常见问题
批量重命名文件 怎么删掉'-'前的字符
最快的办法是 PowerShell 正则:Get-ChildItem | Rename-Item -NewName { $_.Name -replace '^.*?-', '' }。不想用命令,就用软领Win解压缩的批量重命名,规则选「将 '-' 前的内容替换为空」再预览。
PowerShell 批量去掉文件名中-前面的内容命令是什么
一行命令:Get-ChildItem | Rename-Item -NewName { $_.Name -replace '^.*?-', '' }。执行前先 cd 到目标文件夹,并确认文件夹里的东西都是要改的。
软领Win解压缩的批量重命名在哪里找
打开软领Win解压缩,在「文件管理」里就能看到批量重命名工具。导入文件后,把查找替换规则设为「将 '-' 前的内容替换为空」,先看预览再应用。
文件名中有空格 批量删除-前字符会报错吗
不会。PowerShell 命令里的正则用单引号包住,就能处理带空格的文件名。要是报错,先检查命令里的引号有没有少一半。
批量重命名后文件名变乱码怎么恢复
批量重命名没有撤销键,能恢复靠的是改名前的备份。下次先复制到 backup 文件夹再执行命令,出问题直接复制回来。
推荐阅读
相关推荐

提示