]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - usr.bin/which/which.1
bhnd(9): Fix a few mandoc related issues
[FreeBSD/FreeBSD.git] / usr.bin / which / which.1
1 .\" Manpage Copyright (c) 1995, Jordan Hubbard <jkh@FreeBSD.org>
2 .\"
3 .\" Redistribution and use in source and binary forms, with or without
4 .\" modification, are permitted provided that the following conditions
5 .\" are met:
6 .\" 1. Redistributions of source code must retain the above copyright
7 .\"    notice, this list of conditions and the following disclaimer.
8 .\" 2. Redistributions in binary form must reproduce the above copyright
9 .\"    notice, this list of conditions and the following disclaimer in the
10 .\"    documentation and/or other materials provided with the distribution.
11 .\" 3. All advertising materials mentioning features or use of this software
12 .\"    must display the following acknowledgement:
13 .\"      This product includes software developed by the FreeBSD Project
14 .\"      its contributors.
15 .\" 4. Neither the name of the FreeBSD Project nor the names of its contributors
16 .\"    may be used to endorse or promote products derived from this software
17 .\"    without specific prior written permission.
18 .\"
19 .\" THIS SOFTWARE IS PROVIDED BY THE CONTRIBUTOR ``AS IS'' AND ANY EXPRESS OR
20 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
21 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
22 .\" IN NO EVENT SHALL THE CONTRIBUTOR BE LIABLE FOR ANY DIRECT, INDIRECT,
23 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
24 .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28 .\" OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 .\"
30 .\" $FreeBSD$
31 .\"
32 .Dd September 24, 2020
33 .Dt WHICH 1
34 .Os
35 .Sh NAME
36 .Nm which
37 .Nd "locate a program file in the user's path"
38 .Sh SYNOPSIS
39 .Nm
40 .Op Fl as
41 .Ar program ...
42 .Sh DESCRIPTION
43 The
44 .Nm
45 utility
46 takes a list of command names and searches the path for each executable
47 file that would be run had these commands actually been invoked.
48 .Pp
49 The following options are available:
50 .Bl -tag -width indent
51 .It Fl a
52 List all instances of executables found (instead of just the first one
53 of each).
54 .It Fl s
55 No output, just return 0 if all of the executables are found, or 1 if
56 some were not found.
57 .El
58 .Pp
59 Some shells may provide a builtin
60 .Nm
61 command which is similar or identical to this utility.
62 Consult the
63 .Xr builtin 1
64 manual page.
65 .Sh EXAMPLES
66 Locate the
67 .Xr ls 1
68 and
69 .Xr cp 1
70 commands:
71 .Bd -literal -offset indent
72 $ /usr/bin/which ls cp
73 /bin/ls
74 /bin/cp
75 .Ed
76 .Pp
77 Same as above with a specific
78 .Ev PATH
79 and showing all occurrences:
80 .Bd -literal -offset indent
81 $ PATH=/bin:/rescue /usr/bin/which -a ls cp
82 /bin/ls
83 /rescue/ls
84 /bin/cp
85 /rescue/cp
86 .Ed
87 .Pp
88 .Nm which
89 will show duplicates if the same executable is found more than once:
90 .Bd -literal -offset indent
91 $ PATH=/bin:/bin /usr/bin/which -a ls
92 /bin/ls
93 /bin/ls
94 .Ed
95 .Pp
96 Do not show output.
97 Just exit with an appropriate return code:
98 .Bd -literal -offset indent
99 $ /usr/bin/which -s ls cp
100 $ echo $?
101 0
102
103 $ /usr/bin/which -s fakecommand
104 $ echo $?
105 1
106 .Ed
107 .Sh SEE ALSO
108 .Xr builtin 1 ,
109 .Xr csh 1 ,
110 .Xr find 1 ,
111 .Xr locate 1 ,
112 .Xr whereis 1
113 .Sh HISTORY
114 The
115 .Nm
116 command first appeared in
117 .Fx 2.1 .
118 .Sh AUTHORS
119 .An -nosplit
120 The
121 .Nm
122 utility was originally written in Perl and was contributed by
123 .An Wolfram Schneider Aq Mt wosch@FreeBSD.org .
124 The current version of
125 .Nm
126 was rewritten in C by
127 .An Daniel Papasian Aq Mt dpapasia@andrew.cmu.edu .