[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
The following shell builtin commands are inherited from the Bourne Shell. These commands are implemented as specified by the POSIX 1003.2 standard.
: (a colon)
: [arguments] |
. (a period)
. filename [arguments] |
PATH
variable is used to find filename.
When Bash is not in POSIX mode, the current directory is searched
if filename is not found in $PATH
.
If any arguments are supplied, they become the positional
parameters when filename is executed. Otherwise the positional
parameters are unchanged.
The return status is the exit status of the last command executed, or
zero if no commands are executed. If filename is not found, or
cannot be read, the return status is non-zero.
This builtin is equivalent to source
.
break
break [n] |
for
, while
, until
, or select
loop.
If n is supplied, the nth enclosing loop is exited.
n must be greater than or equal to 1.
The return status is zero unless n is not greater than or equal to 1.
cd
cd [-LP] [directory] |
HOME
shell variable is used. If the
shell variable CDPATH
exists, it is used as a search path. If
directory begins with a slash, CDPATH
is not used.
The `-P' option means
to not follow symbolic links; symbolic links are followed by default
or with the `-L' option.
If directory is `-', it is equivalent to $OLDPWD
.
The return status is zero if the directory is successfully changed,
non-zero otherwise.
continue
continue [n] |
for
, while
,
until
, or select
loop.
If n is supplied, the execution of the nth enclosing loop
is resumed.
n must be greater than or equal to 1.
The return status is zero unless n is not greater than or equal to 1.
eval
eval [arguments] |
eval
.
If there are no arguments or only empty arguments, the return status is
zero.
exec
exec [-cl] [-a name] [command [arguments]] |
login
program does.
The `-c' option causes command to be executed with an empty
environment.
If `-a' is supplied, the shell passes name as the zeroth
argument to command.
If no command is specified, redirections may be used to affect
the current shell environment. If there are no redirection errors, the
return status is zero; otherwise the return status is non-zero.
exit
exit [n] |
EXIT
is executed before the shell terminates.
export
export [-fn] [-p] [name[=value]] |
getopts
getopts optstring name [args] |
getopts
is used by shell scripts to parse positional parameters.
optstring contains the option characters to be recognized; if a
character is followed by a colon, the option is expected to have an
argument, which should be separated from it by white space.
The colon (`:') and question mark (`?') may not be
used as option characters.
Each time it is invoked, getopts
places the next option in the shell variable name, initializing
name if it does not exist,
and the index of the next argument to be processed into the
variable OPTIND
.
OPTIND
is initialized to 1 each time the shell or a shell script
is invoked.
When an option requires an argument,
getopts
places that argument into the variable OPTARG
.
The shell does not reset OPTIND
automatically; it must be manually
reset between multiple calls to getopts
within the same shell
invocation if a new set of parameters is to be used.
When the end of options is encountered, getopts
exits with a
return value greater than zero.
OPTIND
is set to the index of the first non-option argument,
and name
is set to `?'.
getopts
normally parses the positional parameters, but if more arguments are
given in args, getopts
parses those instead.
getopts
can report errors in two ways. If the first character of
optstring is a colon, silent
error reporting is used. In normal operation diagnostic messages
are printed when invalid options or missing option arguments are
encountered.
If the variable OPTERR
is set to 0, no error messages will be displayed, even if the first
character of optstring
is not a colon.
If an invalid option is seen,
getopts
places `?' into name and, if not silent,
prints an error message and unsets OPTARG
.
If getopts
is silent, the option character found is placed in
OPTARG
and no diagnostic message is printed.
If a required argument is not found, and getopts
is not silent, a question mark (`?') is placed in name,
OPTARG
is unset, and a diagnostic message is printed.
If getopts
is silent, then a colon (`:') is placed in
name and OPTARG
is set to the option character found.
hash
hash [-r] [-p filename] [-t] [name] |
$PATH
.
The `-p' option inhibits the path search, and filename is
used as the location of name.
The `-r' option causes the shell to forget all remembered locations.
If the `-t' option is supplied, the full pathname to which each
name corresponds is printed. If multiple name arguments are
supplied with `-t' the name is printed before the hashed
full pathname.
If no arguments are given, information about remembered commands is printed.
The return status is zero unless a name is not found or an invalid
option is supplied.
pwd
pwd [-LP] |
readonly
readonly [-apf] [name] ... |
return
return [n] |
.
(or source
) builtin, returning either n or
the exit status of the last command executed within the script as the exit
status of the script.
The return status is non-zero if return
is used outside a function
and not during the execution of a script by .
or source
.
shift
shift [n] |
$#
are
renamed to $1
... $#
-n+1.
Parameters represented by the numbers $#
to n+1 are unset.
n must be a non-negative number less than or equal to $#
.
If n is zero or greater than $#
, the positional parameters
are not changed.
If n is not supplied, it is assumed to be 1.
The return status is zero unless n is greater than $#
or
less than zero, non-zero otherwise.
test
[
When the [
form is used, the last argument to the command must
be a ]
.
Expressions may be combined using the following operators, listed in decreasing order of precedence.
! expr
( expr )
expr1 -a expr2
expr1 -o expr2
The test
and [
builtins evaluate conditional
expressions using a set of rules based on the number of arguments.
times
times |
trap
trap [-lp] [arg] [sigspec ...] |
trap
prints the list of commands
associated with each signal number in a form that may be reused as
shell input.
Each sigspec is either a signal name such as SIGINT
(with
or without the SIG
prefix) or a signal number.
If a sigspec
is 0
or EXIT
, arg is executed when the shell exits.
If a sigspec is DEBUG
, the command arg is executed
after every simple command.
If a sigspec is ERR
, the command arg
is executed whenever a simple command has a non-zero exit status.
The ERR
trap is not executed if the failed command is part of an
until
or while
loop, part of an if
statement,
part of a &&
or ||
list, or if the command's return
status is being inverted using !
.
The `-l' option causes the shell to print a list of signal names
and their corresponding numbers.
Signals ignored upon entry to the shell cannot be trapped or reset. Trapped signals are reset to their original values in a child process when it is created.
The return status is zero unless a sigspec does not specify a valid signal.
umask
umask [-p] [-S] [mode] |
chmod
command. If mode is
omitted, the current value of the mask is printed. If the `-S'
option is supplied without a mode argument, the mask is printed
in a symbolic format.
If the `-p' option is supplied, and mode
is omitted, the output is in a form that may be reused as input.
The return status is zero if the mode is successfully changed or if
no mode argument is supplied, and non-zero otherwise.
Note that when the mode is interpreted as an octal number, each number
of the umask is subtracted from 7
. Thus, a umask of 022
results in permissions of 755
.
unset
unset [-fv] [name] |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |