2023年6月21日发(作者:)

openldap中ldapsearch参数

ldapsearch 参数表

下表描述可以⽤于 ldapsearch 的区分⼤⼩写的参数。参数-?-a deref-A⽤途打印关于使⽤ ldapsearch 的帮助。指定别名反向引⽤。请输⼊ never、always、search 或 find。如果不使⽤此参数,缺省为 never。只检索属性的名称,⽽不检索属性的值。指定⽤作搜索起始点的专有名称。使⽤引号来指定该值,例如:"ou=West,o=Acme,c=US"-b basedn如果要搜索的服务器需要指定搜索起点,则必须使⽤此参数。否则此参数是可选的。也可以同时使⽤ -b 和 -s 来确定搜索范围。没有 –s,-b 就会搜索指定为起始点的项以及该项的所有⼦项。允许打印⾮ ASCII 值指定服务器⽤于验证您的专有名称。名称必须与⽬录中的项相符,并且必须拥有搜索⽬录所需的权限。-B-D binddn请使⽤引号来指定该名称,例如:"cn=Directory Manager,o=Acme,c=US"如果不使⽤此参数,则与服务器的连接是匿名的。如果服务器不允许匿名连接,则必须使⽤ -D。除了 -D,还必须使⽤ -w 参数来指定与专有名称相关联的⼝令。-f file-F sep-h hostname-ltimelimit-L-M-n-p port-R指定包含要使⽤的搜索过滤器的⽂件,如 -f 过滤器。请将每个搜索过滤器置于单独的⼀⾏。Ldapsearch 会对每⼀⾏执⾏⼀次搜索。可选择指定过滤模式。例如,指定 -f 过滤 "cn=%s",并在⽂件的每⼀⾏中输⼊公⽤名称的值。在属性名称和值之间打印 sep ⽽不是等号 (=)。例如,如果读取 ldapsearch 输出的⼯具希望使⽤其他的分隔符时,可以使⽤此参数。指定要连接的服务器主机名,如 -h 。指定完成搜索的时间限制(秒)。如果没有指定此参数或指定的限制为 0,那么搜索就没有时间限制。但是,ldapsearch 的等待时间决不会超过服务器上设置的搜索时间限制。指定以 LDIF 格式输出。LDIF 格式使⽤冒号 (:) ⽽不是等号 (=) 作为属性描述符。LDIF 对⼀次性添加或修改⼤量⽬录项很有帮助。例如,可以将输出内容引⼊兼容 LDAP 的⽬录中。将参考对象作为普通项进⾏管理,以使 ldapsearch 可返回参考项本⾝的属性,⽽不是所参考的项的属性。显⽰如何执⾏搜索,但不实际执⾏搜索指定服务器使⽤的端⼝。如果没有使⽤此参数,缺省情况下 ldapsearch 使⽤ 389 端⼝。不⾃动遵循服务器返回的搜索引⽤。请注意,Netscape ⽬录服务器将术语 referrals ⽤于搜索引⽤。指定使⽤ -b 参数时的搜索范围:base -- 仅搜索 -b 参数指定的项-s scopeonelevel -- 仅搜索 -b 参数指定项的直接⼦项,⽽不搜索该项本⾝subtree -- 搜索 -b 参数指定的项以及它的所有⼦项。这是不带 -s 时使⽤ -b 的缺省⾏为。指定 -b 和 -s 的顺序并不重要。-Sattribute-zsizelimit按指定的属性排序结果。指定返回项的最⼤数⽬。如果没有指定此参数或指定的限制为 0,那么返回的项没有数量限制。但是,ldapsearch 返回的项决不会多于服务器允许的数量。-u-v-wpassword指定 ldapsearch 以⽤户友好格式返回专有名称。指定 ldapsearch 以详尽模式运⾏。指定与 -D 参数⼀起使⽤的与专有名称关联的⼝令。x与 -S ⼀起使⽤时可指定 LDAP 服务器在将结果返回之前就对它们进⾏排序。如果使⽤ -S ⽽不使⽤ –x,ldapsearch 将对结果排序。ldapsearch 搜索过滤器中使⽤的运算符表

