Forum Discussion
omc_st2022
Aug 17, 2022Copper Contributor
PowerShell - Get members of multiple groups
Hi, I'm trying to get the members of multiple groups listed is a CSV file. Here is an example of a script I've been trying to use to achieve the above: $csv = Import-Csv "C:\Temp\Groups\...
- Aug 18, 2022
Let me put some of the information you've provided together into a working example.
Here's our CSV file layout:
Here's our script for pulling the members:
(Import-Csv -Path "C:\Temp\Groups\testgroups.csv").GroupName | ForEach-Object { Get-AzureADGroup -Filter "displayName eq '$_'" } | ForEach-Object { $Group = $_; $Group | Get-AzureADGroupMember | Select-Object @{n="GroupName"; e = { $Group.DisplayName; }}, ObjectId, UserPrincipalName, DisplayName; }And here's the results (using my own example group names):
Cheers,
Lain
Aug 17, 2022
After starting the script and receiving the error, how are the $line and $groupname variables at that moment?
- omc_st2022Aug 17, 2022Copper Contributor
Harm_Veenstra Thanks for the reply, after the script is run $groupname is showing the last group name in the CSV, same with $line.
My csv looks like this:
GroupName TESTGroup1 TESTGroup2 - Aug 17, 2022Not sure why you're using CSV with one column 😉 a get-content of a txt file containing one line per group is the same... If you run this manually, what's the output?
(Get-AzureADGroup | Where-Object {$_.DisplayName -eq $testgroup1}- omc_st2022Aug 18, 2022Copper ContributorI did actually try this with a txt file listing the group names without a header, and got the same result.
If I run the following command:
(Get-AzureADGroup | Where-Object {$_.DisplayName -eq $groupname})
I get nothing, the cursor just jumps down to the next line. Its like this line is failing to obtain the objectid and append it to the variable, then the following line (Get-AzureADGroupMember -ObjectId $objectid) is failing as $objectid is null.