dsmod user 批量修改 AD 用户属性

悦享人永久链接: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

你可能感兴趣的:(windows,命令行,活动目录,dsquery,dsmod)