Used on its own, with no options or arguments, hash reports the contents of its list.
The -r option makes hash forget the contents of the list. If you change the environment variable PATH, hash forgets its list until you reference a command at a later time.
The command hash might show the following hash list:
cp=/bin/cp grep=/bin/grep ls=/bin/ls rm=/bin/rm vi=/usr/bin/vi
hash does not report commands provided as built-ins to the shell.
Using hash with command names is unnecessary for most applications. It may provide a performance improvement, obviating the need to use $PATH to search for the location of a given command.
ISO/IEC DIS 99452:1992, Information technology Portable Operating System Interface (POSIX) Part 2: Shell and Utilities (IEEE Std 1003.21992);
X/Open CAE Specification, Commands and Utilities, Issue 4, 1992.