Powershell删除DL中的成员说没有,但他们是

时间:2015-03-20 18:11:43

标签: powershell exchange-server distribution-list

我有一个应该清空分发列表的powershell脚本。它将成员列表放入数组中。然后它将数组管道传输到Remove-DistributionGroupMember。每次运行都会有一些成员抛出'X不是组Y的成员'错误。在循环结束时,我重新枚举用户,并且对于每个“不是该组成员”的人来说,错误被抛出,仍然是该组的成员。这不一致。有时一切都有效,但通常会有不同的成员失败。

$grp = (Get-DistributionGroup -Identity:$DLIST -ErrorAction:Stop)
$members = (Get-DistributionGroupMember -Identity:$grp -ErrorAction:Stop)
$members | % { 
    $member = $_
    try {
        Remove-DistributionGroupMember -Identity:$grp -Member:$_ -Confirm:$false -WarningAction:Stop -ErrorAction:Stop
        }
    catch {
        $LogStream.WriteLine((Get-Date).toString() + " Error removing ${member}:`n" + $_.toString())
        }
    }  
$members = (Get-DistributionGroupMember -Identity:$grp -ErrorAction:Stop)
write-host "Users in List:"
$members | % { $LogStream.WriteLine("  " +  $_.ToString())}  
  

3/20/2015 5:06:55 AM删除xxxxx.xxxx.com/North America / Spokane / Users / XXXXXX时出错:   收件人“xxxx.xxxx.com/North America / Spokane / Users / XXXXX”不是“CN = * YYYYY,OU = IT,DC = xxxxxxx,DC = xxxx,DC = com”组的成员。< / p>      

列表中的用户:

     

xxxxx.xxxx.com/North America / Spokane / Users / XXXXXX

1 个答案:

答案 0 :(得分:0)

尝试将其添加到脚本的开头:

Set-ADServerSettings -ViewEntireForest $true

我还会将-ResultSize "Unlimited"添加到您的Get-命令中。