'How to get all groups that a mail contact is a member of?
I want to get all groups that a mail contact is a member of.
Script :
get-mailcontact -resultsize unlimited | where-object {($_.PrimarySmtpAddress -like "*@domain.com")} | select name,alias, PrimarySmtpAddress |export-csv c:\temp\contact.csv -NTI
My desired output:
"Name","Alias","PrimarySmtpAddress","Mail Groups"
"John T.","john.t_contoso.com","[email protected]","Mail Group1;Mail Group2"
"Amy T.","amy.t_contoso.com","[email protected]","Mail Group4;Mail Group5"
"tstcontact","tstcontact_contoso.com","[email protected]","Mail Group2"
thanks,
UPDATE :
Script :
$groups = Get-DistributionGroup -ResultSize Unlimited
Get-Mailcontact -resultsize unlimited
Where-Object {($_.PrimarySmtpAddress -like "*@domain.com")} |
Select-Object name, alias, PrimarySmtpAddress,
@{Name = 'MailGroups'; Expression = {
$contact = Get-MailContact -Identity $_.Name # or use $_.Name
(Get-ADObject -Identity $Contact.DistinguishedName -Properties 'MemberOf').MemberOf -join ';'
}
} | Export-Csv -Path 'C:\temp\contact.csv' -NoTypeInformation -Encoding UTF8
My output :
"Name","Alias","PrimarySmtpAddress","MailGroups"
"User1","user1","[email protected]","CN=MailGroup1,OU=DISTRIBUTION,DC=contoso,DC=local;CN=MailGroup2,OU=DISTRIBUTION,DC=contoso,DC=local"
My desired output :
"Name","Alias","PrimarySmtpAddress","MailGroups"
"User1","user1","[email protected]","MailGroup1;MailGroup2"
Solution 1:[1]
I can't test this myself, but please try below
$groups = Get-Group
Get-Mailcontact -ResultSize unlimited |
Where-Object {($_.PrimarySmtpAddress -like "*@domain.com")} |
Select-Object name, alias, PrimarySmtpAddress,
@{Name = 'MailGroups'; Expression = {
$contact = Get-Contact -Identity $_.DistinguishedName # or use $_.Name
($groups | Where-Object {$_.Members -contains $contact}).Name -join ';'
}
} | Export-Csv -Path 'c:\temp\contact.csv' -NoTypeInformation
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Theo |
