有没有办法执行LDAP搜索并将结果保存为表格格式(例如csv)?
干杯 乔治
答案 0 :(得分:2)
万一其他人必须这样做:
根据提供的答案 Filter ldapsearch with awk/bash
这会将LDAP信息输出为csv格式:
$ ldapsearch -x -D "cn=something" | awk -v OFS=',' '{split($0,a,": ")} /^mail:/{mail=a[2]} /^uidNumber:/{uidNumber=a[2]} /^uid:/{uid=a[2]} /^cn/{cn=a[2]; print uid, uidNumber,cn , mail}' > ldap_dump.csv
注意强> 您需要注意使用awk解析LDAP数据的顺序!它需要按照LDAP数据上显示的顺序进行解析!
答案 1 :(得分:0)
您可以使用出色的铣削工具(mlr
)
最后一位:
echo output | sed 's/://g' | mlr --x2c cat then unsparsify
工作原理:
XTAB
格式--x2c
将XTAB
转换为CSV
cat
然后unsparsify
确保丢失的值仅被填充,而不是中断到不同的csv输出总命令:
ldapsearch -H ldap://<hostname>:389 -D "<bindDN>" -W -b "<base>" '<query>' -oldif-wrap=no -LLL cn mail telephoneNumber | sed 's/://g' | mlr --x2c cat then unsparsify