commit bash-20100115 snapshot

This commit is contained in:
Chet Ramey
2011-12-12 21:52:41 -05:00
parent 1665e22a82
commit 5cdaaf76ec
31 changed files with 11109 additions and 8737 deletions
+90 -72
View File
@@ -712,8 +712,8 @@ PPAARRAAMMEETTEERRSS
that do not require bbaasshh to be re-initialized.
BBAASSHH__AALLIIAASSEESS
An associative array variable whose members correspond to the
internal list of aliases as maintained by the aalliiaass builtin Ele-
ments added to this array appear in the alias list; unsetting
internal list of aliases as maintained by the aalliiaass builtin.
Elements added to this array appear in the alias list; unsetting
array elements cause aliases to be removed from the alias list.
BBAASSHH__AARRGGCC
An array variable whose values are the number of parameters in
@@ -832,6 +832,10 @@ PPAARRAAMMEETTEERRSS
tions invoked by the programmable completion facilities (see
PPrrooggrraammmmaabbllee CCoommpplleettiioonn below).
CCOOPPRROOCC An array variable (see AArrrraayyss below) created to hold the file
descriptors for output from and input to an unnamed coprocess
(see CCoopprroocceesssseess above).
DDIIRRSSTTAACCKK
An array variable (see AArrrraayyss below) containing the current con-
tents of the directory stack. Directories appear in the stack
@@ -885,24 +889,28 @@ PPAARRAAMMEETTEERRSS
type on which bbaasshh is executing, in the standard GNU _c_p_u_-_c_o_m_-
_p_a_n_y_-_s_y_s_t_e_m format. The default is system-dependent.
MMAAPPFFIILLEE
An array variable (see AArrrraayyss below) created to hold the text
read by the mmaappffiillee builtin when no variable name is supplied.
OOLLDDPPWWDD The previous working directory as set by the ccdd command.
OOPPTTAARRGG The value of the last option argument processed by the ggeettooppttss
OOPPTTAARRGG The value of the last option argument processed by the ggeettooppttss
builtin command (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below).
OOPPTTIINNDD The index of the next argument to be processed by the ggeettooppttss
OOPPTTIINNDD The index of the next argument to be processed by the ggeettooppttss
builtin command (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below).
OOSSTTYYPPEE Automatically set to a string that describes the operating sys-
tem on which bbaasshh is executing. The default is system-depen-
OOSSTTYYPPEE Automatically set to a string that describes the operating sys-
tem on which bbaasshh is executing. The default is system-depen-
dent.
PPIIPPEESSTTAATTUUSS
An array variable (see AArrrraayyss below) containing a list of exit
status values from the processes in the most-recently-executed
An array variable (see AArrrraayyss below) containing a list of exit
status values from the processes in the most-recently-executed
foreground pipeline (which may contain only a single command).
PPPPIIDD The process ID of the shell's parent. This variable is read-
PPPPIIDD The process ID of the shell's parent. This variable is read-
only.
PPWWDD The current working directory as set by the ccdd command.
@@ -910,27 +918,35 @@ PPAARRAAMMEETTEERRSS
RRAANNDDOOMM Each time this parameter is referenced, a random integer between
0 and 32767 is generated. The sequence of random numbers may be
initialized by assigning a value to RRAANNDDOOMM. If RRAANNDDOOMM is unset,
it loses its special properties, even if it is subsequently
it loses its special properties, even if it is subsequently
reset.
RREEPPLLYY Set to the line of input read by the rreeaadd builtin command when
RREEAADDLLIINNEE__LLIINNEE
The contents of the rreeaaddlliinnee line buffer, for use with "bind -x"
(see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below).
RREEAADDLLIINNEE__PPOOIINNTT
The position of the insertion point in the rreeaaddlliinnee line buffer,
for use with "bind -x" (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below).
RREEPPLLYY Set to the line of input read by the rreeaadd builtin command when
no arguments are supplied.
SSEECCOONNDDSS
Each time this parameter is referenced, the number of seconds
since shell invocation is returned. If a value is assigned to
SSEECCOONNDDSS, the value returned upon subsequent references is the
number of seconds since the assignment plus the value assigned.
Each time this parameter is referenced, the number of seconds
since shell invocation is returned. If a value is assigned to
SSEECCOONNDDSS, the value returned upon subsequent references is the
number of seconds since the assignment plus the value assigned.
If SSEECCOONNDDSS is unset, it loses its special properties, even if it
is subsequently reset.
SSHHEELLLLOOPPTTSS
A colon-separated list of enabled shell options. Each word in
the list is a valid argument for the --oo option to the sseett
A colon-separated list of enabled shell options. Each word in
the list is a valid argument for the --oo option to the sseett
builtin command (see SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS below). The options
appearing in SSHHEELLLLOOPPTTSS are those reported as _o_n by sseett --oo. If
this variable is in the environment when bbaasshh starts up, each
shell option in the list will be enabled before reading any
appearing in SSHHEELLLLOOPPTTSS are those reported as _o_n by sseett --oo. If
this variable is in the environment when bbaasshh starts up, each
shell option in the list will be enabled before reading any
startup files. This variable is read-only.
SSHHLLVVLL Incremented by one each time an instance of bbaasshh is started.
@@ -938,20 +954,16 @@ PPAARRAAMMEETTEERRSS
UUIIDD Expands to the user ID of the current user, initialized at shell
startup. This variable is readonly.
The following variables are used by the shell. In some cases, bbaasshh
The following variables are used by the shell. In some cases, bbaasshh
assigns a default value to a variable; these cases are noted below.
BBAASSHH__EENNVV
If this parameter is set when bbaasshh is executing a shell script,
its value is interpreted as a filename containing commands to
If this parameter is set when bbaasshh is executing a shell script,
its value is interpreted as a filename containing commands to
initialize the shell, as in _~_/_._b_a_s_h_r_c. The value of BBAASSHH__EENNVV is
subjected to parameter expansion, command substitution, and
arithmetic expansion before being interpreted as a file name.
subjected to parameter expansion, command substitution, and
arithmetic expansion before being interpreted as a file name.
PPAATTHH is not used to search for the resultant file name.
CCDDPPAATTHH The search path for the ccdd command. This is a colon-separated
list of directories in which the shell looks for destination
directories specified by the ccdd command. A sample value is
".:~:/usr".
BBAASSHH__XXTTRRAACCEEFFDD
If set to an integer corresponding to a valid file descriptor,
bbaasshh will write the trace output generated when _s_e_t _-_x is
@@ -961,17 +973,23 @@ PPAARRAAMMEETTEERRSS
output to be sent to the standard error. Note that setting
BBAASSHH__XXTTRRAACCEEFFDD to 2 (the standard error file descriptor) and then
unsetting it will result in the standard error being closed.
CCDDPPAATTHH The search path for the ccdd command. This is a colon-separated
list of directories in which the shell looks for destination
directories specified by the ccdd command. A sample value is
".:~:/usr".
CCOOLLUUMMNNSS
Used by the sseelleecctt builtin command to determine the terminal
width when printing selection lists. Automatically set upon
receipt of a SIGWINCH.
Used by the sseelleecctt builtin command to determine the terminal
width when printing selection lists. Automatically set upon
receipt of a SSIIGGWWIINNCCHH.
CCOOMMPPRREEPPLLYY
An array variable from which bbaasshh reads the possible completions
generated by a shell function invoked by the programmable com-
generated by a shell function invoked by the programmable com-
pletion facility (see PPrrooggrraammmmaabbllee CCoommpplleettiioonn below).
EEMMAACCSS If bbaasshh finds this variable in the environment when the shell
starts with value "t", it assumes that the shell is running in
EEMMAACCSS If bbaasshh finds this variable in the environment when the shell
starts with value "t", it assumes that the shell is running in
an emacs shell buffer and disables line editing.
EENNVV Similar to BBAASSHH__EENNVV; used when the shell is invoked in POSIX
mode.
FFCCEEDDIITT The default editor for the ffcc builtin command.
FFIIGGNNOORREE
A colon-separated list of suffixes to ignore when performing
@@ -1545,7 +1563,7 @@ EEXXPPAANNSSIIOONN
operator converts matching uppercase letters to lowercase. The
^^^^ and ,,,, expansions convert each matched character in the
expanded value; the ^^ and ,, expansions match and convert only
the first character in the expanded value.. If _p_a_t_t_e_r_n is omit-
the first character in the expanded value. If _p_a_t_t_e_r_n is omit-
ted, it is treated like a ??, which matches every character. If
_p_a_r_a_m_e_t_e_r is @@ or **, the case modification operation is applied
to each positional parameter in turn, and the expansion is the
@@ -2157,26 +2175,26 @@ CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS
True if _f_i_l_e exists and is writable.
--xx _f_i_l_e
True if _f_i_l_e exists and is executable.
--OO _f_i_l_e
True if _f_i_l_e exists and is owned by the effective user id.
--GG _f_i_l_e
True if _f_i_l_e exists and is owned by the effective group id.
--LL _f_i_l_e
True if _f_i_l_e exists and is a symbolic link.
--SS _f_i_l_e
True if _f_i_l_e exists and is a socket.
--NN _f_i_l_e
True if _f_i_l_e exists and has been modified since it was last
read.
_f_i_l_e_1 -nntt _f_i_l_e_2
True if _f_i_l_e_1 is newer (according to modification date) than
_f_i_l_e_2, or if _f_i_l_e_1 exists and _f_i_l_e_2 does not.
_f_i_l_e_1 -oott _f_i_l_e_2
True if _f_i_l_e_1 is older than _f_i_l_e_2, or if _f_i_l_e_2 exists and _f_i_l_e_1
does not.
--OO _f_i_l_e
True if _f_i_l_e exists and is owned by the effective user id.
--SS _f_i_l_e
True if _f_i_l_e exists and is a socket.
_f_i_l_e_1 --eeff _f_i_l_e_2
True if _f_i_l_e_1 and _f_i_l_e_2 refer to the same device and inode num-
bers.
_f_i_l_e_1 -nntt _f_i_l_e_2
True if _f_i_l_e_1 is newer (according to modification date) than
_f_i_l_e_2, or if _f_i_l_e_1 exists and _f_i_l_e_2 does not.
_f_i_l_e_1 -oott _f_i_l_e_2
True if _f_i_l_e_1 is older than _f_i_l_e_2, or if _f_i_l_e_2 exists and _f_i_l_e_1
does not.
--oo _o_p_t_n_a_m_e
True if shell option _o_p_t_n_a_m_e is enabled. See the list of
options under the description of the --oo option to the sseett
@@ -3785,7 +3803,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
ccaalllleerr [_e_x_p_r]
Returns the context of any active subroutine call (a shell func-
tion or a script executed with the .. or ssoouurrccee builtins. With-
tion or a script executed with the .. or ssoouurrccee builtins). With-
out _e_x_p_r, ccaalllleerr displays the line number and source filename of
the current subroutine call. If a non-negative integer is sup-
plied as _e_x_p_r, ccaalllleerr displays the line number, subroutine name,
@@ -3938,23 +3956,29 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
vvaarriiaabbllee
Names of all shell variables. May also be spec-
ified as --vv.
--CC _c_o_m_m_a_n_d
_c_o_m_m_a_n_d is executed in a subshell environment, and its
output is used as the possible completions.
--FF _f_u_n_c_t_i_o_n
The shell function _f_u_n_c_t_i_o_n is executed in the current
shell environment. When it finishes, the possible com-
pletions are retrieved from the value of the CCOOMMPPRREEPPLLYY
array variable.
--GG _g_l_o_b_p_a_t
The pathname expansion pattern _g_l_o_b_p_a_t is expanded to
generate the possible completions.
--PP _p_r_e_f_i_x
_p_r_e_f_i_x is added at the beginning of each possible com-
pletion after all other options have been applied.
--SS _s_u_f_f_i_x
_s_u_f_f_i_x is appended to each possible completion after all
other options have been applied.
--WW _w_o_r_d_l_i_s_t
The _w_o_r_d_l_i_s_t is split using the characters in the IIFFSS
special variable as delimiters, and each resultant word
is expanded. The possible completions are the members
of the resultant list which match the word being com-
pleted.
--CC _c_o_m_m_a_n_d
_c_o_m_m_a_n_d is executed in a subshell environment, and its
output is used as the possible completions.
--FF _f_u_n_c_t_i_o_n
The shell function _f_u_n_c_t_i_o_n is executed in the current
shell environment. When it finishes, the possible com-
pletions are retrieved from the value of the CCOOMMPPRREEPPLLYY
array variable.
--XX _f_i_l_t_e_r_p_a_t
_f_i_l_t_e_r_p_a_t is a pattern as used for pathname expansion.
It is applied to the list of possible completions gener-
@@ -3962,12 +3986,6 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
completion matching _f_i_l_t_e_r_p_a_t is removed from the list.
A leading !! in _f_i_l_t_e_r_p_a_t negates the pattern; in this
case, any completion not matching _f_i_l_t_e_r_p_a_t is removed.
--PP _p_r_e_f_i_x
_p_r_e_f_i_x is added at the beginning of each possible com-
pletion after all other options have been applied.
--SS _s_u_f_f_i_x
_s_u_f_f_i_x is appended to each possible completion after all
other options have been applied.
The return value is true unless an invalid option is supplied,
an option other than --pp or --rr is supplied without a _n_a_m_e argu-
@@ -3977,7 +3995,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
ccoommppoopptt [--oo _o_p_t_i_o_n] [--DDEE] [++oo _o_p_t_i_o_n] [_n_a_m_e]
Modify completion options for each _n_a_m_e according to the
_o_p_t_i_o_ns, or for the currently-execution completion if no _n_a_m_es
_o_p_t_i_o_ns, or for the currently-executing completion if no _n_a_m_es
are supplied. If no _o_p_t_i_o_ns are given, display the completion
options for each _n_a_m_e or the current completion. The possible
values of _o_p_t_i_o_n are those valid for the ccoommpplleettee builtin
@@ -3988,9 +4006,9 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
remaining options should apply to ``empty'' command completion;
that is, completion attempted on a blank line.
The return value is true unless an invalid option is supplied, an
attempt is made to modify the options for a _n_a_m_e for which no comple-
tion specification exists, or an output error occurs.
The return value is true unless an invalid option is supplied,
an attempt is made to modify the options for a _n_a_m_e for which no
completion specification exists, or an output error occurs.
ccoonnttiinnuuee [_n]
Resume the next iteration of the enclosing ffoorr, wwhhiillee, uunnttiill, or
@@ -4057,7 +4075,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
an array variable, or an attempt is made to display a non-exis-
tent function with --ff.
ddiirrss [[++_n]] [[--_n]] [[--ccppllvv]]
ddiirrss [[++_n]] [[--_n]] [[--ccllppvv]]
Without options, displays the list of currently remembered
directories. The default display is on a single line with
directory names separated by spaces. Directories are added to
@@ -4353,10 +4371,10 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
The first form lists the active jobs. The options have the fol-
lowing meanings:
--ll List process IDs in addition to the normal information.
--nn Display information only about jobs that have changed
status since the user was last notified of their status.
--pp List only the process ID of the job's process group
leader.
--nn Display information only about jobs that have changed
status since the user was last notified of their status.
--rr Restrict output to running jobs.
--ss Restrict output to stopped jobs.
@@ -4903,7 +4921,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
(( _c_o_m_m_a_n_d )) inherit the DDEEBBUUGG and RREETTUURRNN traps.
66.. Error tracing is enabled: command substitution,
shell functions, and subshells invoked with ((
_c_o_m_m_a_n_d )) inherit the EERRRROORR trap.
_c_o_m_m_a_n_d )) inherit the EERRRR trap.
eexxttgglloobb If set, the extended pattern matching features described
above under PPaatthhnnaammee EExxppaannssiioonn are enabled.
eexxttqquuoottee
@@ -5090,7 +5108,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
causes the shell to print a list of signal names and their cor-
responding numbers. Each _s_i_g_s_p_e_c is either a signal name
defined in <_s_i_g_n_a_l_._h>, or a signal number. Signal names are
case insensitive and the SIG prefix is optional.
case insensitive and the SSIIGG prefix is optional.
If a _s_i_g_s_p_e_c is EEXXIITT (0) the command _a_r_g is executed on exit
from the shell. If a _s_i_g_s_p_e_c is DDEEBBUUGG, the command _a_r_g is exe-
@@ -5310,7 +5328,7 @@ BBUUGG RREEPPOORRTTSS
If you find a bug in bbaasshh,, you should report it. But first, you should
make sure that it really is a bug, and that it appears in the latest
version of bbaasshh. The latest version is always available from
_f_t_p_:_/_/_f_t_p_._g_n_u_._o_r_g_/_p_u_b_/_b_a_s_h_/.
_f_t_p_:_/_/_f_t_p_._g_n_u_._o_r_g_/_p_u_b_/_g_n_u_/_b_a_s_h_/.
Once you have determined that a bug actually exists, use the _b_a_s_h_b_u_g
command to submit a bug report. If you have a fix, you are encouraged
@@ -5355,4 +5373,4 @@ BBUUGGSS
GNU Bash-4.1 2009 December 29 BASH(1)
GNU Bash-4.1 2010 January 15 BASH(1)