commit bash-20130322 snapshot

This commit is contained in:
Chet Ramey
2013-04-26 15:18:45 -04:00
parent f8fa1b65b9
commit c2fa658335
124 changed files with 28875 additions and 21638 deletions
+1745
View File
File diff suppressed because it is too large Load Diff
+11 -6
View File
@@ -97,7 +97,9 @@ OOPPTTIIOONNSS
----ppoossiixx
Change the behavior of bbaasshh where the default operation differs
from the POSIX standard to match the standard (_p_o_s_i_x _m_o_d_e).
from the POSIX standard to match the standard (_p_o_s_i_x _m_o_d_e). See
SSEEEE AALLSSOO below for a reference to a document that details how
posix mode affects bash's behavior.
----rreessttrriicctteedd
The shell becomes restricted (see RREESSTTRRIICCTTEEDD SSHHEELLLL below).
@@ -1025,7 +1027,7 @@ PPAARRAAMMEETTEERRSS
CCHHIILLDD__MMAAXX
Set the number of exited child status values for the shell to
remember. Bash will not allow this value to be decreased below
a Posix-mandated minimum, and there is a maximum value (cur-
a POSIX-mandated minimum, and there is a maximum value (cur-
rently 8192) that this may not exceed. The minimum value is
system-dependent.
CCOOLLUUMMNNSS
@@ -4874,7 +4876,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
Without options, the name and value of each shell variable are
displayed in a format that can be reused as input for setting or
resetting the currently-set variables. Read-only variables can-
not be reset. In _p_o_s_i_x _m_o_d_e, only shell variables are listed.
not be reset. In _p_o_s_i_x mode, only shell variables are listed.
The output is sorted according to the current locale. When
options are specified, they set or unset shell attributes. Any
arguments remaining after option processing are treated as val-
@@ -4976,7 +4978,9 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
is disabled by default.
ppoossiixx Change the behavior of bbaasshh where the default
operation differs from the POSIX standard to
match the standard (_p_o_s_i_x _m_o_d_e).
match the standard (_p_o_s_i_x _m_o_d_e). See SSEEEE AALLSSOO
below for a reference to a document that details
how posix mode affects bash's behavior.
pprriivviilleeggeedd
Same as --pp.
vveerrbboossee Same as --vv.
@@ -5145,7 +5149,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
rupt; previous versions continue with the next command
in the list.
ccoommppaatt4411
If set, bbaasshh, when in posix mode, treats a single quote
If set, bbaasshh, when in _p_o_s_i_x mode, treats a single quote
in a double-quoted parameter expansion as a special
character. The single quotes must match (an even num-
ber) and the characters between the single quotes are
@@ -5618,6 +5622,7 @@ SSEEEE AALLSSOO
_T_h_e _G_n_u _H_i_s_t_o_r_y _L_i_b_r_a_r_y, Brian Fox and Chet Ramey
_P_o_r_t_a_b_l_e _O_p_e_r_a_t_i_n_g _S_y_s_t_e_m _I_n_t_e_r_f_a_c_e _(_P_O_S_I_X_) _P_a_r_t _2_: _S_h_e_l_l _a_n_d _U_t_i_l_i_-
_t_i_e_s, IEEE
http://tiswww.case.edu/~chet/bash/POSIX -- a description of posix mode
_s_h(1), _k_s_h(1), _c_s_h(1)
_e_m_a_c_s(1), _v_i(1)
_r_e_a_d_l_i_n_e(3)
@@ -5693,4 +5698,4 @@ BBUUGGSS
GNU Bash 4.2 2013 January 8 BASH(1)
GNU Bash 4.2 2013 March 4 BASH(1)
+11 -4
View File
@@ -5,12 +5,12 @@
.\" Case Western Reserve University
.\" chet@po.cwru.edu
.\"
.\" Last Change: Sun Mar 10 12:10:16 EDT 2013
.\" Last Change: Thu Mar 21 10:09:25 EDT 2013
.\"
.\" bash_builtins, strip all but Built-Ins section
.if \n(zZ=1 .ig zZ
.if \n(zY=1 .ig zY
.TH BASH 1 "2013 March 10" "GNU Bash 4.3"
.TH BASH 1 "2013 March 21" "GNU Bash 4.3"
.\"
.\" There's some problem with having a `@'
.\" in a tagged paragraph with the BSD man macros.
@@ -1871,8 +1871,9 @@ below.
.TP
.B BASH_COMPAT
The value is used to set the shell's compatibility level.
See the description of the \fBshopt\fB builtin below under
\fBSHELL BUILTIN COMMANDS\fP for a description of the various compatibility
See the description of the \fBshopt\fP builtin below under
\fBSHELL BUILTIN COMMANDS\fP
for a description of the various compatibility
levels and their effects.
The value may be a decimal number (e.g., 4.2) or an integer (e.g., 42)
corresponding to the desired compatibility level.
@@ -2536,6 +2537,12 @@ array, and an index of \-1 references the last element.
An array variable is considered set if a subscript has been assigned a
value. The null string is a valid value.
.PP
It is possible to obtain the keys (indices) of an array as well as the values.
${\fB!\fP\fIname\fP[\fI@\fP]} and ${\fB!\fP\fIname\fP[\fI*\fP]}
expand to the indices assigned in array variable \fIname\fP.
The treatment when in double quotes is similar to the expansion of the
special parameters \fI@\fP and \fI*\fP within double quotes.
.PP
The
.B unset
builtin is used to destroy arrays. \fBunset\fP \fIname\fP[\fIsubscript\fP]
+19 -6
View File
@@ -3,7 +3,7 @@
</HEAD>
<BODY><TABLE WIDTH=100%>
<TR>
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2013 January 8<TH ALIGN=RIGHT width=33%>BASH(1)
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2013 March 4<TH ALIGN=RIGHT width=33%>BASH(1)
</TR>
</TABLE>
<BR><A HREF="#index">Index</A>
@@ -275,6 +275,12 @@ This option is on by default if the shell is invoked as
<DD>
Change the behavior of <B>bash</B> where the default operation differs
from the POSIX standard to match the standard (<I>posix mode</I>).
See
<FONT SIZE=-1><B>SEE ALSO</B>
</FONT>
below for a reference to a document that details how posix mode affects
bash's behavior.
<DT><B>--restricted</B>
<DD>
@@ -2467,7 +2473,7 @@ A sample value is
<DD>
Set the number of exited child status values for the shell to remember.
Bash will not allow this value to be decreased below a Posix-mandated
Bash will not allow this value to be decreased below a POSIX-mandated
minimum, and there is a maximum value (currently 8192) that this may
not exceed.
The minimum value is system-dependent.
@@ -11086,7 +11092,7 @@ Without options, the name and value of each shell variable are displayed
in a format that can be reused as input
for setting or resetting the currently-set variables.
Read-only variables cannot be reset.
In <I>posix mode</I>, only shell variables are listed.
In <I>posix</I> mode, only shell variables are listed.
The output is sorted according to the current locale.
When options are specified, they set or unset shell attributes.
Any arguments remaining after option processing are treated
@@ -11359,6 +11365,12 @@ Change the behavior of
where the default operation differs
from the POSIX standard to match the standard (<I>posix mode</I>).
See
<FONT SIZE=-1><B>SEE ALSO</B>
</FONT>
below for a reference to a document that details how posix mode affects
bash's behavior.
<DT><B>privileged</B>
<DD>
@@ -11774,7 +11786,7 @@ interrupt; previous versions continue with the next command in the list.
If set,
<B>bash</B>,
when in posix mode, treats a single quote in a double-quoted
when in <I>posix</I> mode, treats a single quote in a double-quoted
parameter expansion as a special character. The single quotes must match
(an even number) and the characters between the single quotes are considered
quoted. This is the behavior of posix mode through version 4.1.
@@ -12959,6 +12971,7 @@ script.
<DT><I>The Gnu Readline Library</I>, Brian Fox and Chet Ramey<DD>
<DT><I>The Gnu History Library</I>, Brian Fox and Chet Ramey<DD>
<DT><I>Portable Operating System Interface (POSIX) Part 2: Shell and Utilities</I>, IEEE<DD>
<DT><A HREF="http://tiswww.case.edu/~chet/bash/POSIX">http://tiswww.case.edu/~chet/bash/POSIX</A> -- a description of posix mode<DD>
<DT><I>sh</I>(1), <I>ksh</I>(1), <I>csh</I>(1)<DD>
<DT><I>emacs</I>(1), <I>vi</I>(1)<DD>
<DT><I>readline</I>(3)<DD>
@@ -13111,7 +13124,7 @@ There may be only one active coprocess at a time.
<HR>
<TABLE WIDTH=100%>
<TR>
<TH ALIGN=LEFT width=33%>GNU Bash 4.2<TH ALIGN=CENTER width=33%>2013 January 8<TH ALIGN=RIGHT width=33%>BASH(1)
<TH ALIGN=LEFT width=33%>GNU Bash 4.2<TH ALIGN=CENTER width=33%>2013 March 4<TH ALIGN=RIGHT width=33%>BASH(1)
</TR>
</TABLE>
<HR>
@@ -13217,6 +13230,6 @@ There may be only one active coprocess at a time.
</DL>
<HR>
This document was created by man2html from bash.1.<BR>
Time: 11 January 2013 16:34:33 EST
Time: 08 March 2013 15:57:13 EST
</BODY>
</HTML>
BIN
View File
Binary file not shown.
+4577 -4569
View File
File diff suppressed because it is too large Load Diff
+19 -19
View File
@@ -72,7 +72,7 @@
@xrdef{GNU Parallel-pg}{15}
@xrdef{Shell Functions-title}{Shell Functions}
@xrdef{Shell Functions-snt}{Section@tie 3.3}
@xrdef{Shell Functions-pg}{16}
@xrdef{Shell Functions-pg}{17}
@xrdef{Shell Parameters-title}{Shell Parameters}
@xrdef{Shell Parameters-snt}{Section@tie 3.4}
@xrdef{Shell Parameters-pg}{18}
@@ -81,37 +81,37 @@
@xrdef{Special Parameters-title}{Special Parameters}
@xrdef{Special Parameters-snt}{Section@tie 3.4.2}
@xrdef{Positional Parameters-pg}{19}
@xrdef{Special Parameters-pg}{19}
@xrdef{Shell Expansions-title}{Shell Expansions}
@xrdef{Shell Expansions-snt}{Section@tie 3.5}
@xrdef{Special Parameters-pg}{20}
@xrdef{Shell Expansions-pg}{20}
@xrdef{Brace Expansion-title}{Brace Expansion}
@xrdef{Brace Expansion-snt}{Section@tie 3.5.1}
@xrdef{Shell Expansions-pg}{20}
@xrdef{Brace Expansion-pg}{21}
@xrdef{Tilde Expansion-title}{Tilde Expansion}
@xrdef{Tilde Expansion-snt}{Section@tie 3.5.2}
@xrdef{Brace Expansion-pg}{21}
@xrdef{Tilde Expansion-pg}{21}
@xrdef{Tilde Expansion-pg}{22}
@xrdef{Shell Parameter Expansion-title}{Shell Parameter Expansion}
@xrdef{Shell Parameter Expansion-snt}{Section@tie 3.5.3}
@xrdef{Shell Parameter Expansion-pg}{22}
@xrdef{Shell Parameter Expansion-pg}{23}
@xrdef{Command Substitution-title}{Command Substitution}
@xrdef{Command Substitution-snt}{Section@tie 3.5.4}
@xrdef{Command Substitution-pg}{27}
@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{Command Substitution-pg}{28}
@xrdef{Arithmetic Expansion-pg}{28}
@xrdef{Word Splitting-title}{Word Splitting}
@xrdef{Word Splitting-snt}{Section@tie 3.5.7}
@xrdef{Arithmetic Expansion-pg}{28}
@xrdef{Process Substitution-pg}{28}
@xrdef{Word Splitting-pg}{28}
@xrdef{Filename Expansion-title}{Filename Expansion}
@xrdef{Filename Expansion-snt}{Section@tie 3.5.8}
@xrdef{Process Substitution-pg}{29}
@xrdef{Word Splitting-pg}{29}
@xrdef{Filename Expansion-pg}{29}
@xrdef{Pattern Matching-title}{Pattern Matching}
@xrdef{Pattern Matching-snt}{Section@tie 3.5.8.1}
@xrdef{Filename Expansion-pg}{29}
@xrdef{Pattern Matching-pg}{29}
@xrdef{Pattern Matching-pg}{30}
@xrdef{Quote Removal-title}{Quote Removal}
@xrdef{Quote Removal-snt}{Section@tie 3.5.9}
@xrdef{Redirections-title}{Redirections}
@@ -122,26 +122,26 @@
@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}{34}
@xrdef{Simple Command Expansion-pg}{34}
@xrdef{Command Search and Execution-title}{Command Search and Execution}
@xrdef{Command Search and Execution-snt}{Section@tie 3.7.2}
@xrdef{Command Search and Execution-pg}{35}
@xrdef{Executing Commands-pg}{35}
@xrdef{Simple Command Expansion-pg}{35}
@xrdef{Command Execution Environment-title}{Command Execution Environment}
@xrdef{Command Execution Environment-snt}{Section@tie 3.7.3}
@xrdef{Command Search and Execution-pg}{36}
@xrdef{Command Execution Environment-pg}{36}
@xrdef{Environment-title}{Environment}
@xrdef{Environment-snt}{Section@tie 3.7.4}
@xrdef{Environment-pg}{37}
@xrdef{Exit Status-title}{Exit Status}
@xrdef{Exit Status-snt}{Section@tie 3.7.5}
@xrdef{Environment-pg}{37}
@xrdef{Exit Status-pg}{37}
@xrdef{Signals-title}{Signals}
@xrdef{Signals-snt}{Section@tie 3.7.6}
@xrdef{Exit Status-pg}{38}
@xrdef{Signals-pg}{38}
@xrdef{Shell Scripts-title}{Shell Scripts}
@xrdef{Shell Scripts-snt}{Section@tie 3.8}
@xrdef{Signals-pg}{38}
@xrdef{Shell Scripts-pg}{38}
@xrdef{Shell Scripts-pg}{39}
@xrdef{Shell Builtin Commands-title}{Shell Builtin Commands}
@xrdef{Shell Builtin Commands-snt}{Chapter@tie 4}
@xrdef{Bourne Shell Builtins-title}{Bourne Shell Builtins}
+17 -17
View File
@@ -37,40 +37,40 @@
\entry{commands, conditional}{10}{commands, conditional}
\entry{commands, grouping}{14}{commands, grouping}
\entry{coprocess}{15}{coprocess}
\entry{shell function}{16}{shell function}
\entry{functions, shell}{16}{functions, shell}
\entry{shell function}{17}{shell function}
\entry{functions, shell}{17}{functions, shell}
\entry{parameters}{18}{parameters}
\entry{variable, shell}{18}{variable, shell}
\entry{shell variable}{18}{shell variable}
\entry{parameters, positional}{19}{parameters, positional}
\entry{parameters, special}{19}{parameters, special}
\entry{parameters, special}{20}{parameters, special}
\entry{expansion}{20}{expansion}
\entry{brace expansion}{21}{brace expansion}
\entry{expansion, brace}{21}{expansion, brace}
\entry{tilde expansion}{21}{tilde expansion}
\entry{expansion, tilde}{21}{expansion, tilde}
\entry{parameter expansion}{22}{parameter expansion}
\entry{expansion, parameter}{22}{expansion, parameter}
\entry{command substitution}{27}{command substitution}
\entry{tilde expansion}{22}{tilde expansion}
\entry{expansion, tilde}{22}{expansion, tilde}
\entry{parameter expansion}{23}{parameter expansion}
\entry{expansion, parameter}{23}{expansion, parameter}
\entry{command substitution}{28}{command substitution}
\entry{expansion, arithmetic}{28}{expansion, arithmetic}
\entry{arithmetic expansion}{28}{arithmetic expansion}
\entry{process substitution}{28}{process substitution}
\entry{word splitting}{28}{word splitting}
\entry{process substitution}{29}{process substitution}
\entry{word splitting}{29}{word splitting}
\entry{expansion, filename}{29}{expansion, filename}
\entry{expansion, pathname}{29}{expansion, pathname}
\entry{filename expansion}{29}{filename expansion}
\entry{pathname expansion}{29}{pathname expansion}
\entry{pattern matching}{29}{pattern matching}
\entry{matching, pattern}{29}{matching, pattern}
\entry{pattern matching}{30}{pattern matching}
\entry{matching, pattern}{30}{matching, pattern}
\entry{redirection}{31}{redirection}
\entry{command expansion}{34}{command expansion}
\entry{command execution}{35}{command execution}
\entry{command search}{35}{command search}
\entry{command expansion}{35}{command expansion}
\entry{command execution}{36}{command execution}
\entry{command search}{36}{command search}
\entry{execution environment}{36}{execution environment}
\entry{environment}{37}{environment}
\entry{exit status}{37}{exit status}
\entry{exit status}{38}{exit status}
\entry{signal handling}{38}{signal handling}
\entry{shell script}{38}{shell script}
\entry{shell script}{39}{shell script}
\entry{special builtin}{67}{special builtin}
\entry{login shell}{81}{login shell}
\entry{interactive shell}{81}{interactive shell}
+17 -17
View File
@@ -13,11 +13,11 @@
\entry {builtin}{3}
\initial {C}
\entry {command editing}{102}
\entry {command execution}{35}
\entry {command expansion}{34}
\entry {command execution}{36}
\entry {command expansion}{35}
\entry {command history}{133}
\entry {command search}{35}
\entry {command substitution}{27}
\entry {command search}{36}
\entry {command substitution}{28}
\entry {command timing}{8}
\entry {commands, compound}{9}
\entry {commands, conditional}{10}
@@ -40,14 +40,14 @@
\entry {evaluation, arithmetic}{86}
\entry {event designators}{136}
\entry {execution environment}{36}
\entry {exit status}{3, 37}
\entry {exit status}{3, 38}
\entry {expansion}{20}
\entry {expansion, arithmetic}{28}
\entry {expansion, brace}{21}
\entry {expansion, filename}{29}
\entry {expansion, parameter}{22}
\entry {expansion, parameter}{23}
\entry {expansion, pathname}{29}
\entry {expansion, tilde}{21}
\entry {expansion, tilde}{22}
\entry {expressions, arithmetic}{86}
\entry {expressions, conditional}{84}
\initial {F}
@@ -55,7 +55,7 @@
\entry {filename}{3}
\entry {filename expansion}{29}
\entry {foreground}{97}
\entry {functions, shell}{16}
\entry {functions, shell}{17}
\initial {H}
\entry {history builtins}{133}
\entry {history events}{136}
@@ -79,7 +79,7 @@
\entry {localization}{7}
\entry {login shell}{81}
\initial {M}
\entry {matching, pattern}{29}
\entry {matching, pattern}{30}
\entry {metacharacter}{3}
\initial {N}
\entry {name}{3}
@@ -88,18 +88,18 @@
\initial {O}
\entry {operator, shell}{3}
\initial {P}
\entry {parameter expansion}{22}
\entry {parameter expansion}{23}
\entry {parameters}{18}
\entry {parameters, positional}{19}
\entry {parameters, special}{19}
\entry {parameters, special}{20}
\entry {pathname expansion}{29}
\entry {pattern matching}{29}
\entry {pattern matching}{30}
\entry {pipeline}{8}
\entry {POSIX}{3}
\entry {POSIX Mode}{93}
\entry {process group}{3}
\entry {process group ID}{3}
\entry {process substitution}{28}
\entry {process substitution}{29}
\entry {programmable completion}{124}
\entry {prompting}{91}
\initial {Q}
@@ -113,8 +113,8 @@
\entry {return status}{4}
\initial {S}
\entry {shell arithmetic}{86}
\entry {shell function}{16}
\entry {shell script}{38}
\entry {shell function}{17}
\entry {shell script}{39}
\entry {shell variable}{18}
\entry {shell, interactive}{82}
\entry {signal}{4}
@@ -123,7 +123,7 @@
\entry {startup files}{81}
\entry {suspending jobs}{97}
\initial {T}
\entry {tilde expansion}{21}
\entry {tilde expansion}{22}
\entry {token}{4}
\entry {translation, native languages}{7}
\initial {V}
@@ -131,6 +131,6 @@
\entry {variables, readline}{105}
\initial {W}
\entry {word}{4}
\entry {word splitting}{28}
\entry {word splitting}{29}
\initial {Y}
\entry {yanking text}{103}
BIN
View File
Binary file not shown.
+64 -26
View File
@@ -1,6 +1,6 @@
<HTML>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- Created on January, 11 2013 by texi2html 1.64 -->
<!-- Created on March, 8 2013 by texi2html 1.64 -->
<!--
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
Karl Berry <karl@freefriends.org>
@@ -33,11 +33,11 @@ Send bugs and suggestions to <texi2html@mathematik.uni-kl.de>
<H1>Bash Reference Manual</H1></P><P>
This text is a brief description of the features that are present in
the Bash shell (version 4.2, 8 January 2013 ).
the Bash shell (version 4.2, 2 March 2013 ).
The Bash home page is <A HREF="http://www.gnu.org/software/bash/">http://www.gnu.org/software/bash/</A>.
</P><P>
This is Edition 4.2, last updated 8 January 2013 ,
This is Edition 4.2, last updated 2 March 2013 ,
of <CITE>The GNU Bash Reference Manual</CITE>,
for <CODE>Bash</CODE>, Version 4.2.
</P><P>
@@ -1622,43 +1622,59 @@ The return status of a coprocess is the exit status of <VAR>command</VAR>.
<!--docid::SEC24::-->
<P>
There are ways to run commands in parallel that are not built into Bash.
GNU Parallel is a tool to do just that.
</P><P>
GNU Parallel, as its name suggests, can be used to build and run commands
in parallel. You may run the same command with different arguments, whether
they are filenames, usernames, hostnames, or lines read from files.
they are filenames, usernames, hostnames, or lines read from files. GNU
Parallel provides shorthand references to many of the most common operations
(input lines, various portions of the input line, different ways to specify
the input source, and so on). Parallel can replace <CODE>xargs</CODE> or feed
commands from its input sources to several different instances of Bash.
</P><P>
For a complete description, refer to the GNU Parallel documentation. A few
examples should provide a brief introduction to its use.
</P><P>
For example, it is easy to prefix each line in a text file with a specified
string:
<TABLE><tr><td>&nbsp;</td><td class=example><pre>cat file | parallel -k echo prefix_string
</pre></td></tr></table>The <SAMP>`-k'</SAMP> option is required to preserve the lines' order.
For example, it is easy to replace <CODE>xargs</CODE> to gzip all html files in the
current directory and its subdirectories:
<TABLE><tr><td>&nbsp;</td><td class=example><pre>find . -type f -name '*.html' -print | parallel gzip
</pre></td></tr></table>If you need to protect special characters such as newlines in file names,
use find's <SAMP>`-print0'</SAMP> option and parallel's <SAMP>`-0'</SAMP> option.
</P><P>
Similarly, you can append a specified string to each line in a text file:
<TABLE><tr><td>&nbsp;</td><td class=example><pre>cat file | parallel -k echo {} append_string
</pre></td></tr></table></P><P>
You can use Parallel to move files from the current directory when the
number of files is too large to process with one <CODE>mv</CODE> invocation:
<TABLE><tr><td>&nbsp;</td><td class=example><pre>ls | parallel mv {} destdir
</pre></td></tr></table></P><P>
As you can see, the {} is replaced with each line read from standard input.
While using <CODE>ls</CODE> will work in most instances, it is not sufficient to
deal with all filenames.
If you need to accommodate special characters in filenames, you can use
</P><P>
<TABLE><tr><td>&nbsp;</td><td class=example><pre>find . -depth 1 \! -name '.*' -print0 | parallel -0 mv {} destdir
</pre></td></tr></table></P><P>
as alluded to above.
</P><P>
This will run as many <CODE>mv</CODE> commands as there are files in the current
directory. You can emulate a parallel <CODE>xargs</CODE> by adding the <SAMP>`-X'</SAMP>
option:
<TABLE><tr><td>&nbsp;</td><td class=example><pre>ls | parallel -X mv {} destdir
directory.
You can emulate a parallel <CODE>xargs</CODE> by adding the <SAMP>`-X'</SAMP> option:
<TABLE><tr><td>&nbsp;</td><td class=example><pre>find . -depth 1 \! -name '.*' -print0 | parallel -0 -X mv {} destdir
</pre></td></tr></table></P><P>
GNU Parallel can replace certain common idioms that operate on lines read
from a file (in this case, filenames):
<TABLE><tr><td>&nbsp;</td><td class=example><pre> for x in $(cat list); do
do-something1 $x config-$x
do-something2 &#60; $x
done | process-output
from a file (in this case, filenames listed one per line):
<TABLE><tr><td>&nbsp;</td><td class=example><pre> while read -r x; do
do-something1 "$x" "config-$x"
do-something2 &#60; "$x"
done &#60; file | process-output
</pre></td></tr></table></P><P>
with a more compact syntax reminiscent of lambdas:
@@ -1669,18 +1685,40 @@ Parallel provides a built-in mechanism to remove filename extensions, which
lends itself to batch file transformations or renaming:
<TABLE><tr><td>&nbsp;</td><td class=example><pre>ls *.gz | parallel -j+0 "zcat {} | bzip2 >{.}.bz2 &&#38; rm {}"
</pre></td></tr></table>This will recompress all files in the current directory with names ending
in .gz using bzip2, running one job per CPU (-j+0) in parallel.
in .gz using bzip2, running one job per CPU (-j+0) in parallel.
(We use <CODE>ls</CODE> for brevity here; using <CODE>find</CODE> as above is more
robust in the face of filenames containing unexpected characters.)
Parallel can take arguments from the command line; the above can also be
written as
</P><P>
<TABLE><tr><td>&nbsp;</td><td class=example><pre>parallel "zcat {} | bzip2 >{.}.bz2 &&#38; rm {}" ::: *.gz
</pre></td></tr></table></P><P>
If a command generates output, you may want to preserve the input order in
the output. For instance, the following command
<TABLE><tr><td>&nbsp;</td><td class=example><pre>{ echo foss.org.my ; echo debian.org; echo freenetproject.org; } | parallel traceroute
</pre></td></tr></table>will display as output the traceroute invocation that finishes first. Using
the <SAMP>`-k'</SAMP> option, as we saw above
</pre></td></tr></table>will display as output the traceroute invocation that finishes first.
Adding the <SAMP>`-k'</SAMP> option
<TABLE><tr><td>&nbsp;</td><td class=example><pre>{ echo foss.org.my ; echo debian.org; echo freenetproject.org; } | parallel -k traceroute
</pre></td></tr></table>will ensure that the output of <CODE>traceroute foss.org.my</CODE> is displayed first.
</P><P>
Finally, Parallel can be used to run a sequence of shell commands in parallel,
similar to <SAMP>`cat file | bash'</SAMP>.
It is not uncommon to take a list of filenames, create a series of shell
commands to operate on them, and feed that list of commnds to a shell.
Parallel can speed this up. Assuming that <TT>`file'</TT> contains a list of
shell commands, one per line,
</P><P>
<TABLE><tr><td>&nbsp;</td><td class=example><pre>parallel -j 10 &#60; file
</pre></td></tr></table></P><P>
will evaluate the commands using the shell (since no explicit command is
supplied as an argument), in blocks of ten shell jobs at a time.
</P><P>
<A NAME="Shell Functions"></A>
<HR SIZE="6">
<A NAME="SEC25"></A>
@@ -6223,7 +6261,7 @@ interrupt; previous versions continue with the next command in the list.
<P>
<DT><CODE>compat41</CODE>
<DD>If set, Bash, when in posix mode, treats a single quote in a double-quoted
<DD>If set, Bash, when in POSIX mode, treats a single quote in a double-quoted
parameter expansion as a special character. The single quotes must match
(an even number) and the characters between the single quotes are considered
quoted. This is the behavior of POSIX mode through version 4.1.
@@ -17202,7 +17240,7 @@ to permit their use in free software.
<TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bashref.html#SEC_About"> ? </A>]</TD>
</TR></TABLE>
<H1>About this document</H1>
This document was generated by <I>Chet Ramey</I> on <I>January, 11 2013</I>
This document was generated by <I>Chet Ramey</I> on <I>March, 8 2013</I>
using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
"><I>texi2html</I></A>
<P></P>
@@ -17364,7 +17402,7 @@ the following structure:
<BR>
<FONT SIZE="-1">
This document was generated
by <I>Chet Ramey</I> on <I>January, 11 2013</I>
by <I>Chet Ramey</I> on <I>March, 8 2013</I>
using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
"><I>texi2html</I></A>
+185 -156
View File
@@ -1,10 +1,10 @@
This is bashref.info, produced by makeinfo version 4.13 from
/Users/chet/src/bash/src/doc/bashref.texi.
/usr/homes/chet/src/bash/src/doc/bashref.texi.
This text is a brief description of the features that are present in
the Bash shell (version 4.2, 8 January 2013).
the Bash shell (version 4.2, 2 March 2013).
This is Edition 4.2, last updated 8 January 2013, of `The GNU Bash
This is Edition 4.2, last updated 2 March 2013, of `The GNU Bash
Reference Manual', for `Bash', Version 4.2.
Copyright (C) 1988-2013 Free Software Foundation, Inc.
@@ -28,10 +28,10 @@ Bash Features
*************
This text is a brief description of the features that are present in
the Bash shell (version 4.2, 8 January 2013). The Bash home page is
the Bash shell (version 4.2, 2 March 2013). The Bash home page is
`http://www.gnu.org/software/bash/'.
This is Edition 4.2, last updated 8 January 2013, of `The GNU Bash
This is Edition 4.2, last updated 2 March 2013, of `The GNU Bash
Reference Manual', for `Bash', Version 4.2.
Bash contains features that appear in other popular shells, and some
@@ -1060,39 +1060,51 @@ File: bashref.info, Node: GNU Parallel, Prev: Coprocesses, Up: Shell Commands
3.2.6 GNU Parallel
------------------
GNU Parallel, as its name suggests, can be used to build and run
There are ways to run commands in parallel that are not built into Bash.
GNU Parallel is a tool to do just that.
GNU Parallel, as its name suggests, can be used to build and run
commands in parallel. You may run the same command with different
arguments, whether they are filenames, usernames, hostnames, or lines
read from files.
read from files. GNU Parallel provides shorthand references to many of
the most common operations (input lines, various portions of the input
line, different ways to specify the input source, and so on). Parallel
can replace `xargs' or feed commands from its input sources to several
different instances of Bash.
For a complete description, refer to the GNU Parallel documentation.
A few examples should provide a brief introduction to its use.
For example, it is easy to prefix each line in a text file with a
specified string:
cat file | parallel -k echo prefix_string
The `-k' option is required to preserve the lines' order.
Similarly, you can append a specified string to each line in a text
file:
cat file | parallel -k echo {} append_string
For example, it is easy to replace `xargs' to gzip all html files in
the current directory and its subdirectories:
find . -type f -name '*.html' -print | parallel gzip
If you need to protect special characters such as newlines in file
names, use find's `-print0' option and parallel's `-0' option.
You can use Parallel to move files from the current directory when
the number of files is too large to process with one `mv' invocation:
ls | parallel mv {} destdir
As you can see, the {} is replaced with each line read from standard
input. This will run as many `mv' commands as there are files in the
current directory. You can emulate a parallel `xargs' by adding the
`-X' option:
ls | parallel -X mv {} destdir
input. While using `ls' will work in most instances, it is not
sufficient to deal with all filenames. If you need to accommodate
special characters in filenames, you can use
find . -depth 1 \! -name '.*' -print0 | parallel -0 mv {} destdir
as alluded to above.
This will run as many `mv' commands as there are files in the current
directory. You can emulate a parallel `xargs' by adding the `-X'
option:
find . -depth 1 \! -name '.*' -print0 | parallel -0 -X mv {} destdir
GNU Parallel can replace certain common idioms that operate on lines
read from a file (in this case, filenames):
for x in $(cat list); do
do-something1 $x config-$x
do-something2 < $x
done | process-output
read from a file (in this case, filenames listed one per line):
while read -r x; do
do-something1 "$x" "config-$x"
do-something2 < "$x"
done < file | process-output
with a more compact syntax reminiscent of lambdas:
cat list | parallel "do-something1 {} config-{} ; do-something2 < {}" | process-output
@@ -1102,17 +1114,34 @@ extensions, which lends itself to batch file transformations or
renaming:
ls *.gz | parallel -j+0 "zcat {} | bzip2 >{.}.bz2 && rm {}"
This will recompress all files in the current directory with names
ending in .gz using bzip2, running one job per CPU (-j+0) in parallel.
ending in .gz using bzip2, running one job per CPU (-j+0) in parallel.
(We use `ls' for brevity here; using `find' as above is more robust in
the face of filenames containing unexpected characters.) Parallel can
take arguments from the command line; the above can also be written as
parallel "zcat {} | bzip2 >{.}.bz2 && rm {}" ::: *.gz
If a command generates output, you may want to preserve the input
order in the output. For instance, the following command
{ echo foss.org.my ; echo debian.org; echo freenetproject.org; } | parallel traceroute
will display as output the traceroute invocation that finishes
first. Using the `-k' option, as we saw above
will display as output the traceroute invocation that finishes first.
Adding the `-k' option
{ echo foss.org.my ; echo debian.org; echo freenetproject.org; } | parallel -k traceroute
will ensure that the output of `traceroute foss.org.my' is displayed
first.
Finally, Parallel can be used to run a sequence of shell commands in
parallel, similar to `cat file | bash'. It is not uncommon to take a
list of filenames, create a series of shell commands to operate on
them, and feed that list of commnds to a shell. Parallel can speed
this up. Assuming that `file' contains a list of shell commands, one
per line,
parallel -j 10 < file
will evaluate the commands using the shell (since no explicit command is
supplied as an argument), in blocks of ten shell jobs at a time.

File: bashref.info, Node: Shell Functions, Next: Shell Parameters, Prev: Shell Commands, Up: Basic Shell Features
@@ -4248,7 +4277,7 @@ This builtin allows you to change additional shell optional behavior.
continue with the next command in the list.
`compat41'
If set, Bash, when in posix mode, treats a single quote in a
If set, Bash, when in POSIX mode, treats a single quote in a
double-quoted parameter expansion as a special character.
The single quotes must match (an even number) and the
characters between the single quotes are considered quoted.
@@ -11082,133 +11111,133 @@ D.5 Concept Index

Tag Table:
Node: Top924
Node: Introduction2840
Node: What is Bash?3068
Node: What is a shell?4181
Node: Definitions6720
Node: Basic Shell Features9638
Node: Shell Syntax10857
Node: Shell Operation11887
Node: Quoting13181
Node: Escape Character14484
Node: Single Quotes14969
Node: Double Quotes15317
Node: ANSI-C Quoting16442
Node: Locale Translation17686
Node: Comments18582
Node: Shell Commands19200
Node: Simple Commands20072
Node: Pipelines20703
Node: Lists23402
Node: Compound Commands25131
Node: Looping Constructs26137
Node: Conditional Constructs28600
Node: Command Grouping39478
Node: Coprocesses40957
Node: GNU Parallel42790
Node: Shell Functions45258
Node: Shell Parameters50342
Node: Positional Parameters54471
Node: Special Parameters55371
Node: Shell Expansions58335
Node: Brace Expansion60261
Node: Tilde Expansion63042
Node: Shell Parameter Expansion65391
Node: Command Substitution77685
Node: Arithmetic Expansion79018
Node: Process Substitution79868
Node: Word Splitting80918
Node: Filename Expansion82541
Node: Pattern Matching84706
Node: Quote Removal88406
Node: Redirections88701
Node: Executing Commands97865
Node: Simple Command Expansion98535
Node: Command Search and Execution100465
Node: Command Execution Environment102802
Node: Environment105788
Node: Exit Status107447
Node: Signals109069
Node: Shell Scripts111037
Node: Shell Builtin Commands113555
Node: Bourne Shell Builtins115583
Node: Bash Builtins135359
Node: Modifying Shell Behavior162686
Node: The Set Builtin163031
Node: The Shopt Builtin173357
Node: Special Builtins187561
Node: Shell Variables188540
Node: Bourne Shell Variables188980
Node: Bash Variables191011
Node: Bash Features217886
Node: Invoking Bash218785
Node: Bash Startup Files224563
Node: Interactive Shells229582
Node: What is an Interactive Shell?229992
Node: Is this Shell Interactive?230641
Node: Interactive Shell Behavior231456
Node: Bash Conditional Expressions234744
Node: Shell Arithmetic238746
Node: Aliases241522
Node: Arrays244078
Node: The Directory Stack248767
Node: Directory Stack Builtins249486
Node: Controlling the Prompt252442
Node: The Restricted Shell255214
Node: Bash POSIX Mode257051
Node: Job Control266438
Node: Job Control Basics266898
Node: Job Control Builtins271617
Node: Job Control Variables276079
Node: Command Line Editing277237
Node: Introduction and Notation278909
Node: Readline Interaction280531
Node: Readline Bare Essentials281722
Node: Readline Movement Commands283511
Node: Readline Killing Commands284476
Node: Readline Arguments286396
Node: Searching287440
Node: Readline Init File289626
Node: Readline Init File Syntax290773
Node: Conditional Init Constructs307610
Node: Sample Init File310143
Node: Bindable Readline Commands313260
Node: Commands For Moving314467
Node: Commands For History315611
Node: Commands For Text319796
Node: Commands For Killing322469
Node: Numeric Arguments324926
Node: Commands For Completion326065
Node: Keyboard Macros330257
Node: Miscellaneous Commands330945
Node: Readline vi Mode336751
Node: Programmable Completion337658
Node: Programmable Completion Builtins344908
Node: A Programmable Completion Example354654
Node: Using History Interactively359904
Node: Bash History Facilities360588
Node: Bash History Builtins363587
Node: History Interaction367515
Node: Event Designators370220
Node: Word Designators371442
Node: Modifiers373081
Node: Installing Bash374485
Node: Basic Installation375622
Node: Compilers and Options378314
Node: Compiling For Multiple Architectures379055
Node: Installation Names380719
Node: Specifying the System Type381537
Node: Sharing Defaults382253
Node: Operation Controls382926
Node: Optional Features383884
Node: Reporting Bugs393672
Node: Major Differences From The Bourne Shell394870
Node: GNU Free Documentation License411729
Node: Indexes436925
Node: Builtin Index437379
Node: Reserved Word Index444206
Node: Variable Index446654
Node: Function Index460177
Node: Concept Index467405
Node: Introduction2836
Node: What is Bash?3064
Node: What is a shell?4177
Node: Definitions6716
Node: Basic Shell Features9634
Node: Shell Syntax10853
Node: Shell Operation11883
Node: Quoting13177
Node: Escape Character14480
Node: Single Quotes14965
Node: Double Quotes15313
Node: ANSI-C Quoting16438
Node: Locale Translation17682
Node: Comments18578
Node: Shell Commands19196
Node: Simple Commands20068
Node: Pipelines20699
Node: Lists23398
Node: Compound Commands25127
Node: Looping Constructs26133
Node: Conditional Constructs28596
Node: Command Grouping39474
Node: Coprocesses40953
Node: GNU Parallel42786
Node: Shell Functions46767
Node: Shell Parameters51851
Node: Positional Parameters55980
Node: Special Parameters56880
Node: Shell Expansions59844
Node: Brace Expansion61770
Node: Tilde Expansion64551
Node: Shell Parameter Expansion66900
Node: Command Substitution79194
Node: Arithmetic Expansion80527
Node: Process Substitution81377
Node: Word Splitting82427
Node: Filename Expansion84050
Node: Pattern Matching86215
Node: Quote Removal89915
Node: Redirections90210
Node: Executing Commands99374
Node: Simple Command Expansion100044
Node: Command Search and Execution101974
Node: Command Execution Environment104311
Node: Environment107297
Node: Exit Status108956
Node: Signals110578
Node: Shell Scripts112546
Node: Shell Builtin Commands115064
Node: Bourne Shell Builtins117092
Node: Bash Builtins136868
Node: Modifying Shell Behavior164195
Node: The Set Builtin164540
Node: The Shopt Builtin174866
Node: Special Builtins189070
Node: Shell Variables190049
Node: Bourne Shell Variables190489
Node: Bash Variables192520
Node: Bash Features219395
Node: Invoking Bash220294
Node: Bash Startup Files226072
Node: Interactive Shells231091
Node: What is an Interactive Shell?231501
Node: Is this Shell Interactive?232150
Node: Interactive Shell Behavior232965
Node: Bash Conditional Expressions236253
Node: Shell Arithmetic240255
Node: Aliases243031
Node: Arrays245587
Node: The Directory Stack250276
Node: Directory Stack Builtins250995
Node: Controlling the Prompt253951
Node: The Restricted Shell256723
Node: Bash POSIX Mode258560
Node: Job Control267947
Node: Job Control Basics268407
Node: Job Control Builtins273126
Node: Job Control Variables277588
Node: Command Line Editing278746
Node: Introduction and Notation280418
Node: Readline Interaction282040
Node: Readline Bare Essentials283231
Node: Readline Movement Commands285020
Node: Readline Killing Commands285985
Node: Readline Arguments287905
Node: Searching288949
Node: Readline Init File291135
Node: Readline Init File Syntax292282
Node: Conditional Init Constructs309119
Node: Sample Init File311652
Node: Bindable Readline Commands314769
Node: Commands For Moving315976
Node: Commands For History317120
Node: Commands For Text321305
Node: Commands For Killing323978
Node: Numeric Arguments326435
Node: Commands For Completion327574
Node: Keyboard Macros331766
Node: Miscellaneous Commands332454
Node: Readline vi Mode338260
Node: Programmable Completion339167
Node: Programmable Completion Builtins346417
Node: A Programmable Completion Example356163
Node: Using History Interactively361413
Node: Bash History Facilities362097
Node: Bash History Builtins365096
Node: History Interaction369024
Node: Event Designators371729
Node: Word Designators372951
Node: Modifiers374590
Node: Installing Bash375994
Node: Basic Installation377131
Node: Compilers and Options379823
Node: Compiling For Multiple Architectures380564
Node: Installation Names382228
Node: Specifying the System Type383046
Node: Sharing Defaults383762
Node: Operation Controls384435
Node: Optional Features385393
Node: Reporting Bugs395181
Node: Major Differences From The Bourne Shell396379
Node: GNU Free Documentation License413238
Node: Indexes438434
Node: Builtin Index438888
Node: Reserved Word Index445715
Node: Variable Index448163
Node: Function Index461686
Node: Concept Index468914

End Tag Table
+21 -21
View File
@@ -1,6 +1,6 @@
This is TeX, Version 3.1415926 (TeX Live 2011/Fink) (format=tex 2012.4.18) 11 JAN 2013 16:34
**/Users/chet/src/bash/src/doc/bashref.texi
(/Users/chet/src/bash/src/doc/bashref.texi (./texinfo.tex
This is TeX, Version 3.1415926 (TeX Live 2011/Fink) (format=tex 2012.4.18) 8 MAR 2013 15:57
**/usr/homes/chet/src/bash/src/doc/bashref.texi
(/usr/homes/chet/src/bash/src/doc/bashref.texi (./texinfo.tex
Loading texinfo [version 2009-01-18.17]:
\bindingoffset=\dimen16
\normaloffset=\dimen17
@@ -191,7 +191,7 @@ textttsl pat-tern@texttt ][]) @textttsl command-list @texttt ;;][] esac[]
.etc.
[11] [12] [13] [14] [15]
Overfull \hbox (89.6747pt too wide) in paragraph at lines 1253--1253
Overfull \hbox (89.6747pt too wide) in paragraph at lines 1267--1267
[]@texttt cat list | parallel "do-something1 {} config-{} ; do-something2 < {}
" | process-output[]
@@ -204,7 +204,7 @@ Overfull \hbox (89.6747pt too wide) in paragraph at lines 1253--1253
.etc.
Overfull \hbox (89.6747pt too wide) in paragraph at lines 1268--1268
Overfull \hbox (89.6747pt too wide) in paragraph at lines 1290--1290
[]@texttt { echo foss.org.my ; echo debian.org; echo freenetproject.org; } | p
arallel traceroute[]
@@ -217,7 +217,7 @@ arallel traceroute[]
.etc.
Overfull \hbox (106.92076pt too wide) in paragraph at lines 1274--1274
Overfull \hbox (106.92076pt too wide) in paragraph at lines 1296--1296
[]@texttt { echo foss.org.my ; echo debian.org; echo freenetproject.org; } | p
arallel -k traceroute[]
@@ -232,7 +232,7 @@ arallel -k traceroute[]
[16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30]
[31] [32] [33] [34] [35] [36] [37] [38] Chapter 4 [39] [40] [41] [42] [43]
[44] [45] [46]
Underfull \hbox (badness 5231) in paragraph at lines 3723--3736
Underfull \hbox (badness 5231) in paragraph at lines 3760--3773
@texttt emacs-meta[]@textrm , @texttt emacs-ctlx[]@textrm , @texttt vi[]@textr
m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and
@@ -246,7 +246,7 @@ m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and
[47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61]
[62] [63] [64]
Underfull \hbox (badness 5460) in paragraph at lines 5010--5016
Underfull \hbox (badness 5460) in paragraph at lines 5047--5053
[]@textrm If set, range ex-pres-sions used in pat-tern match-ing (see
@hbox(8.2125+2.73749)x433.62, glue set 3.79674
@@ -259,7 +259,7 @@ Underfull \hbox (badness 5460) in paragraph at lines 5010--5016
[65] [66] Chapter 5 [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77]
Chapter 6 [78]
Overfull \hbox (51.96864pt too wide) in paragraph at lines 5935--5935
Overfull \hbox (51.96864pt too wide) in paragraph at lines 5972--5972
[]@texttt bash [long-opt] [-ir] [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@t
exttt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar-
@@ -272,7 +272,7 @@ exttt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar-
.etc.
Overfull \hbox (76.23077pt too wide) in paragraph at lines 5936--5936
Overfull \hbox (76.23077pt too wide) in paragraph at lines 5973--5973
[]@texttt bash [long-opt] [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@texttt
] [-O @textttsl shopt_option@texttt ] -c @textttsl string @texttt [@textttsl ar
-
@@ -286,7 +286,7 @@ Overfull \hbox (76.23077pt too wide) in paragraph at lines 5936--5936
.etc.
Overfull \hbox (34.72258pt too wide) in paragraph at lines 5937--5937
Overfull \hbox (34.72258pt too wide) in paragraph at lines 5974--5974
[]@texttt bash [long-opt] -s [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@text
tt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar-
@@ -299,7 +299,7 @@ tt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar-
.etc.
[79] [80]
Underfull \hbox (badness 2245) in paragraph at lines 6109--6111
Underfull \hbox (badness 2245) in paragraph at lines 6146--6148
[]@textrm When a lo-gin shell ex-its, Bash reads and ex-e-cutes com-mands from
the file
@@ -312,7 +312,7 @@ the file
.etc.
[81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94]
Underfull \hbox (badness 2521) in paragraph at lines 7321--7324
Underfull \hbox (badness 2521) in paragraph at lines 7358--7361
@textrm `@texttt --enable-strict-posix-default[]@textrm '[] to @texttt configur
e[] @textrm when build-ing (see Sec-tion 10.8
@@ -325,8 +325,8 @@ e[] @textrm when build-ing (see Sec-tion 10.8
.etc.
Chapter 7 [95] [96] [97] [98] [99]
(/Users/chet/src/bash/src/lib/readline/doc/rluser.texi Chapter 8 [100] [101]
[102] [103] [104] [105] [106]
(/usr/homes/chet/src/bash/src/lib/readline/doc/rluser.texi Chapter 8 [100]
[101] [102] [103] [104] [105] [106]
Underfull \hbox (badness 5231) in paragraph at lines 565--581
@texttt emacs-meta[]@textrm , @texttt emacs-ctlx[]@textrm , @texttt vi[]@textr
m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and
@@ -391,9 +391,9 @@ athname[]
.@penalty 10000
.etc.
[131]) (/Users/chet/src/bash/src/lib/readline/doc/hsuser.texi Chapter 9
[131]) (/usr/homes/chet/src/bash/src/lib/readline/doc/hsuser.texi Chapter 9
[132] [133] [134] [135] [136]) Chapter 10 [137] [138] [139] [140]
Underfull \hbox (badness 2772) in paragraph at lines 7929--7933
Underfull \hbox (badness 2772) in paragraph at lines 7966--7970
[]@textrm Enable sup-port for large files (@texttt http://www.sas.com/standard
s/large_
@@ -411,11 +411,11 @@ Appendix D [159] (./bashref.bts) [160] (./bashref.rws) (./bashref.vrs [161]
[162]) (./bashref.fns [163] [164]) (./bashref.cps [165]) [166] )
Here is how much of TeX's memory you used:
2085 strings out of 497974
28613 string characters out of 3220833
65396 words of memory out of 3000000
28645 string characters out of 3220833
66392 words of memory out of 3000000
2901 multiletter control sequences out of 15000+200000
32127 words of font info for 112 fonts, out of 3000000 for 9000
51 hyphenation exceptions out of 8191
16i,6n,14p,315b,705s stack positions out of 5000i,500n,10000p,200000b,50000s
16i,6n,14p,319b,705s stack positions out of 5000i,500n,10000p,200000b,50000s
Output written on bashref.dvi (172 pages, 715952 bytes).
Output written on bashref.dvi (172 pages, 717824 bytes).
BIN
View File
Binary file not shown.
+1631 -1598
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -18,4 +18,4 @@
\entry{]]}{12}{\code {]]}}
\entry{{\tt \char 123}}{14}{\code {{\tt \char 123}}}
\entry{{\tt \char 125}}{14}{\code {{\tt \char 125}}}
\entry{function}{16}{\code {function}}
\entry{function}{17}{\code {function}}
+1 -1
View File
@@ -20,7 +20,7 @@
\initial {F}
\entry {\code {fi}}{10}
\entry {\code {for}}{10}
\entry {\code {function}}{16}
\entry {\code {function}}{17}
\initial {I}
\entry {\code {if}}{10}
\entry {\code {in}}{11}
+6
View File
@@ -6813,6 +6813,12 @@ and an index of -1 refers to the last element.
An array variable is considered set if a subscript has been assigned a
value. The null string is a valid value.
It is possible to obtain the keys (indices) of an array as well as the values.
$@{!@var{name}[@@]@} and $@{!@var{name}[*]@} expand to the indices
assigned in array variable @var{name}.
The treatment when in double quotes is similar to the expansion of the
special parameters @samp{@@} and @samp{*} within double quotes.
The @code{unset} builtin is used to destroy arrays.
@code{unset @var{name}[@var{subscript}]}
destroys the array element at index @var{subscript}.
+20 -20
View File
@@ -22,40 +22,40 @@
@numsubsubsecentry{Grouping Commands}{3.2.4.3}{Command Grouping}{14}
@numsubsecentry{Coprocesses}{3.2.5}{Coprocesses}{15}
@numsubsecentry{GNU Parallel}{3.2.6}{GNU Parallel}{15}
@numsecentry{Shell Functions}{3.3}{Shell Functions}{16}
@numsecentry{Shell Functions}{3.3}{Shell Functions}{17}
@numsecentry{Shell Parameters}{3.4}{Shell Parameters}{18}
@numsubsecentry{Positional Parameters}{3.4.1}{Positional Parameters}{19}
@numsubsecentry{Special Parameters}{3.4.2}{Special Parameters}{19}
@numsubsecentry{Special Parameters}{3.4.2}{Special Parameters}{20}
@numsecentry{Shell Expansions}{3.5}{Shell Expansions}{20}
@numsubsecentry{Brace Expansion}{3.5.1}{Brace Expansion}{21}
@numsubsecentry{Tilde Expansion}{3.5.2}{Tilde Expansion}{21}
@numsubsecentry{Shell Parameter Expansion}{3.5.3}{Shell Parameter Expansion}{22}
@numsubsecentry{Command Substitution}{3.5.4}{Command Substitution}{27}
@numsubsecentry{Tilde Expansion}{3.5.2}{Tilde Expansion}{22}
@numsubsecentry{Shell Parameter Expansion}{3.5.3}{Shell Parameter Expansion}{23}
@numsubsecentry{Command Substitution}{3.5.4}{Command Substitution}{28}
@numsubsecentry{Arithmetic Expansion}{3.5.5}{Arithmetic Expansion}{28}
@numsubsecentry{Process Substitution}{3.5.6}{Process Substitution}{28}
@numsubsecentry{Word Splitting}{3.5.7}{Word Splitting}{28}
@numsubsecentry{Process Substitution}{3.5.6}{Process Substitution}{29}
@numsubsecentry{Word Splitting}{3.5.7}{Word Splitting}{29}
@numsubsecentry{Filename Expansion}{3.5.8}{Filename Expansion}{29}
@numsubsubsecentry{Pattern Matching}{3.5.8.1}{Pattern Matching}{29}
@numsubsubsecentry{Pattern Matching}{3.5.8.1}{Pattern Matching}{30}
@numsubsecentry{Quote Removal}{3.5.9}{Quote Removal}{31}
@numsecentry{Redirections}{3.6}{Redirections}{31}
@numsubsecentry{Redirecting Input}{3.6.1}{}{32}
@numsubsecentry{Redirecting Output}{3.6.2}{}{32}
@numsubsecentry{Appending Redirected Output}{3.6.3}{}{32}
@numsubsecentry{Redirecting Standard Output and Standard Error}{3.6.4}{}{32}
@numsubsecentry{Redirecting Output}{3.6.2}{}{33}
@numsubsecentry{Appending Redirected Output}{3.6.3}{}{33}
@numsubsecentry{Redirecting Standard Output and Standard Error}{3.6.4}{}{33}
@numsubsecentry{Appending Standard Output and Standard Error}{3.6.5}{}{33}
@numsubsecentry{Here Documents}{3.6.6}{}{33}
@numsubsecentry{Here Strings}{3.6.7}{}{33}
@numsubsecentry{Here Documents}{3.6.6}{}{34}
@numsubsecentry{Here Strings}{3.6.7}{}{34}
@numsubsecentry{Duplicating File Descriptors}{3.6.8}{}{34}
@numsubsecentry{Moving File Descriptors}{3.6.9}{}{34}
@numsubsecentry{Opening File Descriptors for Reading and Writing}{3.6.10}{}{34}
@numsecentry{Executing Commands}{3.7}{Executing Commands}{34}
@numsubsecentry{Simple Command Expansion}{3.7.1}{Simple Command Expansion}{34}
@numsubsecentry{Command Search and Execution}{3.7.2}{Command Search and Execution}{35}
@numsubsecentry{Moving File Descriptors}{3.6.9}{}{35}
@numsubsecentry{Opening File Descriptors for Reading and Writing}{3.6.10}{}{35}
@numsecentry{Executing Commands}{3.7}{Executing Commands}{35}
@numsubsecentry{Simple Command Expansion}{3.7.1}{Simple Command Expansion}{35}
@numsubsecentry{Command Search and Execution}{3.7.2}{Command Search and Execution}{36}
@numsubsecentry{Command Execution Environment}{3.7.3}{Command Execution Environment}{36}
@numsubsecentry{Environment}{3.7.4}{Environment}{37}
@numsubsecentry{Exit Status}{3.7.5}{Exit Status}{37}
@numsubsecentry{Exit Status}{3.7.5}{Exit Status}{38}
@numsubsecentry{Signals}{3.7.6}{Signals}{38}
@numsecentry{Shell Scripts}{3.8}{Shell Scripts}{38}
@numsecentry{Shell Scripts}{3.8}{Shell Scripts}{39}
@numchapentry{Shell Builtin Commands}{4}{Shell Builtin Commands}{40}
@numsecentry{Bourne Shell Builtins}{4.1}{Bourne Shell Builtins}{40}
@numsecentry{Bash Builtin Commands}{4.2}{Bash Builtins}{47}
+3 -3
View File
@@ -1,9 +1,9 @@
\entry{LC_MESSAGES}{7}{\code {LC_MESSAGES}}
\entry{TEXTDOMAIN}{7}{\code {TEXTDOMAIN}}
\entry{TEXTDOMAINDIR}{7}{\code {TEXTDOMAINDIR}}
\entry{*}{19}{\code {*}}
\entry{@}{19}{\code {@}}
\entry{#}{19}{\code {#}}
\entry{*}{20}{\code {*}}
\entry{@}{20}{\code {@}}
\entry{#}{20}{\code {#}}
\entry{?}{20}{\code {?}}
\entry{-}{20}{\code {-}}
\entry{$}{20}{\code {$}}
+3 -3
View File
@@ -1,17 +1,17 @@
\initial {!}
\entry {\code {!}}{20}
\initial {#}
\entry {\code {#}}{19}
\entry {\code {#}}{20}
\initial {$}
\entry {\code {$}}{20}
\initial {*}
\entry {\code {*}}{19}
\entry {\code {*}}{20}
\initial {-}
\entry {\code {-}}{20}
\initial {?}
\entry {\code {?}}{20}
\initial {@}
\entry {\code {@}}{19}
\entry {\code {@}}{20}
\initial {_}
\entry {\code {_}}{20}
\initial {0}
+5 -3
View File
@@ -1028,7 +1028,7 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
Without options, the name and value of each shell variable are
displayed in a format that can be reused as input for setting or
resetting the currently-set variables. Read-only variables can-
not be reset. In _p_o_s_i_x _m_o_d_e, only shell variables are listed.
not be reset. In _p_o_s_i_x mode, only shell variables are listed.
The output is sorted according to the current locale. When
options are specified, they set or unset shell attributes. Any
arguments remaining after option processing are treated as val-
@@ -1130,7 +1130,9 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
is disabled by default.
ppoossiixx Change the behavior of bbaasshh where the default
operation differs from the POSIX standard to
match the standard (_p_o_s_i_x _m_o_d_e).
match the standard (_p_o_s_i_x _m_o_d_e). See SSEEEE AALLSSOO
below for a reference to a document that details
how posix mode affects bash's behavior.
pprriivviilleeggeedd
Same as --pp.
vveerrbboossee Same as --vv.
@@ -1299,7 +1301,7 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
rupt; previous versions continue with the next command
in the list.
ccoommppaatt4411
If set, bbaasshh, when in posix mode, treats a single quote
If set, bbaasshh, when in _p_o_s_i_x mode, treats a single quote
in a double-quoted parameter expansion as a special
character. The single quotes must match (an even num-
ber) and the characters between the single quotes are
+481 -475
View File
File diff suppressed because it is too large Load Diff
+6 -6
View File
@@ -1,12 +1,12 @@
%!PS-Adobe-3.0
%%Creator: groff version 1.19.2
%%CreationDate: Fri Jan 11 16:34:25 2013
%%CreationDate: Fri Mar 8 15:56:21 2013
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%DocumentSuppliedResources: procset grops 1.19 2
%%Pages: 1
%%PageOrder: Ascend
%%DocumentMedia: Default 595 842 0 () ()
%%DocumentMedia: Default 612 792 0 () ()
%%Orientation: Portrait
%%EndComments
%%BeginDefaults
@@ -188,16 +188,16 @@ setpacking
%%EndProlog
%%BeginSetup
%%BeginFeature: *PageSize Default
<< /PageSize [ 595 842 ] /ImagingBBox null >> setpagedevice
<< /PageSize [ 612 792 ] /ImagingBBox null >> setpagedevice
%%EndFeature
%%IncludeResource: font Times-Roman
%%IncludeResource: font Times-Bold
grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72
def/PL 841.89 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron
/Zcaron/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef
def/PL 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron
/scaron/zcaron/Ydieresis/trademark/quotesingle/Euro/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
/.notdef/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/.notdef/.notdef/space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen
/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon
/semicolon/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O
+2 -2
View File
@@ -2,9 +2,9 @@
Copyright (C) 1988-2013 Free Software Foundation, Inc.
@end ignore
@set LASTCHANGE Sun Mar 10 12:10:36 EDT 2013
@set LASTCHANGE Thu Mar 21 10:09:44 EDT 2013
@set EDITION 4.3
@set VERSION 4.3
@set UPDATED 10 March 2013
@set UPDATED 21 March 2013
@set UPDATED-MONTH March 2013