hash.1p (5644B)
- '\" et
- .TH HASH "1P" 2017 "IEEE/The Open Group" "POSIX Programmer's Manual"
- .\"
- .SH PROLOG
- This manual page is part of the POSIX Programmer's Manual.
- The Linux implementation of this interface may differ (consult
- the corresponding Linux manual page for details of Linux behavior),
- or the interface may not be implemented on Linux.
- .\"
- .SH NAME
- hash
- \(em remember or report utility locations
- .SH SYNOPSIS
- .LP
- .nf
- hash \fB[\fIutility\fR...\fB]\fR
- .P
- hash -r
- .fi
- .SH DESCRIPTION
- The
- .IR hash
- utility shall affect the way the current shell environment remembers
- the locations of utilities found as described in
- .IR "Section 2.9.1.1" ", " "Command Search and Execution".
- Depending on the arguments specified, it shall add utility locations to
- its list of remembered locations or it shall purge the contents of the
- list. When no arguments are specified, it shall report on the contents
- of the list.
- .P
- Utilities provided as built-ins to the shell shall not be reported by
- .IR hash .
- .SH OPTIONS
- The
- .IR hash
- utility shall conform to the Base Definitions volume of POSIX.1\(hy2017,
- .IR "Section 12.2" ", " "Utility Syntax Guidelines".
- .P
- The following option shall be supported:
- .IP "\fB\-r\fP" 10
- Forget all previously remembered utility locations.
- .SH OPERANDS
- The following operand shall be supported:
- .IP "\fIutility\fR" 10
- The name of a utility to be searched for and added to the list of
- remembered locations. If
- .IR utility
- contains one or more
- <slash>
- characters, the results are unspecified.
- .SH STDIN
- Not used.
- .SH "INPUT FILES"
- None.
- .SH "ENVIRONMENT VARIABLES"
- The following environment variables shall affect the execution of
- .IR hash :
- .IP "\fILANG\fP" 10
- Provide a default value for the internationalization variables that are
- unset or null. (See the Base Definitions volume of POSIX.1\(hy2017,
- .IR "Section 8.2" ", " "Internationalization Variables"
- for the precedence of internationalization variables used to determine
- the values of locale categories.)
- .IP "\fILC_ALL\fP" 10
- If set to a non-empty string value, override the values of all the
- other internationalization variables.
- .IP "\fILC_CTYPE\fP" 10
- Determine the locale for the interpretation of sequences of bytes of
- text data as characters (for example, single-byte as opposed to
- multi-byte characters in arguments).
- .IP "\fILC_MESSAGES\fP" 10
- .br
- Determine the locale that should be used to affect the format and
- contents of diagnostic messages written to standard error.
- .IP "\fINLSPATH\fP" 10
- Determine the location of message catalogs for the processing of
- .IR LC_MESSAGES .
- .IP "\fIPATH\fP" 10
- Determine the location of
- .IR utility ,
- as described in the Base Definitions volume of POSIX.1\(hy2017,
- .IR "Chapter 8" ", " "Environment Variables".
- .SH "ASYNCHRONOUS EVENTS"
- Default.
- .SH STDOUT
- The standard output of
- .IR hash
- shall be 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
- shall consist of those utilities named in previous
- .IR hash
- invocations that have been invoked, and may contain those invoked and
- found through the normal command search process.
- .SH STDERR
- The standard error shall be used only for diagnostic messages.
- .SH "OUTPUT FILES"
- None.
- .SH "EXTENDED DESCRIPTION"
- None.
- .SH "EXIT STATUS"
- The following exit values shall be returned:
- .IP "\00" 6
- Successful completion.
- .IP >0 6
- An error occurred.
- .SH "CONSEQUENCES OF ERRORS"
- Default.
- .LP
- .IR "The following sections are informative."
- .SH "APPLICATION USAGE"
- Since
- .IR 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:
- .sp
- .RS 4
- .nf
- nohup hash -r
- find . -type f | xargs hash
- .fi
- .P
- .RE
- .P
- it does not affect the command search process of the caller's
- environment.
- .P
- The
- .IR hash
- utility may be implemented as an alias\(emfor example,
- .IR alias
- .BR "\-t\ \-" ,
- in which case utilities found through normal command search are not
- listed by the
- .IR hash
- command.
- .P
- The effects of
- .IR hash
- .BR \-r
- can also be achieved portably by resetting the value of
- .IR PATH ;
- in the simplest form, this can be:
- .sp
- .RS 4
- .nf
- PATH="$PATH"
- .fi
- .P
- .RE
- .P
- The use of
- .IR hash
- with
- .IR 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 EXAMPLES
- None.
- .SH RATIONALE
- None.
- .SH "FUTURE DIRECTIONS"
- None.
- .SH "SEE ALSO"
- .IR "Section 2.9.1.1" ", " "Command Search and Execution"
- .P
- The Base Definitions volume of POSIX.1\(hy2017,
- .IR "Chapter 8" ", " "Environment Variables",
- .IR "Section 12.2" ", " "Utility Syntax Guidelines"
- .\"
- .SH COPYRIGHT
- Portions of this text are reprinted and reproduced in electronic form
- from IEEE Std 1003.1-2017, Standard for Information Technology
- -- Portable Operating System Interface (POSIX), The Open Group Base
- Specifications Issue 7, 2018 Edition,
- Copyright (C) 2018 by the Institute of
- Electrical and Electronics Engineers, Inc and The Open Group.
- In the event of any discrepancy between this version and the original IEEE and
- The Open Group Standard, the original IEEE and The Open Group Standard
- is the referee document. The original Standard can be obtained online at
- http://www.opengroup.org/unix/online.html .
- .PP
- Any typographical or formatting errors that appear
- in this page are most likely
- to have been introduced during the conversion of the source files to
- man page format. To report such errors, see
- https://www.kernel.org/doc/man-pages/reporting_bugs.html .