我们的 2010 Exchange 服务器中有许多用户。我希望将特定用户的所有电子邮件地址导出(到文件中)。稍后,我希望能够再次将所有电子邮件地址导入用户(假设要导入的所有电子邮件都不存在于任何用户帐户中)。
有人知道该怎么做吗?
有人有 Powershell 魔法吗?
答案1
我找到答案了。
作为交换 powershell ...
> $mbx = Get-Mailbox someUserName
> $mbx.EmailAddresses | where { $_.IsPrimaryAddress -eq "False" } | Export-CSV "C:\SomePath\wherever.csv"
> $mbx.EmailAddresses | where { $_.IsPrimaryAddress -eq "False" } | foreach { $mbx.EmailAddress -= $_.SmtpAddress }
> Set-Mailbox someUserName -EmailAddresses $mbx.EmailAddresses
> $mbx = Get-Mailbox theNewUser
> Import-CSV "C:\SomePath\wherever.csv" | foreach { $mbx.EmailAddresses += $._SmtpAddress }
> Set-Mailbox theNewUser -EmailAddresses $mbx.EmailAddresses
就是这样 :)
当然,您可能需要在导出之后和导入之前修改 csv 文件的内容。
我还必须删除所有现有的电子邮件,这样someUserName
就不会有重复的theNewUser
祝你好运 :)