Script Powershell para excluir endereços SMTP secundários de contatos de email do Exchange 2010

2

Eu tenho alguns milhares de contatos de email do Exchange 2010 que recebem endereços SMTP internos erroneamente atribuídos pela diretiva de destinatário padrão.

Estou tentando usar o seguinte comando para excluir esses endereços (mantendo o SMTP principal) e desativando a atualização automática da diretiva de destinatários para que os endereços SMTP não sejam recriados novamente.

Get-MailContact -OrganizationalUnit "domain.local/OU" -Filter {EmailAddresses -like *@domain.local -and name -notlike "ExchangeUM*"} -ResultSize unlimited -IgnoreDefaultScope | foreach {$contact = $_; $email = $contact.emailaddresses; $email | foreach {if ($_.smtpaddress -like *@domain.local) {$address = $_.smtpaddress; write-host "Removing address" $address "from Contact" $contact.name; Set-Mailcontact -Identity $contact.identity -EmailAddresses @{Remove=$address}; $contact | set-mailcontact -emailaddresspolicyenabled $false} }}

Estou recebendo o seguinte erro:

Você deve fornecer uma expressão de valor no lado direito do operador "semelhante". Na linha: 1 char: 312 + Get-MailContact -OrganizationalUnit "domain.local / testou" -Filtro {EmailAddresses -like " @ domínio.local" -e- nome -não é "ExchangeUM "} -ResultSize unlimited -IgnoreDefaultScope | foreach {$ contact = $ ; $ email = $ contact.emailaddresses; $ email | foreach {if ($ .smtpaddress -like < < < *@domain.local) {$ endereço = $ _. smt paddress; write-host "Removendo endereço" $ address "do contato" $ contact.name; Set-Mailcontact -Identity $ contact.ident ity -EmailAddresses @ {Remove = $ address}; $ contact}}     + CategoryInfo: ParserError: (:) [], ParentContainsErrorRecordException     + FullyQualifiedErrorId: ExpectedValueExpression

Alguma ajuda sobre como corrigir isso?

    
por Zero Subnet 09.11.2012 / 17:48

1 resposta

2

Você precisa de cotações em torno de *@domain.local

    
por 09.11.2012 / 18:04