使用下面的腳本我試圖過濾掉沒有像Windows 10那樣的$需求的應用程序。當我運行這個時,我仍然得到包含Windows 10的應用程序需求的返回結果。Where子句沒有正確過濾
| Where { $_ -notlike 'All_x64_Windows_10_and_higher_Clients' };
任何想法我在做什麼錯在這裏?上面這行可能存在問題?
$warningpreference = "SilentlyContinue"
Get-Content C:\temp\Applications.txt | foreach-object {
$app = Get-CMApplication -Name "$_";
[XML]$appXML =$app.SDMPackageXML;
$Requirement = $appXML.AppMgmtDigest.DeploymentType.Requirements.Rule.OperatingSystemExpression.Operands.RuleExpression.RuleID | Where { $_ -notlike 'All_x64_Windows_10_and_higher_Clients' };
If ($Requirement -ne $null -or $Requirement.length -gt 0) {
Write-output "Application Name: $_ | Requirement: $Requirement "
}
}
好了,怎麼辦屬性值的樣子,你想過濾掉?你在那裏的條件和使用'-ne'...''一樣,所以我想你想用'-notlike'出於某種原因,但是無法得到正確的模式。 – Joey
我想只返回他們沒有Windows10需求的應用程序。好像任何過濾我做的是不工作 – user1342164