Исключить файл из результатов PowerShell Get-ChildItem - PullRequest
0 голосов
/ 18 сентября 2018

Чтобы выбрать каждый AssemblyInfo.cs из каталога, за исключением одного, я запускаю скрипт powershell:

Clear-Host
$SrcDir = "D:\Projects\Lambda\Sources"
Write-Host $SrcDir
cd $SrcDir
$ExcludeXYZCallStrategy = $SrcDir + "\Lambda.XYZ\XYZCallStrategy\Properties\AssemblyInfo.cs"
# 2. Select Files to be updated
Write-Host $ExcludeXYZCallStrategy
# both these syntaxes fail (tried one after the other not together ofc) :
$Assemblyfiles = Get-ChildItem -Path $SrcDir -Recurse -Include AssemblyInfo.cs -Exclude $ExcludeXYZCallStrategy
$Assemblyfiles = Get-ChildItem -Path $SrcDir -Recurse -Include AssemblyInfo.cs -Exclude D:\Projects\Lambda\Sources\Lambda.XYZ\XYZCallStrategy\Properties\AssemblyInfo.cs
Write-Host $Assemblyfiles
Write-Host "Files Count : " $Assemblyfiles.count

Я пробовал разные синтаксисы, чтобы заставить Get-ChildItem исключить этот файл, но мне не удалось.

Я попробовал эти ответы безрезультатно:

Из документа я не нашел ничего, что объясняло бы, почему файл не исключен.

1 Ответ

0 голосов
/ 18 сентября 2018

Поскольку это всего один файл, вы можете использовать Where-Object.

$Assemblyfiles = Get-ChildItem -Path $SrcDir -Recurse -Include AssemblyInfo.cs | Where-Object { $_.FullName -ne "D:\Projects\Lambda\Sources\Lambda.XYZ\XYZCallStrategy\Properties\AssemblyInfo.cs" }
...