邮件服务器-邮件系统-邮件技术论坛(BBS)

 找回密码
 会员注册
查看: 4732|回复: 1
打印 上一主题 下一主题

[转帖] 通过PowerShell批量创建用户邮箱

[复制链接]
跳转到指定楼层
顶楼
发表于 2007-12-15 10:09:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
出处:blogs.itecn.net
作者: Eric_Zhang

  最近做了一个Exchange 2007的群集项目。当项目接近尾声的时候,客户提出一个问题:我的AD里面有1500多个现有用户,如何才能快速批量为他们生成邮箱?因为在EMC里面,只能一个一个的选择用户,无法像Exchange 2003一样批量选择然后进行操作。如果几千人都一个一个的做,这很不现实。
  实际上,Exchange 2007采用了传统的EMC图形界面之外,另外提供了PowerShell的脚本引擎,通过命令行可以完成很多EMC图形界面不能做到的事情。如果要批量为用户生成邮箱,必须通过PS的命令行方式进行。我这里已虚拟机环境为例,把命令和大家分享一下。
  假设我有一个Exchange 2007的群集环境,群集名称为MailServer。我有若干个用户在Test这个OU下,那么:
  get-user –OrganizationalUnit Test | where-object{$_.RecipientType –eq “User”}
  ----------------这个命令会列举出Test OU下(包含子OU)所有还没有邮箱的AD用户名单
  get-user –OrganizationalUnit Test | where-object{$_.RecipientType –eq “User”} | Enable-Mailbox –Database “MailServer\Mailbox Database” | get-mailbox | select name,windowsemailaddress,database
  --------------这个命令是,为Test OU下(包含子OU)所有用户生成邮箱。生成的邮箱路径是:MailServer群集上面的第一个存储组里面的Mailbox Database。
  这是最主要的2条生成命令。其实,在这些命令里还有很多可以扩展的参数。例如,我只想给Test OU里面的部门为Sales的用户批量生成邮箱,可以这样写:
  get-user –OrganizationalUnit Test | where-object{$_.RecipientType –eq “User” -and $_.department –eq “Sales”} | Enable-Mailbox –Database “MailServer\Mailbox Database” | get-mailbox | select name,windowsemailaddress,database
  总之,PS命令行的工具很好很强大。当然了,我们还是希望微软能在图形化界面里面让我们完成这一点,毕竟2003就可以嘛,听说Exchange 2007 SP1即将作出修正,在图形化界面里就可以多选,方便用户进行操作了。
沙发
发表于 2007-12-15 10:10:47 | 只看该作者
受用了。嘿嘿谢谢
您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

小黑屋|手机版|Archiver|邮件技术资讯网

GMT+8, 2026-8-6 00:01

Powered by Discuz! X3.2

© 2001-2016 Comsenz Inc.

本论坛为非盈利中立机构,所有言论属发表者个人意见,不代表本论坛立场。内容所涉及版权和法律相关事宜请参考各自所有者的条款。
如认定侵犯了您权利,请联系我们。本论坛原创内容请联系后再行转载并务必保留我站信息。此声明修改不另行通知,保留最终解释权。
*本论坛会员专属QQ群:邮件技术资讯网会员QQ群
*本论坛会员备用QQ群:邮件技术资讯网备用群

快速回复 返回顶部 返回列表