tail head cat sleep
QR code linking to this page

Manual Pages  — WHICH

NAME

which – locate a program file in the user's path

CONTENTS

SYNOPSIS


which [-as] program ...

DESCRIPTION

The which utility takes a list of command names and searches the path for each executable file that would be run had these commands actually been invoked.

The following options are available:
-a
  List all instances of executables found (instead of just the first one of each).
-s
  No output, just return 0 if all of the executables are found, or 1 if some were not found.

Some shells may provide a builtin which command which is similar or identical to this utility. Consult the builtin(1) manual page.

EXAMPLES

Locate the ls(1) and cp(1) commands:
$ /usr/bin/which ls cp
/bin/ls
/bin/cp

Same as above with a specific PATH and showing all occurrences:

$ PATH=/bin:/rescue /usr/bin/which -a ls cp
/bin/ls
/rescue/ls
/bin/cp
/rescue/cp

which will show duplicates if the same executable is found more than once:

$ PATH=/bin:/bin /usr/bin/which -a ls
/bin/ls
/bin/ls

Do not show output. Just exit with an appropriate return code:

$ /usr/bin/which -s ls cp
$ echo $?
0

$ /usr/bin/which -s fakecommand $ echo $? 1

SEE ALSO

builtin(1), csh(1), find(1), locate(1), whereis(1)

HISTORY

The which command first appeared in FreeBSD 2.1 .

AUTHORS

The which utility was originally written in Perl and was contributed by Wolfram Schneider <Mt wosch@FreeBSD.org>. The current version of which was rewritten in C by Daniel Papasian <Mt dpapasia@andrew.cmu.edu>.

WHICH (1) September 24, 2020

tail head cat sleep
QR code linking to this page


Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

UNIX has been evolving feverishly for close to 30 years, sort of like bacteria in a cesspool — only not as attractive
— John Levine, "Unix for Dummies"