最近老大让把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对象属性信息中的城市,
我们可以进入到ADSI Edit中找到任何我们想要的参数。
在AD中,这些域命令是很强大的,而且Csvde 导出来的数据是有格式的 相当不错,如果只是导出数据建议使用这个。
这两个其实有很多可以做的,我这里只是写出了我的需求,需要更多的参考,可以点击微软的命令手册
http://technet.microsoft.com/zh-cn/library/cc732101