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

Windows 10下批量替换多文件夹文件名的PowerShell脚本需求

批量替换文件名中的指定文本为所在文件夹名称

以下是满足需求的PowerShell脚本,直接运行即可完成批量重命名:

# 遍历当前目录及所有子目录(不需要子目录的话,去掉 -Recurse 参数)
Get-ChildItem -File -Recurse | ForEach-Object {
    # 检查文件名是否包含目标文本(不区分大小写,如需严格区分可调整匹配规则)
    if ($_.Name -match 'vendor name' -or $_.Name -match '\[Vendor Name\]') {
        # 获取当前文件所在文件夹的名称
        $folderName = $_.Directory.Name
        # 替换文件名中的目标文本为文件夹名称
        $newName = $_.Name -replace 'vendor name', $folderName -replace '\[Vendor Name\]', $folderName
        # 执行重命名操作(-WhatIf仅预览,确认无误后删除该参数)
        Rename-Item -Path $_.FullName -NewName $newName -WhatIf
    }
}

脚本说明

  • Get-ChildItem -File -Recurse:遍历当前目录下的所有文件,-Recurse表示包含子目录,不需要的话直接删除该参数。
  • 匹配规则:同时兼容小写的vendor name和带括号的[Vendor Name]格式,确保所有目标文本都能被识别;如果只需要匹配特定格式,可删除其中一个-match条件。
  • $_.Directory.Name:直接提取当前文件所在的文件夹名称,也就是你需要的供应商名称。
  • -WhatIf:脚本运行时只会输出将要执行的重命名操作,不会实际修改文件名。确认预览结果正确后,删掉该参数再运行,即可完成实际重命名。

使用步骤

  1. 打开PowerShell,用cd 你的模板文件根目录路径命令导航到目标文件夹。
  2. 复制粘贴上述脚本到PowerShell窗口,按回车运行预览效果。
  3. 确认所有重命名操作符合预期后,移除脚本中的-WhatIf参数,再次运行即可完成批量重命名。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 17:35:55