我使用以下命令获取LDAP的所有用户的列表ldapsearch -x -LLL uid=* > result 。
以下命令的结果导致以下格式
dn: uid=shahrukh,ou=People,dc=example,dc=com uid: shahrukh cn: shahrukh sn: shahrukh loginShell: /bin/bash uidNumber: 1086 gidNumber: 1086 homeDirectory: /home/ldap/shahrukh
有这些logging的完整列表。
我想在一个文件中列出所有的uid,以便只列出uid的值。
shahrukh abc xyz .... .... ....
您可以在filter之后指定属性,并且只显示这些属性。
例如:
ldapsearch -x -LLL uid=* uid > result
这可能会给你一堆uid: 12345行。 然后,你可能需要通过sedpipe道去掉你不想要的位。 (或者,如果你用perl和Net::LDAP来做,你可以精确地提取你想要的东西 – 但是我认为ldapsearch + sed是阻力最小的path)。