首页 编程 软件学院 查看内容

PowerShell批量分离SMTP邮箱,并以此创建新用户邮箱

2015-7-7 15:02 |来自: http://jiushu.blog.51cto.com/ 1750 0

摘要: 首先说下需求:用户这边用的是多域名邮箱,就是一个用户名下会有多个邮箱,只是后缀不同,比如@ny9s.com @ny9s.cn @ny9s.co.jp 这种。由于业务需要,需要给用户发送邮件的时候,分别显示不同的后缀。这个需求其实解 ...
关键词: nbsp 邮箱 removeaddress 用户 地址 jiushu ny 变量 日本 名字

首先说下需求:

用户这边用的是多域名邮箱,就是一个用户名下会有多个邮箱,只是后缀不同,比如@ny9s.com  @ny9s.cn  @ny9s.co.jp  这种。由于业务需要,需要给用户发送邮件的时候,分别显示不同的后缀。

这个需求其实解决起来不是很简单,因为我们知道Exchange中,用户不能和QQ邮箱一样,随时去切换自己的邮箱地址。你可以设定多个邮箱作为接收,但是没办法随时更改发送地址。


解决方法如下:

1、从用户邮箱中分离@ny9s.co.jp地址

2、利用用户中文名字+(奶油日本)作为中文名字,原英文名字+ny9sjapan作为新的邮件地址。批量设置一个密码1qaz@WSX

具体表现就是这样的

老邮箱:九叔   [email protected] 登录名  jiushu

新邮箱:九叔(奶油日本) [email protected]  登录名 jiushu.ny9sjapan


用PowerShell来实现,当然要借助到CSV,存为utf8格式,内容如下:

name,alias

九叔,jiushu


以下是分离的部分

1
2
3
4
5
6
7
8
9
10
11
12
13
#批量从csv中摘除某个特定邮件地址,
#Powered By 九叔
cls
#定义变量
$removeaddress "@"+"ny9s.co.jp"
Import-Csv -Path e:\rlpl.csv | foreach 
#进入循环, 
$removeaddress $_.alias+$removeaddress
    echo $removeaddress
Set-Mailbox $_.name -EmailAddresses @{remove="$removeaddress"}
#清洗变量,以免下一次循环时变量叠加
$removeaddress "@"+"ny9sco.jp"
}


以下是创建邮箱的部分

1
2
3
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论