最近老大让把AD上的所有的个人信息导出来,然后核对信息的真实性,所有就想到了Dsquery的命令,写一下,顺便复习一下

Dsquery会按照指定的条件查询AD,命令后的参数可以指定查找的类类型

dsquery computer

dsquery contact 

dsquery group

dsquery ou

dsquery site

dsquery user

dsquery server 

dsquery quota 

dsquery partition

dsquery *

 

这里我是要把域用户的信息导出来,下面的命令是我用在我的AD Server上的

dsquery user -limit 300 OU=China,DC=Jacky,DC=com | dsget user -fn -display -empid -title -desc -office -tel -mobile -dept -company -mgr 

dsquery 命令都是结合着dsget/dsadd/dsmod命令来使用的,后面的fn ,dispaly等表示的用户的信息,

这里说两个吧 fn表示的是用户名的名字,display 表示的是用户的描述。这个命令导出来的文件缺少格式,对于我们写报告不是很好,所以就用了另外的一个命令Csvde

 

Csvde用来导入导出AD数据,

 

 

Csvde [-I] [-f <FileName>] [-s <ServerName>] [-c <String1><String2>] [-v] [-j <Path>] [-t <PortNumber>] [-d <BaseDN>] [-r <LDAPFilter>] [-p < 范围] [-l <LDAPAttributeList>] [-o <LDAPAttributeList>] [-g] [-m] [-n] [-k] [-<UserDistinguishedName>{<Password>|*] [-b <UserName><Domain>{<Password>|*}]

 

命令看上去很复杂,我还是先把我写的命令贴出来

csvde -d "OU=China,dc=Jacky,dc=com" -m -n -f example.csv -r objectClass=user -l"name,l,mail,title,department,company,manager,telephoneNumber,mobile,co,streetAddress"

对于我们需要摘取的信息,是限制在-l的参数后的,我第一次看到这个参数的时候不知道 LDAPAttributeList 代表的是意思,后来发现,它是整个AD的对象信息的集合体,所有我们可以看到的对象信息都可以在这里找到它对应的参数

例如上面那个命令中-l后的 l ,表示的是我们AD对象属性信息中的城市,wKiom1LPjE6Dp-0GAAGV-_Q-uv4219.jpg

wKiom1LPiwbA4yjiAAH6BD47vJA223.jpg

 

我们可以进入到ADSI Edit中找到任何我们想要的参数。

在AD中,这些域命令是很强大的,而且Csvde 导出来的数据是有格式的 相当不错,如果只是导出数据建议使用这个。

 

这两个其实有很多可以做的,我这里只是写出了我的需求,需要更多的参考,可以点击微软的命令手册

http://technet.microsoft.com/zh-cn/library/cc732101