Как получить список всех отключенных пользователей домена с членством в группах, по одному пользователю в строке, но исключить результаты для пользователей, не имеющих членства?

Как получить список всех отключенных пользователей домена с членством в группах, по одному пользователю в строке, но исключить результаты для пользователей, не имеющих членства?

Например, когда наши пользователи удаляются, нам нужно удалить все группы. Я хочу проверить группы, которые все еще подключены к пользователю, но не показывать пользователям, у которых группы удалены.

У меня есть следующее, которое показывает всех отключенных пользователей, но не могу понять, как проверить нулевую группу. Любая помощь будет оценена.

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 перед select:

| 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 

Связанный контент