PowerShell在Exchange2010下快速开启邮箱[续]

PowerShell批量创建邮箱
本文介绍如何使用PowerShell脚本批量为组织单位内的用户创建邮箱,并记录每一步操作到文件中,便于日后核查与备份。
上一篇博客还是有点问题的,这一篇才是真正解决的。

我们通过PowerShell来快速创建用户邮箱,如果希望记录每次操作了几个用户,应该怎么做?下面这个例子可以实现创建用户邮箱的时候,专门用一个文件记录,记录文件具体操作的指令,可以作为备份使用。后缀名我用的是PS1,实际上用txt也没什么不可以。

#脚本本身放在E盘根目录就ok了,其他不需要做任何设置。
#powerd by 九叔  a9y@foxmail.com 
e: #进入磁盘e
Remove-Item e:/mail.ps1 #删除脚本临时运行文件
$list=get-user  -OrganizationalUnit 牛逼公司 -RecipientTypeDetails user #取未获得邮箱的用户列表,从整个域内获取,可以指定特定OU。牛逼公司就是OU名,可以任意修改,不需要引用
$list  >> e:/mail.ps1
cat e:/mail.ps1
Write-Host '↑↑↑↑本次要操作的开启邮箱的用户名如上↑↑↑↑'
$extime = (Get-Date -Format 'yyyyMMddHHmmss')
$tt = "e:/" + $extime + ".ps1" #包含时间的存储操作记录的文件,后缀可以随意修改
Write-Host '请点击任意键继续,或关闭该进程取消!' -NoNewline #点击任意键继续
$null = [Console]::ReadKey('?')#点击任意键继续
Remove-Item e:/mail.ps1
	#以下进入循环,吐需要的命令
ForEach ($item in $list)
{
$sam =$item.SAMAccountName
$user = $item.name
#$user = -Split $item
echo "Enable-Mailbox -Identity '$user' -Alias '$sam' -Database 'xyz'" >> $tt
echo "Enable-Mailbox -Identity '$user' -Alias '$sam' -Database 'xyz'" >> e:/mail.ps1 #吐到后期要执行的文件中
}
./mail.ps1 #执行新的PowerShell文件

把文件用PowerShell的编辑器打开,学习下吧,很简单。这个暂时就是最终版了,应该有一段时间不用修改了。


这篇博客感谢PowerShell的MVP付海军,虽然他给我的一个很好的方法没用上,但是解决了我的另外一个问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值