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

首先说下需求:

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

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

解决方法如下:

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

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

具体表现就是这样的

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

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

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

name,alias

九叔,jiushu

以下是分离的部分

#批量从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"
}

以下是创建邮箱的部分

#批量从csv中创建邮箱,
#Powered By 九叔
cls
#配置密码
$pass = ConvertTo-SecureString -AsPlainText [email protected] -Force
#ny9s是本地的UPN,ny9sjapan是分离的域名
$ny9s = "@"+"ny9s.com"
$ny9sjapan = ".ny9sjapan"+"@"+"ny9sjapan.co.jp"
#从csv中获取数据
Import-Csv -Path e:\rlpl.csv | foreach { 
#获取循环的upn和特定完整邮件地址
$cb = $_.alias+$ny9s
$ccb = $_.alias+$ny9sjapan
$ab = "(奶油日本)"
$abb = $_.name+$ab
#创建邮箱
New-Mailbox -Name $abb -Alias $_.alias -OrganizationalUnit ‘ny9s.com/非用户账户/mailbox‘ -UserPrincipalName $cb -SamAccountName $_.alias -FirstName ‘‘ -Initials ‘‘ -LastName ‘‘ -Database ‘jiuzige‘ -password $pass -ResetPasswordOnNextLogon $false  -PrimarySmtpAddress $ccb
#顺便加到特定的安全组中
Add-DistributionGroupMember -Identity "haojiyou" -Member $_.name
}

需要注意的是,两个脚本可以放在一起,在一个文件中运行。他们是两个单独的循环。

时间: 2024-08-29 22:51:05

PowerShell批量分离SMTP邮箱,并以此创建新用户邮箱的相关文章

Exchange 2013 创建新用户

1.进入ECP管理界面,选择"收件人"--"邮箱":选择添加选项(即前面+): 2.输入"别名",这里我选择的是现有用户(即域用户),同样你可以创建新的用户(创建新用户的同时,会在域中建立同样的账户): 3.这些是别名的说明和要求: 4.拖到下面,展开"更多选项",还有"数据库"."存档"."通讯簿策略"设置:然后"保存":然后返回到邮箱界面,就可

Office 365 系列之五:创建新用户

本章节跟大家分享怎么去创建新用户.分配许可以及修改用户后缀和电子邮件地址. 登录 Office 365 管理中心,点击"用户"--"活动用户"--"+添加用户": 参照截图,输入对应的姓名.显示名.登录名.密码等信息点击"添加" 如果还需要创建其他用户可以点击"添加其他用户"如果不需要添加了,可以直接X掉这个界面. 如果需要将用户后缀修改为默认那个长的链接可以直接点击该用户,添加别名,并将别名设置为默认的即

oracle创建新用户和用户表空间

1.首先,创建(新)用户: create user username identified by password; username:新用户名的用户名 password: 新用户的密码也可以不创建新用户,而仍然用以前的用户,如:继续利用scott用户 2.创建表空间: create tablespace tablespacename datafile 'd:\data.dbf' size xxxm; tablespacename:表空间的名字 d:\data.dbf':表空间的存储位置 xxx

mysql 创建新用户

mysql -version mysqladmin  Ver 8.42 Distrib 5.7.12, for Win64 on x86_64 使用时用insert 的方式创建新用户,报错:  insert into user    -> (host,user,authentication_string)    -> VALUES('localhost','hupi',PASSWORD('123456'));ERROR 1364 (HY000): Field 'ssl_cipher' does

administrator无法创建新用户的解决

操作系统win2003sp2,已经是administrator了,但是创建新用户时提示: 在计算机 SERVER-05 上创建用户 abc 时,出现了以下错误: 拒绝访问. 百思不得其解,搜遍google和百度都没对症解药. 然后打开事件查看器,发现创建用户时系统抛错如下: SAM 无法更改数据库.很可能是因为内存 或磁盘空间不足.SAM 数据库会被还原为先前状态. 最近的更改都会丢失.请检查可用磁盘空间 和页面文件大小设置的最大值. 搜了下SAM的相关知识,估摸着要么是文件被破坏,要么是权限不

ubuntu系统创建新用户并赋予sudo权限

1.创建新用户 创建新用户有两种方式:adduser和useradd adduser会为用户创建組./home目录下同名文件夹,密码,而useradd不会 因此推荐使用adduser创建用户,例: sudo adduser testuser 2.赋予新用户sudo权限 这里需要修改文件sudoers,该文件处于etc文件夹下 sudo vim etc/sudoers 将 root ALL=(ALL:ALL) ALL 增加为: root ALL=(ALL:ALL) ALL testuser ALL

Office 365系列之五:创建新用户

上一篇文章中我们已经完成了对自定义域的添加和配置,现在我们就可以创建已该域名为后缀的用户和电子邮件地址了.本章节跟大家分享怎么去创建新用户.分配许可以及修改用户后缀和电子邮件地址. 登录Office 365管理中心,点击"用户"---"活动用户"----"+": 填写账户信息,此处即可选择后缀了,可以选择自动生成密码或键入密码,还会通过电子邮件将密码和用户名信息发送到以下收件人,点击"创建" 成功创建后显示用户名.密码和分配的

Linux要在shell 提示下创建新用户帐号

如果你没有登录为根用户,键入命令 su -  然后输入根口令,从而切换到root用户模式. 1.创建新用户:在命令行中键入useradd,随后一个空格和你创建的新用户的用户名(例如,useradd guacm),按 [Enter] 键. 2.为新用户设置密码:键入 passwd,随后一个空格和该用户名(例如,passwd guacm),按 [Enter] 键. 在 New password: 提示下为新用户输入一个口令,然后按 [Enter]. 在 Retype new password: 提示

Mysql创建新用户后无法登录,提示 Access denied for user 'username'@'localhost' (using password: YES)

MySQL创建新用户后无法登录,提示 Access denied for user 'username'@'localhost' (using password: YES) ,多半是因为存在匿名用户,要解决这个问题只要删除数据库中的匿名用户即可. MySQL新建用户后无法登录,提示 Access denied for user 'username'@'localhost' (using password: YES) 的解决方法: 请使用root账户通过命令行或PHP程序运行以下代码 MySQL