xref: /freebsd/usr.bin/whereis/whereis.1 (revision 7f3dea244c40159a41ab22da77a434d7c5b5e85a)
1.\" Copyright (c) 1993
2.\"	The Regents of the University of California.  All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\" 3. All advertising materials mentioning features or use of this software
13.\"    must display the following acknowledgement:
14.\"	This product includes software developed by the University of
15.\"	California, Berkeley and its contributors.
16.\" 4. Neither the name of the University nor the names of its contributors
17.\"    may be used to endorse or promote products derived from this software
18.\"    without specific prior written permission.
19.\"
20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30.\" SUCH DAMAGE.
31.\"
32.\"	@(#)whereis.1	8.2 (Berkeley) 12/30/93
33.\"
34.\" $Id: whereis.1,v 1.6 1998/08/31 16:41:08 wosch Exp $
35.\"
36.Dd June 15, 1996
37.Dt WHEREIS 1
38.Os FreeBSD
39.Sh NAME
40.Nm whereis
41.Nd locate programs
42.Sh SYNOPSIS
43.Nm whereis
44.Op Fl bms
45.Op Fl u
46.Op Fl BMS dir ... Fl f
47.Ar program ...
48.Sh DESCRIPTION
49The
50.Nm whereis
51utility checks the standard binary, manual page, and source
52directories for the specified programs, printing out the paths of any
53it finds.  The supplied names are first stripped of leading path name
54components, any single trailing extension added by
55.Xr gzip 1
56or
57.Xr compress 1 ,
58and the leading
59.Ql s.
60or trailing
61.Ql ,v
62from a source code control system.
63.Pp
64The default path searched is the string returned by the
65.Xr sysctl 8
66utility for the
67.Dq user.cs_path
68string, with
69.Pa /usr/libexec
70and the current user's
71.Ev $PATH
72appended.  Manual pages are searched by default along the
73.Ev $MANPATH .
74Program sources are located in a list of known standard places,
75including all the subdirectories of
76.Pa /usr/src
77and
78.Pa /usr/ports .
79.Pp
80The following options are available:
81.Bl -tag -width indent
82.It Fl B
83Specify directories to search for binaries.  Requires the
84.Fl f
85option.
86.It Fl M
87Specify directories to search for manual pages.  Requires the
88.Fl f
89option.
90.It Fl S
91Specify directories to search for program sources.  Requires the
92.Fl f
93option.
94.It Fl b
95Search for binaries.
96.It Fl f
97Delimits the list of directories after the
98.Fl B ,
99.Fl M ,
100or
101.Fl S
102options, and indicates the beginning of the
103.Ar name
104list.
105.It Fl m
106Search for manual pages.
107.It Fl s
108Search for source directories.
109.It Fl u
110Search for
111.Dq unusual
112entries.  A file is said to be unusual if it does not have one entry
113of each requested type.
114.El
115.Sh EXAMPLE
116The following finds all utilities under
117.Pa /usr/bin
118that do not have documentation:
119.Dl whereis -m -u /usr/bin/*
120.Sh SEE ALSO
121.Xr find 1 ,
122.Xr locate 1 ,
123.Xr man 1 ,
124.Xr which 1 ,
125.Xr sysctl 8
126.Sh BUGS
127The search for sources is implemented as a quick search as the
128first-level subdirectory of each element of the list of source
129directories first.  If this didn't succeed, the utility
130.Xr locate 1
131is requested to do the search in deeper nested subdirectories.  This
132might take some time, and will only succeed if the locate database is
133up-to-date.
134.Sh HISTORY
135The
136.Nm whereis
137command appeared in
138.Bx 3.0 .
139This version re-implements the historical
140functionality that was lost in
141.Bx 4.4 .
142