批量添加windows 2003 AD账号,网上有好几种方法。本人收集了几篇。

主要涉及到的命令有:

1、dsadd

2、csvde

依次记录,以备以后用。

下面是第一种:

第一部分

情景:新建域环境,需要创建大批用户帐号。

环境:Windows Server 2003 + SP2 (DC)

操作:

1、在C盘根目录下创建 add.cmd 和 UserList.txt 两个文件。虚线内为实际内容。

add.cmd (文件内容为一行,无回车)
======================================================

For /F "tokens=1,2" %%a in (UserList.txt) do dsadd user CN=%%a,OU=test,DC=altn,DC=Com -upn %%a@altn.com -display %%b -pwd p@ssw0rd -pwdneverexpires yes
======================================================

UserList.txt (拼音和中文名之间有一个空格)
======================================================

zhangsan 张三
lisi 李四
wangwu 王五
======================================================

2、运行 add.cmd ,搞定。

第二部分

仅从操作过程来看非常简单,但有细节之处。

1、dsadd user 是 Windows Server 2003 才具备的工具。

2、UserList.txt 内的原始数据还是需要手工输入的。

3、For语句将读取UserList.txt,把每行第一个空格前的内容赋予变量%%a,空格后的内容赋予变量%%b。For语句中tokens的含义是关键。后面一部分则是dsadd user的命令,可以根据自己的需求修改域名和OU名,如果直接创建在默认的Users文件下的话就把OU=test改成CN=Users。(域中已存在的OU)

4、我在创建用户时关注的一些选项以及这些选项在dsadd中的对应开关符

(1)用户登录名     (-upn <UPN>    设置 upn 值为 <UPN>。)

(2)win2000以前版本的用户登录名   (设置了upn会自动生成)

(3)密码永不过期 (-pwdneverexpires {yes | no} 用户密码是否永远不过期。默认值: no。)

(4)账户永不过期 (-acctexpires <NumDays> 设置用户帐户从今天起在 <NumDays> 天内过期。0 值 意味着今天结束后帐户就过期; 正数值意味着帐户在未来过期; 负数意味着该帐户已经过期并将过期日期设置在过去; 字符串值 "never" 意味着该帐户永远不过期。)

(5)用户显示名(-display <DisplayName> 设置用户显示名为 <DisplayName>。)

(6)登录密码(-pwd {<Password> | *}   设置用户密码为 <Password>。如果是 *,会提示您输入密码。)

(7)用户下次登录是否修改密码 (-mustchpwd {yes | no}   用户在下次登录时是否更改密码。默认值: no。)

(8)账户是否禁用 (-disabled {yes | no}    用户帐户是否禁用。默认值: no。)

5、dsadd user 还有许多开关符,可以根据需要自己添加。我关注的选项中有些默认值就是符合需求的,所以在命令行中没有出现。

第三部分

以下内容为活动目录增加用户或组的相关参数

C:\Documents and Settings\Administrator>dsadd
描述: 此工具命令将一些具体的对象类型添加到目录。dsadd 命令:

dsadd computer - 将计算机添加到目录。
dsadd contact - 将联系人添加到目录。
dsadd group - 将组添加到目录。
dsadd ou - 将组织单位添加到目录。
dsadd user - 将用户添加到目录。
dsadd quota - 将配额规定添加到目录分区。

要查找具体命令的帮助,请键入 "dsadd <ObjectType> /?",这里的
<ObjectType> 是上面显示的一个受支持对象的类型。
例如,dsadd ou /?。

