Chinaunix首页 | 论坛 | 博客
  • 博客访问: 409296
  • 博文数量: 87
  • 博客积分: 6015
  • 博客等级: 准将
  • 技术积分: 960
  • 用 户 组: 普通用户
  • 注册时间: 2006-09-13 16:59
文章分类
文章存档

2015年(4)

2010年(16)

2009年(13)

2008年(12)

2007年(29)

2006年(13)

我的朋友

分类: WINDOWS

2010-04-15 17:04:20

一般我们建立好AD用户后,如果发现HR更改了公司电话或其它信息,而我们需要批量更新AD里的值,那么IT的工作量会非常大.再例如当初建用户时没有建立用户的移动电话,此时需要批量修改或导入.例子是更新手机号码.
  • 首先我们需要导出当前的用户列表:我们需要导出DN与CN以方便从其它EXCEL表里用VLOOKUP把手机号码放到我们导出的用户列表里.

csvde -d ou=delta,dc=h,dc=com -r "(objectclass=user)" -l DN,cn,-f c:\test4.csv

 

C:\Users\Administrator>csvde -d ou=delta,dc=h,dc=com -r "(objectclass=user)" -l
DN,cn -f c:\user.csv
连接到“(null)
用 SSPI 作为当前用户登录
将目录导出到文件 c:\user.csv
搜索项目...
写出项目
................................................................................
..........................................................................
导出完毕。后续处理正在进行...
导出了 154 个项目

命令已成功完成


DN,cn
"CN=FeiYi,OU=IT,OU=Guangzhou,OU=delta,DC=h,DC=com",FeiYi
"CN=FaZheng,OU=IT,OU=Guangzhou,OU=delta,DC=h,DC=com",FaZheng
"CN=GuoJia,OU=IT,OU=Guangzhou,OU=delta,DC=h,DC=com",GuoJia
"CN=HuangHao,OU=IT,OU=Guangzhou,OU=delta,DC=h,DC=com",HuangHao
"CN=LiuZhang,OU=IT,OU=Guangzhou,OU=delta,DC=h,DC=com",LiuZhang

将导出的CSV文件用EXCEL打开,并加入一列你需要更新或导入的列表:

处理一下这个加入手机号后的文件,变成用空格分隔的文本文件:注意编码问题.

然后再将这些内容复制到纯文本文件.是以空格分隔的:执行导入:省略第一行.

FOR /F "skip=1 eol=; tokens=1,2,3* delims= " %a in (C:\user.txt) do dsmod user %a -mobile %c


C:\Users\Administrator>dsmod user CN=CaoPi,OU=Sales,OU=Qingdao,OU=delta,DC=h,DC=
com -mobile 123
dsmod 成功:CN=CaoPi,OU=Sales,OU=Qingdao,OU=delta,DC=h,DC=com

C:\Users\Administrator>dsmod user CN=CaoZhi,OU=Sales,OU=Qingdao,OU=delta,DC=h,DC
=com -mobile 123
dsmod 成功:CN=CaoZhi,OU=Sales,OU=Qingdao,OU=delta,DC=h,DC=com

C:\Users\Administrator>dsmod user CN=CaoZhen,OU=Sales,OU=Qingdao,OU=delta,DC=h,D
C=com -mobile 123
dsmod 成功:CN=CaoZhen,OU=Sales,OU=Qingdao,OU=delta,DC=h,DC=com

这样就批量修改了手机号码为"123".

 

附DSADD USER 参数和用户各项值:

C:\Users\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}]
        [-fnp <FirstNamePhonetic>] [-lnp <LastNamePhonetic>]
        [-displayp <DisplayNamePhonetic>]

参数:

值 描述
<UserDN> 必需项。要添加的用户的可分辨名称(DN)
                        如果省略了目标对象,则从标准输入(stdin)中读取。
-samid <SAMName> 将用户的 SAM 帐户名设置为 <SAMName>
                        如果未指定,则 dsadd 尝试使用 <UserDN> 公用名的(CN)
                        中最多前 20 个字符创建 SAM 帐户名称。
-upn <UPN> 将 upn 值设置为 <UPN>
-fn <FirstName> 将用户的名设置为 <FirstName>
-fnp <FirstNamePhonetic>
                        将用户的名拼音设置为 <FirstNamePhoneic>
-mi <Initial> 将用户的中间名首字母设置为 <Initial>
-ln <LastName> 将用户的姓设置为 <LastName>
-lnp <LastNamePhonetic> 将用户的姓拼音设置为 <LastNamePhonetic>
-display <DisplayName> 将用户的显示名设置为 <DisplayName>
-displayp <DisplayNamePhonetic>
                        将用户的显示名拼音设置为 <DisplayNamePhonetic>
-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> 连接到
                        AD DC/LDS 实例。
                        -d <Domain> 连接到域 <Domain> 中的 AD DC。
                        默认值: 登录域中的 AD DC。
-u <UserName><UserName> 身份连接。默认值: 登录的用户。
                        用户名可以为: 用户名、域\用户名或用户主体名(UPN)
-p {<Password> | *} 用户 <UserName> 的密码。如果输入 *,则会提示您
                        输入密码。
-q 安静模式: 将所有输出抑制为标准输出。
{-uc | -uco | -uci} -uc 指定来自管道的输入或至管道的输出用 Unicode 格式。
                        -uco 指定至管道或文件的输出用 Unicode 格式。
                        -uci 指定来自管道或文件的输入用 Unicode 格式。


阅读(8880) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~