apropos
Search manual pages by keyword
TLDR
Search for a keyword using a regex
Search without restricting the output to the terminal width (long output)
Search for pages that match all the regex given
SYNOPSIS
apropos [OPTION...] KEYWORD...
PARAMETERS
-V, --version
Display version info and exit
-r, --regex
Interpret KEYWORD as regex
-e, --exact
Like grep -w: exact word match
-w, --wildcard
Wildcard pattern (* and ? supported)
-d, --search-dirs=DIRS
Search specific man directories
-m, --systems=SYSTEMS
Search other systems' man pages
-M, --manpath=PATHS
Set search path for man pages
-C, --config-file=FILE
Use specific config file
-O, --locale
Use current locale for search
-R, --prompt
Custom prompt string
-f, --exact-name
Like whatis: match only page names
-K, --global-apropos
Search all man page text (slow)
-L, --locale-lang
Output in specific language
DESCRIPTION
The apropos command searches the short descriptions in the NAME sections of manual pages (man pages) for keywords, listing matching pages with their names, sections, and descriptions. Ideal for discovering commands when you know the function but not the exact name.
It queries a pre-indexed database built from man pages, making searches fast. Output format is: section command - description.
Unlike man, which displays full pages, apropos provides an overview. Use multiple keywords for intersection (AND logic). It supports regex, exact, and wildcard matching via options. Essential for system administration, programming, and learning Linux/Unix tools.
Relies on mandb (formerly makewhatis) for database maintenance; outdated databases yield incomplete results. Commonly aliased as man -k.
CAVEATS
Depends on updated mandb database; run sudo mandb or sudo makewhatis if results are incomplete. Searches only NAME sections by default (use -K for full text). Case-insensitive by default.
COMMON USAGE
apropos keyword or man -k keyword for quick searches. Pipe to grep: apropos net | grep server.
DATABASE MANAGEMENT
Update with sudo mandb -t (creates temporary index) or cron jobs for automatic maintenance.
HISTORY
Originated in early Unix (1979 AT&T Version 7) as part of man utilities. Enhanced in man-db (1990s) for Linux with regex/wildcard support. Now standard in GNU man-db package.


