悦享人永久链接:http://yxzhao.com/2013/bulk-modify-ad-user-properties/
转载请注明出处:悦享人-《dsmod user 批量修改 AD 用户属性》
dsmod 是 Windows Server 2003/Windows Server 2008/R2 里自带的命令行工具,是用来在 Active Directory 里执行修改属性的命令行工具。用 dsmod user 命令可以执行与域用户相关的属性修改,如可以修改域帐号的手机、座机、办公室等信息。
dsquery 有一系列的命令(Dsmod computer、Dsmod contact、Dsmod group、Dsmod ou、Dsmod server、Dsmod user、Dsmod quota、Dsmod partition、Dsmod computer、Dsmod contact、Dsmod group、Dsmod ou、Dsmod server、Dsmod user、Dsmod quota、Dsmod partition),用来修改不同的活动目录对象的属性。
示例1:重置用户密码并设置必须更改密码
1
|
dsmod user
"cn=user1,cn=users,dc=domain,dc=com"
-pwd A1b2C3d4 -mustchpwd yes
|
示例说明:
1.基本用法:dsmod user -属性1 “属性值1″ -属性2 “属性值2″
2.修改用户 user1 的密码为 A1b2C3d4,并设置下次登录必须修改密码
示例2:批量修改用户的某个属性为相同值
1
|
dsquery user
"ou=shanghai,ou=employee,dc=domain,dc=com"
-limit 0 | dsmod user -office
"上海-环球金融中心"
|
示例说明
1.“|” 是 PipeLine 用法,意思是将 “|” 前面命令返回的结果作为 “|” 后面命令的参数运行。dsquery user 的用法可以参考:查询 AD 帐户密码到期的用户。
2.“|” 前面的命令返回 shanghai 这个 OU 下的 AD 用户,-limit 值为0是返回所有记录
3.-office,用户的”办公室”属性,设置其值为”上海-环球金融中心”
示例3:批量修改用户的多个属性为不同值
1
|
for
/F
"tokens=1-3 delims=,"
%a in (c:\users.csv)
do
(dsquery user -name %a | dsmod user -tel %b -mobile %c)
|
示例说明
1.for 命令用于循环调用 c:\users.csv 文件里的数据,具体用法参考:CMD命令for语句的用法详解
2.c:\users.csv 文件,每行是一个用户的3个值,依次是用户的 name,座机号,手机号,并用英文逗号隔开,如:
1
2
3
|
用户1,12345678,13712345678
用户2,23456789,13812345678
用户3,34567890,13912345678
|
转载于:https://blog.51cto.com/yxzhaocom/1136166