Click on any of the 687 commands below to get a description and list of available options. All links in the command summaries point to the online version of the book on Safari Bookshelf.
List the full pathnames of the files that would be executed if the named commands had been run. which searches the user's $PATH environment variable.
Options
-a, --all
Print all matches, not just the first.
-i, --read-alias
Read aliases from standard input and write matches to standard output. Useful for using an alias for which.
--read-functions
Read shell functions from standard input and report matches to standard output. Useful for also using a shell function for which itself.
--skip-alias
Ignore --read-alias if present. Useful for finding normal binaries while using --read-alias in an alias for which.
--skip-dot
Skip directories that start with a dot.
--skip-functions
Ignore --read-functions if present. Useful when searching for normal binaries while using --read-functions in an alias or function for which.
--skip-tilde
Skip directories that start with a tilde (~) and executables in $HOME.
--show-dot
If a matching command is found in a directory that starts with a dot, print ./cmdname instead of the full pathname.
--show-tilde
Print a tilde (~) to indicate the user's home directory. Ignored if the user is root.
--tty-only
Stop processing options on the right if not on a terminal.
-v, -V, --version
Print version information and then exit.
--help
Print help information and then exit.
Example
$ which cc ls
/usr/bin/cc
ls: aliased to ls -sFC