以下内容摘自笔者编著的《网管员必读——网络管理》(第2版)一书:

2.4.6 利用脚本批量添加域用户账户

 以上两种方法是比较常用的批量用户账户添加方法,但是不够灵活(不可以设置密码),而且在添加用户数量多时,输入的工作量也比较大。本节所介绍的WSH脚本方法相对来说,工作量比较小,但难度却要高许多,需要懂得一些基本的脚本语言。 仅作选学参考。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
【注意】以下脚本也需要在文本模式下,以英文输入方式输入,特别是其中的逗号和引号。其实这是代码输入的一般性常识。
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"   # 设置所有用户的初始密码均为“Winda<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />0101”
objUser.AccountDisabled = FALSE  # 启用用户
objUser.SetInfo   # 保存用户信息
Next   # 下一个循环         
WScript.Echo "10 Users created."  # 脚本编写结束后的显示信息,提示已创建了1000个用户账户
以上语句在记事本中的格式如图2-31所示。

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
图2-31  WSH脚本格式示例
添加用户后,也会在“Active Directory用户和计算机”管理单元相应的组织单位下添加这些用户,如图2-32所示。注意他们已有了初始密码。
批量添加后还要对各用户进行重命名,重命名的方法很简单,只需在相应账户上单击右键,在弹出菜单中选择“重命名”选项即可进行重命名。

图2-32 用WSH批量添加的10个用户

转载于:https://blog.51cto.com/winda/46419

利用脚本批量添加域用户账户相关推荐

  1. linux小脚本批量添加/删除用户

    批量添加/删除用户,当输入add时,判断用户是否存在,存在则显示存在,不存在则添加:当输入del时,判断用户是否存在,存在则删除用户,不存在则显示不存在. #!/bin/bash if [ $1 == ...

  2. 批量查看域用户登录计算机信息

    批量查看域用户登录计算机信息 在企业中经常有各种针对域帐号信息收集的需求,比如收集帐号在哪台计算机的登录时间:或者收集针对计算机硬件信息收集,对于硬件的收集推荐使用Bginfo来部署,结合AD组策略登 ...

  3. ADMT3.1快速迁移域用户账户和组[为企业维护windows server 2008系列十四]

    在windows server 2008 的AD维护工作中,我们可能需要将当前域的用户账户和组转移到另外一个域中(这个动作我们称之为迁移). 在雅利安星际疫苗接种公司工作的windows 网络管理员号 ...

  4. dsrm批量删除域用户

    删除域账户,dsrm批量删除域用户,域控删除账户命令,批量删除禁用账户 一. 用命令删除域用户 在域控服务器管理时, 可以使用dsrm命令来删除域用户, dsrm删除账户语法 dsrm UDN -no ...

  5. 批量重置域用户密码(一)

    说到批量我们想到就是通过vbs.powershell.java等等来实现的方式,既然我们说到批量重置域用户密码,我想大家对这句话应该不陌生,因为网上有很多类似的做法,但是他们的做法跟我所实现的不一样, ...

  6. vcneter5.5添加域用户权限

    一.安装完vCenter5.5之后,发现不能添加域用户来管理vSphere,查了文档,原来是现在安装vCenter Single Sign-on的时候创建了一个默认域:vsphere.local. 添 ...

  7. 域服务器用户一直被锁,Windows Server 2019 域用户账户锁定策略

    Windows Server 2019 域用户账户锁定策略,默认是没有定义的.需要用到账户锁定启用这个策略即可.至于为什么启用这个策略可以根据你自己的环境来决定.我启用这个策略主要是为了防止内网密码嗅 ...

  8. 雅虎通可以批量添加MSN用户了

    雅虎通的好友中线插件今天升级了,增加了批量导入功能. 如果你已经有几百个MSN联系人,通过批量导入就可以给这些用户一一发送雅虎通帐号的联通申请了. 雅虎通和MSN之间的互通是这样的: 雅虎通用户升级到 ...

  9. 用户管理(一):使用shell脚本批量添加指定数量的用户

    运行环境 CentOS 6.9.Xshell 5 前言 我们在需要创建多个用户的时候,使用手工单独创建是比较耗费精力的事情,我们可以通过shell脚本实现批量添加用户,实现指定数量用户.创建用户默认名 ...

最新文章

  1. 分别是什么意思_你知道抗震支架T和TL分别代表什么意思?
  2. python链表添加多个值_Python基础10之数据结构(下)
  3. IOS —— KVO的一个小封装
  4. Java程序员必备基础:Java代码是怎么运行的?
  5. Python推荐算法讲解
  6. 不用临时变量交换两个变量的值
  7. LeetCode 103. 二叉树的锯齿形层次遍历(BFS / 双栈)
  8. 传智书城首页设计代码_(自适应手机版)响应式创意餐饮酒店装饰设计类网站织梦模板 html5蓝色餐饮酒店设计网站源码下载...
  9. linux suse 共享目录_SUSE环境下YAST源(连接共享目录)
  10. 51Nod 1009 数字1的数量 数位dp
  11. 实现redis集群的批量pineline操作
  12. php 输出数据库取出来的html源码 正常显示解决,替换显示数据库中的html代码
  13. 数字图像处理(冈萨雷斯)学习 第二章 数字图像基础
  14. Gitee使用(详细idea关联git)
  15. 手机距离传感器测试软件,距离传感器有什么用_手机距离传感器坏了
  16. vue-element-admin 后台管理系统
  17. Circular Coloring
  18. 嵌入式开发--智能机械臂
  19. HJ68 成绩排序 ●●
  20. java-opencv文档

热门文章

  1. oracle之 oracle database vault(数据库保险库)
  2. Javascript正则表达式完全学习手册
  3. C# 垃圾回收器高效工作
  4. getpass函数简单使用
  5. Spring事务隔离级别,事务传播行为
  6. Exception in thread “main“ java.lang.NoClassDefFoundError: javax/script/Compilable
  7. Row size too large ( 8126)(解决)
  8. usb 1-5.2: device not accepting address 4, error -110问题解决方案
  9. java.io.IOException: No FileSystem for scheme: hdfs转载加自己笔记
  10. sbt安装、配置、運行(scala sbt helloworld)