Chinaunix首页 | 论坛 | 博客
  • 博客访问: 18847
  • 博文数量: 11
  • 博客积分: 327
  • 博客等级: 二等列兵
  • 技术积分: 125
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-23 08:50
文章分类
文章存档

2012年(11)

我的朋友
最近访客

分类: WINDOWS

2012-04-06 14:29:44

log parser

csvde
优点:输出是csv格式的文件,可以很方便的在excel和或access中进行替换编辑。
缺点:csvde对ad的import功能很弱,只能通过该命令添加新账户,不能进行批量修改和删除。

ldifde
优点:输入和输出功能很强,可以完成所有对ad属性的操作。
缺点:输出生成ldf文件,该文件是非结构化的格式,只能在字符处理软件里面进行简单的查找,替换。而且只只能更改对用户名为英文的属性。

但是,我们可以通过log parser将csv文件转换为ldf文件,这样就可以随心所欲的更改ad和exchange属性。

首先通过csvde命令导出ad用户属性,例如:csvde -d “ou=INFR,dc=console,dc=com”  -r objectclass=user -l "displayname" -u -f import.csv
import.csv 内容为:
DN,displayName
"CN=kevin,OU=INFR,DC=console,DC=com",Kevin
"CN=susan,OU=INFR,DC=console,DC=com",Susan
"CN=chris,OU=INFR,DC=console,DC=com",Chris
"CN=zywang,OU=INFR,DC=console,DC=com",Adam

更改csv文件为:

"CN=kevin,OU=INFR,DC=console,DC=com",Kevin Sun
"CN=susan,OU=INFR,DC=console,DC=com",Susan Zhao
"CN=chris,OU=INFR,DC=console,DC=com",Chris Han
"CN=zywang,OU=INFR,DC=console,DC=com",Adam Wang

制作tpl模板template.tpl
dn: %FIELD_3%
changetype: modify
replace: displayname
displayname: %FIELD_4%
-

(注意:最后两行的减号和空行是必须的,作为分割标志。%FIELD_3%代表csv文件的第一列,以此类推,不知道为什么从3开始。)


logparser “select * into out.ldf from import.csv” -o:TPL -tpl:template.tpl

该命令缺省状态下会忽略csv文件第一行,认为是csv的header
生成的out.ldf文件,内容如下:

dn: CN=kevin,OU=INFR,DC=console,DC=com
changetype: modify
replace: displayname
displayname: Kevin Sun
-

dn: CN=susan,OU=INFR,DC=console,DC=com
changetype: modify
replace: displayname
displayname: Susan Zhao
-

dn: CN=chris,OU=INFR,DC=console,DC=com
changetype: modify
replace: displayname
displayname: Chris Han
-

dn: CN=zywang,OU=INFR,DC=console,DC=com
changetype: modify
replace: displayname
displayname: Adam Wang
-

这是我们所需要的ldf文件,最后运行导入命令:

ldifde -i -f out.ldf -k -j c:\

最后关键的一点在于,所有ldf属性必须包含有效值,否则ldifde会报错,通常一次修改多个属性可能出现这样的问题。在处理csv文件的时候要考虑到。

阅读(754) | 评论(0) | 转发(0) |
0

上一篇:Linux rc.d

下一篇:vi

给主人留下些什么吧!~~