我必须在 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
部分。