简单版导出AD用户信息并处理
导出AD用户信息并处理
基本上,我们要从AD里面查点什么的话,能直接导出一个表肯定是最好的了。这方面的工具也不少,不过如果能只用系统原生资源的话就更好了。
从服务器上导出信息
用ldifde命令就可以很简单的导出AD里面信息,如果你敲ldifde没反应的话应该是没这个组件,找台域环境下的服务器再试试吧。
举个栗子:ldifde -v -f c:\ChinaUS.ldf -d "ou=China,ou=Users,ou=Root2,dc=TestDomain,dc=co"
-r "(objectClass=user)" -l"displayname,homephone,mail,company,sAMAccountName"
稍微解释一下,这条命令导出TestDomain.co域下Root2\China的OU下面的User里面的所有用户信息
- -v 设置详细模式
- -f 设置导出路径 (导出为C盘下面ChinaUS文件)
- -d 设置搜索基础 (Testdomain.co\Root2\China\Users)
- -r 筛选器 这里筛选ObjectClass 为user 也就是只导出用户账户
- -l 导出结果列表 不加就是导出所有,太漫长了我只需要几个关键字就可以了
具体的参数什么的可以看微软的官方文档:
LDIFDE
不同系统里面用到的关键字的对应关系看这里:
关键字对应表
这样就导出了一个叫ChinaUS.ldf的文件,可以用记事本或者别的什么你喜欢的文本编辑工具打开
##用Excel让表看起来方便一点
虽然我们把表导出来了,但是看起来实在是不怎么好看,我们可以简单处理一下。比如用Excel排一下。
Excel可以直接把ldf文件当Txt导进去,不过我们最好还是先处理一下。
随便找个文本工具打开ldf文件,它看起来应该是这样的:
我只截取了一部分数据,名字什么的也打码了,看个意思就好。
我们来处理一下,首先这样一块一块的数据不行,Excel导入的话喜欢横平竖直的数据,大家应该知道我什么意思,所以我们要处理一下,把一块块的数据给拉直了。
比如我们要吧changetype这一条拉到dn后面去,最简单的办法就是替换一下,用;c替换掉回车加c 这样的话就把changetype这一行前面加了dn的后面
这里用写字板就不行了,我们换Word打开,然后替换^pc为;c
Word里面查找或者替换的话,要输入回车的话是输入^p
替换好了就是这个效果:
用同样的办法把displayname; sAMAccountName; Mail; HomePhone都拉上来。
最后是这个样子:
然后Excel导入一下,分隔符选分号(;)
就能导成这样了,之后就只要稍微删点东西和加加标题什么的。
这样就把AD里面的信息导出来了,同理还可以把其他要的东西导出来,还不要多用任何其他的工具。

