PowerShell | Exchange Online |使用已启用的调节功能查找x个成员以上的通讯组列表

PowerShell | Exchange Online |使用已启用的调节功能查找x个成员以上的通讯组列表,powershell,exchange-server,distribution-list,Powershell,Exchange Server,Distribution List,我正在尝试导出一个csv,其中包含x个成员以上的通讯组列表(来自Exchange Online),并启用了调节功能 这里的问题是,它显示了所有DL的属性,但完全忽略了“100以上”部分,并且没有显示每个DL的总计数 我使用的代码是: $distgroups = Get-DistributionGroup -ResultSize Unlimited foreach ($dg in $distgroups) { $Members = Get-DistributionGroupMember

我正在尝试导出一个csv,其中包含x个成员以上的通讯组列表(来自Exchange Online),并启用了调节功能

这里的问题是,它显示了所有DL的属性,但完全忽略了“100以上”部分,并且没有显示每个DL的总计数

我使用的代码是:

$distgroups = Get-DistributionGroup -ResultSize Unlimited

foreach ($dg in $distgroups)
{

    $Members = Get-DistributionGroupMember $Dg.name -resultsize unlimited

    if ($Members.count -ge 100)
        {
            Get-DistributionGroup -ResultSize Unlimited | select DisplayName,ModerationEnabled,AcceptMessagesOnlyFromSendersOrMembers
            (Get-DistributionGroupMember $dg.DisplayName).Count
        }
}
Export-Csv C:\Temp\DLs.csv -UseCulture
为了清楚起见,我以前使用过这个,但结果相同:

$distgroups = Get-DistributionGroup -ResultSize Unlimited

foreach ($dg in $distgroups)
{
    if ((Get-DistributionGroupMember $dg.DistinguishedName).Count -ge 100)
        {
            Get-DistributionGroup -ResultSize Unlimited | select DisplayName,ModerationEnabled,AcceptMessagesOnlyFromSendersOrMembers
        }
}

Export-Csv C:\Temp\DLs.csv

您试图做的事情有点让人困惑,但看起来您正在尝试获取包含100个或更多成员的通讯组列表,然后将其导出到csv

我可以在您的代码中看到一些问题

  • 您正在调用
    Get DistributionGroup
    的时间超过了您需要的时间。不要在循环中再次调用,只需使用已有的
    $dg
    对象即可
  • 类似问题“Get DistributionGroupMember”和计数。只要在第一次存储对象,就不必再次运行该命令
  • 您没有向导出Csv提供任何数据
  • 修订守则

    $distgroups = Get-DistributionGroup -ResultSize Unlimited
            
    $distGroupsWith100PlusMembers = foreach ($dg in $distgroups) {
        # Store returned members in $members for later use
        if (($members = Get-DistributionGroupMember $dg.DistinguishedName).Count -ge 100) {
            # why are you getting ALL of the distribution groups again here?
            # Get-DistributionGroup -ResultSize Unlimited | 
            #    Select-Object DisplayName, ModerationEnabled, AcceptMessagesOnlyFromSendersOrMembers
    
            #use $dg instead
            $dg | Select-Object DisplayName, ModerationEnabled, AcceptMessagesOnlyFromSendersOrMembers
            Write-Host $dg.SamAccountName has $members.count members
        }
    }
    
    # Pipe the distribution groups (DisplayName, ModerationEnabled,
    # AcceptMessagesOnlyFromSendersOrMembers) 
    # found with 100 plus members to export-csv
    $distGroupsWith100PlusMembers | Export-Csv C:\Temp\DLs.csv
    

    您能否在任何发行版列表上验证
    $members.count
    是否确实包含一个计数,而不是一个属性实例?