上海青羽电脑科技有限公司

技术园地

TECHNOLOGY

技术园地

Exchange导出自动转发的用户及转发目标邮箱地址

发布时间:2018-10-19  /  浏览次数:10,891次

要想统计Exchange中所有用户的自动转发设置,以及自动转发目标邮箱的邮件地址,在每个用户属性--邮箱流 去挨个查看显然不是明智之举,在有几千用户的情况下这个工作量实在是庞大。好在Exchange有Exchange Management Shell界面,可以用命令很方便的批量导出这些数据,下面就简单记录一下方法,如果同学们有更好的方法也可以提出来。

1.打开Exchange Management Shell界面

2.用Get-Mailbox命令查看所有设置过自动转发的用户
Get-Mailbox | where {$_.ForwardingAddress –ne $NULL –or $_.ForwardingSmtpAddress –ne $NULL} | ft Name, ForwardingAddress, ForwardingSmtpAddress

大家应该注意到,结果中只能看到哪些用户设置了自动转发,并看到了转发的目标邮箱,但却看不到目标邮箱的具体邮件地址ForwardingSmtpAddress,那就接着往下看...

3.把上面命令输出结果导出到一个csv文件(后面添加-Encoding UTF8参数,是为了防止导出结果中中文乱码)


Get-Mailbox | where {$_.ForwardingAddress –ne $NULL –or $_.ForwardingSmtpAddress –ne $NULL} | select Name, ForwardingAddress | Export-Csv c:\user_forward.csv -Encoding UTF8

打开导出的user_forward.csv文件,可以看到之前命令输出的信息

4.再利用Import-Csv命令,导入刚才导出的csv文件,同时查找转发目标邮箱所对应的邮件地址

Import-Csv c:\user_forward.csv | foreach {Get-Mailbox -Identity $_.ForwardingAddress | Select Identity, PrimarySmtpAddress}

5.同样,把上面命令输出结果中PrimarySmtpAddress这一列直接导出至一个csv文件
Import-Csv c:\user_forward.csv | foreach {Get-Mailbox -Identity $_.ForwardingAddress | Select Identity, PrimarySmtpAddress} | select PrimarySmtpAddress | Export-Csv c:\forward_address.csv -Encoding UTF8

打开导出的forward_address.csv文件,可以看到之前命令输出的信息,也就是目标邮箱所对应的邮件地址

6.再把第3步导出的csv与第5步导出的csv合在一张表中整理一下,就得出了我们想要的信息(设置自动转发的用户、转发目标邮箱、转发目标邮箱邮件地址)

 

一站式解决邮件收发与安全难题
靠谱工程师为您提供一对一的专业技术支持与服务
申请试用
400-602-8603