which takes a list of names and looks for the files which would be executed had these names been given as commands. Each argument is expanded if it is aliased, and searched for along the user's path. Both aliases and path are taken from the user's .cshrc file.
~/.cshrc source of aliases and path values
See attributes(5) for descriptions of the following attributes:
A diagnostic is given for names which are aliased to more than a single word, or if an executable file with the argument name was not found in the path.
which is not a shell built-in command; it is the UNIX command, /usr/bin/which
Only aliases and paths from ~/.cshrc are used; importing from the current environment is not attempted. Must be executed by csh(1), since only csh knows about aliases.
To compensate for ~/.cshrc files in which aliases depend upon the prompt variable being set, which sets this variable to NULL. If the ~/.cshrc produces output or prompts for input when prompt is set, which may produce some strange results.