The following options are supported:
-A
Retrieve attributes only (no values). This is useful when
you just want to see whether an attribute is present in an entry and are not
interested in the specific value.
-a deref
Specify how aliases dereferencing is done. The possible
values for deref are never, always, search, or
find to specify respectively that aliases are never dereferenced,
always dereferenced, dereferenced when searching, or dereferenced only when
finding the base object for the search. The default is to never dereference
aliases.
-B
Display non-ASCII values and use the old non-LDIF format.
This option disables the default -L option.
-b searchbase
Use searchbase as the starting point for the
search instead of the default.
-C pattern
Persistent search. Perform a search that keeps the
connection open and displays results whenever entries matching the scope and
filter of the search are added, modified, or removed. With this option, the
ldapsearch tool runs indefinitely; you must type Control-c to stop it.
The pattern has the following format:
ps:changeType[:changesOnly[:entryChangeControls]]
-c authzid
Specifies the
getEffectiveRights control
authzid. For example:
dn:uid=bjensen,dc=example,dc=com
-D bindDN
Use the distinguished name bindDN to bind to the
directory.
-d debuglevel
Set the
LDAP debugging level. Useful levels of
debugging for
ldapsearch are:
1
Trace
2
Packets
4
Arguments
32
Filters
128
Access control
To request more than one category of debugging information, add
the masks. For example, to request trace and filter information, specify a
debuglevel of 33.
-E
Ask server to expose (report) bind identity by means of
authentication response control.
-e
Minimize base-64 encoding of values.
-F sep
Use sep as the field separator between attribute
names and values. If this option has been specified, the -L option is
ignored.
-f file
Read a series of lines from file, performing one
LDAP search for each line. In this case, the filter given on the
command line is treated as a pattern where the first occurrence of %s
is replaced with a line from file. If file is a single -
character, then the lines are read from standard input.
-G pattern
Virtual list view. Retrieve only a portion of all
results, as determined by the index or value of the search target and the
number of entries to be returned before and after the target. This option
always requires the -S and -x options to specify the sorting
order on the server.
-?
Display the usage help text that briefly describes all
options.
-H
Display the usage help text that briefly describes all
options.
-h ldaphost
Specify an alternate host on which the secure LDAP server
is running.
-i locale
Specify the character set to use for command-line input.
The default is the character set specified in the LANG environment
variable. You might want to use this option to perform the conversion from the
specified character set to UTF8, thus overriding the LANG setting.
Using this argument, you can input the bind DN, base DN, and the search filter
pattern in the specified character set. The ldapsearch tool converts
the input from these arguments before it processes the search request. For
example, -i no indicates that the bind DN, base DN, and search
filter are provided in Norwegian. This argument only affects the command-line
input. If you specify a file containing a search filter (with the -f
option), ldapsearch does not convert the data in the file.
-j filename
Specify a file containing the password for the bind DN or
the password for the SSL client's key database. To protect the password, use
this option in scripts and place the password in a secure file. This option is
mutually exclusive of the -w and -W options.
-J
[:criticality[:value|::b64value|b64value|:fileurl]]
Criticality is a boolean value (default is
false).
-k path
Specify the path to a directory containing conversion
routines. These routines are used if you want to specify a locale that is not
supported by default by your directory server. This is for NLS support.
-L
Display search results in LDIF format. This option also turns on the -B
option. This behavior is the default.
-l timelimit
Wait at most timelimit seconds for a search to
complete.
-M
Manage smart referrals. When they are the target of the
operation, search the entry containing the referral instead of the entry
obtained by following the referral.
-N certificate
Specify the certificate name to use for certificate-based
client authentication. For example: -N
"Directory-Cert".
-n
Show what would be done, but do not actually perform the
search. Useful in conjunction with -v and -d for
debugging.
-O hopLimit
Specify the maximum number of referral hops to follow
while finding an entry to modify. By default, there is no limit.
-o attributename=value
For SASL mechanisms and other options such as security
properties, mode of operation, authorization ID, authentication ID, and so
forth.
The different attribute names and their values are as follows:
secProp="number"
For defining SASL security properties.
realm="value"
Specifies SASL realm (default is
realm=none).
authzid="value"
Specify the authorization ID name for SASL bind.
authid="value"
Specify the authentication ID for SASL bind.
mech="value"
Specifies the various SASL mechanisms.
-P path
Specify the path and filename of the client's certificate
database. For example:
-P /home/uid/.netscape/cert7.db
When using the command on the same host as the directory server,
you can use the server's own certificate database. For example:
-P installDir/lapd-serverID/alias/cert7.db
Use the -P option alone to specify server authentication
only.
-p ldapport
Specify an alternate TCP port where the secure LAPD
server is listening.
-R
Do not automatically follow referrals returned while
searching.
-r
Display the output of the ldapsearch command in
the old format.
-S [-]attribute
Specify an attribute for sorting the entries returned by
the search. The sort criteria is alphabetical on the attribute's value or
reverse alphabetical with the form
-attribute. You can give multiple
-S options to refine the sorting, For example:
-S sn -S givenname
By default, the entries are not sorted. Use the -x option
to perform server-side sorting.
-s scope
Specify the scope of the search. The possible values of
scope are base, one, or sub to specify
respectively a base object, one-level, or subtree search. The default is
sub.
-T
Format the output of search results so that no line
breaks are used within individual attribute values.
-t
Write retrieved values to a set of temporary files. This
is useful for dealing with non-ASCII values such as jpegPhoto or audio.
-U
URL format (valid only with the
-t option). When
using temporary file output, the standard output of the tool includes the URL
of the file instead of the attributes value. For example:
jpegPhoto:< file:/tmp/ldapsearch-jpegPhoto-YzaOMh
-u
Include the user-friendly form of the Distinguished Name
(DN) in the output.
-V version
Specify the LDAP protocol version number to be used for
the delete operation, either 2 or 3. LDAP v3 is the default. Specify LDAP v2
when connecting to servers that do not support v3.
-v
Run in verbose mode, with diagnostics written to standard
output.
-W password
Specify the password for the client's key database given
in the -P option. This option is required for certificate-based client
authentication. Specifying password on the command line has security
issues because the password can be seen by others on the system by means of
the ps command. Use the -j instead to specify the password from
the file. This option is mutually exclusive of -j.
-w passwd
Use passwd as the password for authentication to
the directory. When you use -w passwd to specify the password to
be used for authentication, the password is visible to other users of the
system by means of the ps command, in script files or in shell history.
If you use the ldapsearch command without this option, the command
prompts for the password and read it from standard in. When used without the
-w option, the password is not visible to other users.
-x
Use with the -S option to specify that search
results be sorted on the server rather than by the ldapsearch command
running on the client. This is useful if you want to sort according to a
matching rule, as with an international search. It is usually faster to sort
on the server, if that is supported, rather than on the client.
-Y proxyDN
Specify the proxy DN (proxied authorization id) to use
for the modify operation, usually in double quotes (" ") for the
shell.
-Z
Specify that SSL be used to provide certificate-based
client authentication. This option requires the -N and SSL password and
any other of the SSL options needed to identify the certificate and the key
database.
-z sizelimit
Retrieve at most sizelimit entries for a search to
complete.
Example 1 Performing a Subtree Search
The following command performs a subtree search (using the default
search base) for entries with a commonName of "mark smith". The
commonName and telephoneNumber values is retrieved and printed to standard
output. Use the -r option to display this output in the old
format.
example% ldapsearch "cn=mark smith" cn telephoneNumber
The output looks something like this:
dn: Mark D Smith, ou=Sales, ou=Atlanta, ou=People, o=XYZ, c=US
cn: Mark Smith
cn: Mark David Smith
cn: Mark D Smith 1
cn: Mark D Smith
telephoneNumber: +1 123 456-7890
dn: Mark C Smith, ou=Distribution, ou=Atlanta, ou=People, o=XYZ, c=US
cn: Mark Smith
cn: Mark C Smith 1
cn: Mark C Smith
telephoneNumber: +1 123 456-9999
Example 2 Performing a Subtree Search Using the Default
Search Base
The following command performs a subtree search using the
-r option to display in old style format with a default search base
for entries with user id of mcs. The user-friendly form of the
entry's DN is output after the line that contains the DN itself, and the
jpegPhoto and audio values are retrieved and written to
temporary files.
ldapsearch -r -u -t "uid=mcs" -r jpegPhoto audio
The output might look like this if one entry with one value for
each of the requested attributes is found:
cn=Mark C Smith, ou=Distribution, ou=Atlanta, ou=People, o=XYZ, c=US
Mark C Smith, Distribution, Atlanta, People, XYZ, US
audio=/tmp/ldapsearch-audio-a19924
jpegPhoto=/tmp/ldapsearch-jpegPhoto-a19924
Example 3 Performing a One-Level Search
The following command performs a one-level search at the c=US
level for all organizations whose organizationName begins with XY.
example% ldapsearch -s one -b "c=US" "o=XY*" o description
The organizationName and description attribute
values are retrieved and printed to standard output, resulting in output
similar to this:
dn: o=XYZ c=US
o: XYZ
description: XYZ Corporation
dn: o="XY Trading Company", c=US
o: XY Trading Company
description: Import and export specialists
dn: o=XYInternational, c=US
o: XYInternational
o: XYI
o: XY International
Example 4 Performing a Subtree Search on an IPv6 Server
The following command performs a subtree search using the default
search base for entries with a user id of mcs on an IPv6 (that is,
-h) server:
example% ldapsearch -u -h '['fec0::111:a00:20ff:fea3:edcf']' \
-t "uid=mcs" jpegPhoto audio