批量导出AD组内的成员
2015-09-21 09:35
274 查看
网上搜来的代码,自己记录下来方面以后使用
把下面代码存为*.vbs,把红字体部分改为你的OU和DC即可。
Const ADS_SCOPE_SUBTREE = 2
Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCOmmand.ActiveConnection = objConnection
'LDAP指定对象的来源, objectclass=group指定类型,Name, Mail都是用户帐号对象的属性
objCommand.CommandText = _
"Select Name, mail, distinguishedName from 'LDAP://OU=Domain Local Groups,OU=Groups,dc=test,dc=com' " _
& "Where objectClass='group'"
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst
'输出文件的名字叫group.csv
Set objFS = CreateObject("Scripting.FileSystemObject")
Set objNewFile = objFS.CreateTextFile("group.csv")
objNewFile.WriteLine "Group Name, Group Member, Mail"
Do Until objRecordSet.EOF
objNewFile.WriteLine
'输出组的名称
objNewFile.WriteLine objRecordSet.Fields("Name").Value & " ," & " ," &_
objRecordSet.Fields("mail").Value
'引用组的名称
Set objGroup = GetObject("LDAP://" & objRecordSet.Fields("distinguishedName").Value)
'列出组成员
For each objMember in objGroup.Members
objNewFile.WriteLine " ," & objMember.Name & " ," & objMember.description
Next
objRecordSet.MoveNext
Loop
把下面代码存为*.vbs,把红字体部分改为你的OU和DC即可。
Const ADS_SCOPE_SUBTREE = 2
Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCOmmand.ActiveConnection = objConnection
'LDAP指定对象的来源, objectclass=group指定类型,Name, Mail都是用户帐号对象的属性
objCommand.CommandText = _
"Select Name, mail, distinguishedName from 'LDAP://OU=Domain Local Groups,OU=Groups,dc=test,dc=com' " _
& "Where objectClass='group'"
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst
'输出文件的名字叫group.csv
Set objFS = CreateObject("Scripting.FileSystemObject")
Set objNewFile = objFS.CreateTextFile("group.csv")
objNewFile.WriteLine "Group Name, Group Member, Mail"
Do Until objRecordSet.EOF
objNewFile.WriteLine
'输出组的名称
objNewFile.WriteLine objRecordSet.Fields("Name").Value & " ," & " ," &_
objRecordSet.Fields("mail").Value
'引用组的名称
Set objGroup = GetObject("LDAP://" & objRecordSet.Fields("distinguishedName").Value)
'列出组成员
For each objMember in objGroup.Members
objNewFile.WriteLine " ," & objMember.Name & " ," & objMember.description
Next
objRecordSet.MoveNext
Loop
相关文章推荐
- 批量导出AD组内的成员
- mysql 数据库导入导出
- 广电行业迎来巨变 三网融合之战打响---OFweek
- java.sql.Date的问题
- 黑马程序员——String类
- 大道至简第一章随笔
- 数据挖掘学习知识记录
- poj 2492 A BUG'S LIFE 不是纯裸的并查集
- Linux 删除文件夹命令
- POSIX多线程编程-条件变量pthread_cond_t
- 中间层过滤驱动和封包的16进制处理
- FPGA合成编码
- Android 通过广播调用未启动过的App
- 路径中 斜杠/和反斜杠\ 的区别 ./ ../ /区别
- ASP.NET内置对象
- 在MyEclipse和Eclipse中添加Hibernate开发工具
- SQL四种语言:DDL,DML,DCL,TCL
- 一千行MySQL学习笔记
- LeetCode Edit Distance