下表描述了可以在搜索过滤器中使⽤的运算符。运算符== *>=<==*~=&|!⽤途查找所包含的属性值与指定值相同的项查找所包含的属性值与指定的⼦字符串相同的项查找特定项,该项中包含的属性的数字或字母值⼤于或等于指定的值。查找特定项,该项中包含的属性的数字或字母值⼩于或等于指定的值。查找包含特定属性的值的项,⽽不⽤管属性的值是什么。查找特定项,该项中所含属性的值约等于指定的值。查找与所有搜索过滤器中指定的条件相匹配的项查找与⾄少⼀个搜索过滤器中指定的条件相匹配的项查找与任何搜索过滤器中指定的条件都不匹配的项样例"cn=John Browning""cn=John*""cn=J*Brown""cn>=D""roomNumber<=300""sn=*""sn~=Brning" 可能返回 sn=Browning"(&(cn=John Browning)(l=Dallas))""(|(cn=John Browning)(l=Dallas))""(!(cn=John Browning)(l=Dallas))"使⽤ ldapsearch 的搜索过滤器

必须使⽤搜索过滤器指定要搜索的属性。搜索过滤器的语法为:" "

例如,下⾯的搜索过滤器可以找到所有的特定项,只要该项中以 Smith 作为 sn(别称)属性的值:"sn=Smith"

可以在搜索过滤器中指定存储在⽬录中的任意属性。以下是⽤来搜索个⼈项的公⽤属性:cn -- 个⼈的公⽤名称sn -- 个⼈的姓telephonenumber -- 个⼈的电话号码l -- 个⼈的地理位置可以在 ldapsearch 命令⾏中指定搜索过滤器,或在⽂件中指定它们,并使⽤ lsearch 参数 -f 引⽤此⽂件。如果使⽤⽂件,请在单独的⾏中指定每个搜索过滤器。请注意:如果 LDAP ⽬录(如 Domino LDAP ⽬录)⽀持语⾔标记,则可在搜索过滤器中包含它们。例如:"givenName;lang-fr=Etienne"

使⽤布尔运算符的多个搜索过滤器您可以使⽤多个搜索过滤器以及布尔运算符。使⽤下列语法:"(operator(filter)(filter))"

例如,使⽤下⾯的搜索过滤器查找别称为 Browning、位置为 Dallas 的项。"(&(sn=Browning)(l=Dallas))"

布尔运算符可以嵌套。例如,使⽤下⾯的搜索过滤器在邮件⽹络域 MDN 中查找 surname 为 caneel 或 givenname 为 alfred 的项:"(&(maildomain=MDN)(|(sn=caneel)(givenname=alfred)))" 使⽤ ldapsearch 的样例

