我正在嘗試比較成員是具有以下腳本的串列:
$Guid = "59041b96-c71d-436c-8297-7af5fcf4e22a"
$Members = Get-RetentionCompliancePolicy -identity $guid -DistributionDetail | Select -ExpandProperty OneDriveLocation | select name,displayname | sort displayname
$User = "Humbert, Jason"
$ODPolicy = $members.displayname | Select-String -Pattern "Humbert, Jason"
if($User -like $ODPolicy){
Write-host "USer $($USer.primarysmtpaddress) is in"
#$OD.RetentionSet = $True
}Else{
Write-Warning "User $($USer.primarysmtpaddress) not in Policy"}
$ODPolicy 的輸出回傳 2 個名稱,因為有兩個郵箱(活動和非活動)
PS C:\Users\XYZ> $ODPolicy
亨伯特,杰森亨伯特,杰森
運行if($User -like $ODPolicy)
腳本時似乎無法處理回傳的兩個物件,它回傳Else{ Write-Warning "User $($USer.primarysmtpaddress) not in Policy"}
我該如何修改它,以便if($User -like $ODPolicy)
將其視為真實并回傳“Write-host "USer $($USer.primarysmtpaddress)
在”?
uj5u.com熱心網友回復:
該-like
運算子在這里沒有用處,因為您想要完全匹配并且您想要驗證專案集合是否$members
包含特定的單個專案$User
。
所以你應該切換到-contains
運營商,例如:
if ($members.displayname -contains "Humbert, Jason"){}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/525278.html
標籤:电源外壳