AD域(活动目录) bat脚本探究

单个命令行

# 查询一个用户
dsquery user -name %user_name%

# 查询一个主机
dsquery computer -name %computer_name%

# 增加一个用户 cn:用户名  ou:组织单元  dc:域名
dsadd user "cn=anectest01,ou=cc,dc=anec,dc=com" -pwd Yujiahui@88 -samid anectest01 -upn anectest01@anec.com

# 将某个用户移到某个OU组内
dsmove 用户名 -newparent ou=新组织单元,dc=gr,dc=com
实例:
dsmove "cn=test02,ou=cc,dc=anec,dc=com" -newparent ou=ceshi02,dc=anec,dc=com

读取文件

#####################################################
@echo off

set targe=''
setlocal enabledelayedexpansion
for /f   %%i in (需要读取的文件.txt)  do (
set target=%%i
echo !target! 
) 

pause
#####################################################
@echo off

for /f %%i in (user.csv)  do (
echo %%i
) 

pause
##################################################
以逗号分割符读取csv文件@echo off
user.csv文件格式   user01,password01

for /f "tokens=1-2 delims=," %%a in ('type "user.csv"') do (
dsadd user "cn=%%a,ou=cc,dc=anec,dc=com" -pwd %%b -samid %%a -upn %%a@anec.com
)
pause
#####################################################

根据文本数据将指定用户移到相应的组织单元里面

移动用户

@echo off

for /f %%a in (user.txt) do (
dsquery user -name %%a  
) >> a.txt

for /f %%a in (a.txt) do (
dsmove %%a -newparent ou=ceshi02,dc=anec,dc=com
)

pause

移动pc

@echo off

for /f %%a in (user.txt) do (
dsquery computer -name %%a  
) >> a.txt

for /f %%a in (a.txt) do (
dsmove %%a -newparent ou=ceshi02,dc=anec,dc=com
)

pause
原文地址:https://www.cnblogs.com/Anec/p/14244194.html