下表提供使⽤ ldapsearch 实⽤程序的样例。搜索使⽤端⼝ 389 的主机 上的所有项,并返回所有属性和值同上,但仅返回属性名称使⽤端⼝ 389 的主机 上的所有项,并且反向引⽤找到的所有别名使⽤端⼝ 389 的主机 上的所有项,并返回 mail、cn、sn 和 givenname等属性在使⽤端⼝ 389 的主机 上,在 ”ou=West,o=Acme,c=US” 基准下搜索(cn=Mike*),并返回所有属性和值使⽤端⼝ 389 的主机 上的⼀个级别,并返回所有属性和值同上,但限制基准的范围使⽤端⼝ 389 的主机 上的所有项,并返回所有的属性和值;搜索时间限制为五秒使⽤端⼝ 389 的主机 上的所有项,并返回所有的属性和值;⼤⼩限制为五使⽤端⼝ 389 的主机 上的所有项,捆绑为:⽤户“cn=JohnDoe,o=Acme”,⼝令“password”,并以 LDIF 格式返回所有的属性和值使⽤端⼝ 389 的主机 。对“cn=John Doe,o=Acme”项,返回其允许匿名查看的所有属性配置为在端⼝ 391 上侦听 LDAP 请求的另⼀台主机 上的所有项端⼝ 391 上的 。对还有与 OR 过滤器中任意⼀个属性相匹配的属性的任何“个⼈”对象类型进⾏⼦树搜索(缺省),从组织“o=ibm”开始。超时值为 300 秒,返回的最⼤项数设为 1000。且仅返回 DN(缺省)和 CN(这是 Web 应⽤程序的公⽤过滤器)。端⼝ 391 上的 。以基准项“cn=HR Group,ou=Asia,o=IBM”为起始,时间限制为 300 秒,查询此项的所有成员。(Web 应⽤程序中⽤以确定群组成员的另⼀个公⽤过滤器)。命令ldapsearch -h "objectClass=*"ldapsearch -A -h " objectClass=*"ldapsearch -a always -h "objectClass=*"ldapsearch -h "objectClass=*" mail cn sngivennameldapsearch -b "ou=West,o=Acme,c=US" -h "(cn=Mike*)"ldapsearch -s onelevel -h "objectClass=*"ldapsearch -s base -h "objectClass=*"ldapsearch -l 5 -h "objectClass=*"ldapsearch -z 5 -h "objectClass=*"ldapsearch -h -D "cn=john doe,o=acme" -wpassword -L "objectClass=*"ldapsearch -h " -s base -b "cn=johndoe,o=acme" objectClass=*"ldapsearch -h -p 391 "objectClass=*"ldapsearch -h -p 391 -b "o=ibm" -l 300 -z 1000 "(&(objectclass=Person)(|(cn=jerry seinfeld*)(givenname=jerry seinfeld*)(sn=jerry seinfeld*)(mail=jerryseinfeld*)))" cnldapsearch -h -p 391 -b "cn=HRGroup,ou=Asia,o=IBM" -s base -l 300 "(objectclass=*)"member

2023年6月21日发(作者:)

openldap中ldapsearch参数

ldapsearch 参数表

