Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
WHICH(1)		     General Commands Manual			WHICH(1)

NAME
     which -- locate a program file in the user's path

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 in-
     voked.

     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 identi-
     cal 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  <wosch@FreeBSD.org>.	The current version of which was
     rewritten in C by Daniel Papasian <dpapasia@andrew.cmu.edu>.

FreeBSD ports 15.quarterly     September 24, 2020			WHICH(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=which&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help