例如,當我們的用戶被終止時,我們需要刪除所有群組。我想檢查是否仍連接到使用者的群組,但不向使用者顯示群組已刪除的位置。
我有以下內容,顯示所有已停用的用戶,但無法弄清楚如何測試空組。任何幫助,將不勝感激。
Import-Module Activedirectory
Get-ADUser -Filter 'enabled -eq $false' -Properties DisplayName,memberof | % {
New-Object PSObject -Property @{
UserName = $_.DisplayName
Groups = ($_.memberof | Get-ADGroup | Select -ExpandProperty Name) -join
","}
} | Select UserName,Groups
答案1
在選擇之前新增一個where檢查:
| Where-Object {$_.Groups -ne $null}
Import-Module Activedirectory
Get-ADUser -Filter 'enabled -eq $false' -Properties DisplayName,memberof | % {
New-Object PSObject -Property @{
UserName = $_.Name
Groups = ($_.memberof | Get-ADGroup | Select -ExpandProperty Name) -join ","}
} | Where-Object {$_.Groups -ne $null} | Select UserName,Groups