hash(1) hash(1)
hash - remember or report utility locations
hash [utility...]
hash -r
The hash utility affects the way the current shell environment remembers
the locations of utilities found as described in Command Search and
Execution . Depending on the arguments specified, it adds utility
locations to its list of remembered locations or it purges the contents
of the list. When no arguments are specified, it reports on the contents
of the list.
Utilities provided as built-ins to the shell are not reported by hash.
The hash utility supports the XBD specification, Utility Syntax
Guidelines.
The following option is supported:
-r Forget all previously remembered utility locations.
The following operand is supported:
utility The name of a utility to be searched for and added to the list
of remembered locations. If utility contains one or more
slashes, the results are unspecified.
ENVIRONMENT VARIABLES [Toc] [Back] The following environment variables affect the execution of hash:
PATH Determine the location of utility, as described in the XBD
specification, Environment Variables .
The standard output of hash is used when no arguments are specified. Its
format is unspecified, but includes the pathname of each utility in the
list of remembered locations for the current shell environment. This
list consists of those utilities named in previous hash invocations that
have been invoked, and may contain those invoked and found through the
normal command search process.
The following exit values are returned:
Page 1
hash(1) hash(1)
0 Successful completion.
>0 An error occurred.
Since hash affects the current shell execution environment, it is always
provided as a shell regular built-in. If it is called in a separate
utility execution environment, such as one of the following:
nohup hash -r find . -type f | xargs hash
it will not affect the command search process of the caller's
environment.
The hash utility may be implemented as an alias, for example, alias -t -,
in which case utilities found through normal command search will not be
listed by the hash command.
The effects of hash -r can also be achieved portably by resetting the
value of PATH; in the simplest form, this can be:
PATH="$PATH"
The use of hash with utility names is unnecessary for most applications,
but may provide a performance improvement on a few implementations;
normally, the hashing process is included by default.
sh(1)
PPPPaaaaggggeeee 2222 [ Back ]
|