blob: b13491b6917ea35f89b3cfdbeff0a84a272193c0 [file] [log] [blame]
.\" Copyright (c) 1980, 1990 The Regents of the University of California.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\" must display the following acknowledgement:
.\" This product includes software developed by the University of
.\" California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" @(#)whereis.1 from UCB 4.2
.TH WHEREIS 1 "8 May 1994"
.SH NAME
whereis \- locate the binary, source, and manual page files for a command
.SH SYNOPSIS
.B whereis
.RB [ \-bmsu ]
.RB [ \-BMS
.IR directory ...
.BR \-f ]
.IR filename ...
.IX "whereis command" "" "\fLwhereis\fP \(em find program"
.IX find "program \(em \fLwhereis\fP"
.IX "locate program" "" "locate program \(em \fLwhereis\fP"
.IX command locate "" "locate \(em \fLwhereis\fP"
.SH DESCRIPTION
.B whereis
locates source/binary and manuals sections for specified
files.
The supplied names are first stripped of leading pathname components
and any (single) trailing extension of the form
.BI . ext\fR,\fP
for example,
.BR .c .
Prefixes of
.B s.
resulting from use of source code control are also dealt with.
.B whereis
then attempts to locate the desired program in
a list of standard Linux places.
.SH OPTIONS
.TP
.B \-b
Search only for binaries.
.TP
.B \-m
Search only for manual sections.
.TP
.B \-s
Search only for sources.
.TP
.B \-u
Search for unusual entries. A file is said to be unusual if it does
not have one entry of each requested type.
Thus
.RB ` "whereis\ \ \-m\ \ \-u\ \ *" '
asks for those files in the current
directory which have no documentation.
.TP
.B \-B
Change or otherwise limit the places where
.B whereis
searches for binaries.
.TP
.B \-M
Change or otherwise limit the places where
.B whereis
searches for
manual sections.
.TP
.B \-S
Change or otherwise limit the places where
.B whereis
searches for sources.
.TP
.B \-f
Terminate the last directory list and signals the start of file names,
and
.I must
be used when any of the
.BR \-B ,
.BR \-M ,
or
.B \-S
options are used.
.SH EXAMPLE
Find all files in
.B /usr/bin
which are not documented
in
.B /usr/man/man1
with source in
.BR /usr/src :
.IP
.nf
.ft B
example% cd /usr/bin
example% whereis \-u \-M /usr/man/man1 \-S /usr/src \-f *
.fi
.ft R
.SH FILES
.TP 20
.B /{bin,sbin,etc}
.TP
.B /usr/{lib,bin,old,new,local,games,include,etc,src,man,sbin,
.B X386,TeX,g++-include}
.TP
.B /usr/local/{X386,TeX,X11,include,lib,man,etc,bin,games,emacs}
.SH "SEE ALSO"
.BR chdir (2V)
.SH BUGS
Since
.B whereis
uses
.BR chdir (2V)
to run faster, pathnames given with the
.BR \-M ,
.BR \-S ,
or
.B \-B
must be full; that is, they must begin with a
.RB ` / '.
.PP
.B whereis
has a hard-coded path, so may not always find what
you're looking for.
.SH AVAILABILITY
The whereis command is part of the util-linux-ng package and is available from
ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/.