2.4.6 利用脚本批量添加域用户账户
以上两种方法是比较常用的批量用户账户添加方法,但是不够灵活(不可以设置密码),而且在添加用户数量多时,输入的工作量也比较大。本节所介绍的WSH脚本方法相对来说,工作量比较小,但难度却要高许多,需要懂得一些基本的脚本语言。仅作选学参考。
【注意】以下脚本也需要在文本模式下,以英文输入方式输入,特别是其中的逗号和引号。其实这是代码输入的一般性常识。
WSH的全称是Windows Script Host,是一种支持ActiveX(COM)的独立脚本语言。WSH脚本程序本来是为了替代DOS时代的批处理文件而产生的,后来由于WSH的应用很广泛,已经不只是局限于批处理的替代品了。从Windows98开始,操作系统就已经自带了WSH,因此在Windows98或以上的操作系统中,可以不安装任何软件就能直接使用WSH。
WSH可以使用VBscript与Jscript,即使用的脚本语言与网页脚本是一样的。WSH文件的扩展名为vbs及js,分别用VBscript与Jscript作为编程脚本语言。还有一种脚本文件的扩展名是wsf,它是一种包含XML的文件,wsf文件中可以同时包含VBscript与Jscript两种语言。wsf文件中,可以使用多种脚本,需要一些XML标签来声明的,最基本的就是用<script>标签说明脚本的类型,另外最外层要用<job>标签声明任务。此处所介绍的不是这种支持XML的脚本。
1. 利用WSH脚本中的循环功能实现批量创建用户帐号
用脚本批量添加用户账户的一个最大的好处就是代码输入工作量小,几行就完成了,而且还可以配置用户密码。但难度较大,而且用户名只能是有规律的,不可能针对每个用户具体指定用户名。现在假设要在grfw.local域的Sales组织单位中创建10个用户,用户名为User1、User2~User10。下面是这个示例的代码,用记事本程序以vbs或js扩展名格式保存,然后直接双击运行即可。
Set objDomain = GetObject("LDAP://dc=grfw,dc=local")# 调用(也称绑定)名为grfw.local对象
Set objOU = objDomain.Create("organizationalUnit", "ou=Sales")# 创建一个名为Sales的组织单位。如果相应的组织单位已创建,则此语句不要,而要采用“Set objContainer = GetObject("LDAP://OU=Sales,dc=grfw,dc=local")”语句,否则会显示“对象已存在”错误信息。
Set objOU = GetObject("LDAP://OU=Sales,dc=grfw,dc=local")# 调用域名为grfw.local,组织单位为Sales对象
objOU.SetInfo # 保存组织单位信息
For i = 1 To 10# 设置循环变量和级数
Set objUser = objContainer.Create("User", "cn=UserNo" & i)# 在Users容器下创建UserNo1到UserNo10的用户账户
objUser.Put "sAMAccountName", "UserNo" & i# 把所得的“UserNo”变量值赋予给相应用户账户的sAMAccountName属性
objUser.SetInfo # 保存用户信息
objUser.SetPassword "Winda0101" # 设置所有用户的初始密码均为“Winda0101”
objUser.AccountDisabled = FALSE# 启用用户
objUser.SetInfo# 保存用户信息
Next# 下一个循环
WScript.Echo "10 Users created." # 脚本编写结束后的显示信息,提示已创建了1000个用户账户
以上语句在记事本中的格式如图2-31所示。
图2-31WSH脚本格式示例
添加用户后,也会在“Active Directory用户和计算机”管理单元相应的组织单位下添加这些用户,如图2-32所示。注意他们已有了初始密码。
批量添加后还要对各用户进行重命名,重命名的方法很简单,只需在相应账户上单击右键,在弹出菜单中选择“重命名”选项即可进行重命名。
图2-32 用WSH批量添加的10个用户
分享到:
相关推荐
批量添加域用户并设置用户目录脚本,域用户批量导入,移植
powershell批量建立AD账户脚本及模板,关于AD域控管理自动化,节省IT管理员的操作
域用户登陆自动注销脚本 域用户登陆自动注销脚本 域用户登陆自动注销脚本 域用户登陆自动注销脚本 域用户登陆自动注销脚本
使用数据字典脚本批量添加Simulink观测量与标定量
域用户登录脚本,自动选择组,自动连接公共盘及打印机
windows批量脚本配置IP地址
此BAT脚本可以帮助开发人员将某文件夹下所有SQL脚本按文件名依次在指定数据库中批量执行。并且生成日志文件,可查看执行过的所有脚本名称和错误信息。 注意: (1) 使用前需确保已将sqlcmd加入到系统环境变量中。 (2...
因客户端比较多,仔细研究了一下微软的加域和用户迁移工具,结合在网上搜到的一些脚本,自己编写了一个Windows Xp,Windows 7自动加域及自动迁移用户配置文件的脚本。 (工具已上传,其中USMT由于太大,请自行下载...
在WINDOWS下批量添建新用户的工具,对于一次要建几十上面个用户的人来说,这可是不可缺少的哈
使用脚本添加域用户到本地Power Users组,通过组策略放在登录脚本或者开机脚本设置里面。 知识点一:使用RIS安装image时导入compatws安全模板 * compatws安全模板可以放松一些用户和注册表限制,允许运行legacy...
Linux (Centos) 批量添加连续账户的shell脚本,可以使用
AD域中批量处理数据的脚本,请大家参考,可以省去一个一个处理的麻烦。
为一个域用户设置登陆脚本 为一个域用户设置登陆脚本
改计算机名字脚本
资源简介首先使用“NewSID-生成新的安全标识符.exe”(需重启); 然后使用“WINXP原本的各项服务.BAT”。
在域模式下批量添加域用户就有些困难,下面是一个vbs脚本,在同级目录下用放置一个users.txt的文本文档,格式:username,password,在dc上运行该脚本,即可以将users.txt的用户信息批量添加到ad里面。可以通过移动或...
如果你质疑自己,不确定命令是否正确或者不确定脚本是否能正常执行, 你可以先测试,测试方法就是 在命令行输入 需要执行的命令,返回结果为理想状态就把命令放进脚本,并批量添加即可! 如:执行查询账号的其中一条...
运行脚本自动添加用户和密码,且密码我随机生成的。
shell脚本批量部署,可以帮助linux学些脚本的人提供资料
ArcGIS(ArcPy)脚本excel批量添加字段