备注:
可分辨名称中不是用作分隔符的逗号必须用反斜杠 ("\") 字符转义
(例如,"CN=Company\, Inc.,CN=Users,DC=microsoft,DC=com")。
用在可分辨名称中的反斜杠必须用一个反斜杠转义(例如,
"CN=Sales\\ Latin America,OU=Distribution Lists,DC=microsoft,DC=com")。

目录服务命令行工具帮助:
dsadd /? - 添加对象的帮助。
dsget /? - 显示对象的帮助。
dsmod /? - 修改对象的帮助。
dsmove /? - 移动对象的帮助。
dsquery /? - 查找匹配搜索标准对象的帮助。
dsrm /? - 删除对象的帮助。

C:\Documents and Settings\Administrator>dsadd user /?
描述:   把用户添加到目录。
语法:   dsadd user <UserDN> [-samid <SAMName>] [-upn <UPN>] [-fn <FirstName>]
        [-mi <Initial>] [-ln <LastName>] [-display <DisplayName>]
        [-empid <EmployeeID>] [-pwd {<Password> | *}] [-desc <Description>]
        [-memberof <Group ...>] [-office <Office>] [-tel <Phone#>]
        [-email <Email>] [-hometel <HomePhone#>] [-pager <Pager#>]
        [-mobile <CellPhone#>] [-fax <Fax#>] [-iptel <IPPhone#>]
        [-webpg <WebPage>] [-title <Title>] [-dept <Department>]
        [-company <Company>] [-mgr <Manager>] [-hmdir <HomeDir>]
        [-hmdrv <DriveLtr:>] [-profile <ProfilePath>] [-loscr <ScriptPath>]
        [-mustchpwd {yes | no}] [-canchpwd {yes | no}]
        [-reversiblepwd {yes | no}] [-pwdneverexpires {yes | no}]
        [-acctexpires <NumDays>] [-disabled {yes | no}]
        [{-s <Server> | -d <Domain>}] [-u <UserName>]
        [-p {<Password> | *}] [-q] [{-uc | -uco | -uci}]

参数:

值                      描述
<UserDN>                需要项。要添加的用户可分辨名称(DN)。如果目标对象
                        被省略,将从标准输入(stdin)中读取。
-samid <SAMName>        设置用户的 SAM 帐户名为 <SAMName>。如果没有指定,
                        dsadd 会使用 <UserDN> 公用名(CN)里的前 20 个字符
                        创建 SAM 帐户名。
-upn <UPN>              设置 upn 值为 <UPN>。
-fn <FirstName>         设置用户名为 <FirstName>。
-mi <Initial>           设置用户中间名首字母为 <Initial>。
-ln <LastName>          设置用户姓为 <LastName>。
-display <DisplayName> 设置用户显示名为 <DisplayName>。
-empid <EmployeeID>     设置用户雇员 ID 为 <EmployeeID>。
-pwd {<Password> | *}   设置用户密码为 <Password>。如果是 *,会提示您输入
                        密码。
-desc <Description>     设置用户描述为 <Description>。
-memberof <Group ...>   把用户设置成一个或多个组成员 <Group ...>
-office <Office>        设置用户办公室位置为 <Office>。
-tel <Phone#>           设置用户电话号码为 <Phone#>。
-email <Email>          设置用户电子邮件地址为 <Email>。
-hometel <HomePhone#>   设置用户家庭电话号码为 <HomePhone#>。
-pager <Pager#>         设置用户寻呼机号码为 <Pager#>。
-mobile <CellPhone#>    设置用户移动电话号码为 <CellPhone#>。
-fax <Fax#>             设置用户传真号码为 <Fax#>。
-iptel <IPPhone#>       设置用户的 IP 电话号码为 <IPPhone#>。
-webpg <WebPage>        设置用户的网页 URL 为 <WebPage>。
-title <Title>          设置用户的职务为 <Title>。
-dept <Department>      设置用户的部门为 <Department>。
-company <Company>      设置用户的公司信息为 <Company>。
-mgr <Manager>          设置用户的经理为 <Manager> (格式是 DN)。
-hmdir <HomeDir>        设置用户主目录为 <HomeDir>。如果它是 UNC 路径,一个
                        将映射到此路径的驱动器号必须也要用 -hmdrv 指定。
-hmdrv <DriveLtr:>      设置用户主驱动器号为 <DriveLtr:>
-profile <ProfilePath> 设置用户的配置文件路径为 <ProfilePath>。
-loscr <ScriptPath>     设置用户的登录脚本路径为 <ScriptPath>。
-mustchpwd {yes | no}   用户在下次登录时是否更改密码。默认值: no。
-canchpwd {yes | no}    用户是否可以更改密码。如果 -mustchpwd 是 "yes",
                        它应该是 "yes"。默认值: yes。
-reversiblepwd {yes | no}
                        是否使用可逆的加密保存密码。默认值: no。
-pwdneverexpires {yes | no}
                        用户密码是否永远不过期。默认值: no。
-acctexpires <NumDays> 设置用户帐户从今天起在 <NumDays> 天内过期。0 值
                        意味着今天结束后帐户就过期; 正数值意味着帐户在未
                        来过期; 负数意味着该帐户已经过期并将过期日期设置
                        在过去; 字符串值 "never" 意味着该帐户永远不过期。
-disabled {yes | no}    用户帐户是否禁用。默认值: no。
{-s <Server> | -d <Domain>}
                        -s <Server> 使用名称 <Server> 连接到域控制器 (DC)。
                        -d <Domain> 在域 <Domain> 连接一个 DC。
                        默认值: 在登录域的 DC。
-u <UserName>           作为 <UserName> 连接。默认值: 该登录的用户。用户名
                        可以是: 用户名,域\用户名或用户主体名称(UPN)。
-p {<Password> | *}     用户的密码 <UserName>。如果已输入 *,会提示您输
                        入密码。
-q                      安静模式: 不在标准输出显示任何输出。
{-uc | -uco | -uci}     -uc 指定从管道的输入或至管道输出用 Unicode 格式。
                        -uco 指定至管道或文件的输出用 Unicode 格式。
                        -uci 指定从管道或文件的输入用 Unicode 格式。

备注:
如果您在命令提示没有提供目标对象,会从标准输入(stdin)获取目标对象。可以
从键盘、重定向文件或从另一个命令的管道输出接受 Stdin 数据。要从键盘或在
重定向文件中标记 stdin 数据的结束,请使用 Control+Z 表示文件结束(EOF)。

如果您提供的值包含空格,请在文字两边使用引号(例如,"CN=John Smith,
CN=Users,DC=microsoft,DC=com")。如果您输入了多个值,这些值必须用空格隔开
(例如,一个可分辨名称列表)。

特殊令牌 $username$ (不区分大小写)可以用来把 SAM 帐户名放在一个参数的值。
例如,如果目标用户 DN 是 CN=Jane Doe,CN=users,CN=microsoft,CN=com,
SAM 帐户名属性是 "janed",-hmdir 参数能有以下替换值:

-hmdir \users\$username$\home

-hmdir 参数的值被修改为以下值:

-hmdir \users\janed\home

另请参阅:
dsadd computer /? - 将计算机添加到目录的帮助。
dsadd contact /? - 将联系人添加到目录的帮助。
dsadd group /? - 将组添加到目录的帮助。
dsadd ou /? - 将组织单位添加到目录的帮助。
dsadd user /? - 将用户添加到目录的帮助。
dsadd quota /? - 将配额添加的目录的帮助

目录服务命令行工具帮助:
dsadd /? - 添加对象的帮助。
dsget /? - 显示对象的帮助。
dsmod /? - 修改对象的帮助。
dsmove /? - 移动对象的帮助。
dsquery /? - 查找与搜索标准匹配对象的帮助。
dsrm /? - 删除对象的帮助。

dsadd 失败:参数不正确。
请键入 dsadd /? 以查看帮助。

以下是我的脚本:

For /F "tokens=1,2,3" %%a in (User.txt) do dsadd user CN=%%a,OU=users,DC=bing51027,DC=Com -upn %%a@bing51027.com -display %%b -pwd %%c -pwdneverexpires yes -dept sales
pause

user.txt内容:

zhangsan 张三 A100@s200

lisi 李四 A120@y200

本文转自    yuxye   51CTO博客,原文链接:http://blog.51cto.com/fishvsfrog/761483

批量添加AD账号(一)相关推荐

  1. 批量添加AD账号(三)

    批量添加域用户 一. AD用户帐户复制 1.在"AD域和计算机"中建一个作为样板的用户,如S1. 2.设置相关需要的选项,如所属的用户组.登录时间.用户下次登录时需更改密码等. 3 ...

  2. 批量创建AD账号添加SMTP、Manager、extensionAttribute4属性

    最近公司收购新工厂需要大批量创建AD账号,由于AD的自定义属性比较多需要添加proxyaddress邮件主SMP地址.直线经理Manager属性.extenstionAttribute4属性 user ...

  3. 批量修改AD账号Account

    在企业环境中,往往有许多因素需要修改AD登录账号名称,通过表现在:(1)AD账号与邮箱集成号两套账户变成一套,改AD登录账号:(2)AD与OA集成,改AD账户:(3)应用系统的整合,也可能会出现此种需 ...

  4. PowerShell 批量禁用AD账号并记录

    因原始版本包含AD组织信息,以下为删改版本,仅做个人备忘 较好判断禁用账号是否重名,避免禁错用户 记录对用户操作的日志,删除组,移动OU,修改备注等 Write-Host @" # # na ...

  5. 批量修改AD账号的UPN后缀(同适用于解决外网自动配置Exchange邮箱)

    背景: 公司内网AD环境是adtest.intra,对外使用的域名是adtest.cn,这样导致有一些问题,比如:不能通过UPN在AD中认证. 解决思路: 更给AD账户的UPN后缀,使后缀统一变为ad ...

  6. 【原创】批量修改AD账号的UPN后缀(同适用于解决外网自动配置Exchange邮箱)

    背景: 公司内网AD环境是adtest.intra,对外使用的域名是adtest.cn,这样导致有一些问题,比如:不能通过UPN在AD中认证. 解决思路: 更给AD账户的UPN后缀,使后缀统一变为ad ...

  7. AD域中如何批量导入导出账号

    本帖出现于51CTO论坛中,是一位网友自己的实际工作经历.是在AD域中如何批量导入导出账号.工作上有一个需求,需要批量的导入一些账号,并要求有一些属性,比如:部门,职位,分机等! 如果您有兴趣也可以去 ...

  8. Powershell批量解锁被锁定的AD账号

    查询出被锁的AD账号,并启用 Search-ADAccount -LockedOut | Unlock-ADAccount 请关注下方的微信公众号,获取更多IT资讯:

  9. 批量移动AD用户到指定OU

    作为域管理员,在日常工作中使用ADUC(AD用户和计算机)工具在图形界面中进行账号管理操作可谓是家常便饭了.然而一个个增加.移动.删除用户,这样操作有时真的够烦,当管理大批量的账户时,重复操作浪费的时 ...

最新文章

  1. 机器学习:信用风险评估评分卡建模方法及原理
  2. C# in depth 阅读笔记-- 委托
  3. linux 安装gcc4.2,Linux操作系统下安装gcc4.2.*的方法
  4. 构建轻量级的Table View注意事项[UIKit]
  5. c++11 移动语义move semantics
  6. 深入掌握JMS--转
  7. 反向传播BP 算法之一种直观的解释
  8. Eclipse 运行程序
  9. QTP中字符串替换函数
  10. mantis缺陷管理系统配置与安装
  11. HDU - 3804 Query on a tree(树链剖分+线段树+离线处理)
  12. 工作112:vue路由跳转错误:Error: Redirected when going from “/login“ to “/home“ via a navigation guard.
  13. 计算机科学与技术pdf,计算机科学与技术(.PDF
  14. 做人的36条常情世故
  15. 作品2:资源管理器EX(原味浏览图片)
  16. axios vue 回调函数_vue中的ajax请求和axios包详解
  17. SSH自动生成数据库
  18. Trust Region Policy Optimization (TRPO) 背后的数学原理
  19. 运行 ROS-Academy-for-Beginners
  20. 介绍make menuconfig中的每个选项含义

热门文章

  1. cmd下访问内部数据库
  2. UR机械臂仿真和用上位机编程控制
  3. rk3399 debian常用软件安装
  4. 不是你需要中台,而是一名合格的架构师(附各中台建设PPT)
  5. 微信小程序 一键授权 给第三方平台代开发管理(二,一键授权给第三方平台)
  6. sql Mirroring
  7. 多路测量实时同步工作原理_数字示波器原理
  8. 儿科微信端产品推广策划方案记录
  9. 阿里二面:RocketMQ 消费失败了,怎么处理?
  10. 关于飞思卡尔的芯片固件库问题,为什么5.3没有8位芯片固件选择MC9S08DZ60芯片