下表描述可以⽤于 ldapsearch 的区分⼤⼩写的参数。参数-?-a deref-A⽤途打印关于使⽤ ldapsearch 的帮助。指定别名反向引⽤。请输⼊ never、always、search 或 find。如果不使⽤此参数,缺省为 never。只检索属性的名称,⽽不检索属性的值。指定⽤作搜索起始点的专有名称。使⽤引号来指定该值,例如:"ou=West,o=Acme,c=US"-b basedn如果要搜索的服务器需要指定搜索起点,则必须使⽤此参数。否则此参数是可选的。也可以同时使⽤ -b 和 -s 来确定搜索范围。没有 –s,-b 就会搜索指定为起始点的项以及该项的所有⼦项。允许打印⾮ ASCII 值指定服务器⽤于验证您的专有名称。名称必须与⽬录中的项相符,并且必须拥有搜索⽬录所需的权限。-B-D binddn请使⽤引号来指定该名称,例如:"cn=Directory Manager,o=Acme,c=US"如果不使⽤此参数,则与服务器的连接是匿名的。如果服务器不允许匿名连接,则必须使⽤ -D。除了 -D,还必须使⽤ -w 参数来指定与专有名称相关联的⼝令。-f file-F sep-h hostname-ltimelimit-L-M-n-p port-R指定包含要使⽤的搜索过滤器的⽂件,如 -f 过滤器。请将每个搜索过滤器置于单独的⼀⾏。Ldapsearch 会对每⼀⾏执⾏⼀次搜索。可选择指定过滤模式。例如,指定 -f 过滤 "cn=%s",并在⽂件的每⼀⾏中输⼊公⽤名称的值。在属性名称和值之间打印 sep ⽽不是等号 (=)。例如,如果读取 ldapsearch 输出的⼯具希望使⽤其他的分隔符时,可以使⽤此参数。指定要连接的服务器主机名,如 -h 。指定完成搜索的时间限制(秒)。如果没有指定此参数或指定的限制为 0,那么搜索就没有时间限制。但是,ldapsearch 的等待时间决不会超过服务器上设置的搜索时间限制。指定以 LDIF 格式输出。LDIF 格式使⽤冒号 (:) ⽽不是等号 (=) 作为属性描述符。LDIF 对⼀次性添加或修改⼤量⽬录项很有帮助。例如,可以将输出内容引⼊兼容 LDAP 的⽬录中。将参考对象作为普通项进⾏管理,以使 ldapsearch 可返回参考项本⾝的属性,⽽不是所参考的项的属性。显⽰如何执⾏搜索,但不实际执⾏搜索指定服务器使⽤的端⼝。如果没有使⽤此参数,缺省情况下 ldapsearch 使⽤ 389 端⼝。不⾃动遵循服务器返回的搜索引⽤。请注意,Netscape ⽬录服务器将术语 referrals ⽤于搜索引⽤。指定使⽤ -b 参数时的搜索范围:base -- 仅搜索 -b 参数指定的项-s scopeonelevel -- 仅搜索 -b 参数指定项的直接⼦项,⽽不搜索该项本⾝subtree -- 搜索 -b 参数指定的项以及它的所有⼦项。这是不带 -s 时使⽤ -b 的缺省⾏为。指定 -b 和 -s 的顺序并不重要。-Sattribute-zsizelimit按指定的属性排序结果。指定返回项的最⼤数⽬。如果没有指定此参数或指定的限制为 0,那么返回的项没有数量限制。但是,ldapsearch 返回的项决不会多于服务器允许的数量。-u-v-wpassword指定 ldapsearch 以⽤户友好格式返回专有名称。指定 ldapsearch 以详尽模式运⾏。指定与 -D 参数⼀起使⽤的与专有名称关联的⼝令。x与 -S ⼀起使⽤时可指定 LDAP 服务器在将结果返回之前就对它们进⾏排序。如果使⽤ -S ⽽不使⽤ –x,ldapsearch 将对结果排序。ldapsearch 搜索过滤器中使⽤的运算符表

下表描述了可以在搜索过滤器中使⽤的运算符。运算符== *>=<==*~=&|!⽤途查找所包含的属性值与指定值相同的项查找所包含的属性值与指定的⼦字符串相同的项查找特定项,该项中包含的属性的数字或字母值⼤于或等于指定的值。查找特定项,该项中包含的属性的数字或字母值⼩于或等于指定的值。查找包含特定属性的值的项,⽽不⽤管属性的值是什么。查找特定项,该项中所含属性的值约等于指定的值。查找与所有搜索过滤器中指定的条件相匹配的项查找与⾄少⼀个搜索过滤器中指定的条件相匹配的项查找与任何搜索过滤器中指定的条件都不匹配的项样例"cn=John Browning""cn=John*""cn=J*Brown""cn>=D""roomNumber<=300""sn=*""sn~=Brning" 可能返回 sn=Browning"(&(cn=John Browning)(l=Dallas))""(|(cn=John Browning)(l=Dallas))""(!(cn=John Browning)(l=Dallas))"使⽤ ldapsearch 的搜索过滤器

必须使⽤搜索过滤器指定要搜索的属性。搜索过滤器的语法为:" "

例如,下⾯的搜索过滤器可以找到所有的特定项,只要该项中以 Smith 作为 sn(别称)属性的值:"sn=Smith"

可以在搜索过滤器中指定存储在⽬录中的任意属性。以下是⽤来搜索个⼈项的公⽤属性:cn -- 个⼈的公⽤名称sn -- 个⼈的姓telephonenumber -- 个⼈的电话号码l -- 个⼈的地理位置可以在 ldapsearch 命令⾏中指定搜索过滤器,或在⽂件中指定它们,并使⽤ lsearch 参数 -f 引⽤此⽂件。如果使⽤⽂件,请在单独的⾏中指定每个搜索过滤器。请注意:如果 LDAP ⽬录(如 Domino LDAP ⽬录)⽀持语⾔标记,则可在搜索过滤器中包含它们。例如:"givenName;lang-fr=Etienne"

