Windows域控制器批量创建用户
之前做过VDI的项目,一百多个桌面,需要一百多个用户,我刚开始手动创建了5个,觉得这不是IT人干的事,要高效。网上找了找教程,整理如下。
一,准备csv文件
1,新建电子表格,按照自己环境填写表格,所需的组织单位需提前建立好
表格第一行的关键字分别对应下图内容
姓
名
登录名
密码
组织单位
有了姓和名,姓名自动生成,不用填写
在表格里填好自己要创建的用户以后,把表格另存为csv文件{CSV 逗号分隔.csv}不要选择UTF-8。
二,编辑脚本
for /f "skip=1 eol=; tokens=1-5 delims=," %a in (c:\2.csv) do dsadd user cn=%c,ou="%e",ou="User Group",dc=lzuvdi,dc=com -samid %c -upn %c -ln %a -fn %b -display %c -pwd %d -disabled no -mustchpwd no -pwdneverexpires yes
说明:
1,skip=1 跳过csv文件第一行,因为我们csv文件的第一行是value,而不是key。
2,token=1-5,定义声明5个变量,分别是%a,%b,%c,%d,%b,%e,,分别对应表格的A,B,C,D,E 五列
3,delims=, 表示分隔符是逗号,
4,%a in (c:\2.csv) 表示所有的变量从C盘的2.csv读取
5,do dsadd user 创建用户的命令
6,cn=%c,ou="%e",ou="User Group",dc=lzuvdi,dc=com表示创建的用户名称和路径,这里有个地方要注意,如果组织单位是两个词组成的,并且中间有空格的,那么这个名称要用双引号。如我的ou="%e",ou="User Group",而%e 在我的变量是Windows Users 和linux Users
7,-samid %c -upn %c 代表登录名
8,-ln %a 代表用户-姓
9,-fn %b 代表用户-名
10,-display %c 代表用户显示名称
11,-pwd %d 代表用户的密码
12,-disabled no 新建之后直接启用账户
13,-mustchpwd no 用户登陆之后不用更改密码。
14,-pwdneverexpires yes 密码永不过期
搞清楚变量定义就好办,然后把上面那一段命令修改成适合自己的,在域控中执行即可,
三,执行命令
如我的,我把2.csv放到C盘根目录下,然后在命令提示框中执行上面一段命令,结果如图所示:
执行命令
在Windows Users下的用户
在linux Users 下的用户