commit bash-20141128 snapshot

This commit is contained in:
Chet Ramey
2014-12-02 16:15:47 -05:00
parent 0a233f3ec4
commit 09f70f2f67
59 changed files with 54337 additions and 2021 deletions
+60 -4
View File
@@ -5,12 +5,12 @@
.\" Case Western Reserve University
.\" chet.ramey@case.edu
.\"
.\" Last Change: Fri Nov 21 08:07:56 EST 2014
.\" Last Change: Fri Nov 28 18:21:13 EST 2014
.\"
.\" bash_builtins, strip all but Built-Ins section
.if \n(zZ=1 .ig zZ
.if \n(zY=1 .ig zY
.TH BASH 1 "2014 November 21" "GNU Bash 4.3"
.TH BASH 1 "2014 November 28" "GNU Bash 4.3"
.\"
.\" There's some problem with having a `@'
.\" in a tagged paragraph with the BSD man macros.
@@ -2542,8 +2542,6 @@ of the special parameters \fB*\fP and \fB@\fP (see
above). ${#\fIname\fP[\fIsubscript\fP]} expands to the length of
${\fIname\fP[\fIsubscript\fP]}. If \fIsubscript\fP is \fB*\fP or
\fB@\fP, the expansion is the number of elements in the array.
Referencing an array variable without a subscript is equivalent to
referencing the array with a subscript of 0.
If the
.I subscript
used to reference an element of an indexed array
@@ -2552,6 +2550,12 @@ interpreted as relative to one greater than the maximum index of the array,
so negative indices count back from the end of the
array, and an index of \-1 references the last element.
.PP
Referencing an array variable without a subscript is equivalent to
referencing the array with a subscript of 0.
Any reference to a variable using a valid subscript is legal, and
.B bash
will create an array if necessary.
.PP
An array variable is considered set if a subscript has been assigned a
value. The null string is a valid value.
.PP
@@ -3118,6 +3122,57 @@ or
.BR * ,
the case modification operation is applied to each member of the
array in turn, and the expansion is the resultant list.
.TP
${\fIparameter\fP\fB@\fP\fIoperator\fP}
\fBParameter transformation\fP.
The expansion is either a transformation of the value of \fIparameter\fP
or information about \fIparameter\fP itself, depending on the value of
\fIoperator\fP. Each \fIoperator\fP is a single letter:
.sp 1
.RS
.PD 0
.TP
.B Q
The expansion is a string that is the value of \fIparameter\fP quoted in a
format that can be reused as input.
.TP
.B E
The expansion is a string that is the value of \fIparameter\fP with backslash
escape sequences expanded as with the \fB$'...'\fP quoting mechansim.
.TP
.B P
The expansion is a string that is the result of expanding the value of
\fIparameter\fP as if it were a prompt string (see \fBPROMPTING\fP below).
.TP
.B A
The expansion is a string in the form of a \fBdeclare\fP command that, if
evaluated, will recreate \fIparameter\fP with its attributes and value.
.TP
.B a
The expansion is a string consisting of flag values representing
\fIparameter\fP's attributes.
.PD
.PP
If
.I parameter
is
.B @
or
.BR * ,
the operation is applied to each positional
parameter in turn, and the expansion is the resultant list.
If
.I parameter
is an array variable subscripted with
.B @
or
.BR * ,
the case modification operation is applied to each member of the
array in turn, and the expansion is the resultant list.
.sp 1
The result of the expansion is subject to word splitting and pathname
expansion as described below.
.RE
.SS Command Substitution
.PP
\fICommand substitution\fP allows the output of a command to replace
@@ -9610,6 +9665,7 @@ If set,
.B bash
matches patterns in a case\-insensitive fashion when performing matching
while executing \fBcase\fP or \fB[[\fP conditional commands,
when performing pattern substitution word expansions,
or when filtering possible completions as part of programmable completion.
.TP 8
.B nullglob