Como posso obter uma lista de todos os usuários de domínio desabilitados com associação ao grupo, um usuário por linha, mas omitir os resultados para usuários que não possuem associação?

Como posso obter uma lista de todos os usuários de domínio desabilitados com associação ao grupo, um usuário por linha, mas omitir os resultados para usuários que não possuem associação?

Por exemplo, quando nossos usuários são encerrados, precisamos remover todos os grupos. Quero verificar se há grupos ainda conectados ao usuário, mas não mostrar aos usuários onde os grupos foram removidos.

Eu tenho o seguinte, que mostra todos os usuários desabilitados, mas não consigo descobrir como testar um grupo nulo. Qualquer ajuda seria apreciada.

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

Responder1

Adicione uma verificação de onde antes da seleção:

| 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 

informação relacionada