• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1256
  • Last Modified:

How to export group members (distribution/security) from csv file with groups names

Hello,

I'm looking for a script (in Powershell/or Quest cmdlets)  which can import  from csv file with distribution/security groups adres email all members and at the and save it as a nice Excell file with specific columns. This script also should list groups without members.

Example csv input file I attached to this question:  import.csv

Excell file should have these columns: GroupName, Group_email_address, Group_Type(Security/Distribution), Member(samaccountname), Name(First Name+Last Name).

I'll be very thankfull for help
0
pi01162
Asked:
pi01162
  • 4
  • 3
1 Solution
 
soostibiCommented:
Could you rewrite the first sentence of your question, as I can not really understand it and attach a more relevant file, as the current one is not very useful...
0
 
pi01162Author Commented:
Ok, sorry form my bad english ;)

In my domain i have OU=DistributionGroups and OU=SecurityGroups. In these OU's there are exchange distribution groups and security groups.
My task is to report  (in powershell/Quest cmdlets) each group with all members to *.csv file (after that i'll import data to excell).

Finally *.csv file should have these columns: GroupName, Group_email_address, Group_Type(Security/Distribution), Member(samaccountname), Name(First Name+Last Name).

Thanks in advance!
0
 
soostibiCommented:
What Exchange version do you have?
0
Who's Defending Your Organization from Threats?

Protecting against advanced threats requires an IT dream team – a well-oiled machine of people and solutions working together to defend your organization. Download our resource kit today to learn more about the tools you need to build you IT Dream Team!

 
pi01162Author Commented:
Exch2007 Sp2 + Win2008
0
 
soostibiCommented:
What about this? This script runs in Exchange Server 2007 Management Shell.
You have to update the "yoursubdomain" and "yourdomain" parts. Thsi script gives all the members, not just the mailenabled users, so I put an extra column named "OtherInfo" where you can see if the member is a public folder or non-mail enabled user or contact or etc...
"ou=DistributionGroups,dc=yoursubdomain,dc=yourdomain", "ou=SecurityGroups,dc=yoursubdomain,dc=yourdomain" | 
	%{Get-DistributionGroup -OrganizationalUnit $_} | 
		%{$group = $_ ; Get-DistributionGroupMember $_ | 
			select-object @{n="groupname"; e={$group.name}}, 
				@{n="groupemailaddress";e={$_.primarysmtpaddress}},
				@{n="grouptype";e={if($group.recipientype -match 'SecurityGroup$'){"Security"}else{"Distribution"}}},
				@{n="member(samaccountname)";e={$_.samaccountname}},
				@{n="name(First + Last)"; e={$_.firstname +" " +$_.lastname}},
				@{n="OtherInfo";e={$_.RecipientType}}
			} | Export-Csv c:\groupsandmembers.csv -NoTypeInformation -Encoding UTF8

Open in new window

0
 
pi01162Author Commented:
Works perfect :)...but can You please modify the script and add "PrimarySmtpAddress" of the group? (not user email).
0
 
soostibiCommented:
Sorry, see attached modified version.
"ou=DistributionGroups,dc=yoursubdomain,dc=yourdomain", "ou=SecurityGroups,dc=yoursubdomain,dc=yourdomain" |   
        %{Get-DistributionGroup -OrganizationalUnit $_} |   
                %{$group = $_ ; Get-DistributionGroupMember $_ |   
                        select-object @{n="groupname"; e={$group.name}},   
                                @{n="groupemailaddress";e={$group.primarysmtpaddress}},  
                                @{n="grouptype";e={if($group.recipientype -match 'SecurityGroup$'){"Security"}else{"Distribution"}}},  
                                @{n="member(samaccountname)";e={$_.samaccountname}},  
                                @{n="name(First + Last)"; e={$_.firstname +" " +$_.lastname}},  
                                @{n="OtherInfo";e={$_.RecipientType}}  
                        } | Export-Csv c:\groupsandmembers.csv -NoTypeInformation -Encoding UTF8

Open in new window

0

Featured Post

Who's Defending Your Organization from Threats?

Protecting against advanced threats requires an IT dream team – a well-oiled machine of people and solutions working together to defend your organization. Download our resource kit today to learn more about the tools you need to build you IT Dream Team!

  • 4
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now