用于列出用户所属的分发列表的 Powershell 脚本

Powershell script to list Distribution lists a user is a member of

我在这个论坛上的第一个问题,希望我做对了。我已经根据我在这个网站上找到的一些代码编写了一个脚本,但它没有产生我需要的东西,我不确定为什么。原代码如下:

$Mailbox=get-Mailbox xxxx@company.com
$DN=$mailbox.DistinguishedName
$Filter = "Members -like ""$DN"""
Get-DistributionGroup -ResultSize Unlimited -Filter $Filter

这产生了用户所属的分发列表列表的输出,其中包含 4 列:Name、DisplayName、GroupType、PrimarySmtpAddress。这很好用。我添加到此以构建一个工具,您可以在其中输入用户的电子邮件地址,但现在输出看起来像用户所属的分发列表的所有属性。这是我的完整代码:

Import-Module MSOnline
$LiveCred = Get-Credential 
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/PowerShell  -Credential $LiveCred -Authentication Basic -AllowRedirection 
Import-PSSession -allowclobber $Session

Connect-MsolService -Credential $LiveCred
cd c:\scripts

Write-Host "This tool displays the Distrbution lists a user is a member of"
$User = Read-Host -Prompt 'email address you would like to find the distribution lists of'

$Mailbox=get-Mailbox "$User"
$DN=$mailbox.DistinguishedName
$Filter = "Members -like ""$DN"""
Get-DistributionGroup -ResultSize Unlimited -Filter $Filter

我假设您只需要这四个属性。将代码中的最后一行更改为如下所示:

Get-DistributionGroup -ResultSize Unlimited -Filter $Filter | Select-Object Name,DisplayName,GroupType,PrimarySmtpAddress