Como criar um script para o Exchange Powershell modificar configurações para todas as caixas de correio compartilhadas?

1

Seguindo este guia: link

Eu devo emitir esses comandos no Exchange Powershell (Exchange Management Console):

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

No entanto, eu tenho muito de caixas de correio compartilhadas. Eu não quero ter que emitir este comando 100 vezes. Existe uma variável e / ou script que eu possa usar para <mailbox name> , o que me permitirá automatizar esse processo para todas as caixas de correio compartilhadas ? (É muito importante que eu aplique isso a caixas de correio somente compartilhadas , e não apenas a todas as caixas de correio)

    
por Daniel 25.08.2016 / 17:22

2 respostas

2

Para obter todas as caixas de correio compartilhadas em seu ambiente, use:

Get-Mailbox -RecipientTypeDetails SharedMailbox

A execução desses comandos contra os resultados deste comando deve ser trivial.

    
por 25.08.2016 / 17:34
3

Use Get-Mailbox, passe o resultado para Set-Mailbox. Aqui está um oneliner

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

Ou coloque em um script.

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

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

A chave está filtrando a parte Get-Mailbox .

    
por 25.08.2016 / 17:56