我试图收集我们的Exchange 2003系统使用的所有电子邮件地址列表,其中不仅包括普通用户地址,还包括通讯组和别名 。 我也需要输出格式如: [email protected] – 虽然,我们只有一个域,所以即使我可以得到用户的一部分,这将工作。
我不在乎账户关联,我真的只需要一个地址列表。
我怎样才能从Exchange 2003中导出所有smtp电子邮件地址,包括[email protected]格式的通讯组和别名地址?
我更喜欢可以通过命令行完成的事情,以便可以通过脚本生成,但是如果有办法手动执行此操作(读取:指向并单击),也是一样有用。
有任何想法吗? 我在System Manager中没有看到可以做到这一点的任何东西,而且我的search没有find能够满足上述所有要求的任何东西。
解决了
这是我如何使用接受的答案:
@echo off ldifde -fc:\temp\ldifde-dump.txt -l proxyaddresses find "@" < c:\temp\ldifde-dump.txt > c:\temp\email-addresses.txt del c:\temp\ldifde-dump.txt
这产生了c:\ temp \ email-addresses.txt,虽然它包含一些额外的垃圾字符,但它可以通过在Notepad ++中进行search和replace来轻松parsing出来。
如果您只需要主电子邮件地址,则可以在Exchange服务器上运行此操作,填写域和com值:
csvde -r "(mail=*)" -d "dc=domain,dc=com" -l mail -fc:\gal.csv
要获得次要的电子邮件地址,它有点棘手。 你可以用它来生成一个文件:
ldifde -f dump.ldf -l proxyaddresses
find一种方法从这里提取LDF文件的电子邮件地址: http : //bytes.com/topic/unix/answers/648158-extract-email-addresses-big-file
如果您有权访问Windows中的perl,请创build一个包含以下内容的perl文件:
while (<STDIN>) { while (/[\w\.\-]+@[\w\.\-]+\w+/g) {print "$&\n"}}
然后运行这个命令:
perl ExtractEmail.pl <dump.ldf >out.txt
Out.txt应包含您的所有电子邮件地址。
Adfind.exe与此:AdFind.exe -default -nodn -nolabel -noctl proxyAddressess
把所有的SMTP或者smtp:地址都删掉。