【问题标题】:Exchange Powershell Loop Distribution ListExchange Powershell 循环分发列表
【发布时间】:2020-06-01 01:38:46
【问题描述】:

我有这个 Gets-DistributionGroupMembers 和/或更新会员政策的 Powershell 脚本。

$DL = Get-DistributionGroupMember "Distribution List GroupName"
ForEach ($Member in $DL) { Set-CASMailbox -Identity $Member.Name -OwaMailboxPolicy "Allow Download Access" } 

上面的代码工作正常。

我的问题是:

  1. 如何判断$Member.Name是个人账号还是群组

  2. IF是一个组,那你如何递归调用同一个Action Script

提前谢谢你。

【问题讨论】:

    标签: powershell exchange-server


    【解决方案1】:

    未经测试,但我认为您可以通过检查RecipientTypeDetails 属性来确定该成员是否为组。

    类似:

    function Set-DistributionGroupPolicy([string] $group) {
        Get-DistributionGroupMember $group -ResultSize Unlimited | ForEach-Object {
            if ($_.RecipientTypeDetails -match "Group") {
                Write-Verbose "Recursing on group '$($_.Name)'"      
                Set-DistributionGroupPolicy $_.Name
            }
            Set-CASMailbox -Identity $_.Name -OwaMailboxPolicy "Allow Download Access"
        }
    }
    
    Set-DistributionGroupPolicy
    

    【讨论】:

    • RecipientTypeDetails 非常方便。谢谢!
    猜你喜欢
    • 2017-04-17
    • 2022-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-12
    • 2022-12-03
    • 2017-12-01
    相关资源
    最近更新 更多