王达专栏

《网管员必读》&《网络工程师必读》

王达ID:lycb_gz
204670次访问,排名335好友2人,关注者17
专注网络类图书编写和培训
lycb_gz的文章
原创 111 篇
翻译 0 篇
转载 72 篇
评论 169 篇
茶乡浪子的公告
一位计算机图书作者,写过上千篇稿件,出版过20多部计算机图书,特别是计算机网络方面的图书。近期作品主要是《网管员必读》系列丛书(其中七本)和《网络工程师必读》系列丛书。媒体专题:http://book.csdn.net/subject/926feisi/index.htm 读者专用QQ群:5208368、13836245、4789821、32354930、21566766、17201450(仅允许读者加入) 网上书店:http://shop33132415.taobao.com/
最近评论
dfdkffig:mark
!
xingxingxiaoxiaoxing:老师怎么会不累呢,每天重复着同样的生活,更多的累是被闷出来的吧是,思想累,心累吧。
lycb_gz:我不相信在网络方面有哪一本书能覆盖全面,也不可能有这样一本书。同时也坚信,你们不可能在某个领域中只买过一本书。说这样的话,只证明你们对网络行业不了解,网络领域有多大,有多深,估计你们还可能停留在表现上。
China_xuelei:那哥们说的好,“经典的书有一本就够了。”
wei801004:经典的书有一本就够了。
文章分类
收藏
    相册
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 利用脚本批量添加域用户账户收藏

    新一篇: 打造“个人知识库” | 旧一篇: 把书看薄,再看厚

    以下内容摘自笔者编著的《网管员必读——网络管理》(第2版)一书:
    2.4.6 利用脚本批量添加域用户账户
     以上两种方法是比较常用的批量用户账户添加方法,但是不够灵活(不可以设置密码),而且在添加用户数量多时,输入的工作量也比较大。本节所介绍的WSH脚本方法相对来说,工作量比较小,但难度却要高许多,需要懂得一些基本的脚本语言。 仅作选学参考。
    【注意】以下脚本也需要在文本模式下,以英文输入方式输入,特别是其中的逗号和引号。其实这是代码输入的一般性常识。
    WSH的全称是Windows Script Host,是一种支持ActiveXCOM)的独立脚本语言。WSH脚本程序本来是为了替代DOS时代的批处理文件而产生的,后来由于WSH的应用很广泛,已经不只是局限于批处理的替代品了。从Windows98开始,操作系统就已经自带了WSH,因此在Windows98或以上的操作系统中,可以不安装任何软件就能直接使用WSH
    WSH可以使用VBscriptJscript,即使用的脚本语言与网页脚本是一样的。WSH文件的扩展名为vbsjs,分别用VBscriptJscript作为编程脚本语言。还有一种脚本文件的扩展名是wsf,它是一种包含XML的文件,wsf文件中可以同时包含VBscriptJscript两种语言。wsf文件中,可以使用多种脚本,需要一些XML标签来声明的,最基本的就是用<script>标签说明脚本的类型,另外最外层要用<job>标签声明任务。此处所介绍的不是这种支持XML的脚本。
    1. 利用WSH脚本中的循环功能实现批量创建用户帐号
    用脚本批量添加用户账户的一个最大的好处就是代码输入工作量小,几行就完成了,而且还可以配置用户密码。但难度较大,而且用户名只能是有规律的,不可能针对每个用户具体指定用户名。现在假设要在grfw.local域的Sales组织单位中创建10个用户,用户名为User1User2~User10。下面是这个示例的代码,用记事本程序以vbsjs扩展名格式保存,然后直接双击运行即可。
    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容器下创建UserNo1UserNo10的用户账户
    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-31 WSH脚本格式示例
    添加用户后,也会在“Active Directory用户和计算机管理单元相应的组织单位下添加这些用户,如图2-32所示。注意他们已有了初始密码。
    批量添加后还要对各用户进行重命名,重命名的方法很简单,只需在相应账户上单击右键,在弹出菜单中选择重命名选项即可进行重命名。
    2-32 WSH批量添加的10个用户
     

    发表于 @ 2007年10月22日 07:01:00|评论(loading...)|编辑

    新一篇: 打造“个人知识库” | 旧一篇: 把书看薄,再看厚

    评论

    #border1 发表于2007-10-23 10:15:45  IP: 58.31.65.*
    支持动态列的纯.net写的web报表开发工具在: http://www.fcsoft.com.cn/webreport.htm
    #pzhuyy 发表于2007-10-26 09:01:11  IP: 219.137.162.*
    不错,现在研究wsh的人少了.
    #MSDN_TECHNET 发表于2007-10-28 17:49:56  IP: 60.21.52.*
    虽能提供个加入域的脚本,
    万分感谢
    发表评论  


    当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
    Csdn Blog version 3.1a
    Copyright © 茶乡浪子