powershell - 在目录下的所有文件中搜索字符串时无法排除文件/文件夹名称

问题描述 投票:0回答:0

我希望搜索

http
文件夹下包含
tfs.mybank
D:\lm
的所有 url 字符串,同时排除文件夹
_backup
Informatica
以及包含
.csv
.log

的文件名

下面尝试在 powershell 中获取结果,但无法排除提到的文件夹,例如

_backup

$uniqueUrls = @{}

Get-ChildItem -Path "D:\CCNet\lm\" -Recurse -Exclude "*.log*", "*.csv", "*.bak*"  | Where-Object { $_.FullName -notmatch '\\_backup\\|\\Informatica\\' } | Select-String -Pattern "tfs.mybank" | ForEach-Object {

    $url = $_.Line

    if($url -match "http"){

        $uniqueUrls[$url] = $true

    }  
}

$uniqueUrls.Keys | ForEach-Object{

    Write-Output $_

} >D:\alltfsforlm.txt

结果:

服务器\projects.bak_SM_06_02_2021_backup\sm_deploy_dev.xml:
http://deploydev:[email protected]:8080/tfs/Default/MHRS.SM/_git/SM.Portal

服务器\projects_obsolete_and_backups\SM_hri\SmOrchestratorTasks_cso.xml: http://tfs.mybank.com:8080/tfs/default

服务器\projects.current\Backup_MBCDeploymentScript_6_4_2014\CreatePackage.MBCServices.FN.xml: http://tfs.mybank.com:8080/tfs/default

服务器\projects.bak_SM_06_02_2021_backup\sm_deploy_main.xml:
http://tfs.mybank.com:8080/tfs

如您所见,结果中不应该填充

_backup

你能推荐一下吗?

powershell tfs full-text-search findall exclude-constraint
© www.soinside.com 2019 - 2024. All rights reserved.