You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PowerShell中重命名多个文件并保留括号

PowerShell批量重命名文件:移除[*]前的所有字符

完全可以用PowerShell实现批量处理,步骤如下:

  1. 先测试(避免误操作)
    运行以下命令,它只会预览要执行的重命名操作,不会实际修改文件名:
Get-ChildItem -Filter "*.txt" | Rename-Item -NewName { $_.Name -replace '^.*?(?=\[)', '' } -WhatIf
  1. 实际执行重命名
    如果预览结果符合预期,去掉-WhatIf参数执行实际修改:
Get-ChildItem -Filter "*.txt" | Rename-Item -NewName { $_.Name -replace '^.*?(?=\[)', '' }

关键说明

  • 正则表达式^.*?(?=\[)的作用:
    • ^ 匹配文件名的开头位置
    • .*? 非贪婪匹配任意字符(避免误匹配到文件名中多个[的情况)
    • (?=\[) 正向预查,匹配到[就停止,且不会把[本身包含在要删除的内容里
  • 如果目标文件不在当前PowerShell工作目录,给Get-ChildItem加上路径参数:
    Get-ChildItem -Path "C:\你的文件夹路径" -Filter "*.txt" | Rename-Item -NewName { $_.Name -replace '^.*?(?=\[)', '' }
    
  • 要处理所有类型的文件,去掉-Filter "*.txt",加上-File参数确保只处理文件(不会误改文件夹名称):
    Get-ChildItem -Path "C:\你的文件夹路径" -File | Rename-Item -NewName { $_.Name -replace '^.*?(?=\[)', '' }
    

注意事项

  • 确保处理后不会出现重名文件,否则Rename-Item会抛出错误。如果存在重名风险,需要额外添加逻辑(比如在文件名后追加序号)。

内容的提问来源于stack exchange,提问作者Harry Pen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 13:52:07