.\" SUCH DAMAGE.
.\"
.\" @(#)whereis.1 from UCB 4.2
-.TH WHEREIS 1 "March 2013" "util-linux" "User Commands"
+.TH WHEREIS 1 "October 2014" "util-linux" "User Commands"
.SH NAME
whereis \- locate the binary, source, and manual page files for a command
.SH SYNOPSIS
.B whereis
-.RB [ options ]
+[options]
.RB [ \-BMS
.IR directory "... " \fB\-f\fR ]
.IR name ...
.SH DESCRIPTION
.B whereis
locates the binary, source and manual files for the specified command names.
-The supplied names are first stripped of leading pathname components
-and any (single) trailing extension of the form
+The supplied names are first stripped of leading pathname components and any
+(single) trailing extension of the form
.BI . ext
(for example:
.BR .c )
.B s.
resulting from use of source code control are also dealt with.
.B whereis
-then attempts to locate the desired program in
-the standard Linux places, and in the places specified by
-.BR $PATH .
+then attempts to locate the desired program in the standard Linux places, and
+in the places specified by
+.B $PATH
+and
+.BR $MANPATH .
+.sp
+The search restrictions (options \fB\-b\fP, \fB\-m\fP and \fB\-s\fP)
+are cumulative and apply to the subsequent \fIname\fP patterns on
+the command line. Any new search restriction resets the search mask.
+For example,
+.RS
+.sp
+.B "whereis -bm ls tr -m gcc"
+.sp
+.RE
+searches for "ls" and "tr" binaries and man pages, and for "gcc" man pages only.
+.sp
+The options \fB\-B\fP, \fB\-M\fP and \fB\-S\fP reset search paths for the
+subsequent \fIname\fP patterns. For example,
+.RS
+.sp
+.B "whereis -m ls -M /usr/share/man/man1 -f cal"
+.sp
+.RE
+searches for "ls" man pages in all default paths, but for "cal" in
+the /usr/share/man/man1 directory only.
.SH OPTIONS
.TP
-.IP "\fB\-b\fP"
-Search only for binaries.
-.IP "\fB\-m\fP"
-Search only for manuals.
-.IP "\fB\-s\fP"
-Search only for sources.
-.IP "\fB\-u\fP"
-Only show the command names that have unusual entries. A command
-is said to be unusual if it does
-not have just one entry of each explicitly requested type. Thus
-.RB ` "whereis\ \ \-m\ \ \-u\ \ *" '
-asks for those files in the current
-directory which have no documentation file, or more than one.
+.IP \fB\-b\fP
+Search for binaries.
+.IP \fB\-m\fP
+Search for manuals.
+.IP \fB\-s\fP
+Search for sources.
+.IP \fB\-u\fP
+Only show the command names that have unusual entries. A command is said to be
+unusual if it does not have just one entry of each explicitly requested type.
+Thus
+.RB ' "whereis \-m \-u *" '
+asks for those files in the current directory which have no documentation file,
+or more than one.
.IP "\fB\-B \fIlist\fP"
Limit the places where
.B whereis
.IP "\fB\-M \fIlist\fP"
Limit the places where
.B whereis
-searches for manuals, by a whitespace-separated list of directories.
+searches for manuals and documentation in Info format, by a
+whitespace-separated list of directories.
.IP "\fB\-S \fIlist\fP"
Limit the places where
.B whereis
.BR \-S
options is used.
.IP "\fB\-l"
-Output list of effective lookup paths the
+Output the list of effective lookup paths that
.B whereis
-is using. When non of
+is using. When none of
.BR \-B ,
.BR \-M ,
or
.BR \-S
-is specified the option will out hard coded paths that the command was
-able to find on system.
+is specified, the option will output the hard-coded paths
+that the command was able to find on the system.
.SH EXAMPLE
To find all files in
-.B /usr/bin
+.B /usr/\:bin
which are not documented
in
-.B /usr/man/man1
+.B /usr/\:man/\:man1
or have no source in
-.BR /usr/src :
+.BR /usr/\:src :
.IP
-.B $ cd /usr/bin
+.B cd /usr/bin
.br
-.B $ whereis \-u \-ms \-M /usr/man/man1 \-S /usr/src \-f *
+.B whereis \-u \-ms \-M /usr/man/man1 \-S /usr/src \-f *
.SH "FILE SEARCH PATHS"
By default
.B whereis
tries to find files from hard-coded paths, which are defined with glob
-patterns. The command attempst to use contents of
+patterns. The command attempst to use contents of
.B $PATH
and
.B $MANPATH
.BR \-S
are display with
.BR \-l .
-.SH "SEE ALSO"
-.BR chdir (2)
-.SH BUGS
-Since
-.B whereis
-uses
-.BR chdir (2)
-to run faster, pathnames given with the
-.BR \-B ,
-.BR \-M ,
-or
-.BR \-S
-options must be full; that is, they must begin with a
-.RB ` / '.
.PP
+.SH ENVIRONMENT
+.IP WHEREIS_DEBUG=all
+enables debug output.
.SH AVAILABILITY
The whereis command is part of the util-linux package and is available from
-ftp://ftp.kernel.org/pub/linux/utils/util-linux/.
+.UR ftp://\:ftp.kernel.org\:/pub\:/linux\:/utils\:/util-linux/
+Linux Kernel Archive
+.UE .