Get-AdGroupMember for multiple groups

How do I check if the mentioned security groups exists or not? I would also want the exported .csv to mention 'No members' instead of skipping it.

Also, how do I refine below script? And I would like to get member's details.

$group_list = get-content C:\temp\group_list.txt
$results = foreach($group in $group_list){
$checkgroup = get-adgroup -filter {name -eq $group} | select name
if($checkgroup -ne $null){ $members = get-adgroupmember $group | select samaccountname if($members -ne $null){ [PSCustomObject]@{GroupName=$group;Members=($members.samaccountname | Out-String).Trim()} } else{ [PSCustomObject]@{GroupName=$group;Members="None"} }
}
else{ [PSCustomObject]@{GroupName=$group;Members="Group not exist"}
}
}
$results | Export-csv C:\temp\Group_Members.csv -NoTypeInformation
1

1 Answer

# output active directory groups and members to csv (also output empty groups with 'No Members' value)
# assumes run on domain controller or import of ActiveDirectory module
$allgroups = Get-ADGroup -Filter *
$result = foreach ( $group in $allgroups ) { $hash = @{GroupName=$group.SamAccountName;Member=''} $groupid = $group.distinguishedname if ( $members = Get-ADGroupMember $groupid ) { foreach ( $member in $members ) { $hash.Member = $member.Name New-Object psObject -Property $hash } } else { $displayname = "No Members" $hash.Member = $displayname New-Object psObject -Property $hash }
}
$result | Export-Csv -Path C:\temp\ADGroups.csv -NoTypeInformation
# End
4

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

You Might Also Like