|
NAMEwhich - shows the full path of (shell) commands.SYNOPSISwhich [options] [--] programname [...]DESCRIPTIONWhich takes one or more arguments. For each of its arguments it prints to stdout the full path of the executables that would have been executed when this argument had been entered at the shell prompt. It does this by searching for an executable or script in the directories listed in the environment variable PATH using the same algorithm as bash(1).This man page is generated from the file which.texinfo. OPTIONS
RETURN VALUEWhich returns the number of failed arguments, or -1 when no `programname´ was given.EXAMPLEThe recommended way to use this utility is by adding an alias (C shell) or shell function (Bourne shell) for which like the following:[ba]sh:
which () { (alias; declare -f) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot $@ } export -f which [t]csh:
alias which ´alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde´ This will print the readable ~/ and ./ when starting which from your prompt, while still printing the full path when used from a script:
> which q2 ~/bin/q2 > echo `which q2` /home/carlo/bin/q2 BUGSThe HOME directory is determined by looking for the HOME environment variable, which aborts when this variable doesn´t exist. Which will consider two equivalent directories to be different when one of them contains a path with a symbolic link.AUTHORCarlo Wood <carlo@gnu.org>SEE ALSObash(1) Visit the GSP FreeBSD Man Page Interface. |