[Script]根据Firstname和Lastname更新AD中用户帐号Email的一段小脚本

因为工作需要,要给AD中每个用户添加一个email地址。我们公司用的是Lotus Notes,和用Exchange的公司不同,AD中email地址字段是空的。

不过,好在我们的email是有规律的,都是Firstname.Lastname@mycompany.com的这种形式。所以就简单写了一个script,读取用户帐号的Firstname和Lastname值,然后合并成为email地址,再写入AD中的这个用户帐号中去。
 
【功能】
(1)读取FirstName和LastName,合并成Firstname.Lastname@mycompany.com,再回写入email这个字段中
(2)如遇到FirstName或者Lastname是空,则跳过该帐号,并在屏幕上回显出这个帐号。
(3)全部修改完毕后,显示一共被更新过的帐号总数。
(4)该script对某一个指定OU下的所有帐号依次进行自动操作。
 
【用法】
(1) 将下面的script复制到文本文件,取名为UpdateEmail.vbs
(2) 修改你们公司的域名,和你们公司存放用户帐号的OU,并保存
(3) 然后打开一个命令行窗口,键入以下命令
cscript UpdateEmail.vbs
 
【免责声明】
这个script是本人所写,请先在测试环境下进行调试,一切正常后再使用。本人对于使用过程中造成的数据丢失和损坏不承担任何责任。
 
'======================Start========================
' Modify User Email by FirstName.LastName@mycompany.com
Option Explicit
Dim strOU, strDomain, strADsOU
Dim objOU, objUser, objRootDSE
Dim i
Dim charFirstName, charLastName, charEmail
On Error Resume Next
'===========================================
'Type contrainer here. Format is "ou=xxx,ou=yyy"
'===========================================
strOU = "OU=People,OU=AllUsers" 
Set objRootDSE = GetObject("LDAP://rootDSE")
strDomain = objRootDSE.Get("defaultNamingContext")
strADsOU = "LDAP://" & strOU & "," & strDomain
' Connect to ou
    Set objOU = GetObject(strADsOU)
    WScript.Echo "The emails will be added into " & objOU.Get("name") & " OU"
    ObjOU.Filter= Array("user")
    i=0
    WScript.Echo ""
    WScript.Echo "The following AD accounts don't have FirstName or LastName:"
    For Each objUser in objOU
        charFirstName = ""
        charLastName = ""
         charFirstName = objUser.Get("givenName")
        charLastName = objUser.Get("sn")
    If (charFirstName = Null) Or (charFirstName = "") Or (charLastName = Null) _
    Or (charLastName = "") Then
        WScript.Echo objUser.cn
    Else
        charEmail = charFirstName+"."+charLastName+"@mycompany.com"
        objUser.Put "mail", charEmail
        objUser.SetInfo
        i=i+1
    End If
    Next
'display the count
    WScript.Echo ""
    WScript.Echo "Total record changed: " & i
'===================end=========================
 
【参考】
对Script有兴趣的同学可以参考以下网站
(2) 非常棒的vbscript工具vbsedit http://www.vbsedit.com
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值