使⽤布尔运算符的多个搜索过滤器您可以使⽤多个搜索过滤器以及布尔运算符。使⽤下列语法:"(operator(filter)(filter))"

例如,使⽤下⾯的搜索过滤器查找别称为 Browning、位置为 Dallas 的项。"(&(sn=Browning)(l=Dallas))"

布尔运算符可以嵌套。例如,使⽤下⾯的搜索过滤器在邮件⽹络域 MDN 中查找 surname 为 caneel 或 givenname 为 alfred 的项:"(&(maildomain=MDN)(|(sn=caneel)(givenname=alfred)))" 使⽤ ldapsearch 的样例

下表提供使⽤ ldapsearch 实⽤程序的样例。搜索使⽤端⼝ 389 的主机 上的所有项,并返回所有属性和值同上,但仅返回属性名称使⽤端⼝ 389 的主机 上的所有项,并且反向引⽤找到的所有别名使⽤端⼝ 389 的主机 上的所有项,并返回 mail、cn、sn 和 givenname等属性在使⽤端⼝ 389 的主机 上,在 ”ou=West,o=Acme,c=US” 基准下搜索(cn=Mike*),并返回所有属性和值使⽤端⼝ 389 的主机 上的⼀个级别,并返回所有属性和值同上,但限制基准的范围使⽤端⼝ 389 的主机 上的所有项,并返回所有的属性和值;搜索时间限制为五秒使⽤端⼝ 389 的主机 上的所有项,并返回所有的属性和值;⼤⼩限制为五使⽤端⼝ 389 的主机 上的所有项,捆绑为:⽤户“cn=JohnDoe,o=Acme”,⼝令“password”,并以 LDIF 格式返回所有的属性和值使⽤端⼝ 389 的主机 。对“cn=John Doe,o=Acme”项,返回其允许匿名查看的所有属性配置为在端⼝ 391 上侦听 LDAP 请求的另⼀台主机 上的所有项端⼝ 391 上的 。对还有与 OR 过滤器中任意⼀个属性相匹配的属性的任何“个⼈”对象类型进⾏⼦树搜索(缺省),从组织“o=ibm”开始。超时值为 300 秒,返回的最⼤项数设为 1000。且仅返回 DN(缺省)和 CN(这是 Web 应⽤程序的公⽤过滤器)。端⼝ 391 上的 。以基准项“cn=HR Group,ou=Asia,o=IBM”为起始,时间限制为 300 秒,查询此项的所有成员。(Web 应⽤程序中⽤以确定群组成员的另⼀个公⽤过滤器)。命令ldapsearch -h "objectClass=*"ldapsearch -A -h " objectClass=*"ldapsearch -a always -h "objectClass=*"ldapsearch -h "objectClass=*" mail cn sngivennameldapsearch -b "ou=West,o=Acme,c=US" -h "(cn=Mike*)"ldapsearch -s onelevel -h "objectClass=*"ldapsearch -s base -h "objectClass=*"ldapsearch -l 5 -h "objectClass=*"ldapsearch -z 5 -h "objectClass=*"ldapsearch -h -D "cn=john doe,o=acme" -wpassword -L "objectClass=*"ldapsearch -h " -s base -b "cn=johndoe,o=acme" objectClass=*"ldapsearch -h -p 391 "objectClass=*"ldapsearch -h -p 391 -b "o=ibm" -l 300 -z 1000 "(&(objectclass=Person)(|(cn=jerry seinfeld*)(givenname=jerry seinfeld*)(sn=jerry seinfeld*)(mail=jerryseinfeld*)))" cnldapsearch -h -p 391 -b "cn=HRGroup,ou=Asia,o=IBM" -s base -l 300 "(objectclass=*)"member