Exchange

將使用者郵箱電子郵件大量轉發到具有相同名稱的郵件聯繫人。需要 powershell 命令來執行此操作

  • July 22, 2015

我有 2 個使用者 OU,每個使用者在一個單獨的 OU 中都有一個同名的郵件聯繫人。因此,Jane Doe 將在 Staff\OU1 中使用 jdoe@contoso.com 電子郵件。Mike Doe 將與 mdoe@contoso.com 在 Staff\OU2 中。然後在 OU Contacts\Staff 中,他們每個人都會有一個聯繫人姓名,其電子郵件地址為 username@contoso.com.test-google-a.com。我需要將 OU1 和 OU2 中的所有使用者電子郵件轉發給他們在 contacts\staff OU 中的聯繫人。我也需要郵件去他們的郵箱和聯繫電子郵件。powershell 中是否有可以為我執行此操作的語法?

假設您正在使用 Exchange 郵箱(您的問題不是很清楚)Set-Mailbox是您最好的朋友。

您將需要一個 for-each 循環來檢索使用者的屬性並正確設置目標 SMTP 地址。如果您有一個完整的使用者 OU 來應用更改,請使用以下內容:

Get-Mailbox -OrganizationalUnit <OU> | % {Set-Mailbox -DeliverToMailboxAndForward $true -ForwardingSMTPAddress "($_.Alias)@otherdomain.com"}

IMO 連結的 Set-Mailbox 頁面中的第一個範例與您嘗試執行的操作非常接近。

坦率地說,您不應該需要聯繫人,因為在這種情況下它只是要管理的其他東西。但是,我可能無法正確解析您的問題。如果您需要管理聯繫人,這將Get-MailUser代替Get-Mailbox. 您仍然可以指定-OrganizationalUnitwith Get-MailUser,因此您可以先對其進行測試。

而不是屬性,ForwardingSMTPAddress你會想要指定屬性ExternalEmailAddress``Set-MailUser

引用自:https://serverfault.com/questions/707684