get-mailbox между доменами exchange 2007

Когда я запускал команду ниже, она работала предсказуемо

get-mailbox -identity xxx.xxx@domain .com

когда я пытаюсь запустить ту же команду в сценарии, он продолжает получать ошибки, не найденные на контроллере домена

$users = Import-Csv "C:\Users\xx\Documents\CSV\PORB.csv" foreach ($user в $users) { $Recipients = Get-Mailbox -Identity $user.users [массив]$AllEmailAddresses = $ Recipient.EmailAddresses [массив] $NoX500Addresses = $Recipient.EmailAddresses | Где {$_ -notlike "X500:*"} Set-Mailbox -Identity $Recipient.Identity -EmailAddresses $NoX500Addresses

Я получаю сообщение об ошибке: Get-Mailbox: Операция не может быть выполнена, так как объект '[email protected]' не найден на контроллере домена 'XXX.aaa.bbbb.ccc.net'. В строке:5 символов:19 + $Recipients = Get-Mailbox -Identity $user.users

** Я не уверен, что я делаю неправильно, я также включил ** $AdminSessionADSettings.ViewEntireForest = $true


person Yallabina    schedule 14.04.2016    source источник


Ответы (1)


Нашел в Интернете еще один скрипт, чтобы получить список доменов и воздействовать на каждый домен в списке

$objForest = [System.DirectoryServices.ActiveDirectory.Forest]::GetCurrentForest() $DomainList = @($objForest.Domains | Имя объекта выбора) $Domains = $DomainList | foreach {$_.Имя}

Действуйте на каждом домене

foreach($Domain in ($Domains)){ $users = Import-Csv "C:\Users\ramer\Documents\CSV\PORB.csv" foreach ($user in $users) { $Recipients = Get-Mailbox -Identity $user.users [массив]$AllEmailAddresses = $Recipient.EmailAddresses [массив]$NoX500Addresses = $Recipient.EmailAddresses | Где {$_ -notlike "X500:*"} Set-Mailbox -Identity $Recipient.Identity -EmailAddresses $NoX500Addresses}

person Yallabina    schedule 25.04.2016