我使用以下命令获取 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
Run Code Online (Sandbox Code Playgroud)
有这些记录的完整列表。
我想在一个文件中列出所有 uid,以便只列出 uid 的值。
shahrukh
abc
xyz
....
....
....
Run Code Online (Sandbox Code Playgroud)
您可以在过滤器后指定属性,它只会显示这些属性。
例如:
ldapsearch -x -LLL uid=* uid > result
Run Code Online (Sandbox Code Playgroud)
这可能会给你一堆uid: 12345
线。然后,您可能必须通过管道将sed
其移除以移除您不想要的部分。(或者,如果你这样做perl
,Net::LDAP
你可以精确地提取你想要的东西 - 但我认为ldapsearch
+sed
是阻力最小的路径)。