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

Powershell递归复制内容含'OBR|101|'的文件到单个文件夹问题排查

PowerShell 脚本修改方案

原脚本问题说明

  1. 匹配规则冲突:你使用了-SimpleMatch参数启用字面量匹配,不需要对管道符|添加转义符\,原脚本中的"OBR\|101\|"会被识别为包含反斜杠的字符串,无法匹配到目标内容OBR|101|。
  2. 未做去重处理:如果单个文件内存在多处匹配内容,Select-String会返回多条对应结果,直接传给复制命令会导致重复执行复制操作。

修正后脚本

方案1:保留字面量匹配(推荐)

Get-ChildItem -Path \\sourcefolder -Recurse -File | 
    Select-String -Pattern "OBR|101|" -SimpleMatch | 
    Select-Object -Unique Path | 
    Copy-Item -Destination \\destinationfolder

方案2:使用正则匹配

如果不需要字面量匹配,去掉-SimpleMatch参数,保留正则转义即可:

Get-ChildItem -Path \\sourcefolder -Recurse -File | 
    Select-String -Pattern "OBR\|101\|" | 
    Select-Object -Unique Path | 
    Copy-Item -Destination \\destinationfolder

改动说明

  • 修正了匹配字符串的写法,和-SimpleMatch参数逻辑对齐
  • 新增Select-Object -Unique Path步骤,提取匹配文件路径并去重,保证每个符合要求的文件仅复制一次

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 14:06:03