General Commands Manual
NAME which — locate a program file in the users $PATH environment variable
takes a list of names and looks for the files which would be executed had these names been given as commands. Each argument is searched for along the user's PATH
If the -a flag is given, which will continue to search the PATH until all instances of a program file are found.
HISTORY The which command appeared in 3.0BSD.
This implementation does not expand csh(1)
aliases, and is shell agnostic. This is really a feature.