从Exchange 2010的通讯组中删除已禁用的成员

时间:2016-08-22 06:48:14

标签: powershell exchange-server-2010

Exemployee离开了公司很长一段时间,并且从未从此特定组的允许发件人列表中删除。 如何从Exchange 2010的通讯组中删除已禁用的成员?顺便说一下,我有242个分发组对象。

到目前为止,我试过了:

首先,我只想通过for循环获取242个通讯组中 Acceptmessagesonlyfrom和AcceptMessagesOnlyFromSendersOrMembers和AcceptMessagesOnlyFromDLMembers 的已禁用用户列表

然后,我想删除所有这些

(get-mailbox "user logon").acceptmessagesonlyfrom |% { $_.name} | add-content  "c:/output/"
(get-mailbox "user logon").acceptmessagesonlyfromdlmembers |% { $_.name} | add-content  "c:/output/"

1 个答案:

答案 0 :(得分:-1)

使用RecipientType检查过时用户的Get-DistributionGroupMember 对我而言,User是因为用户被禁用了。

Get-DistributionGroup | % {
  $dg = $_.Name ; Get-DistributionGroupMember $_ | % {
    if ($_.RecipientType -eq "User") {
      write-host ("Remove-DistributionGroupMember -Identity '" + $dg + "' -Member '" + $_.Name + "' -Confirm:`$False -BypassSecurityGroupManagerCheck")
    }
  }
}