如何为 Exchange Powershell 创建脚本来修改所有共享邮箱的设置?

如何为 Exchange Powershell 创建脚本来修改所有共享邮箱的设置?

遵循本指南:https://blogs.technet.microsoft.com/exchange/2015/03/03/want-more-control-over-sent-items-when-using-shared-mailboxes/

我必须在 Exchange Powershell(Exchange 管理控制台)中发出这些命令:

set-mailbox <mailbox name> -MessageCopyForSentAsEnabled $True
set-mailbox <mailbox name> -MessageCopyForSendOnBehalfEnabled $True

然而,我已经很多共享邮箱。我不想要发出这个命令 100 次。是否有一个变量和/或脚本可以<mailbox name>让我自动执行此过程共享邮箱?(我将其应用于仅有的 共享邮箱,而不仅仅是所有邮箱)

答案1

要获取您环境中的所有共享邮箱,请使用:

Get-Mailbox -RecipientTypeDetails SharedMailbox

根据该命令的结果运行这些命令应该很简单。

答案2

使用 Get-Mailbox,将结果传递给 Set-Mailbox。以下是一行代码

Get-Mailbox -Filter { <put your filter here> } | % { Set-Mailbox -MessageCopyForSentAsEnabled $True -MessageCopyForSendOnBehalfEnabled $True }

或者将其放入脚本中。

$Mailboxes = Get-Mailbox -Filter { <put your filter here> }

Foreach ($Mailbox in $Mailboxes) {
    Set-Mailbox $Mailbox -MessageCopyForSentAsEnabled $True -MessageCopyForSendOnBehalfEnabled $True
}

关键是过滤Get-Mailbox部分。

相关内容