mirror of
https://https.git.savannah.gnu.org/git/bash.git
synced 2026-06-27 15:43:18 +02:00
documentation updates for arithmetic expansion and array subscripts; update BASH_COMMAND for subshells; fix potential file descriptor leak in here document pipes
This commit is contained in:
@@ -11018,3 +11018,31 @@ print_cmd.c
|
||||
----
|
||||
configure.ac
|
||||
- check for d_type member of struct dirent for future use
|
||||
|
||||
2/24
|
||||
----
|
||||
doc/bash.1,doc/bashref.texi
|
||||
- document the word expansions performed on indexed array subscripts
|
||||
and assoc array keys
|
||||
- document the possibility and effect of empty strings on arithmetic
|
||||
evaluation for substring expansion, arithmetic expansion, operands
|
||||
to the the [[ command's arithmetic operators, the expression in
|
||||
the (( compound command, and indexed array subscripts
|
||||
|
||||
2/24
|
||||
----
|
||||
execute_cmd.c
|
||||
- execute_command_internal: if executing a (...) subshell, make sure
|
||||
to update BASH_COMMAND before exiting on an error return from the
|
||||
subshell with -e set
|
||||
Report from Max Bowsher <maxbowsher@gmail.com>
|
||||
|
||||
3/3
|
||||
---
|
||||
redir.c
|
||||
- here_document_to_fd: if we are trying to use a pipe for a here
|
||||
document, but the F_GETPIPE_SZ fcntl returns a value shorter than
|
||||
the here document length, make sure to close the pipe file descriptors
|
||||
|
||||
builtins/ulimit.def
|
||||
- pipesize: use pathconf and _PC_PIPE_BUF if available
|
||||
|
||||
+16
-1
@@ -157,7 +157,9 @@ extern int errno;
|
||||
# define RLIMIT_FILESIZE 256
|
||||
#endif
|
||||
|
||||
#define RLIMIT_PIPESIZE 257
|
||||
#ifndef RLIMIT_PIPESIZE
|
||||
# define RLIMIT_PIPESIZE 257
|
||||
#endif
|
||||
|
||||
#ifdef RLIMIT_NOFILE
|
||||
# define RLIMIT_OPENFILES RLIMIT_NOFILE
|
||||
@@ -673,9 +675,22 @@ filesize (RLIMTYPE *valuep)
|
||||
#endif
|
||||
}
|
||||
|
||||
/* The longtime problem here is that PIPE_BUF has atomicity restrictions, and
|
||||
is not the true pipe capacity. Only a few systems can retrieve this at
|
||||
runtime. */
|
||||
static int
|
||||
pipesize (RLIMTYPE *valuep)
|
||||
{
|
||||
#if defined (HAVE_PATHCONF) && defined (_PC_PIPE_BUF)
|
||||
long r;
|
||||
|
||||
r = pathconf (".", _PC_PIPE_BUF);
|
||||
if (r >= 0)
|
||||
{
|
||||
*valuep = (RLIMTYPE) r;
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
#if defined (PIPE_BUF)
|
||||
/* This is defined on Posix systems. */
|
||||
*valuep = (RLIMTYPE) PIPE_BUF;
|
||||
|
||||
+1245
-1222
File diff suppressed because it is too large
Load Diff
+47
-12
@@ -5,7 +5,7 @@
|
||||
.\" Case Western Reserve University
|
||||
.\" chet.ramey@case.edu
|
||||
.\"
|
||||
.\" Last Change: Wed Jan 8 09:27:11 EST 2025
|
||||
.\" Last Change: Mon Feb 24 16:09:49 EST 2025
|
||||
.\"
|
||||
.\" For bash_builtins, strip all but "SHELL BUILTIN COMMANDS" section
|
||||
.\" For rbash, strip all but "RESTRICTED SHELL" section
|
||||
@@ -21,7 +21,7 @@
|
||||
.ds zY \" empty
|
||||
.if \n(zZ=1 .ig zZ
|
||||
.if \n(zY=1 .ig zY
|
||||
.TH BASH 1 "2025 January 8" "GNU Bash 5.3"
|
||||
.TH BASH 1 "2025 February 24" "GNU Bash 5.3"
|
||||
.\"
|
||||
.ie \n(.g \{\
|
||||
.ds ' \(aq
|
||||
@@ -774,6 +774,8 @@ as if it were within double quotes,
|
||||
but unescaped double quote characters
|
||||
in \fIexpression\fP are not treated
|
||||
specially and are removed.
|
||||
Since this can potentially result in empty strings, this command treats
|
||||
those as expressions that evaluate to 0.
|
||||
.TP
|
||||
\fB[[\fP \fIexpression\fP \fB]]\fP
|
||||
.PD
|
||||
@@ -3132,8 +3134,24 @@ and are zero-based;
|
||||
associative arrays are referenced using arbitrary strings.
|
||||
Unless otherwise noted, indexed array indices must be non-negative integers.
|
||||
.PP
|
||||
An indexed array is created automatically if any variable is assigned to
|
||||
using the syntax
|
||||
The shell performs
|
||||
parameter and variable expansion, arithmetic expansion,
|
||||
command substitution, and quote removal
|
||||
on indexed array subscripts.
|
||||
Since this
|
||||
can potentially result in empty strings,
|
||||
subscript indexing treats
|
||||
those as expressions that evaluate to 0.
|
||||
.PP
|
||||
The shell performs
|
||||
tilde expansion,
|
||||
parameter and variable expansion, arithmetic expansion,
|
||||
command substitution, and quote removal
|
||||
on associative array subscripts.
|
||||
Empty strings cannot be used as associative array keys.
|
||||
.PP
|
||||
\fBBash\fP automatically creates an indexed array
|
||||
if any variable is assigned to using the syntax
|
||||
.RS
|
||||
\fIname\fP[\fIsubscript\fP]=\fIvalue\fP
|
||||
\&.
|
||||
@@ -4177,6 +4195,10 @@ specially and are removed.
|
||||
All tokens in the expression undergo parameter and variable expansion,
|
||||
command substitution, and quote removal.
|
||||
The result is treated as the arithmetic expression to be evaluated.
|
||||
Since the way Bash handles double quotes
|
||||
can potentially result in empty strings,
|
||||
arithmetic expansion treats
|
||||
those as expressions that evaluate to 0.
|
||||
Arithmetic expansions may be nested.
|
||||
.PP
|
||||
The evaluation is performed according to the rules listed below under
|
||||
@@ -5601,6 +5623,13 @@ are evaluated as arithmetic expressions (see
|
||||
.SM
|
||||
.B "ARITHMETIC EVALUATION"
|
||||
above).
|
||||
Since the expansions the \fB[[\fP command performs on
|
||||
.I arg1
|
||||
and
|
||||
.I arg2
|
||||
can potentially result in empty strings,
|
||||
arithmetic expression evaluation treats
|
||||
those as expressions that evaluate to 0.
|
||||
.PD
|
||||
.SH "SIMPLE COMMAND EXPANSION"
|
||||
When the shell executes a simple command, it performs the following
|
||||
@@ -6145,6 +6174,9 @@ To facilitate the implementation of the user interface to job control,
|
||||
each process has a \fIprocess group ID\fP, and
|
||||
the operating system maintains the notion of a \fIcurrent terminal
|
||||
process group ID\fP.
|
||||
This terminal process group ID is associated with the
|
||||
\fIcontrolling terminal\fP.
|
||||
.PP
|
||||
Processes that have the same process group ID are said to be part of
|
||||
the same \fIprocess group\fP.
|
||||
Members of the \fIforeground\fP process group (processes whose
|
||||
@@ -6156,18 +6188,21 @@ Processes in the foreground process group are said to be
|
||||
.I foreground
|
||||
processes.
|
||||
.I Background
|
||||
processes are those whose process group ID differs from the terminal's;
|
||||
processes are those whose process group ID differs from the
|
||||
controlling terminal's;
|
||||
such processes are immune to keyboard-generated signals.
|
||||
Only foreground processes are allowed to read from or, if the
|
||||
user so specifies with
|
||||
Only foreground processes are allowed to read from or,
|
||||
if the user so specifies with
|
||||
.Q "stty tostop" ,
|
||||
write to the terminal.
|
||||
Background processes which attempt to read from (write to when
|
||||
.Q tostop
|
||||
is in effect) the terminal are sent a
|
||||
write to the controlling terminal.
|
||||
The system sends a
|
||||
.SM
|
||||
.B "SIGTTIN (SIGTTOU)"
|
||||
signal by the kernel's terminal driver,
|
||||
signal to background processes which attempt to
|
||||
read from (write to when
|
||||
.Q tostop
|
||||
is in effect)
|
||||
the terminal,
|
||||
which, unless caught, suspends the process.
|
||||
.PP
|
||||
If the operating system on which
|
||||
|
||||
+71
-23
@@ -3,7 +3,7 @@
|
||||
</HEAD>
|
||||
<BODY><TABLE WIDTH=100%>
|
||||
<TR>
|
||||
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2025 January 8<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2025 February 24<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
</TR>
|
||||
</TABLE>
|
||||
<BR><A HREF="#index">Index</A>
|
||||
@@ -1010,8 +1010,11 @@ otherwise the return status is 1.
|
||||
The <I>expression</I>
|
||||
undergoes the same expansions
|
||||
as if it were within double quotes,
|
||||
but double quote characters in <I>expression</I> are not treated
|
||||
but unescaped double quote characters
|
||||
in <I>expression</I> are not treated
|
||||
specially and are removed.
|
||||
Since this can potentially result in empty strings, this command treats
|
||||
those as expressions that evaluate to 0.
|
||||
<DT><B>[[</B> <I>expression</I> <B>]]</B><DD>
|
||||
|
||||
Evaluate the conditional expression <I>expression</I>
|
||||
@@ -1753,7 +1756,7 @@ below).
|
||||
A
|
||||
<I>variable</I>
|
||||
|
||||
may be assigned to by a statement of the form
|
||||
is assigned to using a statement of the form
|
||||
<DL COMPACT><DT><DD>
|
||||
<P>
|
||||
|
||||
@@ -3933,8 +3936,26 @@ associative arrays are referenced using arbitrary strings.
|
||||
Unless otherwise noted, indexed array indices must be non-negative integers.
|
||||
<P>
|
||||
|
||||
An indexed array is created automatically if any variable is assigned to
|
||||
using the syntax
|
||||
The shell performs
|
||||
parameter and variable expansion, arithmetic expansion,
|
||||
command substitution, and quote removal
|
||||
on indexed array subscripts.
|
||||
Since this
|
||||
can potentially result in empty strings,
|
||||
subscript indexing treats
|
||||
those as expressions that evaluate to 0.
|
||||
<P>
|
||||
|
||||
The shell performs
|
||||
tilde expansion,
|
||||
parameter and variable expansion, arithmetic expansion,
|
||||
command substitution, and quote removal
|
||||
on associative array subscripts.
|
||||
Empty strings cannot be used as associative array keys.
|
||||
<P>
|
||||
|
||||
<B>Bash</B> automatically creates an indexed array
|
||||
if any variable is assigned to using the syntax
|
||||
<DL COMPACT><DT><DD>
|
||||
<I>name</I>[<I>subscript</I>]=<I>value</I>
|
||||
.
|
||||
@@ -4283,7 +4304,7 @@ each generated term will contain the same number of digits,
|
||||
zero-padding where necessary.
|
||||
When letters are supplied, the expression expands to each character
|
||||
lexicographically between <I>x</I> and <I>y</I>, inclusive,
|
||||
using the default C locale.
|
||||
using the C locale.
|
||||
Note that both <I>x</I> and <I>y</I> must be of the same type
|
||||
(integer or letter).
|
||||
When the increment is supplied, it is used as the difference between
|
||||
@@ -4619,9 +4640,15 @@ starting at the character specified by <I>offset</I>.
|
||||
If <I>parameter</I> is <B>@</B> or <B>*</B>, an indexed array subscripted by
|
||||
<B>@</B> or <B>*</B>, or an associative array name, the results differ as
|
||||
described below.
|
||||
If <I>length</I> is omitted, expands to the substring of the value of
|
||||
If <B>:</B><I>length</I> is omitted (the first form above), this
|
||||
expands to the substring of the value of
|
||||
<I>parameter</I> starting at the character specified by <I>offset</I>
|
||||
and extending to the end of the value.
|
||||
If <I>offset</I> is omitted,
|
||||
it is treated as 0.
|
||||
If <I>length</I> is omitted,
|
||||
but the colon after <I>offset</I> is present,
|
||||
it is treated as 0.
|
||||
<I>length</I> and <I>offset</I> are arithmetic expressions (see
|
||||
<FONT SIZE=-1><B>ARITHMETIC EVALUATION</B>
|
||||
|
||||
@@ -5178,11 +5205,16 @@ The
|
||||
|
||||
undergoes the same expansions
|
||||
as if it were within double quotes,
|
||||
but double quote characters in <I>expression</I> are not treated specially
|
||||
and are removed.
|
||||
but unescaped double quote characters
|
||||
in <I>expression</I> are not treated
|
||||
specially and are removed.
|
||||
All tokens in the expression undergo parameter and variable expansion,
|
||||
command substitution, and quote removal.
|
||||
The result is treated as the arithmetic expression to be evaluated.
|
||||
Since the way Bash handles double quotes
|
||||
can potentially result in empty strings,
|
||||
arithmetic expansion treats
|
||||
those as expressions that evaluate to 0.
|
||||
Arithmetic expansions may be nested.
|
||||
<P>
|
||||
|
||||
@@ -7032,6 +7064,15 @@ are evaluated as arithmetic expressions (see
|
||||
|
||||
</FONT>
|
||||
above).
|
||||
Since the expansions the <B>[[</B> command performs on
|
||||
<I>arg1</I>
|
||||
|
||||
and
|
||||
<I>arg2</I>
|
||||
|
||||
can potentially result in empty strings,
|
||||
arithmetic expression evaluation treats
|
||||
those as expressions that evaluate to 0.
|
||||
|
||||
</DL>
|
||||
<A NAME="lbBY"> </A>
|
||||
@@ -7721,6 +7762,10 @@ To facilitate the implementation of the user interface to job control,
|
||||
each process has a <I>process group ID</I>, and
|
||||
the operating system maintains the notion of a <I>current terminal
|
||||
process group ID</I>.
|
||||
This terminal process group ID is associated with the
|
||||
<I>controlling terminal</I>.
|
||||
<P>
|
||||
|
||||
Processes that have the same process group ID are said to be part of
|
||||
the same <I>process group</I>.
|
||||
Members of the <I>foreground</I> process group (processes whose
|
||||
@@ -7735,19 +7780,22 @@ Processes in the foreground process group are said to be
|
||||
processes.
|
||||
<I>Background</I>
|
||||
|
||||
processes are those whose process group ID differs from the terminal's;
|
||||
processes are those whose process group ID differs from the
|
||||
controlling terminal's;
|
||||
such processes are immune to keyboard-generated signals.
|
||||
Only foreground processes are allowed to read from or, if the
|
||||
user so specifies with
|
||||
Only foreground processes are allowed to read from or,
|
||||
if the user so specifies with
|
||||
|
||||
write to the terminal.
|
||||
Background processes which attempt to read from (write to when
|
||||
|
||||
is in effect) the terminal are sent a
|
||||
write to the controlling terminal.
|
||||
The system sends a
|
||||
<FONT SIZE=-1><B>SIGTTIN (SIGTTOU)</B>
|
||||
|
||||
</FONT>
|
||||
signal by the kernel's terminal driver,
|
||||
signal to background processes which attempt to
|
||||
read from (write to when
|
||||
|
||||
is in effect)
|
||||
the terminal,
|
||||
which, unless caught, suspends the process.
|
||||
<P>
|
||||
|
||||
@@ -9451,7 +9499,7 @@ leaving the current line at the top of the screen.
|
||||
Clear the screen,
|
||||
then redraw the current line,
|
||||
leaving the current line at the top of the screen.
|
||||
With an argument, refresh the current line without clearing the
|
||||
With a numeric argument, refresh the current line without clearing the
|
||||
screen.
|
||||
<DT><B>redraw-current-line</B>
|
||||
|
||||
@@ -14133,7 +14181,7 @@ command that fails is part of the command list immediately following a
|
||||
or
|
||||
<B>until</B>
|
||||
|
||||
keyword,
|
||||
reserved word,
|
||||
part of the test following the
|
||||
<B>if</B>
|
||||
|
||||
@@ -15648,7 +15696,7 @@ command is part of the command list immediately following a
|
||||
or
|
||||
<B>until</B>
|
||||
|
||||
keyword,
|
||||
reserved word,
|
||||
part of the test in an
|
||||
<I>if</I>
|
||||
|
||||
@@ -16765,7 +16813,7 @@ Array variables may not (yet) be exported.
|
||||
<HR>
|
||||
<TABLE WIDTH=100%>
|
||||
<TR>
|
||||
<TH ALIGN=LEFT width=33%>GNU Bash 5.3<TH ALIGN=CENTER width=33%>2025 January 8<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
<TH ALIGN=LEFT width=33%>GNU Bash 5.3<TH ALIGN=CENTER width=33%>2025 February 24<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
</TR>
|
||||
</TABLE>
|
||||
<HR>
|
||||
@@ -16874,7 +16922,7 @@ Array variables may not (yet) be exported.
|
||||
<DT><A HREF="#lbDJ">BUGS</A><DD>
|
||||
</DL>
|
||||
<HR>
|
||||
This document was created by man2html from /usr/local/src/bash/bash-20250122/doc/bash.1.<BR>
|
||||
Time: 28 January 2025 09:45:18 EST
|
||||
This document was created by man2html from /usr/local/src/bash/bash-20250224/doc/bash.1.<BR>
|
||||
Time: 28 February 2025 11:12:41 EST
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
||||
+255
-201
@@ -1,9 +1,9 @@
|
||||
This is bash.info, produced by makeinfo version 7.1 from bashref.texi.
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.3, 8 January 2025).
|
||||
Bash shell (version 5.3, 24 February 2025).
|
||||
|
||||
This is Edition 5.3, last updated 8 January 2025, of ‘The GNU Bash
|
||||
This is Edition 5.3, last updated 24 February 2025, of ‘The GNU Bash
|
||||
Reference Manual’, for ‘Bash’, Version 5.3.
|
||||
|
||||
Copyright © 1988-2025 Free Software Foundation, Inc.
|
||||
@@ -26,10 +26,10 @@ Bash Features
|
||||
*************
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.3, 8 January 2025). The Bash home page is
|
||||
Bash shell (version 5.3, 24 February 2025). The Bash home page is
|
||||
<http://www.gnu.org/software/bash/>.
|
||||
|
||||
This is Edition 5.3, last updated 8 January 2025, of ‘The GNU Bash
|
||||
This is Edition 5.3, last updated 24 February 2025, of ‘The GNU Bash
|
||||
Reference Manual’, for ‘Bash’, Version 5.3.
|
||||
|
||||
Bash contains features that appear in other popular shells, and some
|
||||
@@ -992,8 +992,10 @@ File: bash.info, Node: Conditional Constructs, Next: Command Grouping, Prev:
|
||||
The arithmetic EXPRESSION is evaluated according to the rules
|
||||
described below (*note Shell Arithmetic::). The EXPRESSION
|
||||
undergoes the same expansions as if it were within double quotes,
|
||||
but double quote characters in EXPRESSION are not treated specially
|
||||
and are removed. If the value of the expression is non-zero, the
|
||||
but unescaped double quote characters in EXPRESSION are not treated
|
||||
specially and are removed. Since this can potentially result in
|
||||
empty strings, this command treats those as expressions that
|
||||
evaluate to 0. If the value of the expression is non-zero, the
|
||||
return status is 0; otherwise the return status is 1.
|
||||
|
||||
‘[[...]]’
|
||||
@@ -1489,7 +1491,7 @@ attributes.
|
||||
is a valid value. Once a variable is set, it may be unset only by using
|
||||
the ‘unset’ builtin command.
|
||||
|
||||
A variable may be assigned to by a statement of the form
|
||||
A variable is assigned to using a statement of the form
|
||||
NAME=[VALUE]
|
||||
If VALUE is not given, the variable is assigned the null string. All
|
||||
VALUEs undergo tilde expansion, parameter and variable expansion,
|
||||
@@ -1728,11 +1730,10 @@ integer. When integers are supplied, the expression expands to each
|
||||
number between X and Y, inclusive. If either X or Y begins with a zero,
|
||||
each generated term will contain the same number of digits, zero-padding
|
||||
where necessary. When letters are supplied, the expression expands to
|
||||
each character lexicographically between X and Y, inclusive, using the
|
||||
default C locale. Note that both X and Y must be of the same type
|
||||
(integer or letter). When the increment is supplied, it is used as the
|
||||
difference between each term. The default increment is 1 or -1 as
|
||||
appropriate.
|
||||
each character lexicographically between X and Y, inclusive, using the C
|
||||
locale. Note that both X and Y must be of the same type (integer or
|
||||
letter). When the increment is supplied, it is used as the difference
|
||||
between each term. The default increment is 1 or -1 as appropriate.
|
||||
|
||||
Brace expansion is performed before any other expansions, and any
|
||||
characters special to other expansions are preserved in the result. It
|
||||
@@ -1916,6 +1917,14 @@ omitted, the operator tests only for existence.
|
||||
$ echo $var
|
||||
DEFAULT
|
||||
$ var=
|
||||
$ : ${var=DEFAULT}
|
||||
$ echo $var
|
||||
|
||||
$ var=
|
||||
$ : ${var:=DEFAULT}
|
||||
$ echo $var
|
||||
DEFAULT
|
||||
$ unset var
|
||||
$ : ${var:=DEFAULT}
|
||||
$ echo $var
|
||||
DEFAULT
|
||||
@@ -1931,6 +1940,16 @@ omitted, the operator tests only for existence.
|
||||
$ var=
|
||||
$ : ${var:?var is unset or null}
|
||||
bash: var: var is unset or null
|
||||
$ echo ${var?var is unset}
|
||||
|
||||
$ unset var
|
||||
$ : ${var?var is unset}
|
||||
bash: var: var is unset
|
||||
$ : ${var:?var is unset or null}
|
||||
bash: var: var is unset or null
|
||||
$ var=123
|
||||
$ echo ${var:?var is unset or null}
|
||||
123
|
||||
|
||||
‘${PARAMETER:+WORD}’
|
||||
If PARAMETER is null or unset, nothing is substituted, otherwise
|
||||
@@ -1940,9 +1959,18 @@ omitted, the operator tests only for existence.
|
||||
$ var=123
|
||||
$ echo ${var:+var is set and not null}
|
||||
var is set and not null
|
||||
$ echo ${var+var is set}
|
||||
var is set
|
||||
$ var=
|
||||
$ echo ${var:+var is set and not null}
|
||||
|
||||
$ echo ${var+var is set}
|
||||
var is set
|
||||
$ unset var
|
||||
$ echo ${var+var is set}
|
||||
|
||||
$ echo ${var:+var is set and not null}
|
||||
|
||||
$
|
||||
|
||||
‘${PARAMETER:OFFSET}’
|
||||
@@ -1951,11 +1979,13 @@ omitted, the operator tests only for existence.
|
||||
LENGTH characters of the value of PARAMETER starting at the
|
||||
character specified by OFFSET. If PARAMETER is ‘@’ or ‘*’, an
|
||||
indexed array subscripted by ‘@’ or ‘*’, or an associative array
|
||||
name, the results differ as described below. If LENGTH is omitted,
|
||||
it expands to the substring of the value of PARAMETER starting at
|
||||
the character specified by OFFSET and extending to the end of the
|
||||
value. LENGTH and OFFSET are arithmetic expressions (*note Shell
|
||||
Arithmetic::).
|
||||
name, the results differ as described below. If :LENGTH is omitted
|
||||
(the first form above), this expands to the substring of the value
|
||||
of PARAMETER starting at the character specified by OFFSET and
|
||||
extending to the end of the value. If OFFSET is omitted, it is
|
||||
treated as 0. If LENGTH is omitted, but the colon after OFFSET is
|
||||
present, it is treated as 0. LENGTH and OFFSET are arithmetic
|
||||
expressions (*note Shell Arithmetic::).
|
||||
|
||||
If OFFSET evaluates to a number less than zero, the value is used
|
||||
as an offset in characters from the end of the value of PARAMETER.
|
||||
@@ -2398,11 +2428,13 @@ the result. The format for arithmetic expansion is:
|
||||
$(( EXPRESSION ))
|
||||
|
||||
The EXPRESSION undergoes the same expansions as if it were within
|
||||
double quotes, but double quote characters in EXPRESSION are not treated
|
||||
specially and are removed. All tokens in the expression undergo
|
||||
parameter and variable expansion, command substitution, and quote
|
||||
removal. The result is treated as the arithmetic expression to be
|
||||
evaluated. Arithmetic expansions may be nested.
|
||||
double quotes, but unescaped double quote characters in EXPRESSION are
|
||||
not treated specially and are removed. All tokens in the expression
|
||||
undergo parameter and variable expansion, command substitution, and
|
||||
quote removal. The result is treated as the arithmetic expression to be
|
||||
evaluated. Since the way Bash handles double quotes can potentially
|
||||
result in empty strings, arithmetic expansion treats those as
|
||||
expressions that evaluate to 0. Arithmetic expansions may be nested.
|
||||
|
||||
The evaluation is performed according to the rules listed below
|
||||
(*note Shell Arithmetic::). If the expression is invalid, Bash prints a
|
||||
@@ -3897,11 +3929,11 @@ standard.
|
||||
compound command returns a non-zero exit status, subject to the
|
||||
following conditions. The ‘ERR’ trap is not executed if the failed
|
||||
command is part of the command list immediately following an
|
||||
‘until’ or ‘while’ keyword, part of the test following the ‘if’ or
|
||||
‘elif’ reserved words, part of a command executed in a ‘&&’ or ‘||’
|
||||
list except the command following the final ‘&&’ or ‘||’, any
|
||||
command in a pipeline but the last, (subject to the state of the
|
||||
‘pipefail’ shell option), or if the command's return status is
|
||||
‘until’ or ‘while’ reserved word, part of the test following the
|
||||
‘if’ or ‘elif’ reserved words, part of a command executed in a ‘&&’
|
||||
or ‘||’ list except the command following the final ‘&&’ or ‘||’,
|
||||
any command in a pipeline but the last, (subject to the state of
|
||||
the ‘pipefail’ shell option), or if the command's return status is
|
||||
being inverted using ‘!’. These are the same conditions obeyed by
|
||||
the ‘errexit’ (‘-e’) option.
|
||||
|
||||
@@ -4856,9 +4888,9 @@ parameters, or to display the names and values of shell variables.
|
||||
a list (*note Lists::), or a compound command (*note Compound
|
||||
Commands::) returns a non-zero status. The shell does not
|
||||
exit if the command that fails is part of the command list
|
||||
immediately following a ‘while’ or ‘until’ keyword, part of
|
||||
the test in an ‘if’ statement, part of any command executed in
|
||||
a ‘&&’ or ‘||’ list except the command following the final
|
||||
immediately following a ‘while’ or ‘until’ reserved word, part
|
||||
of the test in an ‘if’ statement, part of any command executed
|
||||
in a ‘&&’ or ‘||’ list except the command following the final
|
||||
‘&&’ or ‘||’, any command in a pipeline but the last (subject
|
||||
to the state of the ‘pipefail’ shell option), or if the
|
||||
command's return status is being inverted with ‘!’. If a
|
||||
@@ -7001,7 +7033,10 @@ link itself.
|
||||
greater than or equal to ARG2, respectively. ARG1 and ARG2 may be
|
||||
positive or negative integers. When used with the ‘[[’ command,
|
||||
ARG1 and ARG2 are evaluated as arithmetic expressions (*note Shell
|
||||
Arithmetic::).
|
||||
Arithmetic::). Since the expansions the ‘[[’ command performs on
|
||||
ARG1 and ARG2 can potentially result in empty strings, arithmetic
|
||||
expression evaluation treats those as expressions that evaluate to
|
||||
0.
|
||||
|
||||
|
||||
File: bash.info, Node: Shell Arithmetic, Next: Aliases, Prev: Bash Conditional Expressions, Up: Bash Features
|
||||
@@ -7182,8 +7217,18 @@ expressions that must expand to an integer (*note Shell Arithmetic::))
|
||||
and are zero-based; associative arrays use arbitrary strings. Unless
|
||||
otherwise noted, indexed array indices must be non-negative integers.
|
||||
|
||||
An indexed array is created automatically if any variable is assigned
|
||||
to using the syntax
|
||||
The shell performs parameter and variable expansion, arithmetic
|
||||
expansion, command substitution, and quote removal on indexed array
|
||||
subscripts. Since this can potentially result in empty strings,
|
||||
subscript indexing treats those as expressions that evaluate to 0.
|
||||
|
||||
The shell performs tilde expansion, parameter and variable expansion,
|
||||
arithmetic expansion, command substitution, and quote removal on
|
||||
associative array subscripts. Empty strings cannot be used as
|
||||
associative array keys.
|
||||
|
||||
Bash automatically creates an indexed array if any variable is
|
||||
assigned to using the syntax
|
||||
NAME[SUBSCRIPT]=VALUE
|
||||
|
||||
The SUBSCRIPT is treated as an arithmetic expression that must evaluate
|
||||
@@ -7758,7 +7803,7 @@ startup files.
|
||||
double-quoted string, even if the ‘histexpand’ option is enabled.
|
||||
|
||||
31. When printing shell function definitions (e.g., by ‘type’), Bash
|
||||
does not print the ‘function’ keyword unless necessary.
|
||||
does not print the ‘function’ reserved word unless necessary.
|
||||
|
||||
32. Non-interactive shells exit if a syntax error in an arithmetic
|
||||
expansion results in an invalid expression.
|
||||
@@ -7867,72 +7912,77 @@ startup files.
|
||||
58. The ‘kill’ builtin does not accept signal names with a ‘SIG’
|
||||
prefix.
|
||||
|
||||
59. The ‘printf’ builtin uses ‘double’ (via ‘strtod’) to convert
|
||||
59. The ‘kill’ builtin returns a failure status if any of the pid or
|
||||
job arguments are invalid or if sending the specified signal to any
|
||||
of them fails. In default mode, ‘kill’ returns success if the
|
||||
signal was successfully sent to any of the specified processes.
|
||||
|
||||
60. The ‘printf’ builtin uses ‘double’ (via ‘strtod’) to convert
|
||||
arguments corresponding to floating point conversion specifiers,
|
||||
instead of ‘long double’ if it's available. The ‘L’ length
|
||||
modifier forces ‘printf’ to use ‘long double’ if it's available.
|
||||
|
||||
60. The ‘pwd’ builtin verifies that the value it prints is the same as
|
||||
61. The ‘pwd’ builtin verifies that the value it prints is the same as
|
||||
the current directory, even if it is not asked to check the file
|
||||
system with the ‘-P’ option.
|
||||
|
||||
61. The ‘read’ builtin may be interrupted by a signal for which a trap
|
||||
62. The ‘read’ builtin may be interrupted by a signal for which a trap
|
||||
has been set. If Bash receives a trapped signal while executing
|
||||
‘read’, the trap handler executes and ‘read’ returns an exit status
|
||||
greater than 128.
|
||||
|
||||
62. When the ‘set’ builtin is invoked without options, it does not
|
||||
63. When the ‘set’ builtin is invoked without options, it does not
|
||||
display shell function names and definitions.
|
||||
|
||||
63. When the ‘set’ builtin is invoked without options, it displays
|
||||
64. When the ‘set’ builtin is invoked without options, it displays
|
||||
variable values without quotes, unless they contain shell
|
||||
metacharacters, even if the result contains nonprinting characters.
|
||||
|
||||
64. The ‘test’ builtin compares strings using the current locale when
|
||||
65. The ‘test’ builtin compares strings using the current locale when
|
||||
evaluating the ‘<’ and ‘>’ binary operators.
|
||||
|
||||
65. The ‘test’ builtin's ‘-t’ unary primary requires an argument.
|
||||
66. The ‘test’ builtin's ‘-t’ unary primary requires an argument.
|
||||
Historical versions of ‘test’ made the argument optional in certain
|
||||
cases, and Bash attempts to accommodate those for backwards
|
||||
compatibility.
|
||||
|
||||
66. The ‘trap’ builtin displays signal names without the leading
|
||||
67. The ‘trap’ builtin displays signal names without the leading
|
||||
‘SIG’.
|
||||
|
||||
67. The ‘trap’ builtin doesn't check the first argument for a possible
|
||||
68. The ‘trap’ builtin doesn't check the first argument for a possible
|
||||
signal specification and revert the signal handling to the original
|
||||
disposition if it is, unless that argument consists solely of
|
||||
digits and is a valid signal number. If users want to reset the
|
||||
handler for a given signal to the original disposition, they should
|
||||
use ‘-’ as the first argument.
|
||||
|
||||
68. ‘trap -p’ without arguments displays signals whose dispositions
|
||||
69. ‘trap -p’ without arguments displays signals whose dispositions
|
||||
are set to SIG_DFL and those that were ignored when the shell
|
||||
started, not just trapped signals.
|
||||
|
||||
69. The ‘type’ and ‘command’ builtins will not report a non-executable
|
||||
70. The ‘type’ and ‘command’ builtins will not report a non-executable
|
||||
file as having been found, though the shell will attempt to execute
|
||||
such a file if it is the only so-named file found in ‘$PATH’.
|
||||
|
||||
70. The ‘ulimit’ builtin uses a block size of 512 bytes for the ‘-c’
|
||||
71. The ‘ulimit’ builtin uses a block size of 512 bytes for the ‘-c’
|
||||
and ‘-f’ options.
|
||||
|
||||
71. The ‘unset’ builtin with the ‘-v’ option specified returns a fatal
|
||||
72. The ‘unset’ builtin with the ‘-v’ option specified returns a fatal
|
||||
error if it attempts to unset a ‘readonly’ or ‘non-unsettable’
|
||||
variable, which causes a non-interactive shell to exit.
|
||||
|
||||
72. When asked to unset a variable that appears in an assignment
|
||||
73. When asked to unset a variable that appears in an assignment
|
||||
statement preceding the command, the ‘unset’ builtin attempts to
|
||||
unset a variable of the same name in the current or previous scope
|
||||
as well. This implements the required "if an assigned variable is
|
||||
further modified by the utility, the modifications made by the
|
||||
utility shall persist" behavior.
|
||||
|
||||
73. The arrival of ‘SIGCHLD’ when a trap is set on ‘SIGCHLD’ does not
|
||||
74. The arrival of ‘SIGCHLD’ when a trap is set on ‘SIGCHLD’ does not
|
||||
interrupt the ‘wait’ builtin and cause it to return immediately.
|
||||
The trap command is run once for each child that exits.
|
||||
|
||||
74. Bash removes an exited background process's status from the list
|
||||
75. Bash removes an exited background process's status from the list
|
||||
of such statuses after the ‘wait’ builtin returns it.
|
||||
|
||||
There is other POSIX behavior that Bash does not implement by default
|
||||
@@ -8158,19 +8208,22 @@ uses the JOB abstraction as the basis for job control.
|
||||
|
||||
To facilitate the implementation of the user interface to job
|
||||
control, each process has a “process group ID”, and the operating system
|
||||
maintains the notion of a current terminal process group ID. Processes
|
||||
that have the same process group ID are said to be part of the same
|
||||
“process group”. Members of the foreground process group (processes
|
||||
whose process group ID is equal to the current terminal process group
|
||||
ID) receive keyboard-generated signals such as ‘SIGINT’. Processes in
|
||||
the foreground process group are said to be foreground processes.
|
||||
Background processes are those whose process group ID differs from the
|
||||
terminal's; such processes are immune to keyboard-generated signals.
|
||||
Only foreground processes are allowed to read from or, if the user so
|
||||
specifies with ‘stty tostop’, write to the terminal. Background
|
||||
processes which attempt to read from (write to when ‘tostop’ is in
|
||||
effect) the terminal are sent a ‘SIGTTIN’ (‘SIGTTOU’) signal by the
|
||||
kernel's terminal driver, which, unless caught, suspends the process.
|
||||
maintains the notion of a current terminal process group ID. This
|
||||
terminal process group ID is associated with the “controlling terminal”.
|
||||
|
||||
Processes that have the same process group ID are said to be part of
|
||||
the same “process group”. Members of the foreground process group
|
||||
(processes whose process group ID is equal to the current terminal
|
||||
process group ID) receive keyboard-generated signals such as ‘SIGINT’.
|
||||
Processes in the foreground process group are said to be foreground
|
||||
processes. Background processes are those whose process group ID
|
||||
differs from the controlling terminal's; such processes are immune to
|
||||
keyboard-generated signals. Only foreground processes are allowed to
|
||||
read from or, if the user so specifies with ‘stty tostop’, write to the
|
||||
controlling terminal. The system sends a ‘SIGTTIN’ (‘SIGTTOU’) signal
|
||||
to background processes which attempt to read from (write to when
|
||||
‘tostop’ is in effect) the terminal, which, unless caught, suspends the
|
||||
process.
|
||||
|
||||
If the operating system on which Bash is running supports job
|
||||
control, Bash contains facilities to use it. Typing the “suspend”
|
||||
@@ -9560,7 +9613,8 @@ File: bash.info, Node: Commands For Moving, Next: Commands For History, Up: B
|
||||
|
||||
‘clear-screen (C-l)’
|
||||
Clear the screen, then redraw the current line, leaving the current
|
||||
line at the top of the screen.
|
||||
line at the top of the screen. If given a numeric argument, this
|
||||
refreshes the current line without clearing the screen.
|
||||
|
||||
‘redraw-current-line ()’
|
||||
Refresh the current line. By default, this is unbound.
|
||||
@@ -11890,8 +11944,8 @@ historical Bourne shell) as the baseline reference.
|
||||
• Bash implements command aliases and the ‘alias’ and ‘unalias’
|
||||
builtins (*note Aliases::).
|
||||
|
||||
• Bash implements the ‘!’ keyword to negate the return value of a
|
||||
pipeline (*note Pipelines::). This is very useful when an ‘if’
|
||||
• Bash implements the ‘!’ reserved word to negate the return value of
|
||||
a pipeline (*note Pipelines::). This is very useful when an ‘if’
|
||||
statement needs to act only if a test fails. The Bash ‘-o
|
||||
pipefail’ option to ‘set’ will cause a pipeline to return a failure
|
||||
status if any command fails (*note The Set Builtin::).
|
||||
@@ -12876,9 +12930,9 @@ D.2 Index of Shell Reserved Words
|
||||
|
||||
* !: Pipelines. (line 9)
|
||||
* [[: Conditional Constructs.
|
||||
(line 126)
|
||||
(line 128)
|
||||
* ]]: Conditional Constructs.
|
||||
(line 126)
|
||||
(line 128)
|
||||
* {: Command Grouping. (line 21)
|
||||
* }: Command Grouping. (line 21)
|
||||
* case: Conditional Constructs.
|
||||
@@ -13321,7 +13375,7 @@ D.4 Function Index
|
||||
* quoted-insert (C-q or C-v): Commands For Text. (line 28)
|
||||
* re-read-init-file (C-x C-r): Miscellaneous Commands.
|
||||
(line 6)
|
||||
* redraw-current-line (): Commands For Moving. (line 61)
|
||||
* redraw-current-line (): Commands For Moving. (line 62)
|
||||
* reverse-search-history (C-r): Commands For History.
|
||||
(line 29)
|
||||
* revert-line (M-r): Miscellaneous Commands.
|
||||
@@ -13544,138 +13598,138 @@ D.5 Concept Index
|
||||
|
||||
|
||||
Tag Table:
|
||||
Node: Top897
|
||||
Node: Introduction2834
|
||||
Node: What is Bash?3047
|
||||
Node: What is a shell?4180
|
||||
Node: Definitions6790
|
||||
Node: Basic Shell Features10117
|
||||
Node: Shell Syntax11341
|
||||
Node: Shell Operation12368
|
||||
Node: Quoting13659
|
||||
Node: Escape Character14997
|
||||
Node: Single Quotes15532
|
||||
Node: Double Quotes15881
|
||||
Node: ANSI-C Quoting17226
|
||||
Node: Locale Translation18620
|
||||
Node: Creating Internationalized Scripts20023
|
||||
Node: Comments24221
|
||||
Node: Shell Commands24988
|
||||
Node: Reserved Words25927
|
||||
Node: Simple Commands26792
|
||||
Node: Pipelines27454
|
||||
Node: Lists30710
|
||||
Node: Compound Commands32582
|
||||
Node: Looping Constructs33591
|
||||
Node: Conditional Constructs36110
|
||||
Node: Command Grouping51046
|
||||
Node: Coprocesses52538
|
||||
Node: GNU Parallel55224
|
||||
Node: Shell Functions56142
|
||||
Node: Shell Parameters64590
|
||||
Node: Positional Parameters69492
|
||||
Node: Special Parameters70582
|
||||
Node: Shell Expansions74043
|
||||
Node: Brace Expansion76232
|
||||
Node: Tilde Expansion79578
|
||||
Node: Shell Parameter Expansion82533
|
||||
Node: Command Substitution102341
|
||||
Node: Arithmetic Expansion105870
|
||||
Node: Process Substitution106884
|
||||
Node: Word Splitting107992
|
||||
Node: Filename Expansion110436
|
||||
Node: Pattern Matching113660
|
||||
Node: Quote Removal119383
|
||||
Node: Redirections119687
|
||||
Node: Executing Commands129950
|
||||
Node: Simple Command Expansion130617
|
||||
Node: Command Search and Execution132725
|
||||
Node: Command Execution Environment135169
|
||||
Node: Environment138617
|
||||
Node: Exit Status140520
|
||||
Node: Signals142578
|
||||
Node: Shell Scripts147507
|
||||
Node: Shell Builtin Commands150805
|
||||
Node: Bourne Shell Builtins152916
|
||||
Node: Bash Builtins179480
|
||||
Node: Modifying Shell Behavior216404
|
||||
Node: The Set Builtin216746
|
||||
Node: The Shopt Builtin228734
|
||||
Node: Special Builtins245786
|
||||
Node: Shell Variables246775
|
||||
Node: Bourne Shell Variables247209
|
||||
Node: Bash Variables249717
|
||||
Node: Bash Features288622
|
||||
Node: Invoking Bash289636
|
||||
Node: Bash Startup Files296220
|
||||
Node: Interactive Shells301462
|
||||
Node: What is an Interactive Shell?301870
|
||||
Node: Is this Shell Interactive?302532
|
||||
Node: Interactive Shell Behavior303356
|
||||
Node: Bash Conditional Expressions307117
|
||||
Node: Shell Arithmetic312328
|
||||
Node: Aliases315657
|
||||
Node: Arrays318791
|
||||
Node: The Directory Stack325883
|
||||
Node: Directory Stack Builtins326680
|
||||
Node: Controlling the Prompt331125
|
||||
Node: The Restricted Shell334010
|
||||
Node: Bash POSIX Mode336892
|
||||
Node: Shell Compatibility Mode354953
|
||||
Node: Job Control363960
|
||||
Node: Job Control Basics364417
|
||||
Node: Job Control Builtins370695
|
||||
Node: Job Control Variables377377
|
||||
Node: Command Line Editing378608
|
||||
Node: Introduction and Notation380311
|
||||
Node: Readline Interaction382663
|
||||
Node: Readline Bare Essentials383851
|
||||
Node: Readline Movement Commands385659
|
||||
Node: Readline Killing Commands386655
|
||||
Node: Readline Arguments388678
|
||||
Node: Searching389735
|
||||
Node: Readline Init File391978
|
||||
Node: Readline Init File Syntax393281
|
||||
Node: Conditional Init Constructs420106
|
||||
Node: Sample Init File424491
|
||||
Node: Bindable Readline Commands427611
|
||||
Node: Commands For Moving429149
|
||||
Node: Commands For History431517
|
||||
Node: Commands For Text436907
|
||||
Node: Commands For Killing441032
|
||||
Node: Numeric Arguments443820
|
||||
Node: Commands For Completion444972
|
||||
Node: Keyboard Macros450668
|
||||
Node: Miscellaneous Commands451369
|
||||
Node: Readline vi Mode457936
|
||||
Node: Programmable Completion458913
|
||||
Node: Programmable Completion Builtins467650
|
||||
Node: A Programmable Completion Example479387
|
||||
Node: Using History Interactively484732
|
||||
Node: Bash History Facilities485413
|
||||
Node: Bash History Builtins489148
|
||||
Node: History Interaction495619
|
||||
Node: Event Designators500569
|
||||
Node: Word Designators502147
|
||||
Node: Modifiers504539
|
||||
Node: Installing Bash506476
|
||||
Node: Basic Installation507592
|
||||
Node: Compilers and Options511468
|
||||
Node: Compiling For Multiple Architectures512218
|
||||
Node: Installation Names513971
|
||||
Node: Specifying the System Type516205
|
||||
Node: Sharing Defaults516951
|
||||
Node: Operation Controls517665
|
||||
Node: Optional Features518684
|
||||
Node: Reporting Bugs531064
|
||||
Node: Major Differences From The Bourne Shell532421
|
||||
Node: GNU Free Documentation License553841
|
||||
Node: Indexes579018
|
||||
Node: Builtin Index579469
|
||||
Node: Reserved Word Index586567
|
||||
Node: Variable Index589012
|
||||
Node: Function Index606425
|
||||
Node: Concept Index620420
|
||||
Node: Top901
|
||||
Node: Introduction2842
|
||||
Node: What is Bash?3055
|
||||
Node: What is a shell?4188
|
||||
Node: Definitions6798
|
||||
Node: Basic Shell Features10125
|
||||
Node: Shell Syntax11349
|
||||
Node: Shell Operation12376
|
||||
Node: Quoting13667
|
||||
Node: Escape Character15005
|
||||
Node: Single Quotes15540
|
||||
Node: Double Quotes15889
|
||||
Node: ANSI-C Quoting17234
|
||||
Node: Locale Translation18628
|
||||
Node: Creating Internationalized Scripts20031
|
||||
Node: Comments24229
|
||||
Node: Shell Commands24996
|
||||
Node: Reserved Words25935
|
||||
Node: Simple Commands26800
|
||||
Node: Pipelines27462
|
||||
Node: Lists30718
|
||||
Node: Compound Commands32590
|
||||
Node: Looping Constructs33599
|
||||
Node: Conditional Constructs36118
|
||||
Node: Command Grouping51188
|
||||
Node: Coprocesses52680
|
||||
Node: GNU Parallel55366
|
||||
Node: Shell Functions56284
|
||||
Node: Shell Parameters64732
|
||||
Node: Positional Parameters69633
|
||||
Node: Special Parameters70723
|
||||
Node: Shell Expansions74184
|
||||
Node: Brace Expansion76373
|
||||
Node: Tilde Expansion79711
|
||||
Node: Shell Parameter Expansion82666
|
||||
Node: Command Substitution103309
|
||||
Node: Arithmetic Expansion106838
|
||||
Node: Process Substitution108014
|
||||
Node: Word Splitting109122
|
||||
Node: Filename Expansion111566
|
||||
Node: Pattern Matching114790
|
||||
Node: Quote Removal120513
|
||||
Node: Redirections120817
|
||||
Node: Executing Commands131080
|
||||
Node: Simple Command Expansion131747
|
||||
Node: Command Search and Execution133855
|
||||
Node: Command Execution Environment136299
|
||||
Node: Environment139747
|
||||
Node: Exit Status141650
|
||||
Node: Signals143708
|
||||
Node: Shell Scripts148637
|
||||
Node: Shell Builtin Commands151935
|
||||
Node: Bourne Shell Builtins154046
|
||||
Node: Bash Builtins180616
|
||||
Node: Modifying Shell Behavior217540
|
||||
Node: The Set Builtin217882
|
||||
Node: The Shopt Builtin229876
|
||||
Node: Special Builtins246928
|
||||
Node: Shell Variables247917
|
||||
Node: Bourne Shell Variables248351
|
||||
Node: Bash Variables250859
|
||||
Node: Bash Features289764
|
||||
Node: Invoking Bash290778
|
||||
Node: Bash Startup Files297362
|
||||
Node: Interactive Shells302604
|
||||
Node: What is an Interactive Shell?303012
|
||||
Node: Is this Shell Interactive?303674
|
||||
Node: Interactive Shell Behavior304498
|
||||
Node: Bash Conditional Expressions308259
|
||||
Node: Shell Arithmetic313676
|
||||
Node: Aliases317005
|
||||
Node: Arrays320139
|
||||
Node: The Directory Stack327727
|
||||
Node: Directory Stack Builtins328524
|
||||
Node: Controlling the Prompt332969
|
||||
Node: The Restricted Shell335854
|
||||
Node: Bash POSIX Mode338736
|
||||
Node: Shell Compatibility Mode357093
|
||||
Node: Job Control366100
|
||||
Node: Job Control Basics366557
|
||||
Node: Job Control Builtins372925
|
||||
Node: Job Control Variables379607
|
||||
Node: Command Line Editing380838
|
||||
Node: Introduction and Notation382541
|
||||
Node: Readline Interaction384893
|
||||
Node: Readline Bare Essentials386081
|
||||
Node: Readline Movement Commands387889
|
||||
Node: Readline Killing Commands388885
|
||||
Node: Readline Arguments390908
|
||||
Node: Searching391965
|
||||
Node: Readline Init File394208
|
||||
Node: Readline Init File Syntax395511
|
||||
Node: Conditional Init Constructs422336
|
||||
Node: Sample Init File426721
|
||||
Node: Bindable Readline Commands429841
|
||||
Node: Commands For Moving431379
|
||||
Node: Commands For History433843
|
||||
Node: Commands For Text439233
|
||||
Node: Commands For Killing443358
|
||||
Node: Numeric Arguments446146
|
||||
Node: Commands For Completion447298
|
||||
Node: Keyboard Macros452994
|
||||
Node: Miscellaneous Commands453695
|
||||
Node: Readline vi Mode460262
|
||||
Node: Programmable Completion461239
|
||||
Node: Programmable Completion Builtins469976
|
||||
Node: A Programmable Completion Example481713
|
||||
Node: Using History Interactively487058
|
||||
Node: Bash History Facilities487739
|
||||
Node: Bash History Builtins491474
|
||||
Node: History Interaction497945
|
||||
Node: Event Designators502895
|
||||
Node: Word Designators504473
|
||||
Node: Modifiers506865
|
||||
Node: Installing Bash508802
|
||||
Node: Basic Installation509918
|
||||
Node: Compilers and Options513794
|
||||
Node: Compiling For Multiple Architectures514544
|
||||
Node: Installation Names516297
|
||||
Node: Specifying the System Type518531
|
||||
Node: Sharing Defaults519277
|
||||
Node: Operation Controls519991
|
||||
Node: Optional Features521010
|
||||
Node: Reporting Bugs533390
|
||||
Node: Major Differences From The Bourne Shell534747
|
||||
Node: GNU Free Documentation License556173
|
||||
Node: Indexes581350
|
||||
Node: Builtin Index581801
|
||||
Node: Reserved Word Index588899
|
||||
Node: Variable Index591344
|
||||
Node: Function Index608757
|
||||
Node: Concept Index622752
|
||||
|
||||
End Tag Table
|
||||
|
||||
|
||||
Binary file not shown.
+9052
-8964
File diff suppressed because it is too large
Load Diff
+98
-98
@@ -66,9 +66,9 @@
|
||||
@xrdef{Conditional Constructs-pg}{12}
|
||||
@xrdef{Command Grouping-title}{Grouping Commands}
|
||||
@xrdef{Command Grouping-snt}{Section@tie 3.2.5.3}
|
||||
@xrdef{Command Grouping-pg}{17}
|
||||
@xrdef{Coprocesses-title}{Coprocesses}
|
||||
@xrdef{Coprocesses-snt}{Section@tie 3.2.6}
|
||||
@xrdef{Command Grouping-pg}{18}
|
||||
@xrdef{Coprocesses-pg}{18}
|
||||
@xrdef{GNU Parallel-title}{GNU Parallel}
|
||||
@xrdef{GNU Parallel-snt}{Section@tie 3.2.7}
|
||||
@@ -99,91 +99,91 @@
|
||||
@xrdef{Shell Parameter Expansion-pg}{27}
|
||||
@xrdef{Command Substitution-title}{Command Substitution}
|
||||
@xrdef{Command Substitution-snt}{Section@tie 3.5.4}
|
||||
@xrdef{Command Substitution-pg}{35}
|
||||
@xrdef{Command Substitution-pg}{36}
|
||||
@xrdef{Arithmetic Expansion-title}{Arithmetic Expansion}
|
||||
@xrdef{Arithmetic Expansion-snt}{Section@tie 3.5.5}
|
||||
@xrdef{Process Substitution-title}{Process Substitution}
|
||||
@xrdef{Process Substitution-snt}{Section@tie 3.5.6}
|
||||
@xrdef{Arithmetic Expansion-pg}{36}
|
||||
@xrdef{Arithmetic Expansion-pg}{37}
|
||||
@xrdef{Process Substitution-pg}{37}
|
||||
@xrdef{Word Splitting-title}{Word Splitting}
|
||||
@xrdef{Word Splitting-snt}{Section@tie 3.5.7}
|
||||
@xrdef{Process Substitution-pg}{37}
|
||||
@xrdef{Word Splitting-pg}{37}
|
||||
@xrdef{Filename Expansion-title}{Filename Expansion}
|
||||
@xrdef{Filename Expansion-snt}{Section@tie 3.5.8}
|
||||
@xrdef{Word Splitting-pg}{38}
|
||||
@xrdef{Pattern Matching-title}{Pattern Matching}
|
||||
@xrdef{Pattern Matching-snt}{Section@tie 3.5.8.1}
|
||||
@xrdef{Filename Expansion-pg}{38}
|
||||
@xrdef{Pattern Matching-pg}{38}
|
||||
@xrdef{Filename Expansion-pg}{39}
|
||||
@xrdef{Pattern Matching-pg}{39}
|
||||
@xrdef{Quote Removal-title}{Quote Removal}
|
||||
@xrdef{Quote Removal-snt}{Section@tie 3.5.9}
|
||||
@xrdef{Redirections-title}{Redirections}
|
||||
@xrdef{Redirections-snt}{Section@tie 3.6}
|
||||
@xrdef{Quote Removal-pg}{40}
|
||||
@xrdef{Redirections-pg}{40}
|
||||
@xrdef{Quote Removal-pg}{41}
|
||||
@xrdef{Redirections-pg}{41}
|
||||
@xrdef{Executing Commands-title}{Executing Commands}
|
||||
@xrdef{Executing Commands-snt}{Section@tie 3.7}
|
||||
@xrdef{Simple Command Expansion-title}{Simple Command Expansion}
|
||||
@xrdef{Simple Command Expansion-snt}{Section@tie 3.7.1}
|
||||
@xrdef{Executing Commands-pg}{44}
|
||||
@xrdef{Simple Command Expansion-pg}{44}
|
||||
@xrdef{Executing Commands-pg}{45}
|
||||
@xrdef{Simple Command Expansion-pg}{45}
|
||||
@xrdef{Command Search and Execution-title}{Command Search and Execution}
|
||||
@xrdef{Command Search and Execution-snt}{Section@tie 3.7.2}
|
||||
@xrdef{Command Execution Environment-title}{Command Execution Environment}
|
||||
@xrdef{Command Execution Environment-snt}{Section@tie 3.7.3}
|
||||
@xrdef{Command Search and Execution-pg}{45}
|
||||
@xrdef{Command Execution Environment-pg}{45}
|
||||
@xrdef{Command Search and Execution-pg}{46}
|
||||
@xrdef{Command Execution Environment-pg}{46}
|
||||
@xrdef{Environment-title}{Environment}
|
||||
@xrdef{Environment-snt}{Section@tie 3.7.4}
|
||||
@xrdef{Environment-pg}{47}
|
||||
@xrdef{Exit Status-title}{Exit Status}
|
||||
@xrdef{Exit Status-snt}{Section@tie 3.7.5}
|
||||
@xrdef{Environment-pg}{47}
|
||||
@xrdef{Exit Status-pg}{47}
|
||||
@xrdef{Exit Status-pg}{48}
|
||||
@xrdef{Signals-title}{Signals}
|
||||
@xrdef{Signals-snt}{Section@tie 3.7.6}
|
||||
@xrdef{Signals-pg}{48}
|
||||
@xrdef{Signals-pg}{49}
|
||||
@xrdef{Shell Scripts-title}{Shell Scripts}
|
||||
@xrdef{Shell Scripts-snt}{Section@tie 3.8}
|
||||
@xrdef{Shell Scripts-pg}{49}
|
||||
@xrdef{Shell Scripts-pg}{50}
|
||||
@xrdef{Shell Builtin Commands-title}{Shell Builtin Commands}
|
||||
@xrdef{Shell Builtin Commands-snt}{Chapter@tie 4}
|
||||
@xrdef{Bourne Shell Builtins-title}{Bourne Shell Builtins}
|
||||
@xrdef{Bourne Shell Builtins-snt}{Section@tie 4.1}
|
||||
@xrdef{Shell Builtin Commands-pg}{51}
|
||||
@xrdef{Bourne Shell Builtins-pg}{51}
|
||||
@xrdef{Shell Builtin Commands-pg}{52}
|
||||
@xrdef{Bourne Shell Builtins-pg}{52}
|
||||
@xrdef{Bash Builtins-title}{Bash Builtin Commands}
|
||||
@xrdef{Bash Builtins-snt}{Section@tie 4.2}
|
||||
@xrdef{Bash Builtins-pg}{60}
|
||||
@xrdef{Bash Builtins-pg}{61}
|
||||
@xrdef{Modifying Shell Behavior-title}{Modifying Shell Behavior}
|
||||
@xrdef{Modifying Shell Behavior-snt}{Section@tie 4.3}
|
||||
@xrdef{The Set Builtin-title}{The Set Builtin}
|
||||
@xrdef{The Set Builtin-snt}{Section@tie 4.3.1}
|
||||
@xrdef{Modifying Shell Behavior-pg}{72}
|
||||
@xrdef{The Set Builtin-pg}{73}
|
||||
@xrdef{Modifying Shell Behavior-pg}{73}
|
||||
@xrdef{The Set Builtin-pg}{74}
|
||||
@xrdef{The Shopt Builtin-title}{The Shopt Builtin}
|
||||
@xrdef{The Shopt Builtin-snt}{Section@tie 4.3.2}
|
||||
@xrdef{The Shopt Builtin-pg}{77}
|
||||
@xrdef{The Shopt Builtin-pg}{78}
|
||||
@xrdef{Special Builtins-title}{Special Builtins}
|
||||
@xrdef{Special Builtins-snt}{Section@tie 4.4}
|
||||
@xrdef{Special Builtins-pg}{84}
|
||||
@xrdef{Special Builtins-pg}{85}
|
||||
@xrdef{Shell Variables-title}{Shell Variables}
|
||||
@xrdef{Shell Variables-snt}{Chapter@tie 5}
|
||||
@xrdef{Bourne Shell Variables-title}{Bourne Shell Variables}
|
||||
@xrdef{Bourne Shell Variables-snt}{Section@tie 5.1}
|
||||
@xrdef{Bash Variables-title}{Bash Variables}
|
||||
@xrdef{Bash Variables-snt}{Section@tie 5.2}
|
||||
@xrdef{Shell Variables-pg}{85}
|
||||
@xrdef{Bourne Shell Variables-pg}{85}
|
||||
@xrdef{Bash Variables-pg}{86}
|
||||
@xrdef{Shell Variables-pg}{86}
|
||||
@xrdef{Bourne Shell Variables-pg}{86}
|
||||
@xrdef{Bash Variables-pg}{87}
|
||||
@xrdef{Bash Features-title}{Bash Features}
|
||||
@xrdef{Bash Features-snt}{Chapter@tie 6}
|
||||
@xrdef{Invoking Bash-title}{Invoking Bash}
|
||||
@xrdef{Invoking Bash-snt}{Section@tie 6.1}
|
||||
@xrdef{Bash Features-pg}{99}
|
||||
@xrdef{Invoking Bash-pg}{99}
|
||||
@xrdef{Bash Features-pg}{100}
|
||||
@xrdef{Invoking Bash-pg}{100}
|
||||
@xrdef{Bash Startup Files-title}{Bash Startup Files}
|
||||
@xrdef{Bash Startup Files-snt}{Section@tie 6.2}
|
||||
@xrdef{Bash Startup Files-pg}{101}
|
||||
@xrdef{Bash Startup Files-pg}{102}
|
||||
@xrdef{Interactive Shells-title}{Interactive Shells}
|
||||
@xrdef{Interactive Shells-snt}{Section@tie 6.3}
|
||||
@xrdef{What is an Interactive Shell?-title}{What is an Interactive Shell?}
|
||||
@@ -192,199 +192,199 @@
|
||||
@xrdef{Is this Shell Interactive?-snt}{Section@tie 6.3.2}
|
||||
@xrdef{Interactive Shell Behavior-title}{Interactive Shell Behavior}
|
||||
@xrdef{Interactive Shell Behavior-snt}{Section@tie 6.3.3}
|
||||
@xrdef{Interactive Shells-pg}{103}
|
||||
@xrdef{What is an Interactive Shell?-pg}{103}
|
||||
@xrdef{Is this Shell Interactive?-pg}{103}
|
||||
@xrdef{Interactive Shell Behavior-pg}{103}
|
||||
@xrdef{Interactive Shells-pg}{104}
|
||||
@xrdef{What is an Interactive Shell?-pg}{104}
|
||||
@xrdef{Is this Shell Interactive?-pg}{104}
|
||||
@xrdef{Interactive Shell Behavior-pg}{104}
|
||||
@xrdef{Bash Conditional Expressions-title}{Bash Conditional Expressions}
|
||||
@xrdef{Bash Conditional Expressions-snt}{Section@tie 6.4}
|
||||
@xrdef{Bash Conditional Expressions-pg}{104}
|
||||
@xrdef{Bash Conditional Expressions-pg}{105}
|
||||
@xrdef{Shell Arithmetic-title}{Shell Arithmetic}
|
||||
@xrdef{Shell Arithmetic-snt}{Section@tie 6.5}
|
||||
@xrdef{Shell Arithmetic-pg}{106}
|
||||
@xrdef{Shell Arithmetic-pg}{107}
|
||||
@xrdef{Aliases-title}{Aliases}
|
||||
@xrdef{Aliases-snt}{Section@tie 6.6}
|
||||
@xrdef{Aliases-pg}{109}
|
||||
@xrdef{Arrays-title}{Arrays}
|
||||
@xrdef{Arrays-snt}{Section@tie 6.7}
|
||||
@xrdef{Aliases-pg}{108}
|
||||
@xrdef{Arrays-pg}{109}
|
||||
@xrdef{Arrays-pg}{110}
|
||||
@xrdef{The Directory Stack-title}{The Directory Stack}
|
||||
@xrdef{The Directory Stack-snt}{Section@tie 6.8}
|
||||
@xrdef{Directory Stack Builtins-title}{Directory Stack Builtins}
|
||||
@xrdef{Directory Stack Builtins-snt}{Section@tie 6.8.1}
|
||||
@xrdef{The Directory Stack-pg}{111}
|
||||
@xrdef{Directory Stack Builtins-pg}{111}
|
||||
@xrdef{The Directory Stack-pg}{112}
|
||||
@xrdef{Directory Stack Builtins-pg}{112}
|
||||
@xrdef{Controlling the Prompt-title}{Controlling the Prompt}
|
||||
@xrdef{Controlling the Prompt-snt}{Section@tie 6.9}
|
||||
@xrdef{Controlling the Prompt-pg}{112}
|
||||
@xrdef{Controlling the Prompt-pg}{114}
|
||||
@xrdef{The Restricted Shell-title}{The Restricted Shell}
|
||||
@xrdef{The Restricted Shell-snt}{Section@tie 6.10}
|
||||
@xrdef{The Restricted Shell-pg}{115}
|
||||
@xrdef{Bash POSIX Mode-title}{Bash and POSIX}
|
||||
@xrdef{Bash POSIX Mode-snt}{Section@tie 6.11}
|
||||
@xrdef{The Restricted Shell-pg}{114}
|
||||
@xrdef{Bash POSIX Mode-pg}{115}
|
||||
@xrdef{Bash POSIX Mode-pg}{116}
|
||||
@xrdef{Shell Compatibility Mode-title}{Shell Compatibility Mode}
|
||||
@xrdef{Shell Compatibility Mode-snt}{Section@tie 6.12}
|
||||
@xrdef{Shell Compatibility Mode-pg}{120}
|
||||
@xrdef{Shell Compatibility Mode-pg}{121}
|
||||
@xrdef{Job Control-title}{Job Control}
|
||||
@xrdef{Job Control-snt}{Chapter@tie 7}
|
||||
@xrdef{Job Control Basics-title}{Job Control Basics}
|
||||
@xrdef{Job Control Basics-snt}{Section@tie 7.1}
|
||||
@xrdef{Job Control-pg}{123}
|
||||
@xrdef{Job Control Basics-pg}{123}
|
||||
@xrdef{Job Control-pg}{125}
|
||||
@xrdef{Job Control Basics-pg}{125}
|
||||
@xrdef{Job Control Builtins-title}{Job Control Builtins}
|
||||
@xrdef{Job Control Builtins-snt}{Section@tie 7.2}
|
||||
@xrdef{Job Control Builtins-pg}{124}
|
||||
@xrdef{Job Control Builtins-pg}{126}
|
||||
@xrdef{Job Control Variables-title}{Job Control Variables}
|
||||
@xrdef{Job Control Variables-snt}{Section@tie 7.3}
|
||||
@xrdef{Job Control Variables-pg}{127}
|
||||
@xrdef{Job Control Variables-pg}{129}
|
||||
@xrdef{Command Line Editing-title}{Command Line Editing}
|
||||
@xrdef{Command Line Editing-snt}{Chapter@tie 8}
|
||||
@xrdef{Introduction and Notation-title}{Introduction to Line Editing}
|
||||
@xrdef{Introduction and Notation-snt}{Section@tie 8.1}
|
||||
@xrdef{Readline Interaction-title}{Readline Interaction}
|
||||
@xrdef{Readline Interaction-snt}{Section@tie 8.2}
|
||||
@xrdef{Command Line Editing-pg}{128}
|
||||
@xrdef{Introduction and Notation-pg}{128}
|
||||
@xrdef{Readline Interaction-pg}{128}
|
||||
@xrdef{Command Line Editing-pg}{130}
|
||||
@xrdef{Introduction and Notation-pg}{130}
|
||||
@xrdef{Readline Interaction-pg}{130}
|
||||
@xrdef{Readline Bare Essentials-title}{Readline Bare Essentials}
|
||||
@xrdef{Readline Bare Essentials-snt}{Section@tie 8.2.1}
|
||||
@xrdef{Readline Movement Commands-title}{Readline Movement Commands}
|
||||
@xrdef{Readline Movement Commands-snt}{Section@tie 8.2.2}
|
||||
@xrdef{Readline Bare Essentials-pg}{129}
|
||||
@xrdef{Readline Movement Commands-pg}{129}
|
||||
@xrdef{Readline Bare Essentials-pg}{131}
|
||||
@xrdef{Readline Movement Commands-pg}{131}
|
||||
@xrdef{Readline Killing Commands-title}{Readline Killing Commands}
|
||||
@xrdef{Readline Killing Commands-snt}{Section@tie 8.2.3}
|
||||
@xrdef{Readline Arguments-title}{Readline Arguments}
|
||||
@xrdef{Readline Arguments-snt}{Section@tie 8.2.4}
|
||||
@xrdef{Searching-title}{Searching for Commands in the History}
|
||||
@xrdef{Searching-snt}{Section@tie 8.2.5}
|
||||
@xrdef{Readline Killing Commands-pg}{130}
|
||||
@xrdef{Readline Arguments-pg}{130}
|
||||
@xrdef{Readline Killing Commands-pg}{132}
|
||||
@xrdef{Readline Arguments-pg}{132}
|
||||
@xrdef{Readline Init File-title}{Readline Init File}
|
||||
@xrdef{Readline Init File-snt}{Section@tie 8.3}
|
||||
@xrdef{Readline Init File Syntax-title}{Readline Init File Syntax}
|
||||
@xrdef{Readline Init File Syntax-snt}{Section@tie 8.3.1}
|
||||
@xrdef{Searching-pg}{131}
|
||||
@xrdef{Readline Init File-pg}{131}
|
||||
@xrdef{Readline Init File Syntax-pg}{131}
|
||||
@xrdef{Searching-pg}{133}
|
||||
@xrdef{Readline Init File-pg}{133}
|
||||
@xrdef{Readline Init File Syntax-pg}{133}
|
||||
@xrdef{Conditional Init Constructs-title}{Conditional Init Constructs}
|
||||
@xrdef{Conditional Init Constructs-snt}{Section@tie 8.3.2}
|
||||
@xrdef{Conditional Init Constructs-pg}{141}
|
||||
@xrdef{Conditional Init Constructs-pg}{143}
|
||||
@xrdef{Sample Init File-title}{Sample Init File}
|
||||
@xrdef{Sample Init File-snt}{Section@tie 8.3.3}
|
||||
@xrdef{Sample Init File-pg}{142}
|
||||
@xrdef{Sample Init File-pg}{144}
|
||||
@xrdef{Bindable Readline Commands-title}{Bindable Readline Commands}
|
||||
@xrdef{Bindable Readline Commands-snt}{Section@tie 8.4}
|
||||
@xrdef{Commands For Moving-title}{Commands For Moving}
|
||||
@xrdef{Commands For Moving-snt}{Section@tie 8.4.1}
|
||||
@xrdef{Bindable Readline Commands-pg}{145}
|
||||
@xrdef{Commands For Moving-pg}{145}
|
||||
@xrdef{Bindable Readline Commands-pg}{147}
|
||||
@xrdef{Commands For Moving-pg}{147}
|
||||
@xrdef{Commands For History-title}{Commands For Manipulating The History}
|
||||
@xrdef{Commands For History-snt}{Section@tie 8.4.2}
|
||||
@xrdef{Commands For History-pg}{146}
|
||||
@xrdef{Commands For History-pg}{148}
|
||||
@xrdef{Commands For Text-title}{Commands For Changing Text}
|
||||
@xrdef{Commands For Text-snt}{Section@tie 8.4.3}
|
||||
@xrdef{Commands For Text-pg}{148}
|
||||
@xrdef{Commands For Text-pg}{150}
|
||||
@xrdef{Commands For Killing-title}{Killing And Yanking}
|
||||
@xrdef{Commands For Killing-snt}{Section@tie 8.4.4}
|
||||
@xrdef{Commands For Killing-pg}{149}
|
||||
@xrdef{Commands For Killing-pg}{151}
|
||||
@xrdef{Numeric Arguments-title}{Specifying Numeric Arguments}
|
||||
@xrdef{Numeric Arguments-snt}{Section@tie 8.4.5}
|
||||
@xrdef{Commands For Completion-title}{Letting Readline Type For You}
|
||||
@xrdef{Commands For Completion-snt}{Section@tie 8.4.6}
|
||||
@xrdef{Numeric Arguments-pg}{151}
|
||||
@xrdef{Commands For Completion-pg}{151}
|
||||
@xrdef{Numeric Arguments-pg}{153}
|
||||
@xrdef{Commands For Completion-pg}{153}
|
||||
@xrdef{Keyboard Macros-title}{Keyboard Macros}
|
||||
@xrdef{Keyboard Macros-snt}{Section@tie 8.4.7}
|
||||
@xrdef{Miscellaneous Commands-title}{Some Miscellaneous Commands}
|
||||
@xrdef{Miscellaneous Commands-snt}{Section@tie 8.4.8}
|
||||
@xrdef{Keyboard Macros-pg}{153}
|
||||
@xrdef{Miscellaneous Commands-pg}{153}
|
||||
@xrdef{Keyboard Macros-pg}{155}
|
||||
@xrdef{Miscellaneous Commands-pg}{155}
|
||||
@xrdef{Readline vi Mode-title}{Readline vi Mode}
|
||||
@xrdef{Readline vi Mode-snt}{Section@tie 8.5}
|
||||
@xrdef{Programmable Completion-title}{Programmable Completion}
|
||||
@xrdef{Programmable Completion-snt}{Section@tie 8.6}
|
||||
@xrdef{Readline vi Mode-pg}{156}
|
||||
@xrdef{Programmable Completion-pg}{156}
|
||||
@xrdef{Readline vi Mode-pg}{158}
|
||||
@xrdef{Programmable Completion-pg}{158}
|
||||
@xrdef{Programmable Completion Builtins-title}{Programmable Completion Builtins}
|
||||
@xrdef{Programmable Completion Builtins-snt}{Section@tie 8.7}
|
||||
@xrdef{Programmable Completion Builtins-pg}{159}
|
||||
@xrdef{Programmable Completion Builtins-pg}{161}
|
||||
@xrdef{A Programmable Completion Example-title}{A Programmable Completion Example}
|
||||
@xrdef{A Programmable Completion Example-snt}{Section@tie 8.8}
|
||||
@xrdef{A Programmable Completion Example-pg}{163}
|
||||
@xrdef{A Programmable Completion Example-pg}{165}
|
||||
@xrdef{Using History Interactively-title}{Using History Interactively}
|
||||
@xrdef{Using History Interactively-snt}{Chapter@tie 9}
|
||||
@xrdef{Bash History Facilities-title}{Bash History Facilities}
|
||||
@xrdef{Bash History Facilities-snt}{Section@tie 9.1}
|
||||
@xrdef{Using History Interactively-pg}{166}
|
||||
@xrdef{Bash History Facilities-pg}{166}
|
||||
@xrdef{Using History Interactively-pg}{168}
|
||||
@xrdef{Bash History Facilities-pg}{168}
|
||||
@xrdef{Bash History Builtins-title}{Bash History Builtins}
|
||||
@xrdef{Bash History Builtins-snt}{Section@tie 9.2}
|
||||
@xrdef{Bash History Builtins-pg}{167}
|
||||
@xrdef{Bash History Builtins-pg}{169}
|
||||
@xrdef{History Interaction-title}{History Expansion}
|
||||
@xrdef{History Interaction-snt}{Section@tie 9.3}
|
||||
@xrdef{History Interaction-pg}{169}
|
||||
@xrdef{History Interaction-pg}{171}
|
||||
@xrdef{Event Designators-title}{Event Designators}
|
||||
@xrdef{Event Designators-snt}{Section@tie 9.3.1}
|
||||
@xrdef{Event Designators-pg}{170}
|
||||
@xrdef{Event Designators-pg}{172}
|
||||
@xrdef{Word Designators-title}{Word Designators}
|
||||
@xrdef{Word Designators-snt}{Section@tie 9.3.2}
|
||||
@xrdef{Modifiers-title}{Modifiers}
|
||||
@xrdef{Modifiers-snt}{Section@tie 9.3.3}
|
||||
@xrdef{Word Designators-pg}{171}
|
||||
@xrdef{Modifiers-pg}{172}
|
||||
@xrdef{Word Designators-pg}{173}
|
||||
@xrdef{Modifiers-pg}{174}
|
||||
@xrdef{Installing Bash-title}{Installing Bash}
|
||||
@xrdef{Installing Bash-snt}{Chapter@tie 10}
|
||||
@xrdef{Basic Installation-title}{Basic Installation}
|
||||
@xrdef{Basic Installation-snt}{Section@tie 10.1}
|
||||
@xrdef{Installing Bash-pg}{173}
|
||||
@xrdef{Basic Installation-pg}{173}
|
||||
@xrdef{Installing Bash-pg}{175}
|
||||
@xrdef{Basic Installation-pg}{175}
|
||||
@xrdef{Compilers and Options-title}{Compilers and Options}
|
||||
@xrdef{Compilers and Options-snt}{Section@tie 10.2}
|
||||
@xrdef{Compiling For Multiple Architectures-title}{Compiling For Multiple Architectures}
|
||||
@xrdef{Compiling For Multiple Architectures-snt}{Section@tie 10.3}
|
||||
@xrdef{Installation Names-title}{Installation Names}
|
||||
@xrdef{Installation Names-snt}{Section@tie 10.4}
|
||||
@xrdef{Compilers and Options-pg}{174}
|
||||
@xrdef{Compiling For Multiple Architectures-pg}{174}
|
||||
@xrdef{Compilers and Options-pg}{176}
|
||||
@xrdef{Compiling For Multiple Architectures-pg}{176}
|
||||
@xrdef{Specifying the System Type-title}{Specifying the System Type}
|
||||
@xrdef{Specifying the System Type-snt}{Section@tie 10.5}
|
||||
@xrdef{Sharing Defaults-title}{Sharing Defaults}
|
||||
@xrdef{Sharing Defaults-snt}{Section@tie 10.6}
|
||||
@xrdef{Operation Controls-title}{Operation Controls}
|
||||
@xrdef{Operation Controls-snt}{Section@tie 10.7}
|
||||
@xrdef{Installation Names-pg}{175}
|
||||
@xrdef{Specifying the System Type-pg}{175}
|
||||
@xrdef{Sharing Defaults-pg}{175}
|
||||
@xrdef{Installation Names-pg}{177}
|
||||
@xrdef{Specifying the System Type-pg}{177}
|
||||
@xrdef{Sharing Defaults-pg}{177}
|
||||
@xrdef{Optional Features-title}{Optional Features}
|
||||
@xrdef{Optional Features-snt}{Section@tie 10.8}
|
||||
@xrdef{Operation Controls-pg}{176}
|
||||
@xrdef{Optional Features-pg}{176}
|
||||
@xrdef{Operation Controls-pg}{178}
|
||||
@xrdef{Optional Features-pg}{178}
|
||||
@xrdef{Reporting Bugs-title}{Reporting Bugs}
|
||||
@xrdef{Reporting Bugs-snt}{Appendix@tie @char65{}}
|
||||
@xrdef{Reporting Bugs-pg}{182}
|
||||
@xrdef{Reporting Bugs-pg}{184}
|
||||
@xrdef{Major Differences From The Bourne Shell-title}{Major Differences From The Bourne Shell}
|
||||
@xrdef{Major Differences From The Bourne Shell-snt}{Appendix@tie @char66{}}
|
||||
@xrdef{Major Differences From The Bourne Shell-pg}{183}
|
||||
@xrdef{Major Differences From The Bourne Shell-pg}{185}
|
||||
@xrdef{GNU Free Documentation License-title}{GNU Free Documentation License}
|
||||
@xrdef{GNU Free Documentation License-snt}{Appendix@tie @char67{}}
|
||||
@xrdef{GNU Free Documentation License-pg}{190}
|
||||
@xrdef{GNU Free Documentation License-pg}{192}
|
||||
@xrdef{Indexes-title}{Indexes}
|
||||
@xrdef{Indexes-snt}{Appendix@tie @char68{}}
|
||||
@xrdef{Builtin Index-title}{Index of Shell Builtin Commands}
|
||||
@xrdef{Builtin Index-snt}{Section@tie @char68.1}
|
||||
@xrdef{Indexes-pg}{198}
|
||||
@xrdef{Builtin Index-pg}{198}
|
||||
@xrdef{Indexes-pg}{200}
|
||||
@xrdef{Builtin Index-pg}{200}
|
||||
@xrdef{Reserved Word Index-title}{Index of Shell Reserved Words}
|
||||
@xrdef{Reserved Word Index-snt}{Section@tie @char68.2}
|
||||
@xrdef{Variable Index-title}{Parameter and Variable Index}
|
||||
@xrdef{Variable Index-snt}{Section@tie @char68.3}
|
||||
@xrdef{Reserved Word Index-pg}{199}
|
||||
@xrdef{Variable Index-pg}{200}
|
||||
@xrdef{Reserved Word Index-pg}{201}
|
||||
@xrdef{Variable Index-pg}{202}
|
||||
@xrdef{Function Index-title}{Function Index}
|
||||
@xrdef{Function Index-snt}{Section@tie @char68.4}
|
||||
@xrdef{Function Index-pg}{202}
|
||||
@xrdef{Function Index-pg}{204}
|
||||
@xrdef{Concept Index-title}{Concept Index}
|
||||
@xrdef{Concept Index-snt}{Section@tie @char68.5}
|
||||
@xrdef{Concept Index-pg}{204}
|
||||
@xrdef{Concept Index-pg}{206}
|
||||
|
||||
+61
-61
@@ -1,61 +1,61 @@
|
||||
\entry{:}{51}{\code {:}}
|
||||
\entry{.}{51}{\code {.}}
|
||||
\entry{break}{52}{\code {break}}
|
||||
\entry{cd}{52}{\code {cd}}
|
||||
\entry{continue}{53}{\code {continue}}
|
||||
\entry{eval}{53}{\code {eval}}
|
||||
\entry{exec}{53}{\code {exec}}
|
||||
\entry{exit}{53}{\code {exit}}
|
||||
\entry{export}{53}{\code {export}}
|
||||
\entry{false}{54}{\code {false}}
|
||||
\entry{getopts}{54}{\code {getopts}}
|
||||
\entry{hash}{55}{\code {hash}}
|
||||
\entry{pwd}{55}{\code {pwd}}
|
||||
\entry{readonly}{55}{\code {readonly}}
|
||||
\entry{return}{56}{\code {return}}
|
||||
\entry{shift}{56}{\code {shift}}
|
||||
\entry{test}{56}{\code {test}}
|
||||
\entry{[}{56}{\code {[}}
|
||||
\entry{times}{58}{\code {times}}
|
||||
\entry{trap}{58}{\code {trap}}
|
||||
\entry{true}{59}{\code {true}}
|
||||
\entry{umask}{59}{\code {umask}}
|
||||
\entry{unset}{59}{\code {unset}}
|
||||
\entry{alias}{60}{\code {alias}}
|
||||
\entry{bind}{60}{\code {bind}}
|
||||
\entry{builtin}{62}{\code {builtin}}
|
||||
\entry{caller}{62}{\code {caller}}
|
||||
\entry{command}{62}{\code {command}}
|
||||
\entry{declare}{63}{\code {declare}}
|
||||
\entry{echo}{64}{\code {echo}}
|
||||
\entry{enable}{65}{\code {enable}}
|
||||
\entry{help}{66}{\code {help}}
|
||||
\entry{let}{66}{\code {let}}
|
||||
\entry{local}{66}{\code {local}}
|
||||
\entry{logout}{67}{\code {logout}}
|
||||
\entry{mapfile}{67}{\code {mapfile}}
|
||||
\entry{printf}{67}{\code {printf}}
|
||||
\entry{read}{68}{\code {read}}
|
||||
\entry{readarray}{70}{\code {readarray}}
|
||||
\entry{source}{70}{\code {source}}
|
||||
\entry{type}{70}{\code {type}}
|
||||
\entry{typeset}{71}{\code {typeset}}
|
||||
\entry{ulimit}{71}{\code {ulimit}}
|
||||
\entry{unalias}{72}{\code {unalias}}
|
||||
\entry{set}{73}{\code {set}}
|
||||
\entry{shopt}{77}{\code {shopt}}
|
||||
\entry{dirs}{111}{\code {dirs}}
|
||||
\entry{popd}{111}{\code {popd}}
|
||||
\entry{pushd}{112}{\code {pushd}}
|
||||
\entry{bg}{124}{\code {bg}}
|
||||
\entry{fg}{125}{\code {fg}}
|
||||
\entry{jobs}{125}{\code {jobs}}
|
||||
\entry{kill}{125}{\code {kill}}
|
||||
\entry{wait}{126}{\code {wait}}
|
||||
\entry{disown}{126}{\code {disown}}
|
||||
\entry{suspend}{126}{\code {suspend}}
|
||||
\entry{compgen}{159}{\code {compgen}}
|
||||
\entry{complete}{159}{\code {complete}}
|
||||
\entry{compopt}{162}{\code {compopt}}
|
||||
\entry{fc}{167}{\code {fc}}
|
||||
\entry{history}{167}{\code {history}}
|
||||
\entry{:}{52}{\code {:}}
|
||||
\entry{.}{52}{\code {.}}
|
||||
\entry{break}{53}{\code {break}}
|
||||
\entry{cd}{53}{\code {cd}}
|
||||
\entry{continue}{54}{\code {continue}}
|
||||
\entry{eval}{54}{\code {eval}}
|
||||
\entry{exec}{54}{\code {exec}}
|
||||
\entry{exit}{54}{\code {exit}}
|
||||
\entry{export}{54}{\code {export}}
|
||||
\entry{false}{55}{\code {false}}
|
||||
\entry{getopts}{55}{\code {getopts}}
|
||||
\entry{hash}{56}{\code {hash}}
|
||||
\entry{pwd}{56}{\code {pwd}}
|
||||
\entry{readonly}{56}{\code {readonly}}
|
||||
\entry{return}{57}{\code {return}}
|
||||
\entry{shift}{57}{\code {shift}}
|
||||
\entry{test}{57}{\code {test}}
|
||||
\entry{[}{57}{\code {[}}
|
||||
\entry{times}{59}{\code {times}}
|
||||
\entry{trap}{59}{\code {trap}}
|
||||
\entry{true}{60}{\code {true}}
|
||||
\entry{umask}{60}{\code {umask}}
|
||||
\entry{unset}{61}{\code {unset}}
|
||||
\entry{alias}{61}{\code {alias}}
|
||||
\entry{bind}{61}{\code {bind}}
|
||||
\entry{builtin}{63}{\code {builtin}}
|
||||
\entry{caller}{63}{\code {caller}}
|
||||
\entry{command}{63}{\code {command}}
|
||||
\entry{declare}{64}{\code {declare}}
|
||||
\entry{echo}{65}{\code {echo}}
|
||||
\entry{enable}{66}{\code {enable}}
|
||||
\entry{help}{67}{\code {help}}
|
||||
\entry{let}{67}{\code {let}}
|
||||
\entry{local}{67}{\code {local}}
|
||||
\entry{logout}{68}{\code {logout}}
|
||||
\entry{mapfile}{68}{\code {mapfile}}
|
||||
\entry{printf}{68}{\code {printf}}
|
||||
\entry{read}{69}{\code {read}}
|
||||
\entry{readarray}{71}{\code {readarray}}
|
||||
\entry{source}{71}{\code {source}}
|
||||
\entry{type}{71}{\code {type}}
|
||||
\entry{typeset}{72}{\code {typeset}}
|
||||
\entry{ulimit}{72}{\code {ulimit}}
|
||||
\entry{unalias}{73}{\code {unalias}}
|
||||
\entry{set}{74}{\code {set}}
|
||||
\entry{shopt}{78}{\code {shopt}}
|
||||
\entry{dirs}{112}{\code {dirs}}
|
||||
\entry{popd}{113}{\code {popd}}
|
||||
\entry{pushd}{113}{\code {pushd}}
|
||||
\entry{bg}{126}{\code {bg}}
|
||||
\entry{fg}{127}{\code {fg}}
|
||||
\entry{jobs}{127}{\code {jobs}}
|
||||
\entry{kill}{127}{\code {kill}}
|
||||
\entry{wait}{128}{\code {wait}}
|
||||
\entry{disown}{128}{\code {disown}}
|
||||
\entry{suspend}{128}{\code {suspend}}
|
||||
\entry{compgen}{161}{\code {compgen}}
|
||||
\entry{complete}{161}{\code {complete}}
|
||||
\entry{compopt}{164}{\code {compopt}}
|
||||
\entry{fc}{169}{\code {fc}}
|
||||
\entry{history}{169}{\code {history}}
|
||||
|
||||
+61
-61
@@ -1,82 +1,82 @@
|
||||
\initial {.}
|
||||
\entry{\code {.}}{51}
|
||||
\entry{\code {.}}{52}
|
||||
\initial {:}
|
||||
\entry{\code {:}}{51}
|
||||
\entry{\code {:}}{52}
|
||||
\initial {[}
|
||||
\entry{\code {[}}{56}
|
||||
\entry{\code {[}}{57}
|
||||
\initial {A}
|
||||
\entry{\code {alias}}{60}
|
||||
\entry{\code {alias}}{61}
|
||||
\initial {B}
|
||||
\entry{\code {bg}}{124}
|
||||
\entry{\code {bind}}{60}
|
||||
\entry{\code {break}}{52}
|
||||
\entry{\code {builtin}}{62}
|
||||
\entry{\code {bg}}{126}
|
||||
\entry{\code {bind}}{61}
|
||||
\entry{\code {break}}{53}
|
||||
\entry{\code {builtin}}{63}
|
||||
\initial {C}
|
||||
\entry{\code {caller}}{62}
|
||||
\entry{\code {cd}}{52}
|
||||
\entry{\code {command}}{62}
|
||||
\entry{\code {compgen}}{159}
|
||||
\entry{\code {complete}}{159}
|
||||
\entry{\code {compopt}}{162}
|
||||
\entry{\code {continue}}{53}
|
||||
\entry{\code {caller}}{63}
|
||||
\entry{\code {cd}}{53}
|
||||
\entry{\code {command}}{63}
|
||||
\entry{\code {compgen}}{161}
|
||||
\entry{\code {complete}}{161}
|
||||
\entry{\code {compopt}}{164}
|
||||
\entry{\code {continue}}{54}
|
||||
\initial {D}
|
||||
\entry{\code {declare}}{63}
|
||||
\entry{\code {dirs}}{111}
|
||||
\entry{\code {disown}}{126}
|
||||
\entry{\code {declare}}{64}
|
||||
\entry{\code {dirs}}{112}
|
||||
\entry{\code {disown}}{128}
|
||||
\initial {E}
|
||||
\entry{\code {echo}}{64}
|
||||
\entry{\code {enable}}{65}
|
||||
\entry{\code {eval}}{53}
|
||||
\entry{\code {exec}}{53}
|
||||
\entry{\code {exit}}{53}
|
||||
\entry{\code {export}}{53}
|
||||
\entry{\code {echo}}{65}
|
||||
\entry{\code {enable}}{66}
|
||||
\entry{\code {eval}}{54}
|
||||
\entry{\code {exec}}{54}
|
||||
\entry{\code {exit}}{54}
|
||||
\entry{\code {export}}{54}
|
||||
\initial {F}
|
||||
\entry{\code {false}}{54}
|
||||
\entry{\code {fc}}{167}
|
||||
\entry{\code {fg}}{125}
|
||||
\entry{\code {false}}{55}
|
||||
\entry{\code {fc}}{169}
|
||||
\entry{\code {fg}}{127}
|
||||
\initial {G}
|
||||
\entry{\code {getopts}}{54}
|
||||
\entry{\code {getopts}}{55}
|
||||
\initial {H}
|
||||
\entry{\code {hash}}{55}
|
||||
\entry{\code {help}}{66}
|
||||
\entry{\code {history}}{167}
|
||||
\entry{\code {hash}}{56}
|
||||
\entry{\code {help}}{67}
|
||||
\entry{\code {history}}{169}
|
||||
\initial {J}
|
||||
\entry{\code {jobs}}{125}
|
||||
\entry{\code {jobs}}{127}
|
||||
\initial {K}
|
||||
\entry{\code {kill}}{125}
|
||||
\entry{\code {kill}}{127}
|
||||
\initial {L}
|
||||
\entry{\code {let}}{66}
|
||||
\entry{\code {local}}{66}
|
||||
\entry{\code {logout}}{67}
|
||||
\entry{\code {let}}{67}
|
||||
\entry{\code {local}}{67}
|
||||
\entry{\code {logout}}{68}
|
||||
\initial {M}
|
||||
\entry{\code {mapfile}}{67}
|
||||
\entry{\code {mapfile}}{68}
|
||||
\initial {P}
|
||||
\entry{\code {popd}}{111}
|
||||
\entry{\code {printf}}{67}
|
||||
\entry{\code {pushd}}{112}
|
||||
\entry{\code {pwd}}{55}
|
||||
\entry{\code {popd}}{113}
|
||||
\entry{\code {printf}}{68}
|
||||
\entry{\code {pushd}}{113}
|
||||
\entry{\code {pwd}}{56}
|
||||
\initial {R}
|
||||
\entry{\code {read}}{68}
|
||||
\entry{\code {readarray}}{70}
|
||||
\entry{\code {readonly}}{55}
|
||||
\entry{\code {return}}{56}
|
||||
\entry{\code {read}}{69}
|
||||
\entry{\code {readarray}}{71}
|
||||
\entry{\code {readonly}}{56}
|
||||
\entry{\code {return}}{57}
|
||||
\initial {S}
|
||||
\entry{\code {set}}{73}
|
||||
\entry{\code {shift}}{56}
|
||||
\entry{\code {shopt}}{77}
|
||||
\entry{\code {source}}{70}
|
||||
\entry{\code {suspend}}{126}
|
||||
\entry{\code {set}}{74}
|
||||
\entry{\code {shift}}{57}
|
||||
\entry{\code {shopt}}{78}
|
||||
\entry{\code {source}}{71}
|
||||
\entry{\code {suspend}}{128}
|
||||
\initial {T}
|
||||
\entry{\code {test}}{56}
|
||||
\entry{\code {times}}{58}
|
||||
\entry{\code {trap}}{58}
|
||||
\entry{\code {true}}{59}
|
||||
\entry{\code {type}}{70}
|
||||
\entry{\code {typeset}}{71}
|
||||
\entry{\code {test}}{57}
|
||||
\entry{\code {times}}{59}
|
||||
\entry{\code {trap}}{59}
|
||||
\entry{\code {true}}{60}
|
||||
\entry{\code {type}}{71}
|
||||
\entry{\code {typeset}}{72}
|
||||
\initial {U}
|
||||
\entry{\code {ulimit}}{71}
|
||||
\entry{\code {umask}}{59}
|
||||
\entry{\code {unalias}}{72}
|
||||
\entry{\code {unset}}{59}
|
||||
\entry{\code {ulimit}}{72}
|
||||
\entry{\code {umask}}{60}
|
||||
\entry{\code {unalias}}{73}
|
||||
\entry{\code {unset}}{61}
|
||||
\initial {W}
|
||||
\entry{\code {wait}}{126}
|
||||
\entry{\code {wait}}{128}
|
||||
|
||||
+72
-72
@@ -39,7 +39,7 @@
|
||||
\entry{commands, compound}{11}{commands, compound}
|
||||
\entry{commands, looping}{12}{commands, looping}
|
||||
\entry{commands, conditional}{12}{commands, conditional}
|
||||
\entry{commands, grouping}{17}{commands, grouping}
|
||||
\entry{commands, grouping}{18}{commands, grouping}
|
||||
\entry{coprocess}{18}{coprocess}
|
||||
\entry{shell function}{19}{shell function}
|
||||
\entry{functions, shell}{19}{functions, shell}
|
||||
@@ -55,76 +55,76 @@
|
||||
\entry{expansion, tilde}{26}{expansion, tilde}
|
||||
\entry{parameter expansion}{27}{parameter expansion}
|
||||
\entry{expansion, parameter}{27}{expansion, parameter}
|
||||
\entry{command substitution}{35}{command substitution}
|
||||
\entry{expansion, arithmetic}{36}{expansion, arithmetic}
|
||||
\entry{arithmetic expansion}{36}{arithmetic expansion}
|
||||
\entry{command substitution}{36}{command substitution}
|
||||
\entry{expansion, arithmetic}{37}{expansion, arithmetic}
|
||||
\entry{arithmetic expansion}{37}{arithmetic expansion}
|
||||
\entry{process substitution}{37}{process substitution}
|
||||
\entry{word splitting}{37}{word splitting}
|
||||
\entry{expansion, filename}{38}{expansion, filename}
|
||||
\entry{expansion, pathname}{38}{expansion, pathname}
|
||||
\entry{filename expansion}{38}{filename expansion}
|
||||
\entry{pathname expansion}{38}{pathname expansion}
|
||||
\entry{pattern matching}{38}{pattern matching}
|
||||
\entry{matching, pattern}{38}{matching, pattern}
|
||||
\entry{redirection}{40}{redirection}
|
||||
\entry{command expansion}{44}{command expansion}
|
||||
\entry{command execution}{45}{command execution}
|
||||
\entry{command search}{45}{command search}
|
||||
\entry{execution environment}{45}{execution environment}
|
||||
\entry{word splitting}{38}{word splitting}
|
||||
\entry{expansion, filename}{39}{expansion, filename}
|
||||
\entry{expansion, pathname}{39}{expansion, pathname}
|
||||
\entry{filename expansion}{39}{filename expansion}
|
||||
\entry{pathname expansion}{39}{pathname expansion}
|
||||
\entry{pattern matching}{39}{pattern matching}
|
||||
\entry{matching, pattern}{39}{matching, pattern}
|
||||
\entry{redirection}{41}{redirection}
|
||||
\entry{command expansion}{45}{command expansion}
|
||||
\entry{command execution}{46}{command execution}
|
||||
\entry{command search}{46}{command search}
|
||||
\entry{execution environment}{46}{execution environment}
|
||||
\entry{environment}{47}{environment}
|
||||
\entry{exit status}{47}{exit status}
|
||||
\entry{signal handling}{48}{signal handling}
|
||||
\entry{shell script}{49}{shell script}
|
||||
\entry{special builtin}{84}{special builtin}
|
||||
\entry{login shell}{101}{login shell}
|
||||
\entry{interactive shell}{101}{interactive shell}
|
||||
\entry{startup files}{101}{startup files}
|
||||
\entry{interactive shell}{103}{interactive shell}
|
||||
\entry{shell, interactive}{103}{shell, interactive}
|
||||
\entry{expressions, conditional}{104}{expressions, conditional}
|
||||
\entry{arithmetic, shell}{106}{arithmetic, shell}
|
||||
\entry{shell arithmetic}{106}{shell arithmetic}
|
||||
\entry{expressions, arithmetic}{106}{expressions, arithmetic}
|
||||
\entry{evaluation, arithmetic}{106}{evaluation, arithmetic}
|
||||
\entry{arithmetic evaluation}{106}{arithmetic evaluation}
|
||||
\entry{arithmetic operators}{107}{arithmetic operators}
|
||||
\entry{unary arithmetic operators}{107}{unary arithmetic operators}
|
||||
\entry{binary arithmetic operators}{107}{binary arithmetic operators}
|
||||
\entry{conditional arithmetic operator}{107}{conditional arithmetic operator}
|
||||
\entry{bitwise arithmetic operators}{107}{bitwise arithmetic operators}
|
||||
\entry{alias expansion}{108}{alias expansion}
|
||||
\entry{arrays}{109}{arrays}
|
||||
\entry{directory stack}{111}{directory stack}
|
||||
\entry{prompting}{112}{prompting}
|
||||
\entry{restricted shell}{114}{restricted shell}
|
||||
\entry{POSIX description}{115}{POSIX description}
|
||||
\entry{POSIX Mode}{115}{POSIX Mode}
|
||||
\entry{Compatibility Level}{120}{Compatibility Level}
|
||||
\entry{Compatibility Mode}{120}{Compatibility Mode}
|
||||
\entry{job control}{123}{job control}
|
||||
\entry{foreground}{123}{foreground}
|
||||
\entry{background}{123}{background}
|
||||
\entry{suspending jobs}{123}{suspending jobs}
|
||||
\entry{Readline, how to use}{127}{Readline, how to use}
|
||||
\entry{interaction, readline}{128}{interaction, readline}
|
||||
\entry{notation, readline}{129}{notation, readline}
|
||||
\entry{command editing}{129}{command editing}
|
||||
\entry{editing command lines}{129}{editing command lines}
|
||||
\entry{killing text}{130}{killing text}
|
||||
\entry{yanking text}{130}{yanking text}
|
||||
\entry{kill ring}{130}{kill ring}
|
||||
\entry{initialization file, readline}{131}{initialization file, readline}
|
||||
\entry{variables, readline}{132}{variables, readline}
|
||||
\entry{programmable completion}{156}{programmable completion}
|
||||
\entry{completion builtins}{159}{completion builtins}
|
||||
\entry{History, how to use}{165}{History, how to use}
|
||||
\entry{command history}{166}{command history}
|
||||
\entry{history list}{166}{history list}
|
||||
\entry{history builtins}{167}{history builtins}
|
||||
\entry{history expansion}{169}{history expansion}
|
||||
\entry{event designators}{170}{event designators}
|
||||
\entry{history events}{170}{history events}
|
||||
\entry{installation}{173}{installation}
|
||||
\entry{configuration}{173}{configuration}
|
||||
\entry{Bash installation}{173}{Bash installation}
|
||||
\entry{Bash configuration}{173}{Bash configuration}
|
||||
\entry{exit status}{48}{exit status}
|
||||
\entry{signal handling}{49}{signal handling}
|
||||
\entry{shell script}{50}{shell script}
|
||||
\entry{special builtin}{85}{special builtin}
|
||||
\entry{login shell}{102}{login shell}
|
||||
\entry{interactive shell}{102}{interactive shell}
|
||||
\entry{startup files}{102}{startup files}
|
||||
\entry{interactive shell}{104}{interactive shell}
|
||||
\entry{shell, interactive}{104}{shell, interactive}
|
||||
\entry{expressions, conditional}{105}{expressions, conditional}
|
||||
\entry{arithmetic, shell}{107}{arithmetic, shell}
|
||||
\entry{shell arithmetic}{107}{shell arithmetic}
|
||||
\entry{expressions, arithmetic}{107}{expressions, arithmetic}
|
||||
\entry{evaluation, arithmetic}{107}{evaluation, arithmetic}
|
||||
\entry{arithmetic evaluation}{107}{arithmetic evaluation}
|
||||
\entry{arithmetic operators}{108}{arithmetic operators}
|
||||
\entry{unary arithmetic operators}{108}{unary arithmetic operators}
|
||||
\entry{binary arithmetic operators}{108}{binary arithmetic operators}
|
||||
\entry{conditional arithmetic operator}{108}{conditional arithmetic operator}
|
||||
\entry{bitwise arithmetic operators}{108}{bitwise arithmetic operators}
|
||||
\entry{alias expansion}{109}{alias expansion}
|
||||
\entry{arrays}{110}{arrays}
|
||||
\entry{directory stack}{112}{directory stack}
|
||||
\entry{prompting}{114}{prompting}
|
||||
\entry{restricted shell}{115}{restricted shell}
|
||||
\entry{POSIX description}{116}{POSIX description}
|
||||
\entry{POSIX Mode}{116}{POSIX Mode}
|
||||
\entry{Compatibility Level}{121}{Compatibility Level}
|
||||
\entry{Compatibility Mode}{121}{Compatibility Mode}
|
||||
\entry{job control}{125}{job control}
|
||||
\entry{foreground}{125}{foreground}
|
||||
\entry{background}{125}{background}
|
||||
\entry{suspending jobs}{125}{suspending jobs}
|
||||
\entry{Readline, how to use}{129}{Readline, how to use}
|
||||
\entry{interaction, readline}{130}{interaction, readline}
|
||||
\entry{notation, readline}{131}{notation, readline}
|
||||
\entry{command editing}{131}{command editing}
|
||||
\entry{editing command lines}{131}{editing command lines}
|
||||
\entry{killing text}{132}{killing text}
|
||||
\entry{yanking text}{132}{yanking text}
|
||||
\entry{kill ring}{132}{kill ring}
|
||||
\entry{initialization file, readline}{133}{initialization file, readline}
|
||||
\entry{variables, readline}{134}{variables, readline}
|
||||
\entry{programmable completion}{158}{programmable completion}
|
||||
\entry{completion builtins}{161}{completion builtins}
|
||||
\entry{History, how to use}{167}{History, how to use}
|
||||
\entry{command history}{168}{command history}
|
||||
\entry{history list}{168}{history list}
|
||||
\entry{history builtins}{169}{history builtins}
|
||||
\entry{history expansion}{171}{history expansion}
|
||||
\entry{event designators}{172}{event designators}
|
||||
\entry{history events}{172}{history events}
|
||||
\entry{installation}{175}{installation}
|
||||
\entry{configuration}{175}{configuration}
|
||||
\entry{Bash installation}{175}{Bash installation}
|
||||
\entry{Bash configuration}{175}{Bash configuration}
|
||||
|
||||
+71
-71
@@ -1,98 +1,98 @@
|
||||
\initial {A}
|
||||
\entry{alias expansion}{108}
|
||||
\entry{arithmetic evaluation}{106}
|
||||
\entry{arithmetic expansion}{36}
|
||||
\entry{arithmetic operators}{107}
|
||||
\entry{arithmetic, shell}{106}
|
||||
\entry{arrays}{109}
|
||||
\entry{alias expansion}{109}
|
||||
\entry{arithmetic evaluation}{107}
|
||||
\entry{arithmetic expansion}{37}
|
||||
\entry{arithmetic operators}{108}
|
||||
\entry{arithmetic, shell}{107}
|
||||
\entry{arrays}{110}
|
||||
\initial {B}
|
||||
\entry{background}{123}
|
||||
\entry{Bash configuration}{173}
|
||||
\entry{Bash installation}{173}
|
||||
\entry{binary arithmetic operators}{107}
|
||||
\entry{bitwise arithmetic operators}{107}
|
||||
\entry{background}{125}
|
||||
\entry{Bash configuration}{175}
|
||||
\entry{Bash installation}{175}
|
||||
\entry{binary arithmetic operators}{108}
|
||||
\entry{bitwise arithmetic operators}{108}
|
||||
\entry{Bourne shell}{5}
|
||||
\entry{brace expansion}{25}
|
||||
\entry{builtin}{3}
|
||||
\initial {C}
|
||||
\entry{command editing}{129}
|
||||
\entry{command execution}{45}
|
||||
\entry{command expansion}{44}
|
||||
\entry{command history}{166}
|
||||
\entry{command search}{45}
|
||||
\entry{command substitution}{35}
|
||||
\entry{command editing}{131}
|
||||
\entry{command execution}{46}
|
||||
\entry{command expansion}{45}
|
||||
\entry{command history}{168}
|
||||
\entry{command search}{46}
|
||||
\entry{command substitution}{36}
|
||||
\entry{command timing}{10}
|
||||
\entry{commands, compound}{11}
|
||||
\entry{commands, conditional}{12}
|
||||
\entry{commands, grouping}{17}
|
||||
\entry{commands, grouping}{18}
|
||||
\entry{commands, lists}{11}
|
||||
\entry{commands, looping}{12}
|
||||
\entry{commands, pipelines}{10}
|
||||
\entry{commands, shell}{9}
|
||||
\entry{commands, simple}{9}
|
||||
\entry{comments, shell}{9}
|
||||
\entry{Compatibility Level}{120}
|
||||
\entry{Compatibility Mode}{120}
|
||||
\entry{completion builtins}{159}
|
||||
\entry{conditional arithmetic operator}{107}
|
||||
\entry{configuration}{173}
|
||||
\entry{Compatibility Level}{121}
|
||||
\entry{Compatibility Mode}{121}
|
||||
\entry{completion builtins}{161}
|
||||
\entry{conditional arithmetic operator}{108}
|
||||
\entry{configuration}{175}
|
||||
\entry{control operator}{3}
|
||||
\entry{coprocess}{18}
|
||||
\initial {D}
|
||||
\entry{directory stack}{111}
|
||||
\entry{directory stack}{112}
|
||||
\entry{dollar-single quote quoting}{6}
|
||||
\initial {E}
|
||||
\entry{editing command lines}{129}
|
||||
\entry{editing command lines}{131}
|
||||
\entry{environment}{47}
|
||||
\entry{evaluation, arithmetic}{106}
|
||||
\entry{event designators}{170}
|
||||
\entry{execution environment}{45}
|
||||
\entry{exit status}{3, 47}
|
||||
\entry{evaluation, arithmetic}{107}
|
||||
\entry{event designators}{172}
|
||||
\entry{execution environment}{46}
|
||||
\entry{exit status}{3, 48}
|
||||
\entry{expansion}{24}
|
||||
\entry{expansion, arithmetic}{36}
|
||||
\entry{expansion, arithmetic}{37}
|
||||
\entry{expansion, brace}{25}
|
||||
\entry{expansion, filename}{38}
|
||||
\entry{expansion, filename}{39}
|
||||
\entry{expansion, parameter}{27}
|
||||
\entry{expansion, pathname}{38}
|
||||
\entry{expansion, pathname}{39}
|
||||
\entry{expansion, tilde}{26}
|
||||
\entry{expressions, arithmetic}{106}
|
||||
\entry{expressions, conditional}{104}
|
||||
\entry{expressions, arithmetic}{107}
|
||||
\entry{expressions, conditional}{105}
|
||||
\initial {F}
|
||||
\entry{field}{3}
|
||||
\entry{filename}{3}
|
||||
\entry{filename expansion}{38}
|
||||
\entry{foreground}{123}
|
||||
\entry{filename expansion}{39}
|
||||
\entry{foreground}{125}
|
||||
\entry{functions, shell}{19}
|
||||
\initial {H}
|
||||
\entry{history builtins}{167}
|
||||
\entry{history events}{170}
|
||||
\entry{history expansion}{169}
|
||||
\entry{history list}{166}
|
||||
\entry{History, how to use}{165}
|
||||
\entry{history builtins}{169}
|
||||
\entry{history events}{172}
|
||||
\entry{history expansion}{171}
|
||||
\entry{history list}{168}
|
||||
\entry{History, how to use}{167}
|
||||
\initial {I}
|
||||
\entry{identifier}{3}
|
||||
\entry{initialization file, readline}{131}
|
||||
\entry{installation}{173}
|
||||
\entry{interaction, readline}{128}
|
||||
\entry{interactive shell}{101, 103}
|
||||
\entry{initialization file, readline}{133}
|
||||
\entry{installation}{175}
|
||||
\entry{interaction, readline}{130}
|
||||
\entry{interactive shell}{102, 104}
|
||||
\entry{internationalization}{7}
|
||||
\entry{internationalized scripts}{8}
|
||||
\initial {J}
|
||||
\entry{job}{3}
|
||||
\entry{job control}{3, 123}
|
||||
\entry{job control}{3, 125}
|
||||
\initial {K}
|
||||
\entry{kill ring}{130}
|
||||
\entry{killing text}{130}
|
||||
\entry{kill ring}{132}
|
||||
\entry{killing text}{132}
|
||||
\initial {L}
|
||||
\entry{localization}{7}
|
||||
\entry{login shell}{101}
|
||||
\entry{login shell}{102}
|
||||
\initial {M}
|
||||
\entry{matching, pattern}{38}
|
||||
\entry{matching, pattern}{39}
|
||||
\entry{metacharacter}{3}
|
||||
\initial {N}
|
||||
\entry{name}{3}
|
||||
\entry{native languages}{7}
|
||||
\entry{notation, readline}{129}
|
||||
\entry{notation, readline}{131}
|
||||
\initial {O}
|
||||
\entry{operator, shell}{3}
|
||||
\initial {P}
|
||||
@@ -100,50 +100,50 @@
|
||||
\entry{parameters}{22}
|
||||
\entry{parameters, positional}{23}
|
||||
\entry{parameters, special}{23}
|
||||
\entry{pathname expansion}{38}
|
||||
\entry{pattern matching}{38}
|
||||
\entry{pathname expansion}{39}
|
||||
\entry{pattern matching}{39}
|
||||
\entry{pipeline}{10}
|
||||
\entry{POSIX}{3}
|
||||
\entry{POSIX description}{115}
|
||||
\entry{POSIX Mode}{115}
|
||||
\entry{POSIX description}{116}
|
||||
\entry{POSIX Mode}{116}
|
||||
\entry{process group}{3}
|
||||
\entry{process group ID}{3}
|
||||
\entry{process substitution}{37}
|
||||
\entry{programmable completion}{156}
|
||||
\entry{prompting}{112}
|
||||
\entry{programmable completion}{158}
|
||||
\entry{prompting}{114}
|
||||
\initial {Q}
|
||||
\entry{quoting}{6}
|
||||
\entry{quoting, ANSI}{6}
|
||||
\initial {R}
|
||||
\entry{Readline, how to use}{127}
|
||||
\entry{redirection}{40}
|
||||
\entry{Readline, how to use}{129}
|
||||
\entry{redirection}{41}
|
||||
\entry{reserved word}{4}
|
||||
\entry{reserved words}{9}
|
||||
\entry{restricted shell}{114}
|
||||
\entry{restricted shell}{115}
|
||||
\entry{return status}{4}
|
||||
\initial {S}
|
||||
\entry{shell arithmetic}{106}
|
||||
\entry{shell arithmetic}{107}
|
||||
\entry{shell function}{19}
|
||||
\entry{shell script}{49}
|
||||
\entry{shell script}{50}
|
||||
\entry{shell variable}{22}
|
||||
\entry{shell, interactive}{103}
|
||||
\entry{shell, interactive}{104}
|
||||
\entry{signal}{4}
|
||||
\entry{signal handling}{48}
|
||||
\entry{special builtin}{4, 84}
|
||||
\entry{startup files}{101}
|
||||
\entry{signal handling}{49}
|
||||
\entry{special builtin}{4, 85}
|
||||
\entry{startup files}{102}
|
||||
\entry{string translations}{8}
|
||||
\entry{suspending jobs}{123}
|
||||
\entry{suspending jobs}{125}
|
||||
\initial {T}
|
||||
\entry{tilde expansion}{26}
|
||||
\entry{token}{4}
|
||||
\entry{translation, native languages}{7}
|
||||
\initial {U}
|
||||
\entry{unary arithmetic operators}{107}
|
||||
\entry{unary arithmetic operators}{108}
|
||||
\initial {V}
|
||||
\entry{variable, shell}{22}
|
||||
\entry{variables, readline}{132}
|
||||
\entry{variables, readline}{134}
|
||||
\initial {W}
|
||||
\entry{word}{4}
|
||||
\entry{word splitting}{37}
|
||||
\entry{word splitting}{38}
|
||||
\initial {Y}
|
||||
\entry{yanking text}{130}
|
||||
\entry{yanking text}{132}
|
||||
|
||||
Binary file not shown.
+116
-116
@@ -1,116 +1,116 @@
|
||||
\entry{beginning-of-line (C-a)}{145}{\code {beginning-of-line (C-a)}}
|
||||
\entry{end-of-line (C-e)}{145}{\code {end-of-line (C-e)}}
|
||||
\entry{forward-char (C-f)}{145}{\code {forward-char (C-f)}}
|
||||
\entry{backward-char (C-b)}{145}{\code {backward-char (C-b)}}
|
||||
\entry{forward-word (M-f)}{145}{\code {forward-word (M-f)}}
|
||||
\entry{backward-word (M-b)}{145}{\code {backward-word (M-b)}}
|
||||
\entry{shell-forward-word (M-C-f)}{145}{\code {shell-forward-word (M-C-f)}}
|
||||
\entry{shell-backward-word (M-C-b)}{145}{\code {shell-backward-word (M-C-b)}}
|
||||
\entry{previous-screen-line ()}{146}{\code {previous-screen-line ()}}
|
||||
\entry{next-screen-line ()}{146}{\code {next-screen-line ()}}
|
||||
\entry{clear-display (M-C-l)}{146}{\code {clear-display (M-C-l)}}
|
||||
\entry{clear-screen (C-l)}{146}{\code {clear-screen (C-l)}}
|
||||
\entry{redraw-current-line ()}{146}{\code {redraw-current-line ()}}
|
||||
\entry{accept-line (Newline or Return)}{146}{\code {accept-line (Newline or Return)}}
|
||||
\entry{previous-history (C-p)}{146}{\code {previous-history (C-p)}}
|
||||
\entry{next-history (C-n)}{146}{\code {next-history (C-n)}}
|
||||
\entry{beginning-of-history (M-<)}{146}{\code {beginning-of-history (M-<)}}
|
||||
\entry{end-of-history (M->)}{146}{\code {end-of-history (M->)}}
|
||||
\entry{reverse-search-history (C-r)}{146}{\code {reverse-search-history (C-r)}}
|
||||
\entry{forward-search-history (C-s)}{146}{\code {forward-search-history (C-s)}}
|
||||
\entry{non-incremental-reverse-search-history (M-p)}{147}{\code {non-incremental-reverse-search-history (M-p)}}
|
||||
\entry{non-incremental-forward-search-history (M-n)}{147}{\code {non-incremental-forward-search-history (M-n)}}
|
||||
\entry{history-search-backward ()}{147}{\code {history-search-backward ()}}
|
||||
\entry{history-search-forward ()}{147}{\code {history-search-forward ()}}
|
||||
\entry{history-substring-search-backward ()}{147}{\code {history-substring-search-backward ()}}
|
||||
\entry{history-substring-search-forward ()}{147}{\code {history-substring-search-forward ()}}
|
||||
\entry{yank-nth-arg (M-C-y)}{147}{\code {yank-nth-arg (M-C-y)}}
|
||||
\entry{yank-last-arg (M-. or M-_)}{147}{\code {yank-last-arg (M-. or M-_)}}
|
||||
\entry{operate-and-get-next (C-o)}{148}{\code {operate-and-get-next (C-o)}}
|
||||
\entry{fetch-history ()}{148}{\code {fetch-history ()}}
|
||||
\entry{end-of-file (usually C-d)}{148}{\code {\i {end-of-file} (usually C-d)}}
|
||||
\entry{delete-char (C-d)}{148}{\code {delete-char (C-d)}}
|
||||
\entry{backward-delete-char (Rubout)}{148}{\code {backward-delete-char (Rubout)}}
|
||||
\entry{forward-backward-delete-char ()}{148}{\code {forward-backward-delete-char ()}}
|
||||
\entry{quoted-insert (C-q or C-v)}{148}{\code {quoted-insert (C-q or C-v)}}
|
||||
\entry{self-insert (a, b, A, 1, !, ...{})}{148}{\code {self-insert (a, b, A, 1, !, \dots {})}}
|
||||
\entry{bracketed-paste-begin ()}{148}{\code {bracketed-paste-begin ()}}
|
||||
\entry{transpose-chars (C-t)}{149}{\code {transpose-chars (C-t)}}
|
||||
\entry{transpose-words (M-t)}{149}{\code {transpose-words (M-t)}}
|
||||
\entry{shell-transpose-words (M-C-t)}{149}{\code {shell-transpose-words (M-C-t)}}
|
||||
\entry{upcase-word (M-u)}{149}{\code {upcase-word (M-u)}}
|
||||
\entry{downcase-word (M-l)}{149}{\code {downcase-word (M-l)}}
|
||||
\entry{capitalize-word (M-c)}{149}{\code {capitalize-word (M-c)}}
|
||||
\entry{overwrite-mode ()}{149}{\code {overwrite-mode ()}}
|
||||
\entry{kill-line (C-k)}{149}{\code {kill-line (C-k)}}
|
||||
\entry{backward-kill-line (C-x Rubout)}{149}{\code {backward-kill-line (C-x Rubout)}}
|
||||
\entry{unix-line-discard (C-u)}{149}{\code {unix-line-discard (C-u)}}
|
||||
\entry{kill-whole-line ()}{150}{\code {kill-whole-line ()}}
|
||||
\entry{kill-word (M-d)}{150}{\code {kill-word (M-d)}}
|
||||
\entry{backward-kill-word (M-DEL)}{150}{\code {backward-kill-word (M-\key {DEL})}}
|
||||
\entry{shell-kill-word (M-C-d)}{150}{\code {shell-kill-word (M-C-d)}}
|
||||
\entry{shell-backward-kill-word ()}{150}{\code {shell-backward-kill-word ()}}
|
||||
\entry{unix-word-rubout (C-w)}{150}{\code {unix-word-rubout (C-w)}}
|
||||
\entry{unix-filename-rubout ()}{150}{\code {unix-filename-rubout ()}}
|
||||
\entry{delete-horizontal-space ()}{150}{\code {delete-horizontal-space ()}}
|
||||
\entry{kill-region ()}{150}{\code {kill-region ()}}
|
||||
\entry{copy-region-as-kill ()}{150}{\code {copy-region-as-kill ()}}
|
||||
\entry{copy-backward-word ()}{150}{\code {copy-backward-word ()}}
|
||||
\entry{copy-forward-word ()}{150}{\code {copy-forward-word ()}}
|
||||
\entry{yank (C-y)}{150}{\code {yank (C-y)}}
|
||||
\entry{yank-pop (M-y)}{150}{\code {yank-pop (M-y)}}
|
||||
\entry{digit-argument (M-0, M-1, ...{} M--)}{151}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}
|
||||
\entry{universal-argument ()}{151}{\code {universal-argument ()}}
|
||||
\entry{complete (TAB)}{151}{\code {complete (\key {TAB})}}
|
||||
\entry{possible-completions (M-?)}{151}{\code {possible-completions (M-?)}}
|
||||
\entry{insert-completions (M-*)}{151}{\code {insert-completions (M-*)}}
|
||||
\entry{menu-complete ()}{151}{\code {menu-complete ()}}
|
||||
\entry{menu-complete-backward ()}{152}{\code {menu-complete-backward ()}}
|
||||
\entry{export-completions ()}{152}{\code {export-completions ()}}
|
||||
\entry{delete-char-or-list ()}{152}{\code {delete-char-or-list ()}}
|
||||
\entry{complete-filename (M-/)}{152}{\code {complete-filename (M-/)}}
|
||||
\entry{possible-filename-completions (C-x /)}{152}{\code {possible-filename-completions (C-x /)}}
|
||||
\entry{complete-username (M-~)}{152}{\code {complete-username (M-~)}}
|
||||
\entry{possible-username-completions (C-x ~)}{152}{\code {possible-username-completions (C-x ~)}}
|
||||
\entry{complete-variable (M-$)}{152}{\code {complete-variable (M-$)}}
|
||||
\entry{possible-variable-completions (C-x $)}{152}{\code {possible-variable-completions (C-x $)}}
|
||||
\entry{complete-hostname (M-@)}{152}{\code {complete-hostname (M-@)}}
|
||||
\entry{possible-hostname-completions (C-x @)}{153}{\code {possible-hostname-completions (C-x @)}}
|
||||
\entry{complete-command (M-!)}{153}{\code {complete-command (M-!)}}
|
||||
\entry{possible-command-completions (C-x !)}{153}{\code {possible-command-completions (C-x !)}}
|
||||
\entry{dynamic-complete-history (M-TAB)}{153}{\code {dynamic-complete-history (M-\key {TAB})}}
|
||||
\entry{dabbrev-expand ()}{153}{\code {dabbrev-expand ()}}
|
||||
\entry{complete-into-braces (M-{\indexlbrace })}{153}{\code {complete-into-braces (M-{\tt \char 123})}}
|
||||
\entry{start-kbd-macro (C-x ()}{153}{\code {start-kbd-macro (C-x ()}}
|
||||
\entry{end-kbd-macro (C-x ))}{153}{\code {end-kbd-macro (C-x ))}}
|
||||
\entry{call-last-kbd-macro (C-x e)}{153}{\code {call-last-kbd-macro (C-x e)}}
|
||||
\entry{print-last-kbd-macro ()}{153}{\code {print-last-kbd-macro ()}}
|
||||
\entry{re-read-init-file (C-x C-r)}{153}{\code {re-read-init-file (C-x C-r)}}
|
||||
\entry{abort (C-g)}{153}{\code {abort (C-g)}}
|
||||
\entry{do-lowercase-version (M-A, M-B, M-x, ...{})}{154}{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}
|
||||
\entry{prefix-meta (ESC)}{154}{\code {prefix-meta (\key {ESC})}}
|
||||
\entry{undo (C-_ or C-x C-u)}{154}{\code {undo (C-_ or C-x C-u)}}
|
||||
\entry{revert-line (M-r)}{154}{\code {revert-line (M-r)}}
|
||||
\entry{tilde-expand (M-&)}{154}{\code {tilde-expand (M-&)}}
|
||||
\entry{set-mark (C-@)}{154}{\code {set-mark (C-@)}}
|
||||
\entry{exchange-point-and-mark (C-x C-x)}{154}{\code {exchange-point-and-mark (C-x C-x)}}
|
||||
\entry{character-search (C-])}{154}{\code {character-search (C-])}}
|
||||
\entry{character-search-backward (M-C-])}{154}{\code {character-search-backward (M-C-])}}
|
||||
\entry{skip-csi-sequence ()}{154}{\code {skip-csi-sequence ()}}
|
||||
\entry{insert-comment (M-#)}{154}{\code {insert-comment (M-#)}}
|
||||
\entry{dump-functions ()}{155}{\code {dump-functions ()}}
|
||||
\entry{dump-variables ()}{155}{\code {dump-variables ()}}
|
||||
\entry{dump-macros ()}{155}{\code {dump-macros ()}}
|
||||
\entry{execute-named-command (M-x)}{155}{\code {execute-named-command (M-x)}}
|
||||
\entry{spell-correct-word (C-x s)}{155}{\code {spell-correct-word (C-x s)}}
|
||||
\entry{glob-complete-word (M-g)}{155}{\code {glob-complete-word (M-g)}}
|
||||
\entry{glob-expand-word (C-x *)}{155}{\code {glob-expand-word (C-x *)}}
|
||||
\entry{glob-list-expansions (C-x g)}{155}{\code {glob-list-expansions (C-x g)}}
|
||||
\entry{shell-expand-line (M-C-e)}{155}{\code {shell-expand-line (M-C-e)}}
|
||||
\entry{history-expand-line (M-^)}{155}{\code {history-expand-line (M-^)}}
|
||||
\entry{magic-space ()}{156}{\code {magic-space ()}}
|
||||
\entry{alias-expand-line ()}{156}{\code {alias-expand-line ()}}
|
||||
\entry{history-and-alias-expand-line ()}{156}{\code {history-and-alias-expand-line ()}}
|
||||
\entry{insert-last-argument (M-. or M-_)}{156}{\code {insert-last-argument (M-. or M-_)}}
|
||||
\entry{edit-and-execute-command (C-x C-e)}{156}{\code {edit-and-execute-command (C-x C-e)}}
|
||||
\entry{display-shell-version (C-x C-v)}{156}{\code {display-shell-version (C-x C-v)}}
|
||||
\entry{beginning-of-line (C-a)}{147}{\code {beginning-of-line (C-a)}}
|
||||
\entry{end-of-line (C-e)}{147}{\code {end-of-line (C-e)}}
|
||||
\entry{forward-char (C-f)}{147}{\code {forward-char (C-f)}}
|
||||
\entry{backward-char (C-b)}{147}{\code {backward-char (C-b)}}
|
||||
\entry{forward-word (M-f)}{147}{\code {forward-word (M-f)}}
|
||||
\entry{backward-word (M-b)}{147}{\code {backward-word (M-b)}}
|
||||
\entry{shell-forward-word (M-C-f)}{147}{\code {shell-forward-word (M-C-f)}}
|
||||
\entry{shell-backward-word (M-C-b)}{147}{\code {shell-backward-word (M-C-b)}}
|
||||
\entry{previous-screen-line ()}{148}{\code {previous-screen-line ()}}
|
||||
\entry{next-screen-line ()}{148}{\code {next-screen-line ()}}
|
||||
\entry{clear-display (M-C-l)}{148}{\code {clear-display (M-C-l)}}
|
||||
\entry{clear-screen (C-l)}{148}{\code {clear-screen (C-l)}}
|
||||
\entry{redraw-current-line ()}{148}{\code {redraw-current-line ()}}
|
||||
\entry{accept-line (Newline or Return)}{148}{\code {accept-line (Newline or Return)}}
|
||||
\entry{previous-history (C-p)}{148}{\code {previous-history (C-p)}}
|
||||
\entry{next-history (C-n)}{148}{\code {next-history (C-n)}}
|
||||
\entry{beginning-of-history (M-<)}{148}{\code {beginning-of-history (M-<)}}
|
||||
\entry{end-of-history (M->)}{148}{\code {end-of-history (M->)}}
|
||||
\entry{reverse-search-history (C-r)}{148}{\code {reverse-search-history (C-r)}}
|
||||
\entry{forward-search-history (C-s)}{149}{\code {forward-search-history (C-s)}}
|
||||
\entry{non-incremental-reverse-search-history (M-p)}{149}{\code {non-incremental-reverse-search-history (M-p)}}
|
||||
\entry{non-incremental-forward-search-history (M-n)}{149}{\code {non-incremental-forward-search-history (M-n)}}
|
||||
\entry{history-search-backward ()}{149}{\code {history-search-backward ()}}
|
||||
\entry{history-search-forward ()}{149}{\code {history-search-forward ()}}
|
||||
\entry{history-substring-search-backward ()}{149}{\code {history-substring-search-backward ()}}
|
||||
\entry{history-substring-search-forward ()}{149}{\code {history-substring-search-forward ()}}
|
||||
\entry{yank-nth-arg (M-C-y)}{149}{\code {yank-nth-arg (M-C-y)}}
|
||||
\entry{yank-last-arg (M-. or M-_)}{149}{\code {yank-last-arg (M-. or M-_)}}
|
||||
\entry{operate-and-get-next (C-o)}{150}{\code {operate-and-get-next (C-o)}}
|
||||
\entry{fetch-history ()}{150}{\code {fetch-history ()}}
|
||||
\entry{end-of-file (usually C-d)}{150}{\code {\i {end-of-file} (usually C-d)}}
|
||||
\entry{delete-char (C-d)}{150}{\code {delete-char (C-d)}}
|
||||
\entry{backward-delete-char (Rubout)}{150}{\code {backward-delete-char (Rubout)}}
|
||||
\entry{forward-backward-delete-char ()}{150}{\code {forward-backward-delete-char ()}}
|
||||
\entry{quoted-insert (C-q or C-v)}{150}{\code {quoted-insert (C-q or C-v)}}
|
||||
\entry{self-insert (a, b, A, 1, !, ...{})}{150}{\code {self-insert (a, b, A, 1, !, \dots {})}}
|
||||
\entry{bracketed-paste-begin ()}{150}{\code {bracketed-paste-begin ()}}
|
||||
\entry{transpose-chars (C-t)}{151}{\code {transpose-chars (C-t)}}
|
||||
\entry{transpose-words (M-t)}{151}{\code {transpose-words (M-t)}}
|
||||
\entry{shell-transpose-words (M-C-t)}{151}{\code {shell-transpose-words (M-C-t)}}
|
||||
\entry{upcase-word (M-u)}{151}{\code {upcase-word (M-u)}}
|
||||
\entry{downcase-word (M-l)}{151}{\code {downcase-word (M-l)}}
|
||||
\entry{capitalize-word (M-c)}{151}{\code {capitalize-word (M-c)}}
|
||||
\entry{overwrite-mode ()}{151}{\code {overwrite-mode ()}}
|
||||
\entry{kill-line (C-k)}{151}{\code {kill-line (C-k)}}
|
||||
\entry{backward-kill-line (C-x Rubout)}{152}{\code {backward-kill-line (C-x Rubout)}}
|
||||
\entry{unix-line-discard (C-u)}{152}{\code {unix-line-discard (C-u)}}
|
||||
\entry{kill-whole-line ()}{152}{\code {kill-whole-line ()}}
|
||||
\entry{kill-word (M-d)}{152}{\code {kill-word (M-d)}}
|
||||
\entry{backward-kill-word (M-DEL)}{152}{\code {backward-kill-word (M-\key {DEL})}}
|
||||
\entry{shell-kill-word (M-C-d)}{152}{\code {shell-kill-word (M-C-d)}}
|
||||
\entry{shell-backward-kill-word ()}{152}{\code {shell-backward-kill-word ()}}
|
||||
\entry{unix-word-rubout (C-w)}{152}{\code {unix-word-rubout (C-w)}}
|
||||
\entry{unix-filename-rubout ()}{152}{\code {unix-filename-rubout ()}}
|
||||
\entry{delete-horizontal-space ()}{152}{\code {delete-horizontal-space ()}}
|
||||
\entry{kill-region ()}{152}{\code {kill-region ()}}
|
||||
\entry{copy-region-as-kill ()}{152}{\code {copy-region-as-kill ()}}
|
||||
\entry{copy-backward-word ()}{152}{\code {copy-backward-word ()}}
|
||||
\entry{copy-forward-word ()}{152}{\code {copy-forward-word ()}}
|
||||
\entry{yank (C-y)}{152}{\code {yank (C-y)}}
|
||||
\entry{yank-pop (M-y)}{153}{\code {yank-pop (M-y)}}
|
||||
\entry{digit-argument (M-0, M-1, ...{} M--)}{153}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}
|
||||
\entry{universal-argument ()}{153}{\code {universal-argument ()}}
|
||||
\entry{complete (TAB)}{153}{\code {complete (\key {TAB})}}
|
||||
\entry{possible-completions (M-?)}{153}{\code {possible-completions (M-?)}}
|
||||
\entry{insert-completions (M-*)}{153}{\code {insert-completions (M-*)}}
|
||||
\entry{menu-complete ()}{153}{\code {menu-complete ()}}
|
||||
\entry{menu-complete-backward ()}{154}{\code {menu-complete-backward ()}}
|
||||
\entry{export-completions ()}{154}{\code {export-completions ()}}
|
||||
\entry{delete-char-or-list ()}{154}{\code {delete-char-or-list ()}}
|
||||
\entry{complete-filename (M-/)}{154}{\code {complete-filename (M-/)}}
|
||||
\entry{possible-filename-completions (C-x /)}{154}{\code {possible-filename-completions (C-x /)}}
|
||||
\entry{complete-username (M-~)}{154}{\code {complete-username (M-~)}}
|
||||
\entry{possible-username-completions (C-x ~)}{154}{\code {possible-username-completions (C-x ~)}}
|
||||
\entry{complete-variable (M-$)}{154}{\code {complete-variable (M-$)}}
|
||||
\entry{possible-variable-completions (C-x $)}{154}{\code {possible-variable-completions (C-x $)}}
|
||||
\entry{complete-hostname (M-@)}{154}{\code {complete-hostname (M-@)}}
|
||||
\entry{possible-hostname-completions (C-x @)}{155}{\code {possible-hostname-completions (C-x @)}}
|
||||
\entry{complete-command (M-!)}{155}{\code {complete-command (M-!)}}
|
||||
\entry{possible-command-completions (C-x !)}{155}{\code {possible-command-completions (C-x !)}}
|
||||
\entry{dynamic-complete-history (M-TAB)}{155}{\code {dynamic-complete-history (M-\key {TAB})}}
|
||||
\entry{dabbrev-expand ()}{155}{\code {dabbrev-expand ()}}
|
||||
\entry{complete-into-braces (M-{\indexlbrace })}{155}{\code {complete-into-braces (M-{\tt \char 123})}}
|
||||
\entry{start-kbd-macro (C-x ()}{155}{\code {start-kbd-macro (C-x ()}}
|
||||
\entry{end-kbd-macro (C-x ))}{155}{\code {end-kbd-macro (C-x ))}}
|
||||
\entry{call-last-kbd-macro (C-x e)}{155}{\code {call-last-kbd-macro (C-x e)}}
|
||||
\entry{print-last-kbd-macro ()}{155}{\code {print-last-kbd-macro ()}}
|
||||
\entry{re-read-init-file (C-x C-r)}{155}{\code {re-read-init-file (C-x C-r)}}
|
||||
\entry{abort (C-g)}{155}{\code {abort (C-g)}}
|
||||
\entry{do-lowercase-version (M-A, M-B, M-x, ...{})}{156}{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}
|
||||
\entry{prefix-meta (ESC)}{156}{\code {prefix-meta (\key {ESC})}}
|
||||
\entry{undo (C-_ or C-x C-u)}{156}{\code {undo (C-_ or C-x C-u)}}
|
||||
\entry{revert-line (M-r)}{156}{\code {revert-line (M-r)}}
|
||||
\entry{tilde-expand (M-&)}{156}{\code {tilde-expand (M-&)}}
|
||||
\entry{set-mark (C-@)}{156}{\code {set-mark (C-@)}}
|
||||
\entry{exchange-point-and-mark (C-x C-x)}{156}{\code {exchange-point-and-mark (C-x C-x)}}
|
||||
\entry{character-search (C-])}{156}{\code {character-search (C-])}}
|
||||
\entry{character-search-backward (M-C-])}{156}{\code {character-search-backward (M-C-])}}
|
||||
\entry{skip-csi-sequence ()}{156}{\code {skip-csi-sequence ()}}
|
||||
\entry{insert-comment (M-#)}{156}{\code {insert-comment (M-#)}}
|
||||
\entry{dump-functions ()}{157}{\code {dump-functions ()}}
|
||||
\entry{dump-variables ()}{157}{\code {dump-variables ()}}
|
||||
\entry{dump-macros ()}{157}{\code {dump-macros ()}}
|
||||
\entry{execute-named-command (M-x)}{157}{\code {execute-named-command (M-x)}}
|
||||
\entry{spell-correct-word (C-x s)}{157}{\code {spell-correct-word (C-x s)}}
|
||||
\entry{glob-complete-word (M-g)}{157}{\code {glob-complete-word (M-g)}}
|
||||
\entry{glob-expand-word (C-x *)}{157}{\code {glob-expand-word (C-x *)}}
|
||||
\entry{glob-list-expansions (C-x g)}{157}{\code {glob-list-expansions (C-x g)}}
|
||||
\entry{shell-expand-line (M-C-e)}{157}{\code {shell-expand-line (M-C-e)}}
|
||||
\entry{history-expand-line (M-^)}{157}{\code {history-expand-line (M-^)}}
|
||||
\entry{magic-space ()}{158}{\code {magic-space ()}}
|
||||
\entry{alias-expand-line ()}{158}{\code {alias-expand-line ()}}
|
||||
\entry{history-and-alias-expand-line ()}{158}{\code {history-and-alias-expand-line ()}}
|
||||
\entry{insert-last-argument (M-. or M-_)}{158}{\code {insert-last-argument (M-. or M-_)}}
|
||||
\entry{edit-and-execute-command (C-x C-e)}{158}{\code {edit-and-execute-command (C-x C-e)}}
|
||||
\entry{display-shell-version (C-x C-v)}{158}{\code {display-shell-version (C-x C-v)}}
|
||||
|
||||
+116
-116
@@ -1,136 +1,136 @@
|
||||
\initial {A}
|
||||
\entry{\code {abort (C-g)}}{153}
|
||||
\entry{\code {accept-line (Newline or Return)}}{146}
|
||||
\entry{\code {alias-expand-line ()}}{156}
|
||||
\entry{\code {abort (C-g)}}{155}
|
||||
\entry{\code {accept-line (Newline or Return)}}{148}
|
||||
\entry{\code {alias-expand-line ()}}{158}
|
||||
\initial {B}
|
||||
\entry{\code {backward-char (C-b)}}{145}
|
||||
\entry{\code {backward-delete-char (Rubout)}}{148}
|
||||
\entry{\code {backward-kill-line (C-x Rubout)}}{149}
|
||||
\entry{\code {backward-kill-word (M-\key {DEL})}}{150}
|
||||
\entry{\code {backward-word (M-b)}}{145}
|
||||
\entry{\code {beginning-of-history (M-<)}}{146}
|
||||
\entry{\code {beginning-of-line (C-a)}}{145}
|
||||
\entry{\code {bracketed-paste-begin ()}}{148}
|
||||
\entry{\code {backward-char (C-b)}}{147}
|
||||
\entry{\code {backward-delete-char (Rubout)}}{150}
|
||||
\entry{\code {backward-kill-line (C-x Rubout)}}{152}
|
||||
\entry{\code {backward-kill-word (M-\key {DEL})}}{152}
|
||||
\entry{\code {backward-word (M-b)}}{147}
|
||||
\entry{\code {beginning-of-history (M-<)}}{148}
|
||||
\entry{\code {beginning-of-line (C-a)}}{147}
|
||||
\entry{\code {bracketed-paste-begin ()}}{150}
|
||||
\initial {C}
|
||||
\entry{\code {call-last-kbd-macro (C-x e)}}{153}
|
||||
\entry{\code {capitalize-word (M-c)}}{149}
|
||||
\entry{\code {character-search (C-])}}{154}
|
||||
\entry{\code {character-search-backward (M-C-])}}{154}
|
||||
\entry{\code {clear-display (M-C-l)}}{146}
|
||||
\entry{\code {clear-screen (C-l)}}{146}
|
||||
\entry{\code {complete (\key {TAB})}}{151}
|
||||
\entry{\code {complete-command (M-!)}}{153}
|
||||
\entry{\code {complete-filename (M-/)}}{152}
|
||||
\entry{\code {complete-hostname (M-@)}}{152}
|
||||
\entry{\code {complete-into-braces (M-{\tt \char 123})}}{153}
|
||||
\entry{\code {complete-username (M-~)}}{152}
|
||||
\entry{\code {complete-variable (M-$)}}{152}
|
||||
\entry{\code {copy-backward-word ()}}{150}
|
||||
\entry{\code {copy-forward-word ()}}{150}
|
||||
\entry{\code {copy-region-as-kill ()}}{150}
|
||||
\entry{\code {call-last-kbd-macro (C-x e)}}{155}
|
||||
\entry{\code {capitalize-word (M-c)}}{151}
|
||||
\entry{\code {character-search (C-])}}{156}
|
||||
\entry{\code {character-search-backward (M-C-])}}{156}
|
||||
\entry{\code {clear-display (M-C-l)}}{148}
|
||||
\entry{\code {clear-screen (C-l)}}{148}
|
||||
\entry{\code {complete (\key {TAB})}}{153}
|
||||
\entry{\code {complete-command (M-!)}}{155}
|
||||
\entry{\code {complete-filename (M-/)}}{154}
|
||||
\entry{\code {complete-hostname (M-@)}}{154}
|
||||
\entry{\code {complete-into-braces (M-{\tt \char 123})}}{155}
|
||||
\entry{\code {complete-username (M-~)}}{154}
|
||||
\entry{\code {complete-variable (M-$)}}{154}
|
||||
\entry{\code {copy-backward-word ()}}{152}
|
||||
\entry{\code {copy-forward-word ()}}{152}
|
||||
\entry{\code {copy-region-as-kill ()}}{152}
|
||||
\initial {D}
|
||||
\entry{\code {dabbrev-expand ()}}{153}
|
||||
\entry{\code {delete-char (C-d)}}{148}
|
||||
\entry{\code {delete-char-or-list ()}}{152}
|
||||
\entry{\code {delete-horizontal-space ()}}{150}
|
||||
\entry{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{151}
|
||||
\entry{\code {display-shell-version (C-x C-v)}}{156}
|
||||
\entry{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}{154}
|
||||
\entry{\code {downcase-word (M-l)}}{149}
|
||||
\entry{\code {dump-functions ()}}{155}
|
||||
\entry{\code {dump-macros ()}}{155}
|
||||
\entry{\code {dump-variables ()}}{155}
|
||||
\entry{\code {dynamic-complete-history (M-\key {TAB})}}{153}
|
||||
\entry{\code {dabbrev-expand ()}}{155}
|
||||
\entry{\code {delete-char (C-d)}}{150}
|
||||
\entry{\code {delete-char-or-list ()}}{154}
|
||||
\entry{\code {delete-horizontal-space ()}}{152}
|
||||
\entry{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{153}
|
||||
\entry{\code {display-shell-version (C-x C-v)}}{158}
|
||||
\entry{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}{156}
|
||||
\entry{\code {downcase-word (M-l)}}{151}
|
||||
\entry{\code {dump-functions ()}}{157}
|
||||
\entry{\code {dump-macros ()}}{157}
|
||||
\entry{\code {dump-variables ()}}{157}
|
||||
\entry{\code {dynamic-complete-history (M-\key {TAB})}}{155}
|
||||
\initial {E}
|
||||
\entry{\code {edit-and-execute-command (C-x C-e)}}{156}
|
||||
\entry{\code {end-kbd-macro (C-x ))}}{153}
|
||||
\entry{\code {\i {end-of-file} (usually C-d)}}{148}
|
||||
\entry{\code {end-of-history (M->)}}{146}
|
||||
\entry{\code {end-of-line (C-e)}}{145}
|
||||
\entry{\code {exchange-point-and-mark (C-x C-x)}}{154}
|
||||
\entry{\code {execute-named-command (M-x)}}{155}
|
||||
\entry{\code {export-completions ()}}{152}
|
||||
\entry{\code {edit-and-execute-command (C-x C-e)}}{158}
|
||||
\entry{\code {end-kbd-macro (C-x ))}}{155}
|
||||
\entry{\code {\i {end-of-file} (usually C-d)}}{150}
|
||||
\entry{\code {end-of-history (M->)}}{148}
|
||||
\entry{\code {end-of-line (C-e)}}{147}
|
||||
\entry{\code {exchange-point-and-mark (C-x C-x)}}{156}
|
||||
\entry{\code {execute-named-command (M-x)}}{157}
|
||||
\entry{\code {export-completions ()}}{154}
|
||||
\initial {F}
|
||||
\entry{\code {fetch-history ()}}{148}
|
||||
\entry{\code {forward-backward-delete-char ()}}{148}
|
||||
\entry{\code {forward-char (C-f)}}{145}
|
||||
\entry{\code {forward-search-history (C-s)}}{146}
|
||||
\entry{\code {forward-word (M-f)}}{145}
|
||||
\entry{\code {fetch-history ()}}{150}
|
||||
\entry{\code {forward-backward-delete-char ()}}{150}
|
||||
\entry{\code {forward-char (C-f)}}{147}
|
||||
\entry{\code {forward-search-history (C-s)}}{149}
|
||||
\entry{\code {forward-word (M-f)}}{147}
|
||||
\initial {G}
|
||||
\entry{\code {glob-complete-word (M-g)}}{155}
|
||||
\entry{\code {glob-expand-word (C-x *)}}{155}
|
||||
\entry{\code {glob-list-expansions (C-x g)}}{155}
|
||||
\entry{\code {glob-complete-word (M-g)}}{157}
|
||||
\entry{\code {glob-expand-word (C-x *)}}{157}
|
||||
\entry{\code {glob-list-expansions (C-x g)}}{157}
|
||||
\initial {H}
|
||||
\entry{\code {history-and-alias-expand-line ()}}{156}
|
||||
\entry{\code {history-expand-line (M-^)}}{155}
|
||||
\entry{\code {history-search-backward ()}}{147}
|
||||
\entry{\code {history-search-forward ()}}{147}
|
||||
\entry{\code {history-substring-search-backward ()}}{147}
|
||||
\entry{\code {history-substring-search-forward ()}}{147}
|
||||
\entry{\code {history-and-alias-expand-line ()}}{158}
|
||||
\entry{\code {history-expand-line (M-^)}}{157}
|
||||
\entry{\code {history-search-backward ()}}{149}
|
||||
\entry{\code {history-search-forward ()}}{149}
|
||||
\entry{\code {history-substring-search-backward ()}}{149}
|
||||
\entry{\code {history-substring-search-forward ()}}{149}
|
||||
\initial {I}
|
||||
\entry{\code {insert-comment (M-#)}}{154}
|
||||
\entry{\code {insert-completions (M-*)}}{151}
|
||||
\entry{\code {insert-last-argument (M-. or M-_)}}{156}
|
||||
\entry{\code {insert-comment (M-#)}}{156}
|
||||
\entry{\code {insert-completions (M-*)}}{153}
|
||||
\entry{\code {insert-last-argument (M-. or M-_)}}{158}
|
||||
\initial {K}
|
||||
\entry{\code {kill-line (C-k)}}{149}
|
||||
\entry{\code {kill-region ()}}{150}
|
||||
\entry{\code {kill-whole-line ()}}{150}
|
||||
\entry{\code {kill-word (M-d)}}{150}
|
||||
\entry{\code {kill-line (C-k)}}{151}
|
||||
\entry{\code {kill-region ()}}{152}
|
||||
\entry{\code {kill-whole-line ()}}{152}
|
||||
\entry{\code {kill-word (M-d)}}{152}
|
||||
\initial {M}
|
||||
\entry{\code {magic-space ()}}{156}
|
||||
\entry{\code {menu-complete ()}}{151}
|
||||
\entry{\code {menu-complete-backward ()}}{152}
|
||||
\entry{\code {magic-space ()}}{158}
|
||||
\entry{\code {menu-complete ()}}{153}
|
||||
\entry{\code {menu-complete-backward ()}}{154}
|
||||
\initial {N}
|
||||
\entry{\code {next-history (C-n)}}{146}
|
||||
\entry{\code {next-screen-line ()}}{146}
|
||||
\entry{\code {non-incremental-forward-search-history (M-n)}}{147}
|
||||
\entry{\code {non-incremental-reverse-search-history (M-p)}}{147}
|
||||
\entry{\code {next-history (C-n)}}{148}
|
||||
\entry{\code {next-screen-line ()}}{148}
|
||||
\entry{\code {non-incremental-forward-search-history (M-n)}}{149}
|
||||
\entry{\code {non-incremental-reverse-search-history (M-p)}}{149}
|
||||
\initial {O}
|
||||
\entry{\code {operate-and-get-next (C-o)}}{148}
|
||||
\entry{\code {overwrite-mode ()}}{149}
|
||||
\entry{\code {operate-and-get-next (C-o)}}{150}
|
||||
\entry{\code {overwrite-mode ()}}{151}
|
||||
\initial {P}
|
||||
\entry{\code {possible-command-completions (C-x !)}}{153}
|
||||
\entry{\code {possible-completions (M-?)}}{151}
|
||||
\entry{\code {possible-filename-completions (C-x /)}}{152}
|
||||
\entry{\code {possible-hostname-completions (C-x @)}}{153}
|
||||
\entry{\code {possible-username-completions (C-x ~)}}{152}
|
||||
\entry{\code {possible-variable-completions (C-x $)}}{152}
|
||||
\entry{\code {prefix-meta (\key {ESC})}}{154}
|
||||
\entry{\code {previous-history (C-p)}}{146}
|
||||
\entry{\code {previous-screen-line ()}}{146}
|
||||
\entry{\code {print-last-kbd-macro ()}}{153}
|
||||
\entry{\code {possible-command-completions (C-x !)}}{155}
|
||||
\entry{\code {possible-completions (M-?)}}{153}
|
||||
\entry{\code {possible-filename-completions (C-x /)}}{154}
|
||||
\entry{\code {possible-hostname-completions (C-x @)}}{155}
|
||||
\entry{\code {possible-username-completions (C-x ~)}}{154}
|
||||
\entry{\code {possible-variable-completions (C-x $)}}{154}
|
||||
\entry{\code {prefix-meta (\key {ESC})}}{156}
|
||||
\entry{\code {previous-history (C-p)}}{148}
|
||||
\entry{\code {previous-screen-line ()}}{148}
|
||||
\entry{\code {print-last-kbd-macro ()}}{155}
|
||||
\initial {Q}
|
||||
\entry{\code {quoted-insert (C-q or C-v)}}{148}
|
||||
\entry{\code {quoted-insert (C-q or C-v)}}{150}
|
||||
\initial {R}
|
||||
\entry{\code {re-read-init-file (C-x C-r)}}{153}
|
||||
\entry{\code {redraw-current-line ()}}{146}
|
||||
\entry{\code {reverse-search-history (C-r)}}{146}
|
||||
\entry{\code {revert-line (M-r)}}{154}
|
||||
\entry{\code {re-read-init-file (C-x C-r)}}{155}
|
||||
\entry{\code {redraw-current-line ()}}{148}
|
||||
\entry{\code {reverse-search-history (C-r)}}{148}
|
||||
\entry{\code {revert-line (M-r)}}{156}
|
||||
\initial {S}
|
||||
\entry{\code {self-insert (a, b, A, 1, !, \dots {})}}{148}
|
||||
\entry{\code {set-mark (C-@)}}{154}
|
||||
\entry{\code {shell-backward-kill-word ()}}{150}
|
||||
\entry{\code {shell-backward-word (M-C-b)}}{145}
|
||||
\entry{\code {shell-expand-line (M-C-e)}}{155}
|
||||
\entry{\code {shell-forward-word (M-C-f)}}{145}
|
||||
\entry{\code {shell-kill-word (M-C-d)}}{150}
|
||||
\entry{\code {shell-transpose-words (M-C-t)}}{149}
|
||||
\entry{\code {skip-csi-sequence ()}}{154}
|
||||
\entry{\code {spell-correct-word (C-x s)}}{155}
|
||||
\entry{\code {start-kbd-macro (C-x ()}}{153}
|
||||
\entry{\code {self-insert (a, b, A, 1, !, \dots {})}}{150}
|
||||
\entry{\code {set-mark (C-@)}}{156}
|
||||
\entry{\code {shell-backward-kill-word ()}}{152}
|
||||
\entry{\code {shell-backward-word (M-C-b)}}{147}
|
||||
\entry{\code {shell-expand-line (M-C-e)}}{157}
|
||||
\entry{\code {shell-forward-word (M-C-f)}}{147}
|
||||
\entry{\code {shell-kill-word (M-C-d)}}{152}
|
||||
\entry{\code {shell-transpose-words (M-C-t)}}{151}
|
||||
\entry{\code {skip-csi-sequence ()}}{156}
|
||||
\entry{\code {spell-correct-word (C-x s)}}{157}
|
||||
\entry{\code {start-kbd-macro (C-x ()}}{155}
|
||||
\initial {T}
|
||||
\entry{\code {tilde-expand (M-&)}}{154}
|
||||
\entry{\code {transpose-chars (C-t)}}{149}
|
||||
\entry{\code {transpose-words (M-t)}}{149}
|
||||
\entry{\code {tilde-expand (M-&)}}{156}
|
||||
\entry{\code {transpose-chars (C-t)}}{151}
|
||||
\entry{\code {transpose-words (M-t)}}{151}
|
||||
\initial {U}
|
||||
\entry{\code {undo (C-_ or C-x C-u)}}{154}
|
||||
\entry{\code {universal-argument ()}}{151}
|
||||
\entry{\code {unix-filename-rubout ()}}{150}
|
||||
\entry{\code {unix-line-discard (C-u)}}{149}
|
||||
\entry{\code {unix-word-rubout (C-w)}}{150}
|
||||
\entry{\code {upcase-word (M-u)}}{149}
|
||||
\entry{\code {undo (C-_ or C-x C-u)}}{156}
|
||||
\entry{\code {universal-argument ()}}{153}
|
||||
\entry{\code {unix-filename-rubout ()}}{152}
|
||||
\entry{\code {unix-line-discard (C-u)}}{152}
|
||||
\entry{\code {unix-word-rubout (C-w)}}{152}
|
||||
\entry{\code {upcase-word (M-u)}}{151}
|
||||
\initial {Y}
|
||||
\entry{\code {yank (C-y)}}{150}
|
||||
\entry{\code {yank-last-arg (M-. or M-_)}}{147}
|
||||
\entry{\code {yank-nth-arg (M-C-y)}}{147}
|
||||
\entry{\code {yank-pop (M-y)}}{150}
|
||||
\entry{\code {yank (C-y)}}{152}
|
||||
\entry{\code {yank-last-arg (M-. or M-_)}}{149}
|
||||
\entry{\code {yank-nth-arg (M-C-y)}}{149}
|
||||
\entry{\code {yank-pop (M-y)}}{153}
|
||||
|
||||
+104
-25
@@ -4,9 +4,9 @@
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<!-- This text is a brief description of the features that are present in
|
||||
the Bash shell (version 5.3, 8 January 2025).
|
||||
the Bash shell (version 5.3, 24 February 2025).
|
||||
|
||||
This is Edition 5.3, last updated 8 January 2025,
|
||||
This is Edition 5.3, last updated 24 February 2025,
|
||||
of The GNU Bash Reference Manual,
|
||||
for Bash, Version 5.3.
|
||||
|
||||
@@ -77,10 +77,10 @@ Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Previou
|
||||
<h1 class="top" id="Bash-Features-1"><span>Bash Features<a class="copiable-link" href="#Bash-Features-1"> ¶</a></span></h1>
|
||||
|
||||
<p>This text is a brief description of the features that are present in
|
||||
the Bash shell (version 5.3, 8 January 2025).
|
||||
the Bash shell (version 5.3, 24 February 2025).
|
||||
The Bash home page is <a class="url" href="http://www.gnu.org/software/bash/">http://www.gnu.org/software/bash/</a>.
|
||||
</p>
|
||||
<p>This is Edition 5.3, last updated 8 January 2025,
|
||||
<p>This is Edition 5.3, last updated 24 February 2025,
|
||||
of <cite class="cite">The GNU Bash Reference Manual</cite>,
|
||||
for <code class="code">Bash</code>, Version 5.3.
|
||||
</p>
|
||||
@@ -1490,8 +1490,11 @@ done
|
||||
described below (see <a class="pxref" href="#Shell-Arithmetic">Shell Arithmetic</a>).
|
||||
The <var class="var">expression</var> undergoes the same expansions
|
||||
as if it were within double quotes,
|
||||
but double quote characters in <var class="var">expression</var> are not treated specially
|
||||
and are removed.
|
||||
but unescaped double quote characters
|
||||
in <var class="var">expression</var> are not treated
|
||||
specially and are removed.
|
||||
Since this can potentially result in empty strings,
|
||||
this command treats those as expressions that evaluate to 0.
|
||||
If the value of the expression is non-zero, the return status is 0;
|
||||
otherwise the return status is 1.
|
||||
</p>
|
||||
@@ -2124,7 +2127,7 @@ The null string is a valid value.
|
||||
Once a variable is set, it may be unset only by using
|
||||
the <code class="code">unset</code> builtin command.
|
||||
</p>
|
||||
<p>A variable may be assigned to by a statement of the form
|
||||
<p>A variable is assigned to using a statement of the form
|
||||
</p><div class="example">
|
||||
<pre class="example-preformatted"><var class="var">name</var>=[<var class="var">value</var>]
|
||||
</pre></div>
|
||||
@@ -2460,7 +2463,7 @@ each generated term will contain the same number of digits,
|
||||
zero-padding where necessary.
|
||||
When letters are supplied, the expression expands to each character
|
||||
lexicographically between <var class="var">x</var> and <var class="var">y</var>, inclusive,
|
||||
using the default C locale.
|
||||
using the C locale.
|
||||
Note that both <var class="var">x</var> and <var class="var">y</var> must be of the same type
|
||||
(integer or letter).
|
||||
When the increment is supplied, it is used as the difference between
|
||||
@@ -2729,6 +2732,14 @@ $ : ${var=DEFAULT}
|
||||
$ echo $var
|
||||
DEFAULT
|
||||
$ var=
|
||||
$ : ${var=DEFAULT}
|
||||
$ echo $var
|
||||
|
||||
$ var=
|
||||
$ : ${var:=DEFAULT}
|
||||
$ echo $var
|
||||
DEFAULT
|
||||
$ unset var
|
||||
$ : ${var:=DEFAULT}
|
||||
$ echo $var
|
||||
DEFAULT
|
||||
@@ -2750,6 +2761,16 @@ Otherwise, the value of <var class="var">parameter</var> is substituted.
|
||||
<pre class="example-preformatted">$ var=
|
||||
$ : ${var:?var is unset or null}
|
||||
bash: var: var is unset or null
|
||||
$ echo ${var?var is unset}
|
||||
|
||||
$ unset var
|
||||
$ : ${var?var is unset}
|
||||
bash: var: var is unset
|
||||
$ : ${var:?var is unset or null}
|
||||
bash: var: var is unset or null
|
||||
$ var=123
|
||||
$ echo ${var:?var is unset or null}
|
||||
123
|
||||
</pre></div>
|
||||
|
||||
</dd>
|
||||
@@ -2763,9 +2784,18 @@ The value of <var class="var">parameter</var> is not used.
|
||||
<pre class="example-preformatted">$ var=123
|
||||
$ echo ${var:+var is set and not null}
|
||||
var is set and not null
|
||||
$ echo ${var+var is set}
|
||||
var is set
|
||||
$ var=
|
||||
$ echo ${var:+var is set and not null}
|
||||
|
||||
$ echo ${var+var is set}
|
||||
var is set
|
||||
$ unset var
|
||||
$ echo ${var+var is set}
|
||||
|
||||
$ echo ${var:+var is set and not null}
|
||||
|
||||
$
|
||||
</pre></div>
|
||||
|
||||
@@ -2778,9 +2808,15 @@ starting at the character specified by <var class="var">offset</var>.
|
||||
If <var class="var">parameter</var> is ‘<samp class="samp">@</samp>’ or ‘<samp class="samp">*</samp>’, an indexed array subscripted by
|
||||
‘<samp class="samp">@</samp>’ or ‘<samp class="samp">*</samp>’, or an associative array name, the results differ as
|
||||
described below.
|
||||
If <var class="var">length</var> is omitted, it expands to the substring of the value of
|
||||
If :<var class="var">length</var> is omitted (the first form above), this
|
||||
expands to the substring of the value of
|
||||
<var class="var">parameter</var> starting at the character specified by <var class="var">offset</var>
|
||||
and extending to the end of the value.
|
||||
If <var class="var">offset</var> is omitted,
|
||||
it is treated as 0.
|
||||
If <var class="var">length</var> is omitted,
|
||||
but the colon after <var class="var">offset</var> is present,
|
||||
it is treated as 0.
|
||||
<var class="var">length</var> and <var class="var">offset</var> are arithmetic expressions
|
||||
(see <a class="pxref" href="#Shell-Arithmetic">Shell Arithmetic</a>).
|
||||
</p>
|
||||
@@ -3320,11 +3356,16 @@ The format for arithmetic expansion is:
|
||||
|
||||
<p>The <var class="var">expression</var> undergoes the same expansions
|
||||
as if it were within double quotes,
|
||||
but double quote characters in <var class="var">expression</var> are not treated specially
|
||||
and are removed.
|
||||
but unescaped double quote characters
|
||||
in <var class="var">expression</var> are not treated
|
||||
specially and are removed.
|
||||
All tokens in the expression undergo parameter and variable expansion,
|
||||
command substitution, and quote removal.
|
||||
The result is treated as the arithmetic expression to be evaluated.
|
||||
Since the way Bash handles double quotes
|
||||
can potentially result in empty strings,
|
||||
arithmetic expansion treats
|
||||
those as expressions that evaluate to 0.
|
||||
Arithmetic expansions may be nested.
|
||||
</p>
|
||||
<p>The evaluation is performed according to the rules listed below
|
||||
@@ -5270,7 +5311,8 @@ command), a list, or a compound command returns a
|
||||
non-zero exit status,
|
||||
subject to the following conditions.
|
||||
The <code class="code">ERR</code> trap is not executed if the failed command is part of the
|
||||
command list immediately following an <code class="code">until</code> or <code class="code">while</code> keyword,
|
||||
command list immediately following an
|
||||
<code class="code">until</code> or <code class="code">while</code> reserved word,
|
||||
part of the test following the <code class="code">if</code> or <code class="code">elif</code> reserved words,
|
||||
part of a command executed in a <code class="code">&&</code> or <code class="code">||</code> list
|
||||
except the command following the final <code class="code">&&</code> or <code class="code">||</code>,
|
||||
@@ -6507,7 +6549,8 @@ a list (see <a class="pxref" href="#Lists">Lists of Commands</a>),
|
||||
or a compound command (see <a class="pxref" href="#Compound-Commands">Compound Commands</a>)
|
||||
returns a non-zero status.
|
||||
The shell does not exit if the command that fails is part of the
|
||||
command list immediately following a <code class="code">while</code> or <code class="code">until</code> keyword,
|
||||
command list immediately following a
|
||||
<code class="code">while</code> or <code class="code">until</code> reserved word,
|
||||
part of the test in an <code class="code">if</code> statement,
|
||||
part of any command executed in a <code class="code">&&</code> or <code class="code">||</code> list except
|
||||
the command following the final <code class="code">&&</code> or <code class="code">||</code>,
|
||||
@@ -9280,6 +9323,11 @@ respectively. <var class="var">Arg1</var> and <var class="var">arg2</var>
|
||||
may be positive or negative integers.
|
||||
When used with the <code class="code">[[</code> command, <var class="var">arg1</var> and <var class="var">arg2</var>
|
||||
are evaluated as arithmetic expressions (see <a class="pxref" href="#Shell-Arithmetic">Shell Arithmetic</a>).
|
||||
Since the expansions the <code class="code">[[</code> command performs on
|
||||
<var class="var">arg1</var> and <var class="var">arg2</var>
|
||||
can potentially result in empty strings,
|
||||
arithmetic expression evaluation treats
|
||||
those as expressions that evaluate to 0.
|
||||
</p></dd>
|
||||
</dl>
|
||||
|
||||
@@ -9536,8 +9584,24 @@ and are zero-based;
|
||||
associative arrays use arbitrary strings.
|
||||
Unless otherwise noted, indexed array indices must be non-negative integers.
|
||||
</p>
|
||||
<p>An indexed array is created automatically if any variable is assigned to
|
||||
using the syntax
|
||||
<p>The shell performs
|
||||
parameter and variable expansion, arithmetic expansion,
|
||||
command substitution, and quote removal
|
||||
on indexed array subscripts.
|
||||
Since this
|
||||
can potentially result in empty strings,
|
||||
subscript indexing treats
|
||||
those as expressions that evaluate to 0.
|
||||
</p>
|
||||
<p>The shell performs
|
||||
tilde expansion,
|
||||
parameter and variable expansion, arithmetic expansion,
|
||||
command substitution, and quote removal
|
||||
on associative array subscripts.
|
||||
Empty strings cannot be used as associative array keys.
|
||||
</p>
|
||||
<p>Bash automatically creates an indexed array
|
||||
if any variable is assigned to using the syntax
|
||||
</p><div class="example">
|
||||
<pre class="example-preformatted"><var class="var">name</var>[<var class="var">subscript</var>]=<var class="var">value</var>
|
||||
</pre></div>
|
||||
@@ -10268,7 +10332,7 @@ default value the shell assigns to <code class="env">$HISTFILE</code>).
|
||||
double-quoted string, even if the <code class="code">histexpand</code> option is enabled.
|
||||
|
||||
</li><li> When printing shell function definitions (e.g., by <code class="code">type</code>), Bash does
|
||||
not print the <code class="code">function</code> keyword unless necessary.
|
||||
not print the <code class="code">function</code> reserved word unless necessary.
|
||||
|
||||
</li><li> Non-interactive shells exit if a syntax error in an arithmetic expansion
|
||||
results in an invalid expression.
|
||||
@@ -10382,6 +10446,12 @@ separated by spaces, without the ‘<samp class="samp">SIG</samp>’ pre
|
||||
</li><li> The <code class="code">kill</code> builtin does not accept signal names with a ‘<samp class="samp">SIG</samp>’
|
||||
prefix.
|
||||
|
||||
</li><li> The <code class="code">kill</code> builtin returns a failure status if any of the pid or job
|
||||
arguments are invalid or if sending the specified signal to any of them
|
||||
fails.
|
||||
In default mode, <code class="code">kill</code> returns success if the signal was
|
||||
successfully sent to any of the specified processes.
|
||||
|
||||
</li><li> The <code class="code">printf</code> builtin uses <code class="code">double</code> (via <code class="code">strtod</code>) to convert
|
||||
arguments corresponding to floating point conversion specifiers, instead of
|
||||
<code class="code">long double</code> if it’s available.
|
||||
@@ -10750,7 +10820,10 @@ Bash uses the <var class="var">job</var> abstraction as the basis for job contro
|
||||
each process has a <em class="dfn">process group <small class="sc">ID</small></em>, and
|
||||
the operating system maintains the notion of a current terminal
|
||||
process group <small class="sc">ID</small>.
|
||||
Processes that have the same process group ID are said to be part of
|
||||
This terminal process group <small class="sc">ID</small> is associated with the
|
||||
<em class="dfn">controlling terminal</em>.
|
||||
</p>
|
||||
<p>Processes that have the same process group ID are said to be part of
|
||||
the same <em class="dfn">process group</em>.
|
||||
Members of the foreground process group (processes whose
|
||||
process group <small class="sc">ID</small> is equal to the current terminal process group
|
||||
@@ -10758,14 +10831,18 @@ process group <small class="sc">ID</small> is equal to the current terminal proc
|
||||
Processes in the foreground process group are said to be
|
||||
foreground processes.
|
||||
Background processes
|
||||
are those whose process group <small class="sc">ID</small> differs from the terminal’s;
|
||||
are those whose process group <small class="sc">ID</small> differs from the
|
||||
controlling terminal’s;
|
||||
such processes are immune to keyboard-generated signals.
|
||||
Only foreground processes are allowed to read from or, if
|
||||
the user so specifies with <code class="code">stty tostop</code>, write to the terminal.
|
||||
Background processes which attempt to
|
||||
read from (write to when <code class="code">tostop</code> is in effect) the
|
||||
terminal are sent a <code class="code">SIGTTIN</code> (<code class="code">SIGTTOU</code>)
|
||||
signal by the kernel’s terminal driver,
|
||||
Only foreground processes are allowed to read from or,
|
||||
if the user so specifies with
|
||||
<code class="code">stty tostop</code>,
|
||||
write to the controlling terminal.
|
||||
The system sends a
|
||||
<code class="code">SIGTTIN</code> (<code class="code">SIGTTOU</code>)
|
||||
signal to background processes which attempt to
|
||||
read from (write to when <code class="code">tostop</code> is in effect)
|
||||
the terminal,
|
||||
which, unless caught, suspends the process.
|
||||
</p>
|
||||
<p>If the operating system on which Bash is running supports
|
||||
@@ -12578,6 +12655,8 @@ leaving the current line at the top of the screen.
|
||||
<dd><p>Clear the screen,
|
||||
then redraw the current line,
|
||||
leaving the current line at the top of the screen.
|
||||
If given a numeric argument, this refreshes the current line
|
||||
without clearing the screen.
|
||||
</p>
|
||||
</dd>
|
||||
<dt><a id="index-redraw_002dcurrent_002dline-_0028_0029"></a><span><code class="code">redraw-current-line ()</code><a class="copiable-link" href="#index-redraw_002dcurrent_002dline-_0028_0029"> ¶</a></span></dt>
|
||||
@@ -15607,7 +15686,7 @@ expansion (see <a class="pxref" href="#Tilde-Expansion">Tilde Expansion</a>).
|
||||
</li><li>Bash implements command aliases and the <code class="code">alias</code> and <code class="code">unalias</code>
|
||||
builtins (see <a class="pxref" href="#Aliases">Aliases</a>).
|
||||
|
||||
</li><li>Bash implements the <code class="code">!</code> keyword to negate the return value of
|
||||
</li><li>Bash implements the <code class="code">!</code> reserved word to negate the return value of
|
||||
a pipeline (see <a class="pxref" href="#Pipelines">Pipelines</a>).
|
||||
This is very useful when an <code class="code">if</code> statement needs to act only if a
|
||||
test fails.
|
||||
|
||||
+255
-201
@@ -2,9 +2,9 @@ This is bashref.info, produced by makeinfo version 7.1 from
|
||||
bashref.texi.
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.3, 8 January 2025).
|
||||
Bash shell (version 5.3, 24 February 2025).
|
||||
|
||||
This is Edition 5.3, last updated 8 January 2025, of ‘The GNU Bash
|
||||
This is Edition 5.3, last updated 24 February 2025, of ‘The GNU Bash
|
||||
Reference Manual’, for ‘Bash’, Version 5.3.
|
||||
|
||||
Copyright © 1988-2025 Free Software Foundation, Inc.
|
||||
@@ -27,10 +27,10 @@ Bash Features
|
||||
*************
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.3, 8 January 2025). The Bash home page is
|
||||
Bash shell (version 5.3, 24 February 2025). The Bash home page is
|
||||
<http://www.gnu.org/software/bash/>.
|
||||
|
||||
This is Edition 5.3, last updated 8 January 2025, of ‘The GNU Bash
|
||||
This is Edition 5.3, last updated 24 February 2025, of ‘The GNU Bash
|
||||
Reference Manual’, for ‘Bash’, Version 5.3.
|
||||
|
||||
Bash contains features that appear in other popular shells, and some
|
||||
@@ -993,8 +993,10 @@ File: bashref.info, Node: Conditional Constructs, Next: Command Grouping, Pre
|
||||
The arithmetic EXPRESSION is evaluated according to the rules
|
||||
described below (*note Shell Arithmetic::). The EXPRESSION
|
||||
undergoes the same expansions as if it were within double quotes,
|
||||
but double quote characters in EXPRESSION are not treated specially
|
||||
and are removed. If the value of the expression is non-zero, the
|
||||
but unescaped double quote characters in EXPRESSION are not treated
|
||||
specially and are removed. Since this can potentially result in
|
||||
empty strings, this command treats those as expressions that
|
||||
evaluate to 0. If the value of the expression is non-zero, the
|
||||
return status is 0; otherwise the return status is 1.
|
||||
|
||||
‘[[...]]’
|
||||
@@ -1490,7 +1492,7 @@ attributes.
|
||||
is a valid value. Once a variable is set, it may be unset only by using
|
||||
the ‘unset’ builtin command.
|
||||
|
||||
A variable may be assigned to by a statement of the form
|
||||
A variable is assigned to using a statement of the form
|
||||
NAME=[VALUE]
|
||||
If VALUE is not given, the variable is assigned the null string. All
|
||||
VALUEs undergo tilde expansion, parameter and variable expansion,
|
||||
@@ -1729,11 +1731,10 @@ integer. When integers are supplied, the expression expands to each
|
||||
number between X and Y, inclusive. If either X or Y begins with a zero,
|
||||
each generated term will contain the same number of digits, zero-padding
|
||||
where necessary. When letters are supplied, the expression expands to
|
||||
each character lexicographically between X and Y, inclusive, using the
|
||||
default C locale. Note that both X and Y must be of the same type
|
||||
(integer or letter). When the increment is supplied, it is used as the
|
||||
difference between each term. The default increment is 1 or -1 as
|
||||
appropriate.
|
||||
each character lexicographically between X and Y, inclusive, using the C
|
||||
locale. Note that both X and Y must be of the same type (integer or
|
||||
letter). When the increment is supplied, it is used as the difference
|
||||
between each term. The default increment is 1 or -1 as appropriate.
|
||||
|
||||
Brace expansion is performed before any other expansions, and any
|
||||
characters special to other expansions are preserved in the result. It
|
||||
@@ -1917,6 +1918,14 @@ omitted, the operator tests only for existence.
|
||||
$ echo $var
|
||||
DEFAULT
|
||||
$ var=
|
||||
$ : ${var=DEFAULT}
|
||||
$ echo $var
|
||||
|
||||
$ var=
|
||||
$ : ${var:=DEFAULT}
|
||||
$ echo $var
|
||||
DEFAULT
|
||||
$ unset var
|
||||
$ : ${var:=DEFAULT}
|
||||
$ echo $var
|
||||
DEFAULT
|
||||
@@ -1932,6 +1941,16 @@ omitted, the operator tests only for existence.
|
||||
$ var=
|
||||
$ : ${var:?var is unset or null}
|
||||
bash: var: var is unset or null
|
||||
$ echo ${var?var is unset}
|
||||
|
||||
$ unset var
|
||||
$ : ${var?var is unset}
|
||||
bash: var: var is unset
|
||||
$ : ${var:?var is unset or null}
|
||||
bash: var: var is unset or null
|
||||
$ var=123
|
||||
$ echo ${var:?var is unset or null}
|
||||
123
|
||||
|
||||
‘${PARAMETER:+WORD}’
|
||||
If PARAMETER is null or unset, nothing is substituted, otherwise
|
||||
@@ -1941,9 +1960,18 @@ omitted, the operator tests only for existence.
|
||||
$ var=123
|
||||
$ echo ${var:+var is set and not null}
|
||||
var is set and not null
|
||||
$ echo ${var+var is set}
|
||||
var is set
|
||||
$ var=
|
||||
$ echo ${var:+var is set and not null}
|
||||
|
||||
$ echo ${var+var is set}
|
||||
var is set
|
||||
$ unset var
|
||||
$ echo ${var+var is set}
|
||||
|
||||
$ echo ${var:+var is set and not null}
|
||||
|
||||
$
|
||||
|
||||
‘${PARAMETER:OFFSET}’
|
||||
@@ -1952,11 +1980,13 @@ omitted, the operator tests only for existence.
|
||||
LENGTH characters of the value of PARAMETER starting at the
|
||||
character specified by OFFSET. If PARAMETER is ‘@’ or ‘*’, an
|
||||
indexed array subscripted by ‘@’ or ‘*’, or an associative array
|
||||
name, the results differ as described below. If LENGTH is omitted,
|
||||
it expands to the substring of the value of PARAMETER starting at
|
||||
the character specified by OFFSET and extending to the end of the
|
||||
value. LENGTH and OFFSET are arithmetic expressions (*note Shell
|
||||
Arithmetic::).
|
||||
name, the results differ as described below. If :LENGTH is omitted
|
||||
(the first form above), this expands to the substring of the value
|
||||
of PARAMETER starting at the character specified by OFFSET and
|
||||
extending to the end of the value. If OFFSET is omitted, it is
|
||||
treated as 0. If LENGTH is omitted, but the colon after OFFSET is
|
||||
present, it is treated as 0. LENGTH and OFFSET are arithmetic
|
||||
expressions (*note Shell Arithmetic::).
|
||||
|
||||
If OFFSET evaluates to a number less than zero, the value is used
|
||||
as an offset in characters from the end of the value of PARAMETER.
|
||||
@@ -2399,11 +2429,13 @@ the result. The format for arithmetic expansion is:
|
||||
$(( EXPRESSION ))
|
||||
|
||||
The EXPRESSION undergoes the same expansions as if it were within
|
||||
double quotes, but double quote characters in EXPRESSION are not treated
|
||||
specially and are removed. All tokens in the expression undergo
|
||||
parameter and variable expansion, command substitution, and quote
|
||||
removal. The result is treated as the arithmetic expression to be
|
||||
evaluated. Arithmetic expansions may be nested.
|
||||
double quotes, but unescaped double quote characters in EXPRESSION are
|
||||
not treated specially and are removed. All tokens in the expression
|
||||
undergo parameter and variable expansion, command substitution, and
|
||||
quote removal. The result is treated as the arithmetic expression to be
|
||||
evaluated. Since the way Bash handles double quotes can potentially
|
||||
result in empty strings, arithmetic expansion treats those as
|
||||
expressions that evaluate to 0. Arithmetic expansions may be nested.
|
||||
|
||||
The evaluation is performed according to the rules listed below
|
||||
(*note Shell Arithmetic::). If the expression is invalid, Bash prints a
|
||||
@@ -3898,11 +3930,11 @@ standard.
|
||||
compound command returns a non-zero exit status, subject to the
|
||||
following conditions. The ‘ERR’ trap is not executed if the failed
|
||||
command is part of the command list immediately following an
|
||||
‘until’ or ‘while’ keyword, part of the test following the ‘if’ or
|
||||
‘elif’ reserved words, part of a command executed in a ‘&&’ or ‘||’
|
||||
list except the command following the final ‘&&’ or ‘||’, any
|
||||
command in a pipeline but the last, (subject to the state of the
|
||||
‘pipefail’ shell option), or if the command's return status is
|
||||
‘until’ or ‘while’ reserved word, part of the test following the
|
||||
‘if’ or ‘elif’ reserved words, part of a command executed in a ‘&&’
|
||||
or ‘||’ list except the command following the final ‘&&’ or ‘||’,
|
||||
any command in a pipeline but the last, (subject to the state of
|
||||
the ‘pipefail’ shell option), or if the command's return status is
|
||||
being inverted using ‘!’. These are the same conditions obeyed by
|
||||
the ‘errexit’ (‘-e’) option.
|
||||
|
||||
@@ -4857,9 +4889,9 @@ parameters, or to display the names and values of shell variables.
|
||||
a list (*note Lists::), or a compound command (*note Compound
|
||||
Commands::) returns a non-zero status. The shell does not
|
||||
exit if the command that fails is part of the command list
|
||||
immediately following a ‘while’ or ‘until’ keyword, part of
|
||||
the test in an ‘if’ statement, part of any command executed in
|
||||
a ‘&&’ or ‘||’ list except the command following the final
|
||||
immediately following a ‘while’ or ‘until’ reserved word, part
|
||||
of the test in an ‘if’ statement, part of any command executed
|
||||
in a ‘&&’ or ‘||’ list except the command following the final
|
||||
‘&&’ or ‘||’, any command in a pipeline but the last (subject
|
||||
to the state of the ‘pipefail’ shell option), or if the
|
||||
command's return status is being inverted with ‘!’. If a
|
||||
@@ -7002,7 +7034,10 @@ link itself.
|
||||
greater than or equal to ARG2, respectively. ARG1 and ARG2 may be
|
||||
positive or negative integers. When used with the ‘[[’ command,
|
||||
ARG1 and ARG2 are evaluated as arithmetic expressions (*note Shell
|
||||
Arithmetic::).
|
||||
Arithmetic::). Since the expansions the ‘[[’ command performs on
|
||||
ARG1 and ARG2 can potentially result in empty strings, arithmetic
|
||||
expression evaluation treats those as expressions that evaluate to
|
||||
0.
|
||||
|
||||
|
||||
File: bashref.info, Node: Shell Arithmetic, Next: Aliases, Prev: Bash Conditional Expressions, Up: Bash Features
|
||||
@@ -7183,8 +7218,18 @@ expressions that must expand to an integer (*note Shell Arithmetic::))
|
||||
and are zero-based; associative arrays use arbitrary strings. Unless
|
||||
otherwise noted, indexed array indices must be non-negative integers.
|
||||
|
||||
An indexed array is created automatically if any variable is assigned
|
||||
to using the syntax
|
||||
The shell performs parameter and variable expansion, arithmetic
|
||||
expansion, command substitution, and quote removal on indexed array
|
||||
subscripts. Since this can potentially result in empty strings,
|
||||
subscript indexing treats those as expressions that evaluate to 0.
|
||||
|
||||
The shell performs tilde expansion, parameter and variable expansion,
|
||||
arithmetic expansion, command substitution, and quote removal on
|
||||
associative array subscripts. Empty strings cannot be used as
|
||||
associative array keys.
|
||||
|
||||
Bash automatically creates an indexed array if any variable is
|
||||
assigned to using the syntax
|
||||
NAME[SUBSCRIPT]=VALUE
|
||||
|
||||
The SUBSCRIPT is treated as an arithmetic expression that must evaluate
|
||||
@@ -7759,7 +7804,7 @@ startup files.
|
||||
double-quoted string, even if the ‘histexpand’ option is enabled.
|
||||
|
||||
31. When printing shell function definitions (e.g., by ‘type’), Bash
|
||||
does not print the ‘function’ keyword unless necessary.
|
||||
does not print the ‘function’ reserved word unless necessary.
|
||||
|
||||
32. Non-interactive shells exit if a syntax error in an arithmetic
|
||||
expansion results in an invalid expression.
|
||||
@@ -7868,72 +7913,77 @@ startup files.
|
||||
58. The ‘kill’ builtin does not accept signal names with a ‘SIG’
|
||||
prefix.
|
||||
|
||||
59. The ‘printf’ builtin uses ‘double’ (via ‘strtod’) to convert
|
||||
59. The ‘kill’ builtin returns a failure status if any of the pid or
|
||||
job arguments are invalid or if sending the specified signal to any
|
||||
of them fails. In default mode, ‘kill’ returns success if the
|
||||
signal was successfully sent to any of the specified processes.
|
||||
|
||||
60. The ‘printf’ builtin uses ‘double’ (via ‘strtod’) to convert
|
||||
arguments corresponding to floating point conversion specifiers,
|
||||
instead of ‘long double’ if it's available. The ‘L’ length
|
||||
modifier forces ‘printf’ to use ‘long double’ if it's available.
|
||||
|
||||
60. The ‘pwd’ builtin verifies that the value it prints is the same as
|
||||
61. The ‘pwd’ builtin verifies that the value it prints is the same as
|
||||
the current directory, even if it is not asked to check the file
|
||||
system with the ‘-P’ option.
|
||||
|
||||
61. The ‘read’ builtin may be interrupted by a signal for which a trap
|
||||
62. The ‘read’ builtin may be interrupted by a signal for which a trap
|
||||
has been set. If Bash receives a trapped signal while executing
|
||||
‘read’, the trap handler executes and ‘read’ returns an exit status
|
||||
greater than 128.
|
||||
|
||||
62. When the ‘set’ builtin is invoked without options, it does not
|
||||
63. When the ‘set’ builtin is invoked without options, it does not
|
||||
display shell function names and definitions.
|
||||
|
||||
63. When the ‘set’ builtin is invoked without options, it displays
|
||||
64. When the ‘set’ builtin is invoked without options, it displays
|
||||
variable values without quotes, unless they contain shell
|
||||
metacharacters, even if the result contains nonprinting characters.
|
||||
|
||||
64. The ‘test’ builtin compares strings using the current locale when
|
||||
65. The ‘test’ builtin compares strings using the current locale when
|
||||
evaluating the ‘<’ and ‘>’ binary operators.
|
||||
|
||||
65. The ‘test’ builtin's ‘-t’ unary primary requires an argument.
|
||||
66. The ‘test’ builtin's ‘-t’ unary primary requires an argument.
|
||||
Historical versions of ‘test’ made the argument optional in certain
|
||||
cases, and Bash attempts to accommodate those for backwards
|
||||
compatibility.
|
||||
|
||||
66. The ‘trap’ builtin displays signal names without the leading
|
||||
67. The ‘trap’ builtin displays signal names without the leading
|
||||
‘SIG’.
|
||||
|
||||
67. The ‘trap’ builtin doesn't check the first argument for a possible
|
||||
68. The ‘trap’ builtin doesn't check the first argument for a possible
|
||||
signal specification and revert the signal handling to the original
|
||||
disposition if it is, unless that argument consists solely of
|
||||
digits and is a valid signal number. If users want to reset the
|
||||
handler for a given signal to the original disposition, they should
|
||||
use ‘-’ as the first argument.
|
||||
|
||||
68. ‘trap -p’ without arguments displays signals whose dispositions
|
||||
69. ‘trap -p’ without arguments displays signals whose dispositions
|
||||
are set to SIG_DFL and those that were ignored when the shell
|
||||
started, not just trapped signals.
|
||||
|
||||
69. The ‘type’ and ‘command’ builtins will not report a non-executable
|
||||
70. The ‘type’ and ‘command’ builtins will not report a non-executable
|
||||
file as having been found, though the shell will attempt to execute
|
||||
such a file if it is the only so-named file found in ‘$PATH’.
|
||||
|
||||
70. The ‘ulimit’ builtin uses a block size of 512 bytes for the ‘-c’
|
||||
71. The ‘ulimit’ builtin uses a block size of 512 bytes for the ‘-c’
|
||||
and ‘-f’ options.
|
||||
|
||||
71. The ‘unset’ builtin with the ‘-v’ option specified returns a fatal
|
||||
72. The ‘unset’ builtin with the ‘-v’ option specified returns a fatal
|
||||
error if it attempts to unset a ‘readonly’ or ‘non-unsettable’
|
||||
variable, which causes a non-interactive shell to exit.
|
||||
|
||||
72. When asked to unset a variable that appears in an assignment
|
||||
73. When asked to unset a variable that appears in an assignment
|
||||
statement preceding the command, the ‘unset’ builtin attempts to
|
||||
unset a variable of the same name in the current or previous scope
|
||||
as well. This implements the required "if an assigned variable is
|
||||
further modified by the utility, the modifications made by the
|
||||
utility shall persist" behavior.
|
||||
|
||||
73. The arrival of ‘SIGCHLD’ when a trap is set on ‘SIGCHLD’ does not
|
||||
74. The arrival of ‘SIGCHLD’ when a trap is set on ‘SIGCHLD’ does not
|
||||
interrupt the ‘wait’ builtin and cause it to return immediately.
|
||||
The trap command is run once for each child that exits.
|
||||
|
||||
74. Bash removes an exited background process's status from the list
|
||||
75. Bash removes an exited background process's status from the list
|
||||
of such statuses after the ‘wait’ builtin returns it.
|
||||
|
||||
There is other POSIX behavior that Bash does not implement by default
|
||||
@@ -8159,19 +8209,22 @@ uses the JOB abstraction as the basis for job control.
|
||||
|
||||
To facilitate the implementation of the user interface to job
|
||||
control, each process has a “process group ID”, and the operating system
|
||||
maintains the notion of a current terminal process group ID. Processes
|
||||
that have the same process group ID are said to be part of the same
|
||||
“process group”. Members of the foreground process group (processes
|
||||
whose process group ID is equal to the current terminal process group
|
||||
ID) receive keyboard-generated signals such as ‘SIGINT’. Processes in
|
||||
the foreground process group are said to be foreground processes.
|
||||
Background processes are those whose process group ID differs from the
|
||||
terminal's; such processes are immune to keyboard-generated signals.
|
||||
Only foreground processes are allowed to read from or, if the user so
|
||||
specifies with ‘stty tostop’, write to the terminal. Background
|
||||
processes which attempt to read from (write to when ‘tostop’ is in
|
||||
effect) the terminal are sent a ‘SIGTTIN’ (‘SIGTTOU’) signal by the
|
||||
kernel's terminal driver, which, unless caught, suspends the process.
|
||||
maintains the notion of a current terminal process group ID. This
|
||||
terminal process group ID is associated with the “controlling terminal”.
|
||||
|
||||
Processes that have the same process group ID are said to be part of
|
||||
the same “process group”. Members of the foreground process group
|
||||
(processes whose process group ID is equal to the current terminal
|
||||
process group ID) receive keyboard-generated signals such as ‘SIGINT’.
|
||||
Processes in the foreground process group are said to be foreground
|
||||
processes. Background processes are those whose process group ID
|
||||
differs from the controlling terminal's; such processes are immune to
|
||||
keyboard-generated signals. Only foreground processes are allowed to
|
||||
read from or, if the user so specifies with ‘stty tostop’, write to the
|
||||
controlling terminal. The system sends a ‘SIGTTIN’ (‘SIGTTOU’) signal
|
||||
to background processes which attempt to read from (write to when
|
||||
‘tostop’ is in effect) the terminal, which, unless caught, suspends the
|
||||
process.
|
||||
|
||||
If the operating system on which Bash is running supports job
|
||||
control, Bash contains facilities to use it. Typing the “suspend”
|
||||
@@ -9561,7 +9614,8 @@ File: bashref.info, Node: Commands For Moving, Next: Commands For History, Up
|
||||
|
||||
‘clear-screen (C-l)’
|
||||
Clear the screen, then redraw the current line, leaving the current
|
||||
line at the top of the screen.
|
||||
line at the top of the screen. If given a numeric argument, this
|
||||
refreshes the current line without clearing the screen.
|
||||
|
||||
‘redraw-current-line ()’
|
||||
Refresh the current line. By default, this is unbound.
|
||||
@@ -11891,8 +11945,8 @@ historical Bourne shell) as the baseline reference.
|
||||
• Bash implements command aliases and the ‘alias’ and ‘unalias’
|
||||
builtins (*note Aliases::).
|
||||
|
||||
• Bash implements the ‘!’ keyword to negate the return value of a
|
||||
pipeline (*note Pipelines::). This is very useful when an ‘if’
|
||||
• Bash implements the ‘!’ reserved word to negate the return value of
|
||||
a pipeline (*note Pipelines::). This is very useful when an ‘if’
|
||||
statement needs to act only if a test fails. The Bash ‘-o
|
||||
pipefail’ option to ‘set’ will cause a pipeline to return a failure
|
||||
status if any command fails (*note The Set Builtin::).
|
||||
@@ -12877,9 +12931,9 @@ D.2 Index of Shell Reserved Words
|
||||
|
||||
* !: Pipelines. (line 9)
|
||||
* [[: Conditional Constructs.
|
||||
(line 126)
|
||||
(line 128)
|
||||
* ]]: Conditional Constructs.
|
||||
(line 126)
|
||||
(line 128)
|
||||
* {: Command Grouping. (line 21)
|
||||
* }: Command Grouping. (line 21)
|
||||
* case: Conditional Constructs.
|
||||
@@ -13322,7 +13376,7 @@ D.4 Function Index
|
||||
* quoted-insert (C-q or C-v): Commands For Text. (line 28)
|
||||
* re-read-init-file (C-x C-r): Miscellaneous Commands.
|
||||
(line 6)
|
||||
* redraw-current-line (): Commands For Moving. (line 61)
|
||||
* redraw-current-line (): Commands For Moving. (line 62)
|
||||
* reverse-search-history (C-r): Commands For History.
|
||||
(line 29)
|
||||
* revert-line (M-r): Miscellaneous Commands.
|
||||
@@ -13545,138 +13599,138 @@ D.5 Concept Index
|
||||
|
||||
|
||||
Tag Table:
|
||||
Node: Top900
|
||||
Node: Introduction2840
|
||||
Node: What is Bash?3056
|
||||
Node: What is a shell?4192
|
||||
Node: Definitions6805
|
||||
Node: Basic Shell Features10135
|
||||
Node: Shell Syntax11362
|
||||
Node: Shell Operation12392
|
||||
Node: Quoting13686
|
||||
Node: Escape Character15027
|
||||
Node: Single Quotes15565
|
||||
Node: Double Quotes15917
|
||||
Node: ANSI-C Quoting17265
|
||||
Node: Locale Translation18662
|
||||
Node: Creating Internationalized Scripts20068
|
||||
Node: Comments24269
|
||||
Node: Shell Commands25039
|
||||
Node: Reserved Words25981
|
||||
Node: Simple Commands26849
|
||||
Node: Pipelines27514
|
||||
Node: Lists30773
|
||||
Node: Compound Commands32648
|
||||
Node: Looping Constructs33660
|
||||
Node: Conditional Constructs36182
|
||||
Node: Command Grouping51121
|
||||
Node: Coprocesses52616
|
||||
Node: GNU Parallel55305
|
||||
Node: Shell Functions56226
|
||||
Node: Shell Parameters64677
|
||||
Node: Positional Parameters69582
|
||||
Node: Special Parameters70675
|
||||
Node: Shell Expansions74139
|
||||
Node: Brace Expansion76331
|
||||
Node: Tilde Expansion79680
|
||||
Node: Shell Parameter Expansion82638
|
||||
Node: Command Substitution102449
|
||||
Node: Arithmetic Expansion105981
|
||||
Node: Process Substitution106998
|
||||
Node: Word Splitting108109
|
||||
Node: Filename Expansion110556
|
||||
Node: Pattern Matching113783
|
||||
Node: Quote Removal119509
|
||||
Node: Redirections119816
|
||||
Node: Executing Commands130082
|
||||
Node: Simple Command Expansion130752
|
||||
Node: Command Search and Execution132863
|
||||
Node: Command Execution Environment135310
|
||||
Node: Environment138761
|
||||
Node: Exit Status140667
|
||||
Node: Signals142728
|
||||
Node: Shell Scripts147660
|
||||
Node: Shell Builtin Commands150961
|
||||
Node: Bourne Shell Builtins153075
|
||||
Node: Bash Builtins179642
|
||||
Node: Modifying Shell Behavior216569
|
||||
Node: The Set Builtin216914
|
||||
Node: The Shopt Builtin228905
|
||||
Node: Special Builtins245960
|
||||
Node: Shell Variables246952
|
||||
Node: Bourne Shell Variables247389
|
||||
Node: Bash Variables249900
|
||||
Node: Bash Features288808
|
||||
Node: Invoking Bash289825
|
||||
Node: Bash Startup Files296412
|
||||
Node: Interactive Shells301657
|
||||
Node: What is an Interactive Shell?302068
|
||||
Node: Is this Shell Interactive?302733
|
||||
Node: Interactive Shell Behavior303560
|
||||
Node: Bash Conditional Expressions307324
|
||||
Node: Shell Arithmetic312538
|
||||
Node: Aliases315870
|
||||
Node: Arrays319007
|
||||
Node: The Directory Stack326102
|
||||
Node: Directory Stack Builtins326902
|
||||
Node: Controlling the Prompt331350
|
||||
Node: The Restricted Shell334238
|
||||
Node: Bash POSIX Mode337123
|
||||
Node: Shell Compatibility Mode355187
|
||||
Node: Job Control364197
|
||||
Node: Job Control Basics364657
|
||||
Node: Job Control Builtins370938
|
||||
Node: Job Control Variables377623
|
||||
Node: Command Line Editing378857
|
||||
Node: Introduction and Notation380563
|
||||
Node: Readline Interaction382918
|
||||
Node: Readline Bare Essentials384109
|
||||
Node: Readline Movement Commands385920
|
||||
Node: Readline Killing Commands386919
|
||||
Node: Readline Arguments388945
|
||||
Node: Searching390005
|
||||
Node: Readline Init File392251
|
||||
Node: Readline Init File Syntax393557
|
||||
Node: Conditional Init Constructs420385
|
||||
Node: Sample Init File424773
|
||||
Node: Bindable Readline Commands427896
|
||||
Node: Commands For Moving429437
|
||||
Node: Commands For History431808
|
||||
Node: Commands For Text437201
|
||||
Node: Commands For Killing441329
|
||||
Node: Numeric Arguments444120
|
||||
Node: Commands For Completion445275
|
||||
Node: Keyboard Macros450974
|
||||
Node: Miscellaneous Commands451678
|
||||
Node: Readline vi Mode458248
|
||||
Node: Programmable Completion459228
|
||||
Node: Programmable Completion Builtins467968
|
||||
Node: A Programmable Completion Example479708
|
||||
Node: Using History Interactively485056
|
||||
Node: Bash History Facilities485740
|
||||
Node: Bash History Builtins489478
|
||||
Node: History Interaction495952
|
||||
Node: Event Designators500905
|
||||
Node: Word Designators502486
|
||||
Node: Modifiers504881
|
||||
Node: Installing Bash506821
|
||||
Node: Basic Installation507940
|
||||
Node: Compilers and Options511819
|
||||
Node: Compiling For Multiple Architectures512572
|
||||
Node: Installation Names514328
|
||||
Node: Specifying the System Type516565
|
||||
Node: Sharing Defaults517314
|
||||
Node: Operation Controls518031
|
||||
Node: Optional Features519053
|
||||
Node: Reporting Bugs531436
|
||||
Node: Major Differences From The Bourne Shell532796
|
||||
Node: GNU Free Documentation License554219
|
||||
Node: Indexes579399
|
||||
Node: Builtin Index579853
|
||||
Node: Reserved Word Index586954
|
||||
Node: Variable Index589402
|
||||
Node: Function Index606818
|
||||
Node: Concept Index620816
|
||||
Node: Top904
|
||||
Node: Introduction2848
|
||||
Node: What is Bash?3064
|
||||
Node: What is a shell?4200
|
||||
Node: Definitions6813
|
||||
Node: Basic Shell Features10143
|
||||
Node: Shell Syntax11370
|
||||
Node: Shell Operation12400
|
||||
Node: Quoting13694
|
||||
Node: Escape Character15035
|
||||
Node: Single Quotes15573
|
||||
Node: Double Quotes15925
|
||||
Node: ANSI-C Quoting17273
|
||||
Node: Locale Translation18670
|
||||
Node: Creating Internationalized Scripts20076
|
||||
Node: Comments24277
|
||||
Node: Shell Commands25047
|
||||
Node: Reserved Words25989
|
||||
Node: Simple Commands26857
|
||||
Node: Pipelines27522
|
||||
Node: Lists30781
|
||||
Node: Compound Commands32656
|
||||
Node: Looping Constructs33668
|
||||
Node: Conditional Constructs36190
|
||||
Node: Command Grouping51263
|
||||
Node: Coprocesses52758
|
||||
Node: GNU Parallel55447
|
||||
Node: Shell Functions56368
|
||||
Node: Shell Parameters64819
|
||||
Node: Positional Parameters69723
|
||||
Node: Special Parameters70816
|
||||
Node: Shell Expansions74280
|
||||
Node: Brace Expansion76472
|
||||
Node: Tilde Expansion79813
|
||||
Node: Shell Parameter Expansion82771
|
||||
Node: Command Substitution103417
|
||||
Node: Arithmetic Expansion106949
|
||||
Node: Process Substitution108128
|
||||
Node: Word Splitting109239
|
||||
Node: Filename Expansion111686
|
||||
Node: Pattern Matching114913
|
||||
Node: Quote Removal120639
|
||||
Node: Redirections120946
|
||||
Node: Executing Commands131212
|
||||
Node: Simple Command Expansion131882
|
||||
Node: Command Search and Execution133993
|
||||
Node: Command Execution Environment136440
|
||||
Node: Environment139891
|
||||
Node: Exit Status141797
|
||||
Node: Signals143858
|
||||
Node: Shell Scripts148790
|
||||
Node: Shell Builtin Commands152091
|
||||
Node: Bourne Shell Builtins154205
|
||||
Node: Bash Builtins180778
|
||||
Node: Modifying Shell Behavior217705
|
||||
Node: The Set Builtin218050
|
||||
Node: The Shopt Builtin230047
|
||||
Node: Special Builtins247102
|
||||
Node: Shell Variables248094
|
||||
Node: Bourne Shell Variables248531
|
||||
Node: Bash Variables251042
|
||||
Node: Bash Features289950
|
||||
Node: Invoking Bash290967
|
||||
Node: Bash Startup Files297554
|
||||
Node: Interactive Shells302799
|
||||
Node: What is an Interactive Shell?303210
|
||||
Node: Is this Shell Interactive?303875
|
||||
Node: Interactive Shell Behavior304702
|
||||
Node: Bash Conditional Expressions308466
|
||||
Node: Shell Arithmetic313886
|
||||
Node: Aliases317218
|
||||
Node: Arrays320355
|
||||
Node: The Directory Stack327946
|
||||
Node: Directory Stack Builtins328746
|
||||
Node: Controlling the Prompt333194
|
||||
Node: The Restricted Shell336082
|
||||
Node: Bash POSIX Mode338967
|
||||
Node: Shell Compatibility Mode357327
|
||||
Node: Job Control366337
|
||||
Node: Job Control Basics366797
|
||||
Node: Job Control Builtins373168
|
||||
Node: Job Control Variables379853
|
||||
Node: Command Line Editing381087
|
||||
Node: Introduction and Notation382793
|
||||
Node: Readline Interaction385148
|
||||
Node: Readline Bare Essentials386339
|
||||
Node: Readline Movement Commands388150
|
||||
Node: Readline Killing Commands389149
|
||||
Node: Readline Arguments391175
|
||||
Node: Searching392235
|
||||
Node: Readline Init File394481
|
||||
Node: Readline Init File Syntax395787
|
||||
Node: Conditional Init Constructs422615
|
||||
Node: Sample Init File427003
|
||||
Node: Bindable Readline Commands430126
|
||||
Node: Commands For Moving431667
|
||||
Node: Commands For History434134
|
||||
Node: Commands For Text439527
|
||||
Node: Commands For Killing443655
|
||||
Node: Numeric Arguments446446
|
||||
Node: Commands For Completion447601
|
||||
Node: Keyboard Macros453300
|
||||
Node: Miscellaneous Commands454004
|
||||
Node: Readline vi Mode460574
|
||||
Node: Programmable Completion461554
|
||||
Node: Programmable Completion Builtins470294
|
||||
Node: A Programmable Completion Example482034
|
||||
Node: Using History Interactively487382
|
||||
Node: Bash History Facilities488066
|
||||
Node: Bash History Builtins491804
|
||||
Node: History Interaction498278
|
||||
Node: Event Designators503231
|
||||
Node: Word Designators504812
|
||||
Node: Modifiers507207
|
||||
Node: Installing Bash509147
|
||||
Node: Basic Installation510266
|
||||
Node: Compilers and Options514145
|
||||
Node: Compiling For Multiple Architectures514898
|
||||
Node: Installation Names516654
|
||||
Node: Specifying the System Type518891
|
||||
Node: Sharing Defaults519640
|
||||
Node: Operation Controls520357
|
||||
Node: Optional Features521379
|
||||
Node: Reporting Bugs533762
|
||||
Node: Major Differences From The Bourne Shell535122
|
||||
Node: GNU Free Documentation License556551
|
||||
Node: Indexes581731
|
||||
Node: Builtin Index582185
|
||||
Node: Reserved Word Index589286
|
||||
Node: Variable Index591734
|
||||
Node: Function Index609150
|
||||
Node: Concept Index623148
|
||||
|
||||
End Tag Table
|
||||
|
||||
|
||||
+45
-46
@@ -1,12 +1,11 @@
|
||||
This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/MacPorts 2024.70613_0) (preloaded format=pdfetex 2024.4.9) 8 JAN 2025 09:33
|
||||
This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/MacPorts 2024.70613_1) (preloaded format=pdfetex 2024.4.9) 28 FEB 2025 11:12
|
||||
entering extended mode
|
||||
restricted \write18 enabled.
|
||||
file:line:error style messages enabled.
|
||||
%&-line parsing enabled.
|
||||
**\input /usr/local/src/bash/bash-20241227/doc/bashref.texi \input /usr/local/s
|
||||
rc/bash/bash-20241227/doc/bashref.texi
|
||||
(/usr/local/src/bash/bash-20241227/doc/bashref.texi
|
||||
(/usr/local/src/bash/bash-20241227/doc/texinfo.tex
|
||||
**\input /usr/local/src/bash/bash-20250224/doc/bashref.texi
|
||||
(/usr/local/src/bash/bash-20250224/doc/bashref.texi
|
||||
(/usr/local/src/bash/bash-20250224/doc/texinfo.tex
|
||||
Loading texinfo [version 2015-11-22.14]:
|
||||
\outerhsize=\dimen16
|
||||
\outervsize=\dimen17
|
||||
@@ -162,15 +161,15 @@ This is `epsf.tex' v2.7.4 <14 February 2011>
|
||||
texinfo.tex: doing @include of version.texi
|
||||
|
||||
|
||||
(/usr/local/src/bash/bash-20241227/doc/version.texi) [1{/opt/local/var/db/texmf
|
||||
(/usr/local/src/bash/bash-20250224/doc/version.texi) [1{/opt/local/var/db/texmf
|
||||
/fonts/map/pdftex/updmap/pdftex.map}] [2]
|
||||
(/usr/local/build/bash/bash-20241227/doc/bashref.toc [-1] [-2] [-3]) [-4]
|
||||
(/usr/local/build/bash/bash-20241227/doc/bashref.toc)
|
||||
(/usr/local/build/bash/bash-20241227/doc/bashref.toc) Chapter 1
|
||||
(/usr/local/build/bash/bash-20250224/doc/bashref.toc [-1] [-2] [-3]) [-4]
|
||||
(/usr/local/build/bash/bash-20250224/doc/bashref.toc)
|
||||
(/usr/local/build/bash/bash-20250224/doc/bashref.toc) Chapter 1
|
||||
\openout0 = `bashref.toc'.
|
||||
|
||||
|
||||
(/usr/local/build/bash/bash-20241227/doc/bashref.aux)
|
||||
(/usr/local/build/bash/bash-20250224/doc/bashref.aux)
|
||||
\openout1 = `bashref.aux'.
|
||||
|
||||
[1] Chapter 2 [2]
|
||||
@@ -222,17 +221,17 @@ Overfull \hbox (5.95723pt too wide) in paragraph at lines 744--745
|
||||
@rwindfile=@write4
|
||||
\openout4 = `bashref.rw'.
|
||||
|
||||
[10] [11] [12] [13] [14] [15] [16] [17] [18] [19{/opt/local/share/texmf-texliv
|
||||
e/fonts/enc/dvips/cm-super/cm-super-t1.enc}] [20] [21] [22] [23] [24]
|
||||
[10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20{/opt/local/share/texmf-t
|
||||
exlive/fonts/enc/dvips/cm-super/cm-super-t1.enc}] [21] [22] [23] [24]
|
||||
[25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39]
|
||||
[40] [41] [42] [43] [44] [45] [46] [47] [48] [49] Chapter 4 [50]
|
||||
[40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] Chapter 4 [51]
|
||||
@btindfile=@write5
|
||||
\openout5 = `bashref.bt'.
|
||||
|
||||
[51] [52]
|
||||
[52]
|
||||
[53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67]
|
||||
[68] [69] [70] [71] [72]
|
||||
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5845--5845
|
||||
[68] [69] [70] [71] [72] [73]
|
||||
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5895--5895
|
||||
[]@texttt set [-abefhkmnptuvxBCEHPT] [-o @textttsl option-name@texttt ] [--] [
|
||||
-] [@textttsl ar-gu-ment []@texttt ][]
|
||||
|
||||
@@ -245,7 +244,7 @@ Overfull \hbox (38.26585pt too wide) in paragraph at lines 5845--5845
|
||||
.etc.
|
||||
|
||||
|
||||
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5846--5846
|
||||
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5896--5896
|
||||
[]@texttt set [+abefhkmnptuvxBCEHPT] [+o @textttsl option-name@texttt ] [--] [
|
||||
-] [@textttsl ar-gu-ment []@texttt ][]
|
||||
|
||||
@@ -257,16 +256,16 @@ Overfull \hbox (38.26585pt too wide) in paragraph at lines 5846--5846
|
||||
.@texttt t
|
||||
.etc.
|
||||
|
||||
[73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] Chapter 5 [84] [85]
|
||||
[86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] Chapter 6 [98]
|
||||
[99] [100] [101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111]
|
||||
[112] [113] [114] [115] [116] [117] [118] [119] [120] [121] Chapter 7 [122]
|
||||
[123] [124] [125] [126]
|
||||
[74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] Chapter 5 [85] [86]
|
||||
[87] [88] [89] [90] [91] [92] [93] [94] [95] [96] [97] [98] Chapter 6 [99]
|
||||
[100] [101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111]
|
||||
[112] [113] [114] [115] [116] [117] [118] [119] [120] [121] [122] [123]
|
||||
Chapter 7 [124] [125] [126] [127] [128]
|
||||
texinfo.tex: doing @include of rluser.texi
|
||||
|
||||
|
||||
(/usr/local/src/bash/bash-20241227/lib/readline/doc/rluser.texi Chapter 8
|
||||
[127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138]
|
||||
(/usr/local/src/bash/bash-20250224/lib/readline/doc/rluser.texi Chapter 8
|
||||
[129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140]
|
||||
Underfull \hbox (badness 7540) in paragraph at lines 964--970
|
||||
[]@textrm In the ex-am-ple above, @textttsl C-u[] @textrm is bound to the func
|
||||
-tion
|
||||
@@ -292,7 +291,7 @@ e func-tion
|
||||
.@texttt v
|
||||
.etc.
|
||||
|
||||
[139] [140] [141] [142]
|
||||
[141] [142] [143] [144]
|
||||
Overfull \hbox (26.43913pt too wide) in paragraph at lines 1210--1210
|
||||
[]@texttt Meta-Control-h: backward-kill-word Text after the function name is i
|
||||
gnored[]
|
||||
@@ -305,19 +304,19 @@ gnored[]
|
||||
.@texttt t
|
||||
.etc.
|
||||
|
||||
[143] [144]
|
||||
[145] [146]
|
||||
@fnindfile=@write6
|
||||
\openout6 = `bashref.fn'.
|
||||
|
||||
[145] [146] [147] [148] [149] [150] [151] [152] [153] [154]
|
||||
[155] [156] [157] [158] [159] [160] [161] [162] [163] [164])
|
||||
[147] [148] [149] [150] [151] [152] [153] [154] [155] [156]
|
||||
[157] [158] [159] [160] [161] [162] [163] [164] [165] [166])
|
||||
texinfo.tex: doing @include of hsuser.texi
|
||||
|
||||
|
||||
(/usr/local/src/bash/bash-20241227/lib/readline/doc/hsuser.texi Chapter 9
|
||||
[165] [166] [167] [168] [169] [170] [171]) Chapter 10 [172] [173] [174]
|
||||
[175] [176]
|
||||
Underfull \hbox (badness 10000) in paragraph at lines 10581--10590
|
||||
(/usr/local/src/bash/bash-20250224/lib/readline/doc/hsuser.texi Chapter 9
|
||||
[167] [168] [169] [170] [171] [172] [173]) Chapter 10 [174] [175] [176]
|
||||
[177] [178]
|
||||
Underfull \hbox (badness 10000) in paragraph at lines 10669--10678
|
||||
[]@textrm All of the fol-low-ing op-tions ex-cept for `@texttt alt-array-implem
|
||||
entation[]@textrm '[],
|
||||
|
||||
@@ -330,7 +329,7 @@ entation[]@textrm '[],
|
||||
.etc.
|
||||
|
||||
|
||||
Underfull \hbox (badness 10000) in paragraph at lines 10581--10590
|
||||
Underfull \hbox (badness 10000) in paragraph at lines 10669--10678
|
||||
@textrm `@texttt disabled-builtins[]@textrm '[], `@texttt direxpand-default[]@t
|
||||
extrm '[], `@texttt strict-posix-default[]@textrm '[], and
|
||||
|
||||
@@ -342,22 +341,22 @@ extrm '[], `@texttt strict-posix-default[]@textrm '[], and
|
||||
.@texttt a
|
||||
.etc.
|
||||
|
||||
[177] [178] [179] [180] Appendix A [181] Appendix B [182] [183] [184] [185]
|
||||
[186] [187] [188] Appendix C [189]
|
||||
[179] [180] [181] [182] Appendix A [183] Appendix B [184] [185] [186] [187]
|
||||
[188] [189] [190] Appendix C [191]
|
||||
texinfo.tex: doing @include of fdl.texi
|
||||
|
||||
|
||||
(/usr/local/src/bash/bash-20241227/doc/fdl.texi [190] [191] [192] [193]
|
||||
[194] [195] [196]) Appendix D [197] [198] [199] [200] [201] [202] [203]
|
||||
[204] [205] [206] )
|
||||
(/usr/local/src/bash/bash-20250224/doc/fdl.texi [192] [193] [194] [195]
|
||||
[196] [197] [198]) Appendix D [199] [200] [201] [202] [203] [204] [205]
|
||||
[206] [207] [208] )
|
||||
Here is how much of TeX's memory you used:
|
||||
4114 strings out of 495840
|
||||
47656 string characters out of 6171739
|
||||
145117 words of memory out of 5000000
|
||||
4116 strings out of 495840
|
||||
47662 string characters out of 6171739
|
||||
145164 words of memory out of 5000000
|
||||
5048 multiletter control sequences out of 15000+600000
|
||||
34315 words of font info for 116 fonts, out of 8000000 for 9000
|
||||
701 hyphenation exceptions out of 8191
|
||||
16i,6n,16p,389b,983s stack positions out of 10000i,1000n,20000p,200000b,200000s
|
||||
16i,6n,16p,331b,983s stack positions out of 10000i,1000n,20000p,200000b,200000s
|
||||
</opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/
|
||||
cm/cmbx12.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cm
|
||||
csc10.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmmi10
|
||||
@@ -374,10 +373,10 @@ fonts/type1/public/amsfonts/cm/cmti10.pfb></opt/local/share/texmf-texlive/fonts
|
||||
lic/amsfonts/cm/cmtt9.pfb></opt/local/share/texmf-texlive/fonts/type1/public/cm
|
||||
-super/sfrm1095.pfb></opt/local/share/texmf-texlive/fonts/type1/public/cm-super
|
||||
/sfrm1440.pfb>
|
||||
Output written on bashref.pdf (212 pages, 850992 bytes).
|
||||
Output written on bashref.pdf (214 pages, 854783 bytes).
|
||||
PDF statistics:
|
||||
2938 PDF objects out of 2984 (max. 8388607)
|
||||
2678 compressed objects within 27 object streams
|
||||
340 named destinations out of 1000 (max. 500000)
|
||||
2948 PDF objects out of 2984 (max. 8388607)
|
||||
2686 compressed objects within 27 object streams
|
||||
342 named destinations out of 1000 (max. 500000)
|
||||
1157 words of extra memory for PDF output out of 10000 (max. 10000000)
|
||||
|
||||
|
||||
Binary file not shown.
+7303
-7180
File diff suppressed because it is too large
Load Diff
+43
-9
@@ -1164,6 +1164,8 @@ as if it were within double quotes,
|
||||
but unescaped double quote characters
|
||||
in @var{expression} are not treated
|
||||
specially and are removed.
|
||||
Since this can potentially result in empty strings,
|
||||
this command treats those as expressions that evaluate to 0.
|
||||
If the value of the expression is non-zero, the return status is 0;
|
||||
otherwise the return status is 1.
|
||||
|
||||
@@ -2935,6 +2937,10 @@ specially and are removed.
|
||||
All tokens in the expression undergo parameter and variable expansion,
|
||||
command substitution, and quote removal.
|
||||
The result is treated as the arithmetic expression to be evaluated.
|
||||
Since the way Bash handles double quotes
|
||||
can potentially result in empty strings,
|
||||
arithmetic expansion treats
|
||||
those as expressions that evaluate to 0.
|
||||
Arithmetic expansions may be nested.
|
||||
|
||||
The evaluation is performed according to the rules listed below
|
||||
@@ -8383,6 +8389,11 @@ respectively. @var{Arg1} and @var{arg2}
|
||||
may be positive or negative integers.
|
||||
When used with the @code{[[} command, @var{arg1} and @var{arg2}
|
||||
are evaluated as arithmetic expressions (@pxref{Shell Arithmetic}).
|
||||
Since the expansions the @code{[[} command performs on
|
||||
@var{arg1} and @var{arg2}
|
||||
can potentially result in empty strings,
|
||||
arithmetic expression evaluation treats
|
||||
those as expressions that evaluate to 0.
|
||||
@end table
|
||||
|
||||
@node Shell Arithmetic
|
||||
@@ -8601,8 +8612,24 @@ and are zero-based;
|
||||
associative arrays use arbitrary strings.
|
||||
Unless otherwise noted, indexed array indices must be non-negative integers.
|
||||
|
||||
An indexed array is created automatically if any variable is assigned to
|
||||
using the syntax
|
||||
The shell performs
|
||||
parameter and variable expansion, arithmetic expansion,
|
||||
command substitution, and quote removal
|
||||
on indexed array subscripts.
|
||||
Since this
|
||||
can potentially result in empty strings,
|
||||
subscript indexing treats
|
||||
those as expressions that evaluate to 0.
|
||||
|
||||
The shell performs
|
||||
tilde expansion,
|
||||
parameter and variable expansion, arithmetic expansion,
|
||||
command substitution, and quote removal
|
||||
on associative array subscripts.
|
||||
Empty strings cannot be used as associative array keys.
|
||||
|
||||
Bash automatically creates an indexed array
|
||||
if any variable is assigned to using the syntax
|
||||
@example
|
||||
@var{name}[@var{subscript}]=@var{value}
|
||||
@end example
|
||||
@@ -9857,6 +9884,9 @@ To facilitate the implementation of the user interface to job control,
|
||||
each process has a @dfn{process group @sc{id}}, and
|
||||
the operating system maintains the notion of a current terminal
|
||||
process group @sc{id}.
|
||||
This terminal process group @sc{id} is associated with the
|
||||
@dfn{controlling terminal}.
|
||||
|
||||
Processes that have the same process group ID are said to be part of
|
||||
the same @dfn{process group}.
|
||||
Members of the foreground process group (processes whose
|
||||
@@ -9865,14 +9895,18 @@ process group @sc{id} is equal to the current terminal process group
|
||||
Processes in the foreground process group are said to be
|
||||
foreground processes.
|
||||
Background processes
|
||||
are those whose process group @sc{id} differs from the terminal's;
|
||||
are those whose process group @sc{id} differs from the
|
||||
controlling terminal's;
|
||||
such processes are immune to keyboard-generated signals.
|
||||
Only foreground processes are allowed to read from or, if
|
||||
the user so specifies with @code{stty tostop}, write to the terminal.
|
||||
Background processes which attempt to
|
||||
read from (write to when @code{tostop} is in effect) the
|
||||
terminal are sent a @code{SIGTTIN} (@code{SIGTTOU})
|
||||
signal by the kernel's terminal driver,
|
||||
Only foreground processes are allowed to read from or,
|
||||
if the user so specifies with
|
||||
@code{stty tostop},
|
||||
write to the controlling terminal.
|
||||
The system sends a
|
||||
@code{SIGTTIN} (@code{SIGTTOU})
|
||||
signal to background processes which attempt to
|
||||
read from (write to when @code{tostop} is in effect)
|
||||
the terminal,
|
||||
which, unless caught, suspends the process.
|
||||
|
||||
If the operating system on which Bash is running supports
|
||||
|
||||
+108
-108
@@ -20,7 +20,7 @@
|
||||
@numsubsecentry{Compound Commands}{3.2.5}{Compound Commands}{11}
|
||||
@numsubsubsecentry{Looping Constructs}{3.2.5.1}{Looping Constructs}{12}
|
||||
@numsubsubsecentry{Conditional Constructs}{3.2.5.2}{Conditional Constructs}{12}
|
||||
@numsubsubsecentry{Grouping Commands}{3.2.5.3}{Command Grouping}{17}
|
||||
@numsubsubsecentry{Grouping Commands}{3.2.5.3}{Command Grouping}{18}
|
||||
@numsubsecentry{Coprocesses}{3.2.6}{Coprocesses}{18}
|
||||
@numsubsecentry{GNU Parallel}{3.2.7}{GNU Parallel}{19}
|
||||
@numsecentry{Shell Functions}{3.3}{Shell Functions}{19}
|
||||
@@ -31,113 +31,113 @@
|
||||
@numsubsecentry{Brace Expansion}{3.5.1}{Brace Expansion}{25}
|
||||
@numsubsecentry{Tilde Expansion}{3.5.2}{Tilde Expansion}{26}
|
||||
@numsubsecentry{Shell Parameter Expansion}{3.5.3}{Shell Parameter Expansion}{27}
|
||||
@numsubsecentry{Command Substitution}{3.5.4}{Command Substitution}{35}
|
||||
@numsubsecentry{Arithmetic Expansion}{3.5.5}{Arithmetic Expansion}{36}
|
||||
@numsubsecentry{Command Substitution}{3.5.4}{Command Substitution}{36}
|
||||
@numsubsecentry{Arithmetic Expansion}{3.5.5}{Arithmetic Expansion}{37}
|
||||
@numsubsecentry{Process Substitution}{3.5.6}{Process Substitution}{37}
|
||||
@numsubsecentry{Word Splitting}{3.5.7}{Word Splitting}{37}
|
||||
@numsubsecentry{Filename Expansion}{3.5.8}{Filename Expansion}{38}
|
||||
@numsubsubsecentry{Pattern Matching}{3.5.8.1}{Pattern Matching}{38}
|
||||
@numsubsecentry{Quote Removal}{3.5.9}{Quote Removal}{40}
|
||||
@numsecentry{Redirections}{3.6}{Redirections}{40}
|
||||
@numsubsecentry{Word Splitting}{3.5.7}{Word Splitting}{38}
|
||||
@numsubsecentry{Filename Expansion}{3.5.8}{Filename Expansion}{39}
|
||||
@numsubsubsecentry{Pattern Matching}{3.5.8.1}{Pattern Matching}{39}
|
||||
@numsubsecentry{Quote Removal}{3.5.9}{Quote Removal}{41}
|
||||
@numsecentry{Redirections}{3.6}{Redirections}{41}
|
||||
@numsubsecentry{Redirecting Input}{3.6.1}{}{42}
|
||||
@numsubsecentry{Redirecting Output}{3.6.2}{}{42}
|
||||
@numsubsecentry{Appending Redirected Output}{3.6.3}{}{42}
|
||||
@numsubsecentry{Redirecting Standard Output and Standard Error}{3.6.4}{}{42}
|
||||
@numsubsecentry{Appending Standard Output and Standard Error}{3.6.5}{}{42}
|
||||
@numsubsecentry{Here Documents}{3.6.6}{}{43}
|
||||
@numsubsecentry{Here Strings}{3.6.7}{}{43}
|
||||
@numsubsecentry{Duplicating File Descriptors}{3.6.8}{}{43}
|
||||
@numsubsecentry{Moving File Descriptors}{3.6.9}{}{44}
|
||||
@numsubsecentry{Opening File Descriptors for Reading and Writing}{3.6.10}{}{44}
|
||||
@numsecentry{Executing Commands}{3.7}{Executing Commands}{44}
|
||||
@numsubsecentry{Simple Command Expansion}{3.7.1}{Simple Command Expansion}{44}
|
||||
@numsubsecentry{Command Search and Execution}{3.7.2}{Command Search and Execution}{45}
|
||||
@numsubsecentry{Command Execution Environment}{3.7.3}{Command Execution Environment}{45}
|
||||
@numsubsecentry{Redirecting Output}{3.6.2}{}{43}
|
||||
@numsubsecentry{Appending Redirected Output}{3.6.3}{}{43}
|
||||
@numsubsecentry{Redirecting Standard Output and Standard Error}{3.6.4}{}{43}
|
||||
@numsubsecentry{Appending Standard Output and Standard Error}{3.6.5}{}{43}
|
||||
@numsubsecentry{Here Documents}{3.6.6}{}{44}
|
||||
@numsubsecentry{Here Strings}{3.6.7}{}{44}
|
||||
@numsubsecentry{Duplicating File Descriptors}{3.6.8}{}{44}
|
||||
@numsubsecentry{Moving File Descriptors}{3.6.9}{}{45}
|
||||
@numsubsecentry{Opening File Descriptors for Reading and Writing}{3.6.10}{}{45}
|
||||
@numsecentry{Executing Commands}{3.7}{Executing Commands}{45}
|
||||
@numsubsecentry{Simple Command Expansion}{3.7.1}{Simple Command Expansion}{45}
|
||||
@numsubsecentry{Command Search and Execution}{3.7.2}{Command Search and Execution}{46}
|
||||
@numsubsecentry{Command Execution Environment}{3.7.3}{Command Execution Environment}{46}
|
||||
@numsubsecentry{Environment}{3.7.4}{Environment}{47}
|
||||
@numsubsecentry{Exit Status}{3.7.5}{Exit Status}{47}
|
||||
@numsubsecentry{Signals}{3.7.6}{Signals}{48}
|
||||
@numsecentry{Shell Scripts}{3.8}{Shell Scripts}{49}
|
||||
@numchapentry{Shell Builtin Commands}{4}{Shell Builtin Commands}{51}
|
||||
@numsecentry{Bourne Shell Builtins}{4.1}{Bourne Shell Builtins}{51}
|
||||
@numsecentry{Bash Builtin Commands}{4.2}{Bash Builtins}{60}
|
||||
@numsecentry{Modifying Shell Behavior}{4.3}{Modifying Shell Behavior}{72}
|
||||
@numsubsecentry{The Set Builtin}{4.3.1}{The Set Builtin}{73}
|
||||
@numsubsecentry{The Shopt Builtin}{4.3.2}{The Shopt Builtin}{77}
|
||||
@numsecentry{Special Builtins}{4.4}{Special Builtins}{84}
|
||||
@numchapentry{Shell Variables}{5}{Shell Variables}{85}
|
||||
@numsecentry{Bourne Shell Variables}{5.1}{Bourne Shell Variables}{85}
|
||||
@numsecentry{Bash Variables}{5.2}{Bash Variables}{86}
|
||||
@numchapentry{Bash Features}{6}{Bash Features}{99}
|
||||
@numsecentry{Invoking Bash}{6.1}{Invoking Bash}{99}
|
||||
@numsecentry{Bash Startup Files}{6.2}{Bash Startup Files}{101}
|
||||
@numsecentry{Interactive Shells}{6.3}{Interactive Shells}{103}
|
||||
@numsubsecentry{What is an Interactive Shell?}{6.3.1}{What is an Interactive Shell?}{103}
|
||||
@numsubsecentry{Is this Shell Interactive?}{6.3.2}{Is this Shell Interactive?}{103}
|
||||
@numsubsecentry{Interactive Shell Behavior}{6.3.3}{Interactive Shell Behavior}{103}
|
||||
@numsecentry{Bash Conditional Expressions}{6.4}{Bash Conditional Expressions}{104}
|
||||
@numsecentry{Shell Arithmetic}{6.5}{Shell Arithmetic}{106}
|
||||
@numsecentry{Aliases}{6.6}{Aliases}{108}
|
||||
@numsecentry{Arrays}{6.7}{Arrays}{109}
|
||||
@numsecentry{The Directory Stack}{6.8}{The Directory Stack}{111}
|
||||
@numsubsecentry{Directory Stack Builtins}{6.8.1}{Directory Stack Builtins}{111}
|
||||
@numsecentry{Controlling the Prompt}{6.9}{Controlling the Prompt}{112}
|
||||
@numsecentry{The Restricted Shell}{6.10}{The Restricted Shell}{114}
|
||||
@numsecentry{Bash and POSIX}{6.11}{Bash POSIX Mode}{115}
|
||||
@numsubsecentry{What is POSIX?}{6.11.1}{}{115}
|
||||
@numsubsecentry{Bash POSIX Mode}{6.11.2}{}{115}
|
||||
@numsecentry{Shell Compatibility Mode}{6.12}{Shell Compatibility Mode}{120}
|
||||
@numchapentry{Job Control}{7}{Job Control}{123}
|
||||
@numsecentry{Job Control Basics}{7.1}{Job Control Basics}{123}
|
||||
@numsecentry{Job Control Builtins}{7.2}{Job Control Builtins}{124}
|
||||
@numsecentry{Job Control Variables}{7.3}{Job Control Variables}{127}
|
||||
@numchapentry{Command Line Editing}{8}{Command Line Editing}{128}
|
||||
@numsecentry{Introduction to Line Editing}{8.1}{Introduction and Notation}{128}
|
||||
@numsecentry{Readline Interaction}{8.2}{Readline Interaction}{128}
|
||||
@numsubsecentry{Readline Bare Essentials}{8.2.1}{Readline Bare Essentials}{129}
|
||||
@numsubsecentry{Readline Movement Commands}{8.2.2}{Readline Movement Commands}{129}
|
||||
@numsubsecentry{Readline Killing Commands}{8.2.3}{Readline Killing Commands}{130}
|
||||
@numsubsecentry{Readline Arguments}{8.2.4}{Readline Arguments}{130}
|
||||
@numsubsecentry{Searching for Commands in the History}{8.2.5}{Searching}{131}
|
||||
@numsecentry{Readline Init File}{8.3}{Readline Init File}{131}
|
||||
@numsubsecentry{Readline Init File Syntax}{8.3.1}{Readline Init File Syntax}{131}
|
||||
@numsubsecentry{Conditional Init Constructs}{8.3.2}{Conditional Init Constructs}{141}
|
||||
@numsubsecentry{Sample Init File}{8.3.3}{Sample Init File}{142}
|
||||
@numsecentry{Bindable Readline Commands}{8.4}{Bindable Readline Commands}{145}
|
||||
@numsubsecentry{Commands For Moving}{8.4.1}{Commands For Moving}{145}
|
||||
@numsubsecentry{Commands For Manipulating The History}{8.4.2}{Commands For History}{146}
|
||||
@numsubsecentry{Commands For Changing Text}{8.4.3}{Commands For Text}{148}
|
||||
@numsubsecentry{Killing And Yanking}{8.4.4}{Commands For Killing}{149}
|
||||
@numsubsecentry{Specifying Numeric Arguments}{8.4.5}{Numeric Arguments}{151}
|
||||
@numsubsecentry{Letting Readline Type For You}{8.4.6}{Commands For Completion}{151}
|
||||
@numsubsecentry{Keyboard Macros}{8.4.7}{Keyboard Macros}{153}
|
||||
@numsubsecentry{Some Miscellaneous Commands}{8.4.8}{Miscellaneous Commands}{153}
|
||||
@numsecentry{Readline vi Mode}{8.5}{Readline vi Mode}{156}
|
||||
@numsecentry{Programmable Completion}{8.6}{Programmable Completion}{156}
|
||||
@numsecentry{Programmable Completion Builtins}{8.7}{Programmable Completion Builtins}{159}
|
||||
@numsecentry{A Programmable Completion Example}{8.8}{A Programmable Completion Example}{163}
|
||||
@numchapentry{Using History Interactively}{9}{Using History Interactively}{166}
|
||||
@numsecentry{Bash History Facilities}{9.1}{Bash History Facilities}{166}
|
||||
@numsecentry{Bash History Builtins}{9.2}{Bash History Builtins}{167}
|
||||
@numsecentry{History Expansion}{9.3}{History Interaction}{169}
|
||||
@numsubsecentry{Event Designators}{9.3.1}{Event Designators}{170}
|
||||
@numsubsecentry{Word Designators}{9.3.2}{Word Designators}{171}
|
||||
@numsubsecentry{Modifiers}{9.3.3}{Modifiers}{172}
|
||||
@numchapentry{Installing Bash}{10}{Installing Bash}{173}
|
||||
@numsecentry{Basic Installation}{10.1}{Basic Installation}{173}
|
||||
@numsecentry{Compilers and Options}{10.2}{Compilers and Options}{174}
|
||||
@numsecentry{Compiling For Multiple Architectures}{10.3}{Compiling For Multiple Architectures}{174}
|
||||
@numsecentry{Installation Names}{10.4}{Installation Names}{175}
|
||||
@numsecentry{Specifying the System Type}{10.5}{Specifying the System Type}{175}
|
||||
@numsecentry{Sharing Defaults}{10.6}{Sharing Defaults}{175}
|
||||
@numsecentry{Operation Controls}{10.7}{Operation Controls}{176}
|
||||
@numsecentry{Optional Features}{10.8}{Optional Features}{176}
|
||||
@appentry{Reporting Bugs}{A}{Reporting Bugs}{182}
|
||||
@appentry{Major Differences From The Bourne Shell}{B}{Major Differences From The Bourne Shell}{183}
|
||||
@appsecentry{Implementation Differences From The SVR4.2 Shell}{B.1}{}{188}
|
||||
@appentry{GNU Free Documentation License}{C}{GNU Free Documentation License}{190}
|
||||
@appentry{Indexes}{D}{Indexes}{198}
|
||||
@appsecentry{Index of Shell Builtin Commands}{D.1}{Builtin Index}{198}
|
||||
@appsecentry{Index of Shell Reserved Words}{D.2}{Reserved Word Index}{199}
|
||||
@appsecentry{Parameter and Variable Index}{D.3}{Variable Index}{200}
|
||||
@appsecentry{Function Index}{D.4}{Function Index}{202}
|
||||
@appsecentry{Concept Index}{D.5}{Concept Index}{204}
|
||||
@numsubsecentry{Exit Status}{3.7.5}{Exit Status}{48}
|
||||
@numsubsecentry{Signals}{3.7.6}{Signals}{49}
|
||||
@numsecentry{Shell Scripts}{3.8}{Shell Scripts}{50}
|
||||
@numchapentry{Shell Builtin Commands}{4}{Shell Builtin Commands}{52}
|
||||
@numsecentry{Bourne Shell Builtins}{4.1}{Bourne Shell Builtins}{52}
|
||||
@numsecentry{Bash Builtin Commands}{4.2}{Bash Builtins}{61}
|
||||
@numsecentry{Modifying Shell Behavior}{4.3}{Modifying Shell Behavior}{73}
|
||||
@numsubsecentry{The Set Builtin}{4.3.1}{The Set Builtin}{74}
|
||||
@numsubsecentry{The Shopt Builtin}{4.3.2}{The Shopt Builtin}{78}
|
||||
@numsecentry{Special Builtins}{4.4}{Special Builtins}{85}
|
||||
@numchapentry{Shell Variables}{5}{Shell Variables}{86}
|
||||
@numsecentry{Bourne Shell Variables}{5.1}{Bourne Shell Variables}{86}
|
||||
@numsecentry{Bash Variables}{5.2}{Bash Variables}{87}
|
||||
@numchapentry{Bash Features}{6}{Bash Features}{100}
|
||||
@numsecentry{Invoking Bash}{6.1}{Invoking Bash}{100}
|
||||
@numsecentry{Bash Startup Files}{6.2}{Bash Startup Files}{102}
|
||||
@numsecentry{Interactive Shells}{6.3}{Interactive Shells}{104}
|
||||
@numsubsecentry{What is an Interactive Shell?}{6.3.1}{What is an Interactive Shell?}{104}
|
||||
@numsubsecentry{Is this Shell Interactive?}{6.3.2}{Is this Shell Interactive?}{104}
|
||||
@numsubsecentry{Interactive Shell Behavior}{6.3.3}{Interactive Shell Behavior}{104}
|
||||
@numsecentry{Bash Conditional Expressions}{6.4}{Bash Conditional Expressions}{105}
|
||||
@numsecentry{Shell Arithmetic}{6.5}{Shell Arithmetic}{107}
|
||||
@numsecentry{Aliases}{6.6}{Aliases}{109}
|
||||
@numsecentry{Arrays}{6.7}{Arrays}{110}
|
||||
@numsecentry{The Directory Stack}{6.8}{The Directory Stack}{112}
|
||||
@numsubsecentry{Directory Stack Builtins}{6.8.1}{Directory Stack Builtins}{112}
|
||||
@numsecentry{Controlling the Prompt}{6.9}{Controlling the Prompt}{114}
|
||||
@numsecentry{The Restricted Shell}{6.10}{The Restricted Shell}{115}
|
||||
@numsecentry{Bash and POSIX}{6.11}{Bash POSIX Mode}{116}
|
||||
@numsubsecentry{What is POSIX?}{6.11.1}{}{116}
|
||||
@numsubsecentry{Bash POSIX Mode}{6.11.2}{}{116}
|
||||
@numsecentry{Shell Compatibility Mode}{6.12}{Shell Compatibility Mode}{121}
|
||||
@numchapentry{Job Control}{7}{Job Control}{125}
|
||||
@numsecentry{Job Control Basics}{7.1}{Job Control Basics}{125}
|
||||
@numsecentry{Job Control Builtins}{7.2}{Job Control Builtins}{126}
|
||||
@numsecentry{Job Control Variables}{7.3}{Job Control Variables}{129}
|
||||
@numchapentry{Command Line Editing}{8}{Command Line Editing}{130}
|
||||
@numsecentry{Introduction to Line Editing}{8.1}{Introduction and Notation}{130}
|
||||
@numsecentry{Readline Interaction}{8.2}{Readline Interaction}{130}
|
||||
@numsubsecentry{Readline Bare Essentials}{8.2.1}{Readline Bare Essentials}{131}
|
||||
@numsubsecentry{Readline Movement Commands}{8.2.2}{Readline Movement Commands}{131}
|
||||
@numsubsecentry{Readline Killing Commands}{8.2.3}{Readline Killing Commands}{132}
|
||||
@numsubsecentry{Readline Arguments}{8.2.4}{Readline Arguments}{132}
|
||||
@numsubsecentry{Searching for Commands in the History}{8.2.5}{Searching}{133}
|
||||
@numsecentry{Readline Init File}{8.3}{Readline Init File}{133}
|
||||
@numsubsecentry{Readline Init File Syntax}{8.3.1}{Readline Init File Syntax}{133}
|
||||
@numsubsecentry{Conditional Init Constructs}{8.3.2}{Conditional Init Constructs}{143}
|
||||
@numsubsecentry{Sample Init File}{8.3.3}{Sample Init File}{144}
|
||||
@numsecentry{Bindable Readline Commands}{8.4}{Bindable Readline Commands}{147}
|
||||
@numsubsecentry{Commands For Moving}{8.4.1}{Commands For Moving}{147}
|
||||
@numsubsecentry{Commands For Manipulating The History}{8.4.2}{Commands For History}{148}
|
||||
@numsubsecentry{Commands For Changing Text}{8.4.3}{Commands For Text}{150}
|
||||
@numsubsecentry{Killing And Yanking}{8.4.4}{Commands For Killing}{151}
|
||||
@numsubsecentry{Specifying Numeric Arguments}{8.4.5}{Numeric Arguments}{153}
|
||||
@numsubsecentry{Letting Readline Type For You}{8.4.6}{Commands For Completion}{153}
|
||||
@numsubsecentry{Keyboard Macros}{8.4.7}{Keyboard Macros}{155}
|
||||
@numsubsecentry{Some Miscellaneous Commands}{8.4.8}{Miscellaneous Commands}{155}
|
||||
@numsecentry{Readline vi Mode}{8.5}{Readline vi Mode}{158}
|
||||
@numsecentry{Programmable Completion}{8.6}{Programmable Completion}{158}
|
||||
@numsecentry{Programmable Completion Builtins}{8.7}{Programmable Completion Builtins}{161}
|
||||
@numsecentry{A Programmable Completion Example}{8.8}{A Programmable Completion Example}{165}
|
||||
@numchapentry{Using History Interactively}{9}{Using History Interactively}{168}
|
||||
@numsecentry{Bash History Facilities}{9.1}{Bash History Facilities}{168}
|
||||
@numsecentry{Bash History Builtins}{9.2}{Bash History Builtins}{169}
|
||||
@numsecentry{History Expansion}{9.3}{History Interaction}{171}
|
||||
@numsubsecentry{Event Designators}{9.3.1}{Event Designators}{172}
|
||||
@numsubsecentry{Word Designators}{9.3.2}{Word Designators}{173}
|
||||
@numsubsecentry{Modifiers}{9.3.3}{Modifiers}{174}
|
||||
@numchapentry{Installing Bash}{10}{Installing Bash}{175}
|
||||
@numsecentry{Basic Installation}{10.1}{Basic Installation}{175}
|
||||
@numsecentry{Compilers and Options}{10.2}{Compilers and Options}{176}
|
||||
@numsecentry{Compiling For Multiple Architectures}{10.3}{Compiling For Multiple Architectures}{176}
|
||||
@numsecentry{Installation Names}{10.4}{Installation Names}{177}
|
||||
@numsecentry{Specifying the System Type}{10.5}{Specifying the System Type}{177}
|
||||
@numsecentry{Sharing Defaults}{10.6}{Sharing Defaults}{177}
|
||||
@numsecentry{Operation Controls}{10.7}{Operation Controls}{178}
|
||||
@numsecentry{Optional Features}{10.8}{Optional Features}{178}
|
||||
@appentry{Reporting Bugs}{A}{Reporting Bugs}{184}
|
||||
@appentry{Major Differences From The Bourne Shell}{B}{Major Differences From The Bourne Shell}{185}
|
||||
@appsecentry{Implementation Differences From The SVR4.2 Shell}{B.1}{}{190}
|
||||
@appentry{GNU Free Documentation License}{C}{GNU Free Documentation License}{192}
|
||||
@appentry{Indexes}{D}{Indexes}{200}
|
||||
@appsecentry{Index of Shell Builtin Commands}{D.1}{Builtin Index}{200}
|
||||
@appsecentry{Index of Shell Reserved Words}{D.2}{Reserved Word Index}{201}
|
||||
@appsecentry{Parameter and Variable Index}{D.3}{Variable Index}{202}
|
||||
@appsecentry{Function Index}{D.4}{Function Index}{204}
|
||||
@appsecentry{Concept Index}{D.5}{Concept Index}{206}
|
||||
|
||||
+161
-161
@@ -2,8 +2,8 @@
|
||||
\entry{LC_MESSAGES}{8}{\code {LC_MESSAGES}}
|
||||
\entry{TEXTDOMAIN}{8}{\code {TEXTDOMAIN}}
|
||||
\entry{TEXTDOMAINDIR}{8}{\code {TEXTDOMAINDIR}}
|
||||
\entry{*}{23}{\code {*}}
|
||||
\entry{$*}{23}{\code {$*}}
|
||||
\entry{*}{24}{\code {*}}
|
||||
\entry{$*}{24}{\code {$*}}
|
||||
\entry{@}{24}{\code {@}}
|
||||
\entry{$@}{24}{\code {$@}}
|
||||
\entry{#}{24}{\code {#}}
|
||||
@@ -18,162 +18,162 @@
|
||||
\entry{$!}{24}{\code {$!}}
|
||||
\entry{0}{24}{\code {0}}
|
||||
\entry{$0}{24}{\code {$0}}
|
||||
\entry{CDPATH}{85}{\code {CDPATH}}
|
||||
\entry{HOME}{85}{\code {HOME}}
|
||||
\entry{IFS}{85}{\code {IFS}}
|
||||
\entry{MAIL}{85}{\code {MAIL}}
|
||||
\entry{MAILPATH}{85}{\code {MAILPATH}}
|
||||
\entry{OPTARG}{85}{\code {OPTARG}}
|
||||
\entry{OPTIND}{85}{\code {OPTIND}}
|
||||
\entry{PATH}{85}{\code {PATH}}
|
||||
\entry{PS1}{85}{\code {PS1}}
|
||||
\entry{PS2}{85}{\code {PS2}}
|
||||
\entry{_}{86}{\code {_}}
|
||||
\entry{$_}{86}{\code {$_}}
|
||||
\entry{BASH}{86}{\code {BASH}}
|
||||
\entry{BASHOPTS}{86}{\code {BASHOPTS}}
|
||||
\entry{BASHPID}{86}{\code {BASHPID}}
|
||||
\entry{BASH_ALIASES}{86}{\code {BASH_ALIASES}}
|
||||
\entry{BASH_ARGC}{86}{\code {BASH_ARGC}}
|
||||
\entry{BASH_ARGV}{86}{\code {BASH_ARGV}}
|
||||
\entry{BASH_ARGV0}{87}{\code {BASH_ARGV0}}
|
||||
\entry{BASH_CMDS}{87}{\code {BASH_CMDS}}
|
||||
\entry{BASH_COMMAND}{87}{\code {BASH_COMMAND}}
|
||||
\entry{BASH_COMPAT}{87}{\code {BASH_COMPAT}}
|
||||
\entry{BASH_ENV}{87}{\code {BASH_ENV}}
|
||||
\entry{BASH_EXECUTION_STRING}{87}{\code {BASH_EXECUTION_STRING}}
|
||||
\entry{BASH_LINENO}{88}{\code {BASH_LINENO}}
|
||||
\entry{BASH_LOADABLES_PATH}{88}{\code {BASH_LOADABLES_PATH}}
|
||||
\entry{BASH_MONOSECONDS}{88}{\code {BASH_MONOSECONDS}}
|
||||
\entry{BASH_REMATCH}{88}{\code {BASH_REMATCH}}
|
||||
\entry{BASH_SOURCE}{88}{\code {BASH_SOURCE}}
|
||||
\entry{BASH_SUBSHELL}{88}{\code {BASH_SUBSHELL}}
|
||||
\entry{BASH_TRAPSIG}{88}{\code {BASH_TRAPSIG}}
|
||||
\entry{BASH_VERSINFO}{88}{\code {BASH_VERSINFO}}
|
||||
\entry{BASH_VERSION}{89}{\code {BASH_VERSION}}
|
||||
\entry{BASH_XTRACEFD}{89}{\code {BASH_XTRACEFD}}
|
||||
\entry{CHILD_MAX}{89}{\code {CHILD_MAX}}
|
||||
\entry{COLUMNS}{89}{\code {COLUMNS}}
|
||||
\entry{COMP_CWORD}{89}{\code {COMP_CWORD}}
|
||||
\entry{COMP_KEY}{89}{\code {COMP_KEY}}
|
||||
\entry{COMP_LINE}{89}{\code {COMP_LINE}}
|
||||
\entry{COMP_POINT}{90}{\code {COMP_POINT}}
|
||||
\entry{COMP_TYPE}{90}{\code {COMP_TYPE}}
|
||||
\entry{COMP_WORDBREAKS}{90}{\code {COMP_WORDBREAKS}}
|
||||
\entry{COMP_WORDS}{90}{\code {COMP_WORDS}}
|
||||
\entry{COMPREPLY}{90}{\code {COMPREPLY}}
|
||||
\entry{COPROC}{90}{\code {COPROC}}
|
||||
\entry{DIRSTACK}{90}{\code {DIRSTACK}}
|
||||
\entry{EMACS}{90}{\code {EMACS}}
|
||||
\entry{ENV}{90}{\code {ENV}}
|
||||
\entry{EPOCHREALTIME}{91}{\code {EPOCHREALTIME}}
|
||||
\entry{EPOCHSECONDS}{91}{\code {EPOCHSECONDS}}
|
||||
\entry{EUID}{91}{\code {EUID}}
|
||||
\entry{EXECIGNORE}{91}{\code {EXECIGNORE}}
|
||||
\entry{FCEDIT}{91}{\code {FCEDIT}}
|
||||
\entry{FIGNORE}{91}{\code {FIGNORE}}
|
||||
\entry{FUNCNAME}{91}{\code {FUNCNAME}}
|
||||
\entry{FUNCNEST}{91}{\code {FUNCNEST}}
|
||||
\entry{GLOBIGNORE}{91}{\code {GLOBIGNORE}}
|
||||
\entry{GLOBSORT}{92}{\code {GLOBSORT}}
|
||||
\entry{GROUPS}{92}{\code {GROUPS}}
|
||||
\entry{histchars}{92}{\code {histchars}}
|
||||
\entry{HISTCMD}{92}{\code {HISTCMD}}
|
||||
\entry{HISTCONTROL}{93}{\code {HISTCONTROL}}
|
||||
\entry{HISTFILE}{93}{\code {HISTFILE}}
|
||||
\entry{HISTFILESIZE}{93}{\code {HISTFILESIZE}}
|
||||
\entry{HISTIGNORE}{93}{\code {HISTIGNORE}}
|
||||
\entry{HISTSIZE}{93}{\code {HISTSIZE}}
|
||||
\entry{HISTTIMEFORMAT}{94}{\code {HISTTIMEFORMAT}}
|
||||
\entry{HOSTFILE}{94}{\code {HOSTFILE}}
|
||||
\entry{HOSTNAME}{94}{\code {HOSTNAME}}
|
||||
\entry{HOSTTYPE}{94}{\code {HOSTTYPE}}
|
||||
\entry{IGNOREEOF}{94}{\code {IGNOREEOF}}
|
||||
\entry{INPUTRC}{94}{\code {INPUTRC}}
|
||||
\entry{INSIDE_EMACS}{94}{\code {INSIDE_EMACS}}
|
||||
\entry{LANG}{94}{\code {LANG}}
|
||||
\entry{LC_ALL}{94}{\code {LC_ALL}}
|
||||
\entry{LC_COLLATE}{94}{\code {LC_COLLATE}}
|
||||
\entry{LC_CTYPE}{95}{\code {LC_CTYPE}}
|
||||
\entry{LC_MESSAGES}{95}{\code {LC_MESSAGES}}
|
||||
\entry{LC_NUMERIC}{95}{\code {LC_NUMERIC}}
|
||||
\entry{LC_TIME}{95}{\code {LC_TIME}}
|
||||
\entry{LINENO}{95}{\code {LINENO}}
|
||||
\entry{LINES}{95}{\code {LINES}}
|
||||
\entry{MACHTYPE}{95}{\code {MACHTYPE}}
|
||||
\entry{MAILCHECK}{95}{\code {MAILCHECK}}
|
||||
\entry{MAPFILE}{95}{\code {MAPFILE}}
|
||||
\entry{OLDPWD}{95}{\code {OLDPWD}}
|
||||
\entry{OPTERR}{95}{\code {OPTERR}}
|
||||
\entry{OSTYPE}{95}{\code {OSTYPE}}
|
||||
\entry{PIPESTATUS}{95}{\code {PIPESTATUS}}
|
||||
\entry{POSIXLY_CORRECT}{95}{\code {POSIXLY_CORRECT}}
|
||||
\entry{PPID}{96}{\code {PPID}}
|
||||
\entry{PROMPT_COMMAND}{96}{\code {PROMPT_COMMAND}}
|
||||
\entry{PROMPT_DIRTRIM}{96}{\code {PROMPT_DIRTRIM}}
|
||||
\entry{PS0}{96}{\code {PS0}}
|
||||
\entry{PS3}{96}{\code {PS3}}
|
||||
\entry{PS4}{96}{\code {PS4}}
|
||||
\entry{PWD}{96}{\code {PWD}}
|
||||
\entry{RANDOM}{96}{\code {RANDOM}}
|
||||
\entry{READLINE_ARGUMENT}{96}{\code {READLINE_ARGUMENT}}
|
||||
\entry{READLINE_LINE}{96}{\code {READLINE_LINE}}
|
||||
\entry{READLINE_MARK}{96}{\code {READLINE_MARK}}
|
||||
\entry{READLINE_POINT}{97}{\code {READLINE_POINT}}
|
||||
\entry{REPLY}{97}{\code {REPLY}}
|
||||
\entry{SECONDS}{97}{\code {SECONDS}}
|
||||
\entry{SHELL}{97}{\code {SHELL}}
|
||||
\entry{SHELLOPTS}{97}{\code {SHELLOPTS}}
|
||||
\entry{SHLVL}{97}{\code {SHLVL}}
|
||||
\entry{SRANDOM}{97}{\code {SRANDOM}}
|
||||
\entry{TIMEFORMAT}{97}{\code {TIMEFORMAT}}
|
||||
\entry{TMOUT}{98}{\code {TMOUT}}
|
||||
\entry{TMPDIR}{98}{\code {TMPDIR}}
|
||||
\entry{UID}{98}{\code {UID}}
|
||||
\entry{auto_resume}{127}{\code {auto_resume}}
|
||||
\entry{active-region-start-color}{132}{\code {active-region-start-color}}
|
||||
\entry{active-region-end-color}{132}{\code {active-region-end-color}}
|
||||
\entry{bell-style}{132}{\code {bell-style}}
|
||||
\entry{bind-tty-special-chars}{133}{\code {bind-tty-special-chars}}
|
||||
\entry{blink-matching-paren}{133}{\code {blink-matching-paren}}
|
||||
\entry{colored-completion-prefix}{133}{\code {colored-completion-prefix}}
|
||||
\entry{colored-stats}{133}{\code {colored-stats}}
|
||||
\entry{comment-begin}{133}{\code {comment-begin}}
|
||||
\entry{completion-display-width}{133}{\code {completion-display-width}}
|
||||
\entry{completion-ignore-case}{133}{\code {completion-ignore-case}}
|
||||
\entry{completion-map-case}{133}{\code {completion-map-case}}
|
||||
\entry{completion-prefix-display-length}{133}{\code {completion-prefix-display-length}}
|
||||
\entry{completion-query-items}{134}{\code {completion-query-items}}
|
||||
\entry{convert-meta}{134}{\code {convert-meta}}
|
||||
\entry{disable-completion}{134}{\code {disable-completion}}
|
||||
\entry{echo-control-characters}{134}{\code {echo-control-characters}}
|
||||
\entry{editing-mode}{134}{\code {editing-mode}}
|
||||
\entry{emacs-mode-string}{134}{\code {emacs-mode-string}}
|
||||
\entry{enable-active-region The}{135}{\code {enable-active-region The}}
|
||||
\entry{enable-bracketed-paste}{135}{\code {enable-bracketed-paste}}
|
||||
\entry{enable-keypad}{135}{\code {enable-keypad}}
|
||||
\entry{enable-meta-key}{135}{\code {enable-meta-key}}
|
||||
\entry{expand-tilde}{135}{\code {expand-tilde}}
|
||||
\entry{force-meta-prefix}{135}{\code {force-meta-prefix}}
|
||||
\entry{history-preserve-point}{136}{\code {history-preserve-point}}
|
||||
\entry{history-size}{136}{\code {history-size}}
|
||||
\entry{horizontal-scroll-mode}{136}{\code {horizontal-scroll-mode}}
|
||||
\entry{input-meta}{136}{\code {input-meta}}
|
||||
\entry{meta-flag}{136}{\code {meta-flag}}
|
||||
\entry{isearch-terminators}{136}{\code {isearch-terminators}}
|
||||
\entry{keymap}{136}{\code {keymap}}
|
||||
\entry{mark-modified-lines}{137}{\code {mark-modified-lines}}
|
||||
\entry{mark-symlinked-directories}{137}{\code {mark-symlinked-directories}}
|
||||
\entry{match-hidden-files}{137}{\code {match-hidden-files}}
|
||||
\entry{menu-complete-display-prefix}{137}{\code {menu-complete-display-prefix}}
|
||||
\entry{output-meta}{137}{\code {output-meta}}
|
||||
\entry{page-completions}{137}{\code {page-completions}}
|
||||
\entry{revert-all-at-newline}{138}{\code {revert-all-at-newline}}
|
||||
\entry{search-ignore-case}{138}{\code {search-ignore-case}}
|
||||
\entry{show-all-if-ambiguous}{138}{\code {show-all-if-ambiguous}}
|
||||
\entry{show-all-if-unmodified}{138}{\code {show-all-if-unmodified}}
|
||||
\entry{show-mode-in-prompt}{138}{\code {show-mode-in-prompt}}
|
||||
\entry{skip-completed-text}{138}{\code {skip-completed-text}}
|
||||
\entry{vi-cmd-mode-string}{138}{\code {vi-cmd-mode-string}}
|
||||
\entry{vi-ins-mode-string}{139}{\code {vi-ins-mode-string}}
|
||||
\entry{visible-stats}{139}{\code {visible-stats}}
|
||||
\entry{CDPATH}{86}{\code {CDPATH}}
|
||||
\entry{HOME}{86}{\code {HOME}}
|
||||
\entry{IFS}{86}{\code {IFS}}
|
||||
\entry{MAIL}{86}{\code {MAIL}}
|
||||
\entry{MAILPATH}{86}{\code {MAILPATH}}
|
||||
\entry{OPTARG}{86}{\code {OPTARG}}
|
||||
\entry{OPTIND}{86}{\code {OPTIND}}
|
||||
\entry{PATH}{86}{\code {PATH}}
|
||||
\entry{PS1}{86}{\code {PS1}}
|
||||
\entry{PS2}{86}{\code {PS2}}
|
||||
\entry{_}{87}{\code {_}}
|
||||
\entry{$_}{87}{\code {$_}}
|
||||
\entry{BASH}{87}{\code {BASH}}
|
||||
\entry{BASHOPTS}{87}{\code {BASHOPTS}}
|
||||
\entry{BASHPID}{87}{\code {BASHPID}}
|
||||
\entry{BASH_ALIASES}{87}{\code {BASH_ALIASES}}
|
||||
\entry{BASH_ARGC}{87}{\code {BASH_ARGC}}
|
||||
\entry{BASH_ARGV}{88}{\code {BASH_ARGV}}
|
||||
\entry{BASH_ARGV0}{88}{\code {BASH_ARGV0}}
|
||||
\entry{BASH_CMDS}{88}{\code {BASH_CMDS}}
|
||||
\entry{BASH_COMMAND}{88}{\code {BASH_COMMAND}}
|
||||
\entry{BASH_COMPAT}{88}{\code {BASH_COMPAT}}
|
||||
\entry{BASH_ENV}{88}{\code {BASH_ENV}}
|
||||
\entry{BASH_EXECUTION_STRING}{89}{\code {BASH_EXECUTION_STRING}}
|
||||
\entry{BASH_LINENO}{89}{\code {BASH_LINENO}}
|
||||
\entry{BASH_LOADABLES_PATH}{89}{\code {BASH_LOADABLES_PATH}}
|
||||
\entry{BASH_MONOSECONDS}{89}{\code {BASH_MONOSECONDS}}
|
||||
\entry{BASH_REMATCH}{89}{\code {BASH_REMATCH}}
|
||||
\entry{BASH_SOURCE}{89}{\code {BASH_SOURCE}}
|
||||
\entry{BASH_SUBSHELL}{89}{\code {BASH_SUBSHELL}}
|
||||
\entry{BASH_TRAPSIG}{89}{\code {BASH_TRAPSIG}}
|
||||
\entry{BASH_VERSINFO}{89}{\code {BASH_VERSINFO}}
|
||||
\entry{BASH_VERSION}{90}{\code {BASH_VERSION}}
|
||||
\entry{BASH_XTRACEFD}{90}{\code {BASH_XTRACEFD}}
|
||||
\entry{CHILD_MAX}{90}{\code {CHILD_MAX}}
|
||||
\entry{COLUMNS}{90}{\code {COLUMNS}}
|
||||
\entry{COMP_CWORD}{90}{\code {COMP_CWORD}}
|
||||
\entry{COMP_KEY}{90}{\code {COMP_KEY}}
|
||||
\entry{COMP_LINE}{91}{\code {COMP_LINE}}
|
||||
\entry{COMP_POINT}{91}{\code {COMP_POINT}}
|
||||
\entry{COMP_TYPE}{91}{\code {COMP_TYPE}}
|
||||
\entry{COMP_WORDBREAKS}{91}{\code {COMP_WORDBREAKS}}
|
||||
\entry{COMP_WORDS}{91}{\code {COMP_WORDS}}
|
||||
\entry{COMPREPLY}{91}{\code {COMPREPLY}}
|
||||
\entry{COPROC}{91}{\code {COPROC}}
|
||||
\entry{DIRSTACK}{91}{\code {DIRSTACK}}
|
||||
\entry{EMACS}{92}{\code {EMACS}}
|
||||
\entry{ENV}{92}{\code {ENV}}
|
||||
\entry{EPOCHREALTIME}{92}{\code {EPOCHREALTIME}}
|
||||
\entry{EPOCHSECONDS}{92}{\code {EPOCHSECONDS}}
|
||||
\entry{EUID}{92}{\code {EUID}}
|
||||
\entry{EXECIGNORE}{92}{\code {EXECIGNORE}}
|
||||
\entry{FCEDIT}{92}{\code {FCEDIT}}
|
||||
\entry{FIGNORE}{92}{\code {FIGNORE}}
|
||||
\entry{FUNCNAME}{92}{\code {FUNCNAME}}
|
||||
\entry{FUNCNEST}{93}{\code {FUNCNEST}}
|
||||
\entry{GLOBIGNORE}{93}{\code {GLOBIGNORE}}
|
||||
\entry{GLOBSORT}{93}{\code {GLOBSORT}}
|
||||
\entry{GROUPS}{93}{\code {GROUPS}}
|
||||
\entry{histchars}{93}{\code {histchars}}
|
||||
\entry{HISTCMD}{94}{\code {HISTCMD}}
|
||||
\entry{HISTCONTROL}{94}{\code {HISTCONTROL}}
|
||||
\entry{HISTFILE}{94}{\code {HISTFILE}}
|
||||
\entry{HISTFILESIZE}{94}{\code {HISTFILESIZE}}
|
||||
\entry{HISTIGNORE}{94}{\code {HISTIGNORE}}
|
||||
\entry{HISTSIZE}{95}{\code {HISTSIZE}}
|
||||
\entry{HISTTIMEFORMAT}{95}{\code {HISTTIMEFORMAT}}
|
||||
\entry{HOSTFILE}{95}{\code {HOSTFILE}}
|
||||
\entry{HOSTNAME}{95}{\code {HOSTNAME}}
|
||||
\entry{HOSTTYPE}{95}{\code {HOSTTYPE}}
|
||||
\entry{IGNOREEOF}{95}{\code {IGNOREEOF}}
|
||||
\entry{INPUTRC}{95}{\code {INPUTRC}}
|
||||
\entry{INSIDE_EMACS}{95}{\code {INSIDE_EMACS}}
|
||||
\entry{LANG}{95}{\code {LANG}}
|
||||
\entry{LC_ALL}{95}{\code {LC_ALL}}
|
||||
\entry{LC_COLLATE}{96}{\code {LC_COLLATE}}
|
||||
\entry{LC_CTYPE}{96}{\code {LC_CTYPE}}
|
||||
\entry{LC_MESSAGES}{96}{\code {LC_MESSAGES}}
|
||||
\entry{LC_NUMERIC}{96}{\code {LC_NUMERIC}}
|
||||
\entry{LC_TIME}{96}{\code {LC_TIME}}
|
||||
\entry{LINENO}{96}{\code {LINENO}}
|
||||
\entry{LINES}{96}{\code {LINES}}
|
||||
\entry{MACHTYPE}{96}{\code {MACHTYPE}}
|
||||
\entry{MAILCHECK}{96}{\code {MAILCHECK}}
|
||||
\entry{MAPFILE}{96}{\code {MAPFILE}}
|
||||
\entry{OLDPWD}{96}{\code {OLDPWD}}
|
||||
\entry{OPTERR}{96}{\code {OPTERR}}
|
||||
\entry{OSTYPE}{96}{\code {OSTYPE}}
|
||||
\entry{PIPESTATUS}{96}{\code {PIPESTATUS}}
|
||||
\entry{POSIXLY_CORRECT}{97}{\code {POSIXLY_CORRECT}}
|
||||
\entry{PPID}{97}{\code {PPID}}
|
||||
\entry{PROMPT_COMMAND}{97}{\code {PROMPT_COMMAND}}
|
||||
\entry{PROMPT_DIRTRIM}{97}{\code {PROMPT_DIRTRIM}}
|
||||
\entry{PS0}{97}{\code {PS0}}
|
||||
\entry{PS3}{97}{\code {PS3}}
|
||||
\entry{PS4}{97}{\code {PS4}}
|
||||
\entry{PWD}{97}{\code {PWD}}
|
||||
\entry{RANDOM}{97}{\code {RANDOM}}
|
||||
\entry{READLINE_ARGUMENT}{97}{\code {READLINE_ARGUMENT}}
|
||||
\entry{READLINE_LINE}{97}{\code {READLINE_LINE}}
|
||||
\entry{READLINE_MARK}{98}{\code {READLINE_MARK}}
|
||||
\entry{READLINE_POINT}{98}{\code {READLINE_POINT}}
|
||||
\entry{REPLY}{98}{\code {REPLY}}
|
||||
\entry{SECONDS}{98}{\code {SECONDS}}
|
||||
\entry{SHELL}{98}{\code {SHELL}}
|
||||
\entry{SHELLOPTS}{98}{\code {SHELLOPTS}}
|
||||
\entry{SHLVL}{98}{\code {SHLVL}}
|
||||
\entry{SRANDOM}{98}{\code {SRANDOM}}
|
||||
\entry{TIMEFORMAT}{98}{\code {TIMEFORMAT}}
|
||||
\entry{TMOUT}{99}{\code {TMOUT}}
|
||||
\entry{TMPDIR}{99}{\code {TMPDIR}}
|
||||
\entry{UID}{99}{\code {UID}}
|
||||
\entry{auto_resume}{129}{\code {auto_resume}}
|
||||
\entry{active-region-start-color}{134}{\code {active-region-start-color}}
|
||||
\entry{active-region-end-color}{134}{\code {active-region-end-color}}
|
||||
\entry{bell-style}{134}{\code {bell-style}}
|
||||
\entry{bind-tty-special-chars}{135}{\code {bind-tty-special-chars}}
|
||||
\entry{blink-matching-paren}{135}{\code {blink-matching-paren}}
|
||||
\entry{colored-completion-prefix}{135}{\code {colored-completion-prefix}}
|
||||
\entry{colored-stats}{135}{\code {colored-stats}}
|
||||
\entry{comment-begin}{135}{\code {comment-begin}}
|
||||
\entry{completion-display-width}{135}{\code {completion-display-width}}
|
||||
\entry{completion-ignore-case}{135}{\code {completion-ignore-case}}
|
||||
\entry{completion-map-case}{135}{\code {completion-map-case}}
|
||||
\entry{completion-prefix-display-length}{135}{\code {completion-prefix-display-length}}
|
||||
\entry{completion-query-items}{136}{\code {completion-query-items}}
|
||||
\entry{convert-meta}{136}{\code {convert-meta}}
|
||||
\entry{disable-completion}{136}{\code {disable-completion}}
|
||||
\entry{echo-control-characters}{136}{\code {echo-control-characters}}
|
||||
\entry{editing-mode}{136}{\code {editing-mode}}
|
||||
\entry{emacs-mode-string}{136}{\code {emacs-mode-string}}
|
||||
\entry{enable-active-region The}{137}{\code {enable-active-region The}}
|
||||
\entry{enable-bracketed-paste}{137}{\code {enable-bracketed-paste}}
|
||||
\entry{enable-keypad}{137}{\code {enable-keypad}}
|
||||
\entry{enable-meta-key}{137}{\code {enable-meta-key}}
|
||||
\entry{expand-tilde}{137}{\code {expand-tilde}}
|
||||
\entry{force-meta-prefix}{137}{\code {force-meta-prefix}}
|
||||
\entry{history-preserve-point}{138}{\code {history-preserve-point}}
|
||||
\entry{history-size}{138}{\code {history-size}}
|
||||
\entry{horizontal-scroll-mode}{138}{\code {horizontal-scroll-mode}}
|
||||
\entry{input-meta}{138}{\code {input-meta}}
|
||||
\entry{meta-flag}{138}{\code {meta-flag}}
|
||||
\entry{isearch-terminators}{138}{\code {isearch-terminators}}
|
||||
\entry{keymap}{138}{\code {keymap}}
|
||||
\entry{mark-modified-lines}{139}{\code {mark-modified-lines}}
|
||||
\entry{mark-symlinked-directories}{139}{\code {mark-symlinked-directories}}
|
||||
\entry{match-hidden-files}{139}{\code {match-hidden-files}}
|
||||
\entry{menu-complete-display-prefix}{139}{\code {menu-complete-display-prefix}}
|
||||
\entry{output-meta}{139}{\code {output-meta}}
|
||||
\entry{page-completions}{139}{\code {page-completions}}
|
||||
\entry{revert-all-at-newline}{140}{\code {revert-all-at-newline}}
|
||||
\entry{search-ignore-case}{140}{\code {search-ignore-case}}
|
||||
\entry{show-all-if-ambiguous}{140}{\code {show-all-if-ambiguous}}
|
||||
\entry{show-all-if-unmodified}{140}{\code {show-all-if-unmodified}}
|
||||
\entry{show-mode-in-prompt}{140}{\code {show-mode-in-prompt}}
|
||||
\entry{skip-completed-text}{140}{\code {skip-completed-text}}
|
||||
\entry{vi-cmd-mode-string}{140}{\code {vi-cmd-mode-string}}
|
||||
\entry{vi-ins-mode-string}{141}{\code {vi-ins-mode-string}}
|
||||
\entry{visible-stats}{141}{\code {visible-stats}}
|
||||
|
||||
+161
-161
@@ -7,14 +7,14 @@
|
||||
\entry{\code {$!}}{24}
|
||||
\entry{\code {$#}}{24}
|
||||
\entry{\code {$$}}{24}
|
||||
\entry{\code {$*}}{23}
|
||||
\entry{\code {$*}}{24}
|
||||
\entry{\code {$-}}{24}
|
||||
\entry{\code {$?}}{24}
|
||||
\entry{\code {$@}}{24}
|
||||
\entry{\code {$_}}{86}
|
||||
\entry{\code {$_}}{87}
|
||||
\entry{\code {$0}}{24}
|
||||
\initial {*}
|
||||
\entry{\code {*}}{23}
|
||||
\entry{\code {*}}{24}
|
||||
\initial {-}
|
||||
\entry{\code {-}}{24}
|
||||
\initial {?}
|
||||
@@ -22,184 +22,184 @@
|
||||
\initial {@}
|
||||
\entry{\code {@}}{24}
|
||||
\initial {_}
|
||||
\entry{\code {_}}{86}
|
||||
\entry{\code {_}}{87}
|
||||
\initial {0}
|
||||
\entry{\code {0}}{24}
|
||||
\initial {A}
|
||||
\entry{\code {active-region-end-color}}{132}
|
||||
\entry{\code {active-region-start-color}}{132}
|
||||
\entry{\code {auto_resume}}{127}
|
||||
\entry{\code {active-region-end-color}}{134}
|
||||
\entry{\code {active-region-start-color}}{134}
|
||||
\entry{\code {auto_resume}}{129}
|
||||
\initial {B}
|
||||
\entry{\code {BASH}}{86}
|
||||
\entry{\code {BASH_ALIASES}}{86}
|
||||
\entry{\code {BASH_ARGC}}{86}
|
||||
\entry{\code {BASH_ARGV}}{86}
|
||||
\entry{\code {BASH_ARGV0}}{87}
|
||||
\entry{\code {BASH_CMDS}}{87}
|
||||
\entry{\code {BASH_COMMAND}}{87}
|
||||
\entry{\code {BASH_COMPAT}}{87}
|
||||
\entry{\code {BASH_ENV}}{87}
|
||||
\entry{\code {BASH_EXECUTION_STRING}}{87}
|
||||
\entry{\code {BASH_LINENO}}{88}
|
||||
\entry{\code {BASH_LOADABLES_PATH}}{88}
|
||||
\entry{\code {BASH_MONOSECONDS}}{88}
|
||||
\entry{\code {BASH_REMATCH}}{88}
|
||||
\entry{\code {BASH_SOURCE}}{88}
|
||||
\entry{\code {BASH_SUBSHELL}}{88}
|
||||
\entry{\code {BASH_TRAPSIG}}{88}
|
||||
\entry{\code {BASH_VERSINFO}}{88}
|
||||
\entry{\code {BASH_VERSION}}{89}
|
||||
\entry{\code {BASH_XTRACEFD}}{89}
|
||||
\entry{\code {BASHOPTS}}{86}
|
||||
\entry{\code {BASHPID}}{86}
|
||||
\entry{\code {bell-style}}{132}
|
||||
\entry{\code {bind-tty-special-chars}}{133}
|
||||
\entry{\code {blink-matching-paren}}{133}
|
||||
\entry{\code {BASH}}{87}
|
||||
\entry{\code {BASH_ALIASES}}{87}
|
||||
\entry{\code {BASH_ARGC}}{87}
|
||||
\entry{\code {BASH_ARGV}}{88}
|
||||
\entry{\code {BASH_ARGV0}}{88}
|
||||
\entry{\code {BASH_CMDS}}{88}
|
||||
\entry{\code {BASH_COMMAND}}{88}
|
||||
\entry{\code {BASH_COMPAT}}{88}
|
||||
\entry{\code {BASH_ENV}}{88}
|
||||
\entry{\code {BASH_EXECUTION_STRING}}{89}
|
||||
\entry{\code {BASH_LINENO}}{89}
|
||||
\entry{\code {BASH_LOADABLES_PATH}}{89}
|
||||
\entry{\code {BASH_MONOSECONDS}}{89}
|
||||
\entry{\code {BASH_REMATCH}}{89}
|
||||
\entry{\code {BASH_SOURCE}}{89}
|
||||
\entry{\code {BASH_SUBSHELL}}{89}
|
||||
\entry{\code {BASH_TRAPSIG}}{89}
|
||||
\entry{\code {BASH_VERSINFO}}{89}
|
||||
\entry{\code {BASH_VERSION}}{90}
|
||||
\entry{\code {BASH_XTRACEFD}}{90}
|
||||
\entry{\code {BASHOPTS}}{87}
|
||||
\entry{\code {BASHPID}}{87}
|
||||
\entry{\code {bell-style}}{134}
|
||||
\entry{\code {bind-tty-special-chars}}{135}
|
||||
\entry{\code {blink-matching-paren}}{135}
|
||||
\initial {C}
|
||||
\entry{\code {CDPATH}}{85}
|
||||
\entry{\code {CHILD_MAX}}{89}
|
||||
\entry{\code {colored-completion-prefix}}{133}
|
||||
\entry{\code {colored-stats}}{133}
|
||||
\entry{\code {COLUMNS}}{89}
|
||||
\entry{\code {comment-begin}}{133}
|
||||
\entry{\code {COMP_CWORD}}{89}
|
||||
\entry{\code {COMP_KEY}}{89}
|
||||
\entry{\code {COMP_LINE}}{89}
|
||||
\entry{\code {COMP_POINT}}{90}
|
||||
\entry{\code {COMP_TYPE}}{90}
|
||||
\entry{\code {COMP_WORDBREAKS}}{90}
|
||||
\entry{\code {COMP_WORDS}}{90}
|
||||
\entry{\code {completion-display-width}}{133}
|
||||
\entry{\code {completion-ignore-case}}{133}
|
||||
\entry{\code {completion-map-case}}{133}
|
||||
\entry{\code {completion-prefix-display-length}}{133}
|
||||
\entry{\code {completion-query-items}}{134}
|
||||
\entry{\code {COMPREPLY}}{90}
|
||||
\entry{\code {convert-meta}}{134}
|
||||
\entry{\code {COPROC}}{90}
|
||||
\entry{\code {CDPATH}}{86}
|
||||
\entry{\code {CHILD_MAX}}{90}
|
||||
\entry{\code {colored-completion-prefix}}{135}
|
||||
\entry{\code {colored-stats}}{135}
|
||||
\entry{\code {COLUMNS}}{90}
|
||||
\entry{\code {comment-begin}}{135}
|
||||
\entry{\code {COMP_CWORD}}{90}
|
||||
\entry{\code {COMP_KEY}}{90}
|
||||
\entry{\code {COMP_LINE}}{91}
|
||||
\entry{\code {COMP_POINT}}{91}
|
||||
\entry{\code {COMP_TYPE}}{91}
|
||||
\entry{\code {COMP_WORDBREAKS}}{91}
|
||||
\entry{\code {COMP_WORDS}}{91}
|
||||
\entry{\code {completion-display-width}}{135}
|
||||
\entry{\code {completion-ignore-case}}{135}
|
||||
\entry{\code {completion-map-case}}{135}
|
||||
\entry{\code {completion-prefix-display-length}}{135}
|
||||
\entry{\code {completion-query-items}}{136}
|
||||
\entry{\code {COMPREPLY}}{91}
|
||||
\entry{\code {convert-meta}}{136}
|
||||
\entry{\code {COPROC}}{91}
|
||||
\initial {D}
|
||||
\entry{\code {DIRSTACK}}{90}
|
||||
\entry{\code {disable-completion}}{134}
|
||||
\entry{\code {DIRSTACK}}{91}
|
||||
\entry{\code {disable-completion}}{136}
|
||||
\initial {E}
|
||||
\entry{\code {echo-control-characters}}{134}
|
||||
\entry{\code {editing-mode}}{134}
|
||||
\entry{\code {emacs-mode-string}}{134}
|
||||
\entry{\code {EMACS}}{90}
|
||||
\entry{\code {enable-active-region The}}{135}
|
||||
\entry{\code {enable-bracketed-paste}}{135}
|
||||
\entry{\code {enable-keypad}}{135}
|
||||
\entry{\code {enable-meta-key}}{135}
|
||||
\entry{\code {ENV}}{90}
|
||||
\entry{\code {EPOCHREALTIME}}{91}
|
||||
\entry{\code {EPOCHSECONDS}}{91}
|
||||
\entry{\code {EUID}}{91}
|
||||
\entry{\code {EXECIGNORE}}{91}
|
||||
\entry{\code {expand-tilde}}{135}
|
||||
\entry{\code {echo-control-characters}}{136}
|
||||
\entry{\code {editing-mode}}{136}
|
||||
\entry{\code {emacs-mode-string}}{136}
|
||||
\entry{\code {EMACS}}{92}
|
||||
\entry{\code {enable-active-region The}}{137}
|
||||
\entry{\code {enable-bracketed-paste}}{137}
|
||||
\entry{\code {enable-keypad}}{137}
|
||||
\entry{\code {enable-meta-key}}{137}
|
||||
\entry{\code {ENV}}{92}
|
||||
\entry{\code {EPOCHREALTIME}}{92}
|
||||
\entry{\code {EPOCHSECONDS}}{92}
|
||||
\entry{\code {EUID}}{92}
|
||||
\entry{\code {EXECIGNORE}}{92}
|
||||
\entry{\code {expand-tilde}}{137}
|
||||
\initial {F}
|
||||
\entry{\code {FCEDIT}}{91}
|
||||
\entry{\code {FIGNORE}}{91}
|
||||
\entry{\code {force-meta-prefix}}{135}
|
||||
\entry{\code {FUNCNAME}}{91}
|
||||
\entry{\code {FUNCNEST}}{91}
|
||||
\entry{\code {FCEDIT}}{92}
|
||||
\entry{\code {FIGNORE}}{92}
|
||||
\entry{\code {force-meta-prefix}}{137}
|
||||
\entry{\code {FUNCNAME}}{92}
|
||||
\entry{\code {FUNCNEST}}{93}
|
||||
\initial {G}
|
||||
\entry{\code {GLOBIGNORE}}{91}
|
||||
\entry{\code {GLOBSORT}}{92}
|
||||
\entry{\code {GROUPS}}{92}
|
||||
\entry{\code {GLOBIGNORE}}{93}
|
||||
\entry{\code {GLOBSORT}}{93}
|
||||
\entry{\code {GROUPS}}{93}
|
||||
\initial {H}
|
||||
\entry{\code {histchars}}{92}
|
||||
\entry{\code {HISTCMD}}{92}
|
||||
\entry{\code {HISTCONTROL}}{93}
|
||||
\entry{\code {HISTFILE}}{93}
|
||||
\entry{\code {HISTFILESIZE}}{93}
|
||||
\entry{\code {HISTIGNORE}}{93}
|
||||
\entry{\code {history-preserve-point}}{136}
|
||||
\entry{\code {history-size}}{136}
|
||||
\entry{\code {HISTSIZE}}{93}
|
||||
\entry{\code {HISTTIMEFORMAT}}{94}
|
||||
\entry{\code {HOME}}{85}
|
||||
\entry{\code {horizontal-scroll-mode}}{136}
|
||||
\entry{\code {HOSTFILE}}{94}
|
||||
\entry{\code {HOSTNAME}}{94}
|
||||
\entry{\code {HOSTTYPE}}{94}
|
||||
\entry{\code {histchars}}{93}
|
||||
\entry{\code {HISTCMD}}{94}
|
||||
\entry{\code {HISTCONTROL}}{94}
|
||||
\entry{\code {HISTFILE}}{94}
|
||||
\entry{\code {HISTFILESIZE}}{94}
|
||||
\entry{\code {HISTIGNORE}}{94}
|
||||
\entry{\code {history-preserve-point}}{138}
|
||||
\entry{\code {history-size}}{138}
|
||||
\entry{\code {HISTSIZE}}{95}
|
||||
\entry{\code {HISTTIMEFORMAT}}{95}
|
||||
\entry{\code {HOME}}{86}
|
||||
\entry{\code {horizontal-scroll-mode}}{138}
|
||||
\entry{\code {HOSTFILE}}{95}
|
||||
\entry{\code {HOSTNAME}}{95}
|
||||
\entry{\code {HOSTTYPE}}{95}
|
||||
\initial {I}
|
||||
\entry{\code {IFS}}{85}
|
||||
\entry{\code {IGNOREEOF}}{94}
|
||||
\entry{\code {input-meta}}{136}
|
||||
\entry{\code {INPUTRC}}{94}
|
||||
\entry{\code {INSIDE_EMACS}}{94}
|
||||
\entry{\code {isearch-terminators}}{136}
|
||||
\entry{\code {IFS}}{86}
|
||||
\entry{\code {IGNOREEOF}}{95}
|
||||
\entry{\code {input-meta}}{138}
|
||||
\entry{\code {INPUTRC}}{95}
|
||||
\entry{\code {INSIDE_EMACS}}{95}
|
||||
\entry{\code {isearch-terminators}}{138}
|
||||
\initial {K}
|
||||
\entry{\code {keymap}}{136}
|
||||
\entry{\code {keymap}}{138}
|
||||
\initial {L}
|
||||
\entry{\code {LANG}}{8, 94}
|
||||
\entry{\code {LC_ALL}}{94}
|
||||
\entry{\code {LC_COLLATE}}{94}
|
||||
\entry{\code {LC_CTYPE}}{95}
|
||||
\entry{\code {LC_MESSAGES}}{8, 95}
|
||||
\entry{\code {LC_NUMERIC}}{95}
|
||||
\entry{\code {LC_TIME}}{95}
|
||||
\entry{\code {LINENO}}{95}
|
||||
\entry{\code {LINES}}{95}
|
||||
\entry{\code {LANG}}{8, 95}
|
||||
\entry{\code {LC_ALL}}{95}
|
||||
\entry{\code {LC_COLLATE}}{96}
|
||||
\entry{\code {LC_CTYPE}}{96}
|
||||
\entry{\code {LC_MESSAGES}}{8, 96}
|
||||
\entry{\code {LC_NUMERIC}}{96}
|
||||
\entry{\code {LC_TIME}}{96}
|
||||
\entry{\code {LINENO}}{96}
|
||||
\entry{\code {LINES}}{96}
|
||||
\initial {M}
|
||||
\entry{\code {MACHTYPE}}{95}
|
||||
\entry{\code {MAIL}}{85}
|
||||
\entry{\code {MAILCHECK}}{95}
|
||||
\entry{\code {MAILPATH}}{85}
|
||||
\entry{\code {MAPFILE}}{95}
|
||||
\entry{\code {mark-modified-lines}}{137}
|
||||
\entry{\code {mark-symlinked-directories}}{137}
|
||||
\entry{\code {match-hidden-files}}{137}
|
||||
\entry{\code {menu-complete-display-prefix}}{137}
|
||||
\entry{\code {meta-flag}}{136}
|
||||
\entry{\code {MACHTYPE}}{96}
|
||||
\entry{\code {MAIL}}{86}
|
||||
\entry{\code {MAILCHECK}}{96}
|
||||
\entry{\code {MAILPATH}}{86}
|
||||
\entry{\code {MAPFILE}}{96}
|
||||
\entry{\code {mark-modified-lines}}{139}
|
||||
\entry{\code {mark-symlinked-directories}}{139}
|
||||
\entry{\code {match-hidden-files}}{139}
|
||||
\entry{\code {menu-complete-display-prefix}}{139}
|
||||
\entry{\code {meta-flag}}{138}
|
||||
\initial {O}
|
||||
\entry{\code {OLDPWD}}{95}
|
||||
\entry{\code {OPTARG}}{85}
|
||||
\entry{\code {OPTERR}}{95}
|
||||
\entry{\code {OPTIND}}{85}
|
||||
\entry{\code {OSTYPE}}{95}
|
||||
\entry{\code {output-meta}}{137}
|
||||
\entry{\code {OLDPWD}}{96}
|
||||
\entry{\code {OPTARG}}{86}
|
||||
\entry{\code {OPTERR}}{96}
|
||||
\entry{\code {OPTIND}}{86}
|
||||
\entry{\code {OSTYPE}}{96}
|
||||
\entry{\code {output-meta}}{139}
|
||||
\initial {P}
|
||||
\entry{\code {page-completions}}{137}
|
||||
\entry{\code {PATH}}{85}
|
||||
\entry{\code {PIPESTATUS}}{95}
|
||||
\entry{\code {POSIXLY_CORRECT}}{95}
|
||||
\entry{\code {PPID}}{96}
|
||||
\entry{\code {PROMPT_COMMAND}}{96}
|
||||
\entry{\code {PROMPT_DIRTRIM}}{96}
|
||||
\entry{\code {PS0}}{96}
|
||||
\entry{\code {PS1}}{85}
|
||||
\entry{\code {PS2}}{85}
|
||||
\entry{\code {PS3}}{96}
|
||||
\entry{\code {PS4}}{96}
|
||||
\entry{\code {PWD}}{96}
|
||||
\entry{\code {page-completions}}{139}
|
||||
\entry{\code {PATH}}{86}
|
||||
\entry{\code {PIPESTATUS}}{96}
|
||||
\entry{\code {POSIXLY_CORRECT}}{97}
|
||||
\entry{\code {PPID}}{97}
|
||||
\entry{\code {PROMPT_COMMAND}}{97}
|
||||
\entry{\code {PROMPT_DIRTRIM}}{97}
|
||||
\entry{\code {PS0}}{97}
|
||||
\entry{\code {PS1}}{86}
|
||||
\entry{\code {PS2}}{86}
|
||||
\entry{\code {PS3}}{97}
|
||||
\entry{\code {PS4}}{97}
|
||||
\entry{\code {PWD}}{97}
|
||||
\initial {R}
|
||||
\entry{\code {RANDOM}}{96}
|
||||
\entry{\code {READLINE_ARGUMENT}}{96}
|
||||
\entry{\code {READLINE_LINE}}{96}
|
||||
\entry{\code {READLINE_MARK}}{96}
|
||||
\entry{\code {READLINE_POINT}}{97}
|
||||
\entry{\code {REPLY}}{97}
|
||||
\entry{\code {revert-all-at-newline}}{138}
|
||||
\entry{\code {RANDOM}}{97}
|
||||
\entry{\code {READLINE_ARGUMENT}}{97}
|
||||
\entry{\code {READLINE_LINE}}{97}
|
||||
\entry{\code {READLINE_MARK}}{98}
|
||||
\entry{\code {READLINE_POINT}}{98}
|
||||
\entry{\code {REPLY}}{98}
|
||||
\entry{\code {revert-all-at-newline}}{140}
|
||||
\initial {S}
|
||||
\entry{\code {search-ignore-case}}{138}
|
||||
\entry{\code {SECONDS}}{97}
|
||||
\entry{\code {SHELL}}{97}
|
||||
\entry{\code {SHELLOPTS}}{97}
|
||||
\entry{\code {SHLVL}}{97}
|
||||
\entry{\code {show-all-if-ambiguous}}{138}
|
||||
\entry{\code {show-all-if-unmodified}}{138}
|
||||
\entry{\code {show-mode-in-prompt}}{138}
|
||||
\entry{\code {skip-completed-text}}{138}
|
||||
\entry{\code {SRANDOM}}{97}
|
||||
\entry{\code {search-ignore-case}}{140}
|
||||
\entry{\code {SECONDS}}{98}
|
||||
\entry{\code {SHELL}}{98}
|
||||
\entry{\code {SHELLOPTS}}{98}
|
||||
\entry{\code {SHLVL}}{98}
|
||||
\entry{\code {show-all-if-ambiguous}}{140}
|
||||
\entry{\code {show-all-if-unmodified}}{140}
|
||||
\entry{\code {show-mode-in-prompt}}{140}
|
||||
\entry{\code {skip-completed-text}}{140}
|
||||
\entry{\code {SRANDOM}}{98}
|
||||
\initial {T}
|
||||
\entry{\code {TEXTDOMAIN}}{8}
|
||||
\entry{\code {TEXTDOMAINDIR}}{8}
|
||||
\entry{\code {TIMEFORMAT}}{97}
|
||||
\entry{\code {TMOUT}}{98}
|
||||
\entry{\code {TMPDIR}}{98}
|
||||
\entry{\code {TIMEFORMAT}}{98}
|
||||
\entry{\code {TMOUT}}{99}
|
||||
\entry{\code {TMPDIR}}{99}
|
||||
\initial {U}
|
||||
\entry{\code {UID}}{98}
|
||||
\entry{\code {UID}}{99}
|
||||
\initial {V}
|
||||
\entry{\code {vi-cmd-mode-string}}{138}
|
||||
\entry{\code {vi-ins-mode-string}}{139}
|
||||
\entry{\code {visible-stats}}{139}
|
||||
\entry{\code {vi-cmd-mode-string}}{140}
|
||||
\entry{\code {vi-ins-mode-string}}{141}
|
||||
\entry{\code {visible-stats}}{141}
|
||||
|
||||
+176
-175
@@ -1354,20 +1354,20 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
(see SSHHEELLLL GGRRAAMMMMAARR in _b_a_s_h(1)), exits with a non-zero
|
||||
status. The shell does not exit if the command that
|
||||
fails is part of the command list immediately following
|
||||
a wwhhiillee or uunnttiill keyword, part of the test following the
|
||||
iiff or eelliiff reserved words, part of any command executed
|
||||
in a &&&& or |||| list except the command following the fi-
|
||||
nal &&&& or ||||, any command in a pipeline but the last
|
||||
(subject to the state of the ppiippeeffaaiill shell option), or
|
||||
if the command's return value is being inverted with !!.
|
||||
If a compound command other than a subshell returns a
|
||||
non-zero status because a command failed while --ee was
|
||||
being ignored, the shell does not exit. A trap on EERRRR,
|
||||
if set, is executed before the shell exits. This option
|
||||
applies to the shell environment and each subshell envi-
|
||||
ronment separately (see CCOOMMMMAANNDD EEXXEECCUUTTIIOONN EENNVVIIRROONNMMEENNTT in
|
||||
_b_a_s_h(1)), and may cause subshells to exit before execut-
|
||||
ing all the commands in the subshell.
|
||||
a wwhhiillee or uunnttiill reserved word, part of the test follow-
|
||||
ing the iiff or eelliiff reserved words, part of any command
|
||||
executed in a &&&& or |||| list except the command following
|
||||
the final &&&& or ||||, any command in a pipeline but the
|
||||
last (subject to the state of the ppiippeeffaaiill shell op-
|
||||
tion), or if the command's return value is being in-
|
||||
verted with !!. If a compound command other than a sub-
|
||||
shell returns a non-zero status because a command failed
|
||||
while --ee was being ignored, the shell does not exit. A
|
||||
trap on EERRRR, if set, is executed before the shell exits.
|
||||
This option applies to the shell environment and each
|
||||
subshell environment separately (see CCOOMMMMAANNDD EEXXEECCUUTTIIOONN
|
||||
EENNVVIIRROONNMMEENNTT in _b_a_s_h(1)), and may cause subshells to exit
|
||||
before executing all the commands in the subshell.
|
||||
|
||||
If a compound command or shell function executes in a
|
||||
context where --ee is being ignored, none of the commands
|
||||
@@ -1975,18 +1975,19 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
compound command returns a non-zero exit status, subject to the
|
||||
following conditions. The EERRRR trap is not executed if the
|
||||
failed command is part of the command list immediately following
|
||||
a wwhhiillee or uunnttiill keyword, part of the test in an _i_f statement,
|
||||
part of a command executed in a &&&& or |||| list except the command
|
||||
following the final &&&& or ||||, any command in a pipeline but the
|
||||
last (subject to the state of the ppiippeeffaaiill shell option), or if
|
||||
the command's return value is being inverted using !!. These are
|
||||
the same conditions obeyed by the eerrrreexxiitt (--ee) option.
|
||||
a wwhhiillee or uunnttiill reserved word, part of the test in an _i_f state-
|
||||
ment, part of a command executed in a &&&& or |||| list except the
|
||||
command following the final &&&& or ||||, any command in a pipeline
|
||||
but the last (subject to the state of the ppiippeeffaaiill shell op-
|
||||
tion), or if the command's return value is being inverted using
|
||||
!!. These are the same conditions obeyed by the eerrrreexxiitt (--ee) op-
|
||||
tion.
|
||||
|
||||
When the shell is not interactive, signals ignored upon entry to
|
||||
the shell cannot be trapped or reset. Interactive shells permit
|
||||
trapping signals ignored on entry. Trapped signals that are not
|
||||
being ignored are reset to their original values in a subshell
|
||||
or subshell environment when one is created. The return status
|
||||
being ignored are reset to their original values in a subshell
|
||||
or subshell environment when one is created. The return status
|
||||
is false if any _s_i_g_s_p_e_c is invalid; otherwise ttrraapp returns true.
|
||||
|
||||
ttrruuee Does nothing, returns a 0 status.
|
||||
@@ -1995,61 +1996,61 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
Indicate how each _n_a_m_e would be interpreted if used as a command
|
||||
name.
|
||||
|
||||
If the --tt option is used, ttyyppee prints a string which is one of
|
||||
_a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or _f_i_l_e if _n_a_m_e is an alias,
|
||||
shell reserved word, function, builtin, or executable file, re-
|
||||
spectively. If the _n_a_m_e is not found, ttyyppee prints nothing and
|
||||
If the --tt option is used, ttyyppee prints a string which is one of
|
||||
_a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or _f_i_l_e if _n_a_m_e is an alias,
|
||||
shell reserved word, function, builtin, or executable file, re-
|
||||
spectively. If the _n_a_m_e is not found, ttyyppee prints nothing and
|
||||
returns a non-zero exit status.
|
||||
|
||||
If the --pp option is used, ttyyppee either returns the pathname of
|
||||
the executable file that would be found by searching $$PPAATTHH for
|
||||
_n_a_m_e or nothing if would not return _f_i_l_e. The --PP option forces
|
||||
a PPAATTHH search for each _n_a_m_e, even if would not return _f_i_l_e. If
|
||||
If the --pp option is used, ttyyppee either returns the pathname of
|
||||
the executable file that would be found by searching $$PPAATTHH for
|
||||
_n_a_m_e or nothing if would not return _f_i_l_e. The --PP option forces
|
||||
a PPAATTHH search for each _n_a_m_e, even if would not return _f_i_l_e. If
|
||||
_n_a_m_e is present in the table of hashed commands, --pp and --PP print
|
||||
the hashed value, which is not necessarily the file that appears
|
||||
first in PPAATTHH.
|
||||
|
||||
If the --aa option is used, ttyyppee prints all of the places that
|
||||
contain a command named _n_a_m_e. This includes aliases, reserved
|
||||
words, functions, and builtins, but the path search options (--pp
|
||||
and --PP) can be supplied to restrict the output to executable
|
||||
files. ttyyppee does not consult the table of hashed commands when
|
||||
If the --aa option is used, ttyyppee prints all of the places that
|
||||
contain a command named _n_a_m_e. This includes aliases, reserved
|
||||
words, functions, and builtins, but the path search options (--pp
|
||||
and --PP) can be supplied to restrict the output to executable
|
||||
files. ttyyppee does not consult the table of hashed commands when
|
||||
using --aa with --pp, and only performs a PPAATTHH search for _n_a_m_e.
|
||||
|
||||
The --ff option suppresses shell function lookup, as with the ccoomm--
|
||||
mmaanndd builtin. ttyyppee returns true if all of the arguments are
|
||||
mmaanndd builtin. ttyyppee returns true if all of the arguments are
|
||||
found, false if any are not found.
|
||||
|
||||
uulliimmiitt [--HHSS] --aa
|
||||
uulliimmiitt [--HHSS] [--bbccddeeffiikkllmmnnppqqrrssttuuvvxxPPRRTT [_l_i_m_i_t]]
|
||||
Provides control over the resources available to the shell and
|
||||
Provides control over the resources available to the shell and
|
||||
to processes it starts, on systems that allow such control.
|
||||
|
||||
The --HH and --SS options specify whether the hard or soft limit is
|
||||
The --HH and --SS options specify whether the hard or soft limit is
|
||||
set for the given resource. A hard limit cannot be increased by
|
||||
a non-root user once it is set; a soft limit may be increased up
|
||||
to the value of the hard limit. If neither --HH nor --SS is speci-
|
||||
to the value of the hard limit. If neither --HH nor --SS is speci-
|
||||
fied, uulliimmiitt sets both the soft and hard limits.
|
||||
|
||||
The value of _l_i_m_i_t can be a number in the unit specified for the
|
||||
resource or one of the special values hhaarrdd, ssoofftt, or uunnlliimmiitteedd,
|
||||
which stand for the current hard limit, the current soft limit,
|
||||
and no limit, respectively. If _l_i_m_i_t is omitted, uulliimmiitt prints
|
||||
the current value of the soft limit of the resource, unless the
|
||||
--HH option is given. When more than one resource is specified,
|
||||
the limit name and unit, if appropriate, are printed before the
|
||||
resource or one of the special values hhaarrdd, ssoofftt, or uunnlliimmiitteedd,
|
||||
which stand for the current hard limit, the current soft limit,
|
||||
and no limit, respectively. If _l_i_m_i_t is omitted, uulliimmiitt prints
|
||||
the current value of the soft limit of the resource, unless the
|
||||
--HH option is given. When more than one resource is specified,
|
||||
the limit name and unit, if appropriate, are printed before the
|
||||
value. Other options are interpreted as follows:
|
||||
--aa Report all current limits; no limits are set.
|
||||
--bb The maximum socket buffer size.
|
||||
--cc The maximum size of core files created.
|
||||
--dd The maximum size of a process's data segment.
|
||||
--ee The maximum scheduling priority (
|
||||
--ff The maximum size of files written by the shell and its
|
||||
--ff The maximum size of files written by the shell and its
|
||||
children.
|
||||
--ii The maximum number of pending signals.
|
||||
--kk The maximum number of kqueues that may be allocated.
|
||||
--ll The maximum size that may be locked into memory.
|
||||
--mm The maximum resident set size (many systems do not honor
|
||||
--mm The maximum resident set size (many systems do not honor
|
||||
this limit).
|
||||
--nn The maximum number of open file descriptors (most systems
|
||||
do not allow this value to be set).
|
||||
@@ -2058,146 +2059,146 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
--rr The maximum real-time scheduling priority.
|
||||
--ss The maximum stack size.
|
||||
--tt The maximum amount of cpu time in seconds.
|
||||
--uu The maximum number of processes available to a single
|
||||
--uu The maximum number of processes available to a single
|
||||
user.
|
||||
--vv The maximum amount of virtual memory available to the
|
||||
--vv The maximum amount of virtual memory available to the
|
||||
shell and, on some systems, to its children.
|
||||
--xx The maximum number of file locks.
|
||||
--PP The maximum number of pseudoterminals.
|
||||
--RR The maximum time a real-time process can run before
|
||||
--RR The maximum time a real-time process can run before
|
||||
blocking, in microseconds.
|
||||
--TT The maximum number of threads.
|
||||
|
||||
If _l_i_m_i_t is supplied, and the --aa option is not used, _l_i_m_i_t is
|
||||
the new value of the specified resource. If no option is sup-
|
||||
If _l_i_m_i_t is supplied, and the --aa option is not used, _l_i_m_i_t is
|
||||
the new value of the specified resource. If no option is sup-
|
||||
plied, then --ff is assumed.
|
||||
|
||||
Values are in 1024-byte increments, except for --tt, which is in
|
||||
seconds; --RR, which is in microseconds; --pp, which is in units of
|
||||
512-byte blocks; --PP, --TT, --bb, --kk, --nn, and --uu, which are unscaled
|
||||
values; and, when in posix mode, --cc and --ff, which are in
|
||||
512-byte increments. The return status is 0 unless an invalid
|
||||
Values are in 1024-byte increments, except for --tt, which is in
|
||||
seconds; --RR, which is in microseconds; --pp, which is in units of
|
||||
512-byte blocks; --PP, --TT, --bb, --kk, --nn, and --uu, which are unscaled
|
||||
values; and, when in posix mode, --cc and --ff, which are in
|
||||
512-byte increments. The return status is 0 unless an invalid
|
||||
option or argument is supplied, or an error occurs while setting
|
||||
a new limit.
|
||||
|
||||
uummaasskk [--pp] [--SS] [_m_o_d_e]
|
||||
Set the user file-creation mask to _m_o_d_e. If _m_o_d_e begins with a
|
||||
Set the user file-creation mask to _m_o_d_e. If _m_o_d_e begins with a
|
||||
digit, it is interpreted as an octal number; otherwise it is in-
|
||||
terpreted as a symbolic mode mask similar to that accepted by
|
||||
terpreted as a symbolic mode mask similar to that accepted by
|
||||
_c_h_m_o_d(1). If _m_o_d_e is omitted, uummaasskk prints the current value of
|
||||
the mask. The --SS option without a _m_o_d_e argument prints the mask
|
||||
in a symbolic format; the default output is an octal number. If
|
||||
the --pp option is supplied, and _m_o_d_e is omitted, the output is in
|
||||
a form that may be reused as input. The return status is zero
|
||||
if the mode was successfully changed or if no _m_o_d_e argument was
|
||||
a form that may be reused as input. The return status is zero
|
||||
if the mode was successfully changed or if no _m_o_d_e argument was
|
||||
supplied, and non-zero otherwise.
|
||||
|
||||
uunnaalliiaass [-aa] [_n_a_m_e ...]
|
||||
Remove each _n_a_m_e from the list of defined aliases. If --aa is
|
||||
supplied, remove all alias definitions. The return value is
|
||||
Remove each _n_a_m_e from the list of defined aliases. If --aa is
|
||||
supplied, remove all alias definitions. The return value is
|
||||
true unless a supplied _n_a_m_e is not a defined alias.
|
||||
|
||||
uunnsseett [-ffvv] [-nn] [_n_a_m_e ...]
|
||||
For each _n_a_m_e, remove the corresponding variable or function.
|
||||
For each _n_a_m_e, remove the corresponding variable or function.
|
||||
If the --vv option is given, each _n_a_m_e refers to a shell variable,
|
||||
and that variable is removed. If --ff is specified, each _n_a_m_e
|
||||
refers to a shell function, and the function definition is re-
|
||||
moved. If the --nn option is supplied, and _n_a_m_e is a variable
|
||||
with the _n_a_m_e_r_e_f attribute, _n_a_m_e will be unset rather than the
|
||||
variable it references. --nn has no effect if the --ff option is
|
||||
supplied. Read-only variables and functions may not be unset.
|
||||
When variables or functions are removed, they are also removed
|
||||
from the environment passed to subsequent commands. If no op-
|
||||
tions are supplied, each _n_a_m_e refers to a variable; if there is
|
||||
no variable by that name, a function with that name, if any, is
|
||||
unset. Some shell variables may not be unset. If any of
|
||||
and that variable is removed. If --ff is specified, each _n_a_m_e
|
||||
refers to a shell function, and the function definition is re-
|
||||
moved. If the --nn option is supplied, and _n_a_m_e is a variable
|
||||
with the _n_a_m_e_r_e_f attribute, _n_a_m_e will be unset rather than the
|
||||
variable it references. --nn has no effect if the --ff option is
|
||||
supplied. Read-only variables and functions may not be unset.
|
||||
When variables or functions are removed, they are also removed
|
||||
from the environment passed to subsequent commands. If no op-
|
||||
tions are supplied, each _n_a_m_e refers to a variable; if there is
|
||||
no variable by that name, a function with that name, if any, is
|
||||
unset. Some shell variables may not be unset. If any of
|
||||
BBAASSHH__AALLIIAASSEESS, BBAASSHH__AARRGGVV00, BBAASSHH__CCMMDDSS, BBAASSHH__CCOOMMMMAANNDD, BBAASSHH__SSUUBB--
|
||||
SSHHEELLLL, BBAASSHHPPIIDD, CCOOMMPP__WWOORRDDBBRREEAAKKSS, DDIIRRSSTTAACCKK, EEPPOOCCHHRREEAALLTTIIMMEE,
|
||||
EEPPOOCCHHSSEECCOONNDDSS, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, HHIISSTTCCMMDD, LLIINNEENNOO, RRAANNDDOOMM, SSEECC--
|
||||
OONNDDSS, or SSRRAANNDDOOMM are unset, they lose their special properties,
|
||||
even if they are subsequently reset. The exit status is true
|
||||
SSHHEELLLL, BBAASSHHPPIIDD, CCOOMMPP__WWOORRDDBBRREEAAKKSS, DDIIRRSSTTAACCKK, EEPPOOCCHHRREEAALLTTIIMMEE,
|
||||
EEPPOOCCHHSSEECCOONNDDSS, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, HHIISSTTCCMMDD, LLIINNEENNOO, RRAANNDDOOMM, SSEECC--
|
||||
OONNDDSS, or SSRRAANNDDOOMM are unset, they lose their special properties,
|
||||
even if they are subsequently reset. The exit status is true
|
||||
unless a _n_a_m_e is readonly or may not be unset.
|
||||
|
||||
wwaaiitt [--ffnn] [--pp _v_a_r_n_a_m_e] [_i_d ...]
|
||||
Wait for each specified child process _i_d and return the termina-
|
||||
tion status of the last _i_d. Each _i_d may be a process ID _p_i_d or
|
||||
a job specification _j_o_b_s_p_e_c; if a jobspec is supplied, wwaaiitt
|
||||
tion status of the last _i_d. Each _i_d may be a process ID _p_i_d or
|
||||
a job specification _j_o_b_s_p_e_c; if a jobspec is supplied, wwaaiitt
|
||||
waits for all processes in the job.
|
||||
|
||||
If no options or _i_ds are supplied, wwaaiitt waits for all running
|
||||
background jobs and the last-executed process substitution, if
|
||||
If no options or _i_ds are supplied, wwaaiitt waits for all running
|
||||
background jobs and the last-executed process substitution, if
|
||||
its process id is the same as $$!!, and the return status is zero.
|
||||
|
||||
If the --nn option is supplied, wwaaiitt waits for any one of the
|
||||
If the --nn option is supplied, wwaaiitt waits for any one of the
|
||||
given _i_ds or, if no _i_ds are supplied, any job or process substi-
|
||||
tution, to complete and returns its exit status. If none of the
|
||||
supplied _i_ds is a child of the shell, or if no _i_ds are supplied
|
||||
and the shell has no unwaited-for children, the exit status is
|
||||
supplied _i_ds is a child of the shell, or if no _i_ds are supplied
|
||||
and the shell has no unwaited-for children, the exit status is
|
||||
127.
|
||||
|
||||
If the --pp option is supplied, wwaaiitt assigns the process or job
|
||||
identifier of the job for which the exit status is returned to
|
||||
the variable _v_a_r_n_a_m_e named by the option argument. The vari-
|
||||
able, which cannot be readonly, will be unset initially, before
|
||||
any assignment. This is useful only when used with the --nn op-
|
||||
If the --pp option is supplied, wwaaiitt assigns the process or job
|
||||
identifier of the job for which the exit status is returned to
|
||||
the variable _v_a_r_n_a_m_e named by the option argument. The vari-
|
||||
able, which cannot be readonly, will be unset initially, before
|
||||
any assignment. This is useful only when used with the --nn op-
|
||||
tion.
|
||||
|
||||
Supplying the --ff option, when job control is enabled, forces
|
||||
wwaaiitt to wait for each _i_d to terminate before returning its sta-
|
||||
Supplying the --ff option, when job control is enabled, forces
|
||||
wwaaiitt to wait for each _i_d to terminate before returning its sta-
|
||||
tus, instead of returning when it changes status.
|
||||
|
||||
If none of the _i_ds specify one of the shell's active child
|
||||
processes, the return status is 127. If wwaaiitt is interrupted by
|
||||
a signal, any _v_a_r_n_a_m_e will remain unset, and the return status
|
||||
If none of the _i_ds specify one of the shell's active child
|
||||
processes, the return status is 127. If wwaaiitt is interrupted by
|
||||
a signal, any _v_a_r_n_a_m_e will remain unset, and the return status
|
||||
will be greater than 128, as described under SSIIGGNNAALLSS in _b_a_s_h(1).
|
||||
Otherwise, the return status is the exit status of the last _i_d.
|
||||
|
||||
SSHHEELLLL CCOOMMPPAATTIIBBIILLIITTYY MMOODDEE
|
||||
Bash-4.0 introduced the concept of a _s_h_e_l_l _c_o_m_p_a_t_i_b_i_l_i_t_y _l_e_v_e_l, speci-
|
||||
Bash-4.0 introduced the concept of a _s_h_e_l_l _c_o_m_p_a_t_i_b_i_l_i_t_y _l_e_v_e_l, speci-
|
||||
fied as a set of options to the shopt builtin (ccoommppaatt3311, ccoommppaatt3322, ccoomm--
|
||||
ppaatt4400, ccoommppaatt4411, and so on). There is only one current compatibility
|
||||
ppaatt4400, ccoommppaatt4411, and so on). There is only one current compatibility
|
||||
level -- each option is mutually exclusive. The compatibility level is
|
||||
intended to allow users to select behavior from previous versions that
|
||||
is incompatible with newer versions while they migrate scripts to use
|
||||
current features and behavior. It's intended to be a temporary solu-
|
||||
intended to allow users to select behavior from previous versions that
|
||||
is incompatible with newer versions while they migrate scripts to use
|
||||
current features and behavior. It's intended to be a temporary solu-
|
||||
tion.
|
||||
|
||||
This section does not mention behavior that is standard for a particu-
|
||||
lar version (e.g., setting ccoommppaatt3322 means that quoting the right hand
|
||||
side of the regexp matching operator quotes special regexp characters
|
||||
in the word, which is default behavior in bash-3.2 and subsequent ver-
|
||||
This section does not mention behavior that is standard for a particu-
|
||||
lar version (e.g., setting ccoommppaatt3322 means that quoting the right hand
|
||||
side of the regexp matching operator quotes special regexp characters
|
||||
in the word, which is default behavior in bash-3.2 and subsequent ver-
|
||||
sions).
|
||||
|
||||
If a user enables, say, ccoommppaatt3322, it may affect the behavior of other
|
||||
compatibility levels up to and including the current compatibility
|
||||
level. The idea is that each compatibility level controls behavior
|
||||
that changed in that version of bbaasshh, but that behavior may have been
|
||||
present in earlier versions. For instance, the change to use locale-
|
||||
based comparisons with the [[[[ command came in bash-4.1, and earlier
|
||||
If a user enables, say, ccoommppaatt3322, it may affect the behavior of other
|
||||
compatibility levels up to and including the current compatibility
|
||||
level. The idea is that each compatibility level controls behavior
|
||||
that changed in that version of bbaasshh, but that behavior may have been
|
||||
present in earlier versions. For instance, the change to use locale-
|
||||
based comparisons with the [[[[ command came in bash-4.1, and earlier
|
||||
versions used ASCII-based comparisons, so enabling ccoommppaatt3322 will enable
|
||||
ASCII-based comparisons as well. That granularity may not be suffi-
|
||||
cient for all uses, and as a result users should employ compatibility
|
||||
levels carefully. Read the documentation for a particular feature to
|
||||
ASCII-based comparisons as well. That granularity may not be suffi-
|
||||
cient for all uses, and as a result users should employ compatibility
|
||||
levels carefully. Read the documentation for a particular feature to
|
||||
find out the current behavior.
|
||||
|
||||
Bash-4.3 introduced a new shell variable: BBAASSHH__CCOOMMPPAATT. The value as-
|
||||
Bash-4.3 introduced a new shell variable: BBAASSHH__CCOOMMPPAATT. The value as-
|
||||
signed to this variable (a decimal version number like 4.2, or an inte-
|
||||
ger corresponding to the ccoommppaatt_N_N option, like 42) determines the com-
|
||||
ger corresponding to the ccoommppaatt_N_N option, like 42) determines the com-
|
||||
patibility level.
|
||||
|
||||
Starting with bash-4.4, bbaasshh began deprecating older compatibility lev-
|
||||
els. Eventually, the options will be removed in favor of BBAASSHH__CCOOMMPPAATT.
|
||||
|
||||
Bash-5.0 was the final version for which there was an individual shopt
|
||||
option for the previous version. BBAASSHH__CCOOMMPPAATT is the only mechanism to
|
||||
Bash-5.0 was the final version for which there was an individual shopt
|
||||
option for the previous version. BBAASSHH__CCOOMMPPAATT is the only mechanism to
|
||||
control the compatibility level in versions newer than bash-5.0.
|
||||
|
||||
The following table describes the behavior changes controlled by each
|
||||
The following table describes the behavior changes controlled by each
|
||||
compatibility level setting. The ccoommppaatt_N_N tag is used as shorthand for
|
||||
setting the compatibility level to _N_N using one of the following mecha-
|
||||
nisms. For versions prior to bash-5.0, the compatibility level may be
|
||||
set using the corresponding ccoommppaatt_N_N shopt option. For bash-4.3 and
|
||||
later versions, the BBAASSHH__CCOOMMPPAATT variable is preferred, and it is re-
|
||||
nisms. For versions prior to bash-5.0, the compatibility level may be
|
||||
set using the corresponding ccoommppaatt_N_N shopt option. For bash-4.3 and
|
||||
later versions, the BBAASSHH__CCOOMMPPAATT variable is preferred, and it is re-
|
||||
quired for bash-5.1 and later versions.
|
||||
|
||||
ccoommppaatt3311
|
||||
@@ -2205,118 +2206,118 @@ SSHHEELLLL CCOOMMPPAATTIIBBIILLIITTYY MMOODDEE
|
||||
ator (=) has no special effect.
|
||||
|
||||
ccoommppaatt3322
|
||||
+o The << and >> operators to the [[[[ command do not consider
|
||||
+o The << and >> operators to the [[[[ command do not consider
|
||||
the current locale when comparing strings; they use ASCII
|
||||
ordering.
|
||||
|
||||
ccoommppaatt4400
|
||||
+o The << and >> operators to the [[[[ command do not consider
|
||||
+o The << and >> operators to the [[[[ command do not consider
|
||||
the current locale when comparing strings; they use ASCII
|
||||
ordering. BBaasshh versions prior to bash-4.1 use ASCII col-
|
||||
lation and _s_t_r_c_m_p(3); bash-4.1 and later use the current
|
||||
lation and _s_t_r_c_m_p(3); bash-4.1 and later use the current
|
||||
locale's collation sequence and _s_t_r_c_o_l_l(3).
|
||||
|
||||
ccoommppaatt4411
|
||||
+o In posix mode, ttiimmee may be followed by options and still
|
||||
+o In posix mode, ttiimmee may be followed by options and still
|
||||
be recognized as a reserved word (this is POSIX interpre-
|
||||
tation 267).
|
||||
+o In _p_o_s_i_x mode, the parser requires that an even number of
|
||||
single quotes occur in the _w_o_r_d portion of a double-
|
||||
quoted parameter expansion and treats them specially, so
|
||||
that characters within the single quotes are considered
|
||||
single quotes occur in the _w_o_r_d portion of a double-
|
||||
quoted parameter expansion and treats them specially, so
|
||||
that characters within the single quotes are considered
|
||||
quoted (this is POSIX interpretation 221).
|
||||
|
||||
ccoommppaatt4422
|
||||
+o The replacement string in double-quoted pattern substitu-
|
||||
tion does not undergo quote removal, as it does in ver-
|
||||
tion does not undergo quote removal, as it does in ver-
|
||||
sions after bash-4.2.
|
||||
+o In posix mode, single quotes are considered special when
|
||||
expanding the _w_o_r_d portion of a double-quoted parameter
|
||||
expansion and can be used to quote a closing brace or
|
||||
other special character (this is part of POSIX interpre-
|
||||
tation 221); in later versions, single quotes are not
|
||||
+o In posix mode, single quotes are considered special when
|
||||
expanding the _w_o_r_d portion of a double-quoted parameter
|
||||
expansion and can be used to quote a closing brace or
|
||||
other special character (this is part of POSIX interpre-
|
||||
tation 221); in later versions, single quotes are not
|
||||
special within double-quoted word expansions.
|
||||
|
||||
ccoommppaatt4433
|
||||
+o Word expansion errors are considered non-fatal errors
|
||||
that cause the current command to fail, even in posix
|
||||
mode (the default behavior is to make them fatal errors
|
||||
+o Word expansion errors are considered non-fatal errors
|
||||
that cause the current command to fail, even in posix
|
||||
mode (the default behavior is to make them fatal errors
|
||||
that cause the shell to exit).
|
||||
+o When executing a shell function, the loop state
|
||||
+o When executing a shell function, the loop state
|
||||
(while/until/etc.) is not reset, so bbrreeaakk or ccoonnttiinnuuee in
|
||||
that function will break or continue loops in the calling
|
||||
context. Bash-4.4 and later reset the loop state to pre-
|
||||
vent this.
|
||||
|
||||
ccoommppaatt4444
|
||||
+o The shell sets up the values used by BBAASSHH__AARRGGVV and
|
||||
BBAASSHH__AARRGGCC so they can expand to the shell's positional
|
||||
parameters even if extended debugging mode is not en-
|
||||
+o The shell sets up the values used by BBAASSHH__AARRGGVV and
|
||||
BBAASSHH__AARRGGCC so they can expand to the shell's positional
|
||||
parameters even if extended debugging mode is not en-
|
||||
abled.
|
||||
+o A subshell inherits loops from its parent context, so
|
||||
bbrreeaakk or ccoonnttiinnuuee will cause the subshell to exit.
|
||||
Bash-5.0 and later reset the loop state to prevent the
|
||||
+o A subshell inherits loops from its parent context, so
|
||||
bbrreeaakk or ccoonnttiinnuuee will cause the subshell to exit.
|
||||
Bash-5.0 and later reset the loop state to prevent the
|
||||
exit
|
||||
+o Variable assignments preceding builtins like eexxppoorrtt and
|
||||
+o Variable assignments preceding builtins like eexxppoorrtt and
|
||||
rreeaaddoonnllyy that set attributes continue to affect variables
|
||||
with the same name in the calling environment even if the
|
||||
shell is not in posix mode.
|
||||
|
||||
ccoommppaatt5500
|
||||
+o Bash-5.1 changed the way $$RRAANNDDOOMM is generated to intro-
|
||||
duce slightly more randomness. If the shell compatibil-
|
||||
+o Bash-5.1 changed the way $$RRAANNDDOOMM is generated to intro-
|
||||
duce slightly more randomness. If the shell compatibil-
|
||||
ity level is set to 50 or lower, it reverts to the method
|
||||
from bash-5.0 and previous versions, so seeding the ran-
|
||||
dom number generator by assigning a value to RRAANNDDOOMM will
|
||||
from bash-5.0 and previous versions, so seeding the ran-
|
||||
dom number generator by assigning a value to RRAANNDDOOMM will
|
||||
produce the same sequence as in bash-5.0.
|
||||
+o If the command hash table is empty, bash versions prior
|
||||
to bash-5.1 printed an informational message to that ef-
|
||||
fect, even when producing output that can be reused as
|
||||
input. Bash-5.1 suppresses that message when the --ll op-
|
||||
+o If the command hash table is empty, bash versions prior
|
||||
to bash-5.1 printed an informational message to that ef-
|
||||
fect, even when producing output that can be reused as
|
||||
input. Bash-5.1 suppresses that message when the --ll op-
|
||||
tion is supplied.
|
||||
|
||||
ccoommppaatt5511
|
||||
+o The uunnsseett builtin treats attempts to unset array sub-
|
||||
scripts @@ and ** differently depending on whether the ar-
|
||||
ray is indexed or associative, and differently than in
|
||||
+o The uunnsseett builtin treats attempts to unset array sub-
|
||||
scripts @@ and ** differently depending on whether the ar-
|
||||
ray is indexed or associative, and differently than in
|
||||
previous versions.
|
||||
+o Arithmetic commands ( ((((...)))) ) and the expressions in an
|
||||
arithmetic for statement can be expanded more than once.
|
||||
+o Expressions used as arguments to arithmetic operators in
|
||||
the [[[[ conditional command can be expanded more than
|
||||
+o Expressions used as arguments to arithmetic operators in
|
||||
the [[[[ conditional command can be expanded more than
|
||||
once.
|
||||
+o The expressions in substring parameter brace expansion
|
||||
+o The expressions in substring parameter brace expansion
|
||||
can be expanded more than once.
|
||||
+o The expressions in the $$((((...)))) word expansion can be ex-
|
||||
panded more than once.
|
||||
+o Arithmetic expressions used as indexed array subscripts
|
||||
+o Arithmetic expressions used as indexed array subscripts
|
||||
can be expanded more than once.
|
||||
+o tteesstt --vv, when given an argument of AA[[@@]], where AA is an
|
||||
+o tteesstt --vv, when given an argument of AA[[@@]], where AA is an
|
||||
existing associative array, will return true if the array
|
||||
has any set elements. Bash-5.2 will look for and report
|
||||
has any set elements. Bash-5.2 will look for and report
|
||||
on a key named @@.
|
||||
+o The ${_p_a_r_a_m_e_t_e_r[[::]]==_v_a_l_u_e} word expansion will return
|
||||
_v_a_l_u_e, before any variable-specific transformations have
|
||||
_v_a_l_u_e, before any variable-specific transformations have
|
||||
been performed (e.g., converting to lowercase). Bash-5.2
|
||||
will return the final value assigned to the variable.
|
||||
+o Parsing command substitutions will behave as if extended
|
||||
+o Parsing command substitutions will behave as if extended
|
||||
globbing (see the description of the sshhoopptt builtin above)
|
||||
is enabled, so that parsing a command substitution con-
|
||||
is enabled, so that parsing a command substitution con-
|
||||
taining an extglob pattern (say, as part of a shell func-
|
||||
tion) will not fail. This assumes the intent is to en-
|
||||
able extglob before the command is executed and word ex-
|
||||
pansions are performed. It will fail at word expansion
|
||||
time if extglob hasn't been enabled by the time the com-
|
||||
tion) will not fail. This assumes the intent is to en-
|
||||
able extglob before the command is executed and word ex-
|
||||
pansions are performed. It will fail at word expansion
|
||||
time if extglob hasn't been enabled by the time the com-
|
||||
mand is executed.
|
||||
|
||||
ccoommppaatt5522
|
||||
+o The tteesstt builtin uses its historical algorithm to parse
|
||||
parenthesized subexpressions when given five or more ar-
|
||||
+o The tteesstt builtin uses its historical algorithm to parse
|
||||
parenthesized subexpressions when given five or more ar-
|
||||
guments.
|
||||
+o If the --pp or --PP option is supplied to the bbiinndd builtin,
|
||||
+o If the --pp or --PP option is supplied to the bbiinndd builtin,
|
||||
bbiinndd treats any arguments remaining after option process-
|
||||
ing as bindable command names, and displays any key se-
|
||||
quences bound to those commands, instead of treating the
|
||||
ing as bindable command names, and displays any key se-
|
||||
quences bound to those commands, instead of treating the
|
||||
arguments as key sequences to bind.
|
||||
|
||||
SSEEEE AALLSSOO
|
||||
|
||||
Binary file not shown.
+2
-2
@@ -32,8 +32,8 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL
|
||||
+o Importing function definitions from the shell environment at
|
||||
startup.
|
||||
|
||||
+o Parsing the value of SSHHEELLLLOOPPTTSS from the shell environment at
|
||||
startup.
|
||||
+o Parsing the values of BBAASSHHOOPPTTSS and SSHHEELLLLOOPPTTSS from the shell en-
|
||||
vironment at startup.
|
||||
|
||||
+o Redirecting output using the >, >|, <>, >&, &>, and >> redirec-
|
||||
tion operators.
|
||||
|
||||
+2
-2
@@ -2,10 +2,10 @@
|
||||
Copyright (C) 1988-2025 Free Software Foundation, Inc.
|
||||
@end ignore
|
||||
|
||||
@set LASTCHANGE Tue Feb 11 11:04:12 EST 2025
|
||||
@set LASTCHANGE Mon Feb 24 16:09:32 EST 2025
|
||||
|
||||
@set EDITION 5.3
|
||||
@set VERSION 5.3
|
||||
|
||||
@set UPDATED 11 February 2025
|
||||
@set UPDATED 24 February 2025
|
||||
@set UPDATED-MONTH February 2025
|
||||
|
||||
@@ -776,6 +776,14 @@ execute_command_internal (COMMAND *command, int asynchronous, int pipe_in, int p
|
||||
|
||||
if (user_subshell && ignore_return == 0 && invert == 0 && exit_immediately_on_error && exec_result != EXECUTION_SUCCESS)
|
||||
{
|
||||
/* Update BASH_COMMAND before running any traps,
|
||||
including the exit trap, since we are going to exit
|
||||
the shell. */
|
||||
if (signal_in_progress (DEBUG_TRAP) == 0 && running_trap == 0)
|
||||
{
|
||||
FREE (the_printed_command_except_trap);
|
||||
the_printed_command_except_trap = savestring (the_printed_command);
|
||||
}
|
||||
run_pending_traps ();
|
||||
jump_to_top_level (ERREXIT);
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/* malloc.c - dynamic memory allocation for bash. */
|
||||
|
||||
/* Copyright (C) 1985-2022 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1985-2025 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Bash, the Bourne-Again SHell.
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* gcc -g -o x x.o xmalloc.o lib/malloc/libmalloc.a
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2002-2003 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 2002-2025 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Bash, the Bourne Again SHell.
|
||||
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
/* table.h - definitions for tables for keeping track of allocated memory */
|
||||
|
||||
/* Copyright (C) 2001-2022 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 2001-2025 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Bash, the Bourne-Again SHell.
|
||||
|
||||
|
||||
@@ -241,6 +241,8 @@ getmaxgroups (void)
|
||||
if (maxgroups > 0)
|
||||
return maxgroups;
|
||||
|
||||
/* can also use getgroups (0, NULL) */
|
||||
|
||||
#if defined (HAVE_SYSCONF) && defined (_SC_NGROUPS_MAX)
|
||||
maxgroups = sysconf (_SC_NGROUPS_MAX);
|
||||
#else
|
||||
|
||||
@@ -465,7 +465,11 @@ here_document_to_fd (WORD_DESC *redirectee, enum r_instruction ri)
|
||||
|
||||
#if defined (F_GETPIPE_SZ)
|
||||
if (fcntl (herepipe[1], F_GETPIPE_SZ, 0) < document_len)
|
||||
goto use_tempfile;
|
||||
{
|
||||
close (herepipe[0]);
|
||||
close (herepipe[1]);
|
||||
goto use_tempfile;
|
||||
}
|
||||
#endif
|
||||
|
||||
r = heredoc_write (herepipe[1], document, document_len);
|
||||
@@ -484,6 +488,7 @@ here_document_to_fd (WORD_DESC *redirectee, enum r_instruction ri)
|
||||
|
||||
use_tempfile:
|
||||
|
||||
/* TAG: use anonfiles here in a future version. */
|
||||
fd = sh_mktmpfd ("sh-thd", MT_USERANDOM|MT_USETMPDIR, &filename);
|
||||
|
||||
/* If we failed for some reason other than the file existing, abort */
|
||||
|
||||
@@ -1312,14 +1312,14 @@ uidget (void)
|
||||
(void) getresuid (¤t_user.uid, ¤t_user.euid, ¤t_user.saveuid);
|
||||
#else
|
||||
current_user.uid = getuid ();
|
||||
current_user.euid = geteuid ();
|
||||
current_user.euid = current_user.saveuid = geteuid ();
|
||||
#endif
|
||||
|
||||
#if HAVE_SETRESGID
|
||||
(void) getresgid (¤t_user.gid, ¤t_user.egid, ¤t_user.savegid);
|
||||
#else
|
||||
current_user.gid = getgid ();
|
||||
current_user.egid = getegid ();
|
||||
current_user.egid = current_user.savegid = getegid ();
|
||||
#endif
|
||||
|
||||
if (current_user.uid != u)
|
||||
|
||||
Reference in New Issue
Block a user