大量转发用户邮箱电子邮件到同名的邮件联系人。 需要powershell命令来这样做

我有两个OU的用户,每个用户在一个单独的OU中都有一个具有相同名称的邮件联系人。 所以Jane Doe会通过[email protected]电子邮件进入Staff \ OU1。 Mike Doe将通过[email protected] \ OU2。 然后在OU Contacts \ Staff中,他们每个人都会有一个联系人,他们的姓名和[email protected]的电子邮件地址。 我需要将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"} 

国际海事组织链接的设置邮箱页面的第一个例子是接近你想要做的。

坦率地说,你不应该需要联系人,因为在这种情况下,这只是别的东西。 但是,我可能不会正确parsing您的问题。 如果你需要pipe理联系人,这将是Get-MailUser而不是Get-Mailbox 。 你仍然可以用Get-MailUser指定-OrganizationalUnit ,所以你可以先testing一下。

而不是ForwardingSMTPAddress属性,您将要在Set-MailUser上指定属性ExternalEmailAddress