Linux apropos command

Updated: 12/29/2017 by Computer Hope

About apropos

apropos searches the manual pages for a keyword or regular expression.


Each manual page has a short description included with it. apropos searches these descriptions for instances of keyword.

keyword can be a regular expression (by default; also see the -r option), or may contain wildcards (-w), or be instructed to match the only exact keyword (-e). Using these options, it may be necessary to quote the keyword, or escape ("\") the special characters to stop the shell from interpreting them.

The standard matching rules allow matches to be made against the page name and word boundaries in the description.

apropos syntax

apropos [-dalhvV] [-e|-w|-r] [-s list] [-m system[,...]] [-M path]
        [-L locale] [-C file] keyword ...


-d, --debug

Print debugging information.

-v, --verbose

Print verbose warning messages.

-r, --regex

Interpret each keyword as a regular expression. This is the default behavior. Each keyword will be matched against the page names and the descriptions independently. It can match any part of either. The match is not limited to word boundaries.

-w, --wildcard

Interpret each keyword as a pattern containing shell-style wildcards. Each keyword will be matched against the page names and the descriptions independently. If --exact is also used, a match will only be found if an expanded keyword matches an entire description or page name. Otherwise, the keyword is also allowed to match on word boundaries in the description.

-e, --exact

Each keyword will be exactly matched against the page names and the descriptions.

-a, --and

Only display items that match all the supplied keywords. The default is to display items that match any keyword.

-l, --long

Do not trim output to the terminal width. Normally, output will be truncated to the terminal width to avoid ugly results from poorly-written NAME sections.

-s list,
--sections list,
--section list

Search only the given manual sections. The list is a colon- or comma-separated list of sections. If an entry in list is a simple section, for example "3", then the displayed list of descriptions will include pages in sections "3", "3perl", "3x", and so on; while if an entry in list has an extension, for example "3perl", then the list will only include pages in that exact part of the manual section.

-m system[,...], --systems=system[,...]

If this system has access to other operating system's manual page descriptions, they can be searched using this option. For example, to search the manual page descriptions of an operating system called "NewOS", use the option -m NewOS. The system specified can be a combination of comma-delimited operating system names. (To include a search of the native operating system's whatis descriptions, include the system name man in the argument string. This option will override the $SYSTEM environment variable).

-M path, --manpath=path

Specify an alternate set of colon-delimited manual page hierarchies to search. By default, apropos uses the $MANPATH environment variable, unless it is empty or unset, in which case it will determine an appropriate "manpath" based on your $PATH environment variable. This option overrides the contents of $MANPATH.

-L locale,

apropos will normally determine your current locale by a call to the C function setlocale which interrogates various environment variables, possibly including $LC_MESSAGES and $LANG. To temporarily override the determined value, use this option to supply a locale string directly to apropos. Note that it will not take effect until the search for pages actually begins. Output such as the help message will always be displayed in the initially determined locale.

-C file,

Use this user configuration file rather than the default of ~/.manpath.

-h, --help

Print a help message and exit.

-V, --version

Display version information.



If $SYSTEM is set, it will have the same effect as if it had been specified as the argument to the -m option.


If $MANPATH is set, its value is interpreted as the colon-delimited manual page hierarchy search path to use.


If $MANWIDTH is set, its value is used as the terminal width (see the --long option). If it is not set, the terminal width will be calculated using an ioctl if available, the value of $COLUMNS, or falling back to 80 characters if all else fails.


If $POSIXLY_CORRECT is set, even to a null value, the default apropos search will be as an extended regex (-r). On newer systems, this is often already the default behavior.

apropos examples

apropos find

Display all manual entries with the word "find" in the page name or description. Output will resemble the following:

aa_find_mountpoint (2) - find where the apparmor interface filesystem is mounted
chkdupexe (1)          - find duplicate executables
ffs (3)                - find first bit set in a word
ffsl (3)               - find first bit set in a word
ffsll (3)              - find first bit set in a word
find (1)               - search for files in a directory hierarchy
find2perl (1)          - translate find command lines to Perl code
findaffix (1)          - Interactive spelling checking
findfs (8)             - find a filesystem by label or UUID
findmnt (8)            - find a filesystem
findsmb (1)            - list info about machines that respond to SMB name quer...
glob (3)               - find pathnames matching a pattern, free memory from gl...
globfree (3)           - find pathnames matching a pattern, free memory from gl...
ippfind (1)            - find internet printing protocol printers
lfind (3)              - linear search of an array
locate (1)             - find files by name
memdiskfind (1)        - utility to search for a MEMDISK instance
mlocate (1)            - find files by name
mysql_find_rows (1)    - extract SQL statements from files
oldfind (1)            - search for files in a directory hierarchy
pidof (8)              - find the process ID of a running program.
texdoc (1)             - find & view documentation in TeX Live
tfind (3)              - manage a binary tree
tracediff (1)          - find and print differences between two traces
ttyslot (3)            - find the slot of the current user's terminal in some file

man — Display the manual page of a given command.