$ComputerName = $env:COMPUTERNAME $LoggedOnUsers = Get-WmiObject -Class Win32_LoggedOnUser -ComputerName $ComputerName
foreach ($User in $LoggedOnUsers) { $Domain = $User.Antecedent.Split('"')[1] $UserName = $User.Antecedent.Split('"')[3] $Groups = Get-ADPrincipalGroupMembership -Identity "$Domain$UserName" -ErrorAction SilentlyContinue | Select-Object Name
Write-Output "$Domain\$UserName"
if ($Groups) {
Write-Output "Member of groups:"
foreach ($Group in $Groups) {
Write-Output "- $($Group.Name)"
}
} else {
Write-Output "User is not a member of any groups."
}
Write-Output ""
}