mirror of
https://https.git.savannah.gnu.org/git/bash.git
synced 2026-07-02 09:50:50 +02:00
commit bash-20190227 snapshot
This commit is contained in:
@@ -5381,3 +5381,42 @@ bashhist.c
|
||||
history entries in the current shell session is greater than the
|
||||
number of entries in the history list. Based on a report from
|
||||
<airat_vi@mail.ru>
|
||||
|
||||
2/25
|
||||
----
|
||||
aclocal.m4
|
||||
- BASH_FUNC_FNMATCH_EQUIV_FALLBACK: use en_US.UTF-8 instead of
|
||||
de_DE.UTF-8; it's more likely to be installed
|
||||
|
||||
2/26
|
||||
----
|
||||
doc/{bash.1,bashref.texi}
|
||||
- extdebug: make sure to note that setting this option in a startup
|
||||
file causes an attempt to start the debugger. Noted by Linda
|
||||
Walsh <bash@tlinx.org>
|
||||
|
||||
builtins/fc.def
|
||||
- fc_builtin: if we are not listing, and delete the last history entry,
|
||||
make sure that histbeg or histend, whichever is greater, is clamped
|
||||
at the value of last_hist to avoid dereferencing the just-removed
|
||||
history index. Fixes bug reported by Chris King-Parra
|
||||
<chris@kingparra.work>
|
||||
|
||||
2/27
|
||||
----
|
||||
shell.c
|
||||
- init_interactive: assignment to histexp_flag should be protected by
|
||||
#ifdef BANG_HISTORY. https://savannah.gnu.org/patch/?9759
|
||||
|
||||
subst.c
|
||||
- list_string: if we have a non-null string, but quoted null character
|
||||
removal leaves an empty string, set W_SAWQUOTEDNULL in the returned
|
||||
word flags so the caller can deal with it
|
||||
- parameter_brace_expand_rhs: deal with word with null or empty word
|
||||
and W_SAWQUOTEDNULL in the flags coming back from expand_string_for_rhs
|
||||
by turning it into a quoted null word and modifying the flags. Part
|
||||
of fix for bug report from Grisha Levit <grishalevit@gmail.com>
|
||||
- expand_word_internal: if a double-quoted string comes back with a
|
||||
quoted null as the expansion of "$@", note that we saw it, but still
|
||||
add a quoted null into the result string instead of short-circuiting.
|
||||
Part of fix for bug report from Grisha Levit <grishalevit@gmail.com>
|
||||
|
||||
@@ -1250,6 +1250,7 @@ tests/quote.right f
|
||||
tests/quote1.sub f
|
||||
tests/quote2.sub f
|
||||
tests/quote3.sub f
|
||||
tests/quote4.sub f
|
||||
tests/read.tests f
|
||||
tests/read.right f
|
||||
tests/read1.sub f
|
||||
|
||||
Vendored
+1
-1
@@ -2214,7 +2214,7 @@ unsigned char string[4] = { '\xc3', '\xa4', '\0' };
|
||||
int
|
||||
main (int c, char **v)
|
||||
{
|
||||
setlocale (LC_ALL, "de_DE.UTF-8");
|
||||
setlocale (LC_ALL, "en_US.UTF-8");
|
||||
if (fnmatch (pattern, (const char *)string, 0) != FNM_NOMATCH)
|
||||
exit (0);
|
||||
exit (1);
|
||||
|
||||
@@ -364,6 +364,13 @@ fc_builtin (list)
|
||||
in parse_and_execute(). */
|
||||
if (histbeg == histend && histend == last_hist && hlist[last_hist] == 0)
|
||||
last_hist = histbeg = --histend;
|
||||
|
||||
if (hlist[last_hist] == 0)
|
||||
last_hist--;
|
||||
if (histend >= last_hist)
|
||||
histend = last_hist;
|
||||
else if (histbeg >= last_hist)
|
||||
histbeg = last_hist;
|
||||
}
|
||||
|
||||
/* We print error messages for line specifications out of range. */
|
||||
|
||||
@@ -19227,7 +19227,7 @@ unsigned char string[4] = { '\xc3', '\xa4', '\0' };
|
||||
int
|
||||
main (int c, char **v)
|
||||
{
|
||||
setlocale (LC_ALL, "de_DE.UTF-8");
|
||||
setlocale (LC_ALL, "en_US.UTF-8");
|
||||
if (fnmatch (pattern, (const char *)string, 0) != FNM_NOMATCH)
|
||||
exit (0);
|
||||
exit (1);
|
||||
|
||||
+200
-199
@@ -2466,7 +2466,7 @@ AARRIITTHHMMEETTIICC EEVVAALLUUAATTIIOONN
|
||||
CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS
|
||||
Conditional expressions are used by the [[[[ compound command and the
|
||||
tteesstt and [[ builtin commands to test file attributes and perform string
|
||||
and arithmetic comparisons. The tteesstt abd [[ commands determine their
|
||||
and arithmetic comparisons. The tteesstt and [[ commands determine their
|
||||
behavior based on the number of arguments; see the descriptions of
|
||||
those commands for any other command-specific actions.
|
||||
|
||||
@@ -5633,194 +5633,195 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
AALLIIAASSEESS. This option is enabled by default for interac-
|
||||
tive shells.
|
||||
eexxttddeebbuugg
|
||||
If set at shell invocation, arrange to execute the
|
||||
debugger profile before the shell starts, identical to
|
||||
the ----ddeebbuuggggeerr option. If set after invocation, behav-
|
||||
ior intended for use by debuggers is enabled:
|
||||
If set at shell invocation, or in a shell startup file,
|
||||
arrange to execute the debugger profile before the shell
|
||||
starts, identical to the ----ddeebbuuggggeerr option. If set
|
||||
after invocation, behavior intended for use by debuggers
|
||||
is enabled:
|
||||
11.. The --FF option to the ddeeccllaarree builtin displays the
|
||||
source file name and line number corresponding to
|
||||
each function name supplied as an argument.
|
||||
22.. If the command run by the DDEEBBUUGG trap returns a
|
||||
non-zero value, the next command is skipped and
|
||||
22.. If the command run by the DDEEBBUUGG trap returns a
|
||||
non-zero value, the next command is skipped and
|
||||
not executed.
|
||||
33.. If the command run by the DDEEBBUUGG trap returns a
|
||||
value of 2, and the shell is executing in a sub-
|
||||
routine (a shell function or a shell script exe-
|
||||
cuted by the .. or ssoouurrccee builtins), the shell
|
||||
33.. If the command run by the DDEEBBUUGG trap returns a
|
||||
value of 2, and the shell is executing in a sub-
|
||||
routine (a shell function or a shell script exe-
|
||||
cuted by the .. or ssoouurrccee builtins), the shell
|
||||
simulates a call to rreettuurrnn.
|
||||
44.. BBAASSHH__AARRGGCC and BBAASSHH__AARRGGVV are updated as described
|
||||
44.. BBAASSHH__AARRGGCC and BBAASSHH__AARRGGVV are updated as described
|
||||
in their descriptions above.
|
||||
55.. Function tracing is enabled: command substitu-
|
||||
55.. Function tracing is enabled: command substitu-
|
||||
tion, shell functions, and subshells invoked with
|
||||
(( _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 ((
|
||||
66.. Error tracing is enabled: command substitution,
|
||||
shell functions, and subshells invoked with ((
|
||||
_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
|
||||
If set, $$'_s_t_r_i_n_g' and $$"_s_t_r_i_n_g" quoting is performed
|
||||
within $${{_p_a_r_a_m_e_t_e_r}} expansions enclosed in double
|
||||
If set, $$'_s_t_r_i_n_g' and $$"_s_t_r_i_n_g" quoting is performed
|
||||
within $${{_p_a_r_a_m_e_t_e_r}} expansions enclosed in double
|
||||
quotes. This option is enabled by default.
|
||||
ffaaiillgglloobb
|
||||
If set, patterns which fail to match filenames during
|
||||
If set, patterns which fail to match filenames during
|
||||
pathname expansion result in an expansion error.
|
||||
ffoorrccee__ffiiggnnoorree
|
||||
If set, the suffixes specified by the FFIIGGNNOORREE shell
|
||||
variable cause words to be ignored when performing word
|
||||
If set, the suffixes specified by the FFIIGGNNOORREE shell
|
||||
variable cause words to be ignored when performing word
|
||||
completion even if the ignored words are the only possi-
|
||||
ble completions. See SSHHEELLLL VVAARRIIAABBLLEESS above for a
|
||||
description of FFIIGGNNOORREE. This option is enabled by
|
||||
description of FFIIGGNNOORREE. This option is enabled by
|
||||
default.
|
||||
gglloobbaasscciiiirraannggeess
|
||||
If set, range expressions used in pattern matching
|
||||
bracket expressions (see PPaatttteerrnn MMaattcchhiinngg above) behave
|
||||
as if in the traditional C locale when performing com-
|
||||
If set, range expressions used in pattern matching
|
||||
bracket expressions (see PPaatttteerrnn MMaattcchhiinngg above) behave
|
||||
as if in the traditional C locale when performing com-
|
||||
parisons. That is, the current locale's collating
|
||||
sequence is not taken into account, so bb will not col-
|
||||
late between AA and BB, and upper-case and lower-case
|
||||
sequence is not taken into account, so bb will not col-
|
||||
late between AA and BB, and upper-case and lower-case
|
||||
ASCII characters will collate together.
|
||||
gglloobbssttaarr
|
||||
If set, the pattern **** used in a pathname expansion con-
|
||||
text will match all files and zero or more directories
|
||||
and subdirectories. If the pattern is followed by a //,
|
||||
text will match all files and zero or more directories
|
||||
and subdirectories. If the pattern is followed by a //,
|
||||
only directories and subdirectories match.
|
||||
ggnnuu__eerrrrffmmtt
|
||||
If set, shell error messages are written in the standard
|
||||
GNU error message format.
|
||||
hhiissttaappppeenndd
|
||||
If set, the history list is appended to the file named
|
||||
by the value of the HHIISSTTFFIILLEE variable when the shell
|
||||
If set, the history list is appended to the file named
|
||||
by the value of the HHIISSTTFFIILLEE variable when the shell
|
||||
exits, rather than overwriting the file.
|
||||
hhiissttrreeeeddiitt
|
||||
If set, and rreeaaddlliinnee is being used, a user is given the
|
||||
If set, and rreeaaddlliinnee is being used, a user is given the
|
||||
opportunity to re-edit a failed history substitution.
|
||||
hhiissttvveerriiffyy
|
||||
If set, and rreeaaddlliinnee is being used, the results of his-
|
||||
tory substitution are not immediately passed to the
|
||||
shell parser. Instead, the resulting line is loaded
|
||||
If set, and rreeaaddlliinnee is being used, the results of his-
|
||||
tory substitution are not immediately passed to the
|
||||
shell parser. Instead, the resulting line is loaded
|
||||
into the rreeaaddlliinnee editing buffer, allowing further modi-
|
||||
fication.
|
||||
hhoossttccoommpplleettee
|
||||
If set, and rreeaaddlliinnee is being used, bbaasshh will attempt to
|
||||
perform hostname completion when a word containing a @@
|
||||
is being completed (see CCoommpplleettiinngg under RREEAADDLLIINNEE
|
||||
perform hostname completion when a word containing a @@
|
||||
is being completed (see CCoommpplleettiinngg under RREEAADDLLIINNEE
|
||||
above). This is enabled by default.
|
||||
hhuuppoonneexxiitt
|
||||
If set, bbaasshh will send SSIIGGHHUUPP to all jobs when an inter-
|
||||
active login shell exits.
|
||||
iinnhheerriitt__eerrrreexxiitt
|
||||
If set, command substitution inherits the value of the
|
||||
eerrrreexxiitt option, instead of unsetting it in the subshell
|
||||
environment. This option is enabled when _p_o_s_i_x _m_o_d_e is
|
||||
If set, command substitution inherits the value of the
|
||||
eerrrreexxiitt option, instead of unsetting it in the subshell
|
||||
environment. This option is enabled when _p_o_s_i_x _m_o_d_e is
|
||||
enabled.
|
||||
iinntteerraaccttiivvee__ccoommmmeennttss
|
||||
If set, allow a word beginning with ## to cause that word
|
||||
and all remaining characters on that line to be ignored
|
||||
in an interactive shell (see CCOOMMMMEENNTTSS above). This
|
||||
and all remaining characters on that line to be ignored
|
||||
in an interactive shell (see CCOOMMMMEENNTTSS above). This
|
||||
option is enabled by default.
|
||||
llaassttppiippee
|
||||
If set, and job control is not active, the shell runs
|
||||
If set, and job control is not active, the shell runs
|
||||
the last command of a pipeline not executed in the back-
|
||||
ground in the current shell environment.
|
||||
lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line
|
||||
lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line
|
||||
commands are saved to the history with embedded newlines
|
||||
rather than using semicolon separators where possible.
|
||||
llooccaallvvaarr__iinnhheerriitt
|
||||
If set, local variables inherit the value and attributes
|
||||
of a variable of the same name that exists at a previous
|
||||
scope before any new value is assigned. The nameref
|
||||
scope before any new value is assigned. The nameref
|
||||
attribute is not inherited.
|
||||
llooccaallvvaarr__uunnsseett
|
||||
If set, calling uunnsseett on local variables in previous
|
||||
function scopes marks them so subsequent lookups find
|
||||
them unset until that function returns. This is identi-
|
||||
cal to the behavior of unsetting local variables at the
|
||||
If set, calling uunnsseett on local variables in previous
|
||||
function scopes marks them so subsequent lookups find
|
||||
them unset until that function returns. This is identi-
|
||||
cal to the behavior of unsetting local variables at the
|
||||
current function scope.
|
||||
llooggiinn__sshheellll
|
||||
The shell sets this option if it is started as a login
|
||||
shell (see IINNVVOOCCAATTIIOONN above). The value may not be
|
||||
The shell sets this option if it is started as a login
|
||||
shell (see IINNVVOOCCAATTIIOONN above). The value may not be
|
||||
changed.
|
||||
mmaaiillwwaarrnn
|
||||
If set, and a file that bbaasshh is checking for mail has
|
||||
been accessed since the last time it was checked, the
|
||||
message ``The mail in _m_a_i_l_f_i_l_e has been read'' is dis-
|
||||
If set, and a file that bbaasshh is checking for mail has
|
||||
been accessed since the last time it was checked, the
|
||||
message ``The mail in _m_a_i_l_f_i_l_e has been read'' is dis-
|
||||
played.
|
||||
nnoo__eemmppttyy__ccmmdd__ccoommpplleettiioonn
|
||||
If set, and rreeaaddlliinnee is being used, bbaasshh will not
|
||||
If set, and rreeaaddlliinnee is being used, bbaasshh will not
|
||||
attempt to search the PPAATTHH for possible completions when
|
||||
completion is attempted on an empty line.
|
||||
nnooccaasseegglloobb
|
||||
If set, bbaasshh matches filenames in a case-insensitive
|
||||
If set, bbaasshh matches filenames in a case-insensitive
|
||||
fashion when performing pathname expansion (see PPaatthhnnaammee
|
||||
EExxppaannssiioonn above).
|
||||
nnooccaasseemmaattcchh
|
||||
If set, bbaasshh matches patterns in a case-insensitive
|
||||
If set, bbaasshh matches patterns in a case-insensitive
|
||||
fashion when performing matching while executing ccaassee or
|
||||
[[[[ conditional commands, when performing pattern substi-
|
||||
tution word expansions, or when filtering possible com-
|
||||
tution word expansions, or when filtering possible com-
|
||||
pletions as part of programmable completion.
|
||||
nnuullllgglloobb
|
||||
If set, bbaasshh allows patterns which match no files (see
|
||||
PPaatthhnnaammee EExxppaannssiioonn above) to expand to a null string,
|
||||
If set, bbaasshh allows patterns which match no files (see
|
||||
PPaatthhnnaammee EExxppaannssiioonn above) to expand to a null string,
|
||||
rather than themselves.
|
||||
pprrooggccoommpp
|
||||
If set, the programmable completion facilities (see PPrroo--
|
||||
ggrraammmmaabbllee CCoommpplleettiioonn above) are enabled. This option is
|
||||
enabled by default.
|
||||
pprrooggccoommpp__aalliiaass
|
||||
If set, and programmable completion is enabled, bbaasshh
|
||||
treats a command name that doesn't have any completions
|
||||
as a possible alias and attempts alias expansion. If it
|
||||
has an alias, bbaasshh attempts programmable completion
|
||||
using the command word resulting from the expanded
|
||||
If set, and programmable completion is enabled, bbaasshh
|
||||
treats a command name that doesn't have any completions
|
||||
as a possible alias and attempts alias expansion. If it
|
||||
has an alias, bbaasshh attempts programmable completion
|
||||
using the command word resulting from the expanded
|
||||
alias.
|
||||
pprroommppttvvaarrss
|
||||
If set, prompt strings undergo parameter expansion, com-
|
||||
mand substitution, arithmetic expansion, and quote
|
||||
removal after being expanded as described in PPRROOMMPPTTIINNGG
|
||||
mand substitution, arithmetic expansion, and quote
|
||||
removal after being expanded as described in PPRROOMMPPTTIINNGG
|
||||
above. This option is enabled by default.
|
||||
rreessttrriicctteedd__sshheellll
|
||||
The shell sets this option if it is started in
|
||||
The shell sets this option if it is started in
|
||||
restricted mode (see RREESSTTRRIICCTTEEDD SSHHEELLLL below). The value
|
||||
may not be changed. This is not reset when the startup
|
||||
files are executed, allowing the startup files to dis-
|
||||
may not be changed. This is not reset when the startup
|
||||
files are executed, allowing the startup files to dis-
|
||||
cover whether or not a shell is restricted.
|
||||
sshhiifftt__vveerrbboossee
|
||||
If set, the sshhiifftt builtin prints an error message when
|
||||
If set, the sshhiifftt builtin prints an error message when
|
||||
the shift count exceeds the number of positional parame-
|
||||
ters.
|
||||
ssoouurrcceeppaatthh
|
||||
If set, the ssoouurrccee (..) builtin uses the value of PPAATTHH to
|
||||
find the directory containing the file supplied as an
|
||||
find the directory containing the file supplied as an
|
||||
argument. This option is enabled by default.
|
||||
xxppgg__eecchhoo
|
||||
If set, the eecchhoo builtin expands backslash-escape
|
||||
If set, the eecchhoo builtin expands backslash-escape
|
||||
sequences by default.
|
||||
|
||||
ssuussppeenndd [--ff]
|
||||
Suspend the execution of this shell until it receives a SSIIGGCCOONNTT
|
||||
Suspend the execution of this shell until it receives a SSIIGGCCOONNTT
|
||||
signal. A login shell cannot be suspended; the --ff option can be
|
||||
used to override this and force the suspension. The return sta-
|
||||
tus is 0 unless the shell is a login shell and --ff is not sup-
|
||||
tus is 0 unless the shell is a login shell and --ff is not sup-
|
||||
plied, or if job control is not enabled.
|
||||
|
||||
tteesstt _e_x_p_r
|
||||
[[ _e_x_p_r ]]
|
||||
Return a status of 0 (true) or 1 (false) depending on the evalu-
|
||||
ation of the conditional expression _e_x_p_r. Each operator and op-
|
||||
erand must be a separate argument. Expressions are composed of
|
||||
the primaries described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS.
|
||||
tteesstt does not accept any options, nor does it accept and ignore
|
||||
erand must be a separate argument. Expressions are composed of
|
||||
the primaries described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS.
|
||||
tteesstt does not accept any options, nor does it accept and ignore
|
||||
an argument of ---- as signifying the end of options.
|
||||
|
||||
Expressions may be combined using the following operators,
|
||||
Expressions may be combined using the following operators,
|
||||
listed in decreasing order of precedence. The evaluation
|
||||
depends on the number of arguments; see below. Operator prece-
|
||||
depends on the number of arguments; see below. Operator prece-
|
||||
dence is used when there are five or more arguments.
|
||||
!! _e_x_p_r True if _e_x_p_r is false.
|
||||
(( _e_x_p_r ))
|
||||
Returns the value of _e_x_p_r. This may be used to override
|
||||
Returns the value of _e_x_p_r. This may be used to override
|
||||
the normal precedence of operators.
|
||||
_e_x_p_r_1 -aa _e_x_p_r_2
|
||||
True if both _e_x_p_r_1 and _e_x_p_r_2 are true.
|
||||
@@ -5837,120 +5838,120 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
null.
|
||||
2 arguments
|
||||
If the first argument is !!, the expression is true if and
|
||||
only if the second argument is null. If the first argu-
|
||||
ment is one of the unary conditional operators listed
|
||||
above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is
|
||||
only if the second argument is null. If the first argu-
|
||||
ment is one of the unary conditional operators listed
|
||||
above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is
|
||||
true if the unary test is true. If the first argument is
|
||||
not a valid unary conditional operator, the expression is
|
||||
false.
|
||||
3 arguments
|
||||
The following conditions are applied in the order listed.
|
||||
If the second argument is one of the binary conditional
|
||||
If the second argument is one of the binary conditional
|
||||
operators listed above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the
|
||||
result of the expression is the result of the binary test
|
||||
using the first and third arguments as operands. The --aa
|
||||
and --oo operators are considered binary operators when
|
||||
there are three arguments. If the first argument is !!,
|
||||
the value is the negation of the two-argument test using
|
||||
using the first and third arguments as operands. The --aa
|
||||
and --oo operators are considered binary operators when
|
||||
there are three arguments. If the first argument is !!,
|
||||
the value is the negation of the two-argument test using
|
||||
the second and third arguments. If the first argument is
|
||||
exactly (( and the third argument is exactly )), the result
|
||||
is the one-argument test of the second argument. Other-
|
||||
is the one-argument test of the second argument. Other-
|
||||
wise, the expression is false.
|
||||
4 arguments
|
||||
If the first argument is !!, the result is the negation of
|
||||
the three-argument expression composed of the remaining
|
||||
the three-argument expression composed of the remaining
|
||||
arguments. Otherwise, the expression is parsed and eval-
|
||||
uated according to precedence using the rules listed
|
||||
uated according to precedence using the rules listed
|
||||
above.
|
||||
5 or more arguments
|
||||
The expression is parsed and evaluated according to
|
||||
The expression is parsed and evaluated according to
|
||||
precedence using the rules listed above.
|
||||
|
||||
When used with tteesstt or [[, the << and >> operators sort lexico-
|
||||
When used with tteesstt or [[, the << and >> operators sort lexico-
|
||||
graphically using ASCII ordering.
|
||||
|
||||
ttiimmeess Print the accumulated user and system times for the shell and
|
||||
ttiimmeess Print the accumulated user and system times for the shell and
|
||||
for processes run from the shell. The return status is 0.
|
||||
|
||||
ttrraapp [--llpp] [[_a_r_g] _s_i_g_s_p_e_c ...]
|
||||
The command _a_r_g is to be read and executed when the shell
|
||||
receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a
|
||||
single _s_i_g_s_p_e_c) or --, each specified signal is reset to its
|
||||
original disposition (the value it had upon entrance to the
|
||||
shell). If _a_r_g is the null string the signal specified by each
|
||||
_s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes.
|
||||
If _a_r_g is not present and --pp has been supplied, then the trap
|
||||
commands associated with each _s_i_g_s_p_e_c are displayed. If no
|
||||
arguments are supplied or if only --pp is given, ttrraapp prints the
|
||||
list of commands associated with each signal. The --ll option
|
||||
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
|
||||
The command _a_r_g is to be read and executed when the shell
|
||||
receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a
|
||||
single _s_i_g_s_p_e_c) or --, each specified signal is reset to its
|
||||
original disposition (the value it had upon entrance to the
|
||||
shell). If _a_r_g is the null string the signal specified by each
|
||||
_s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes.
|
||||
If _a_r_g is not present and --pp has been supplied, then the trap
|
||||
commands associated with each _s_i_g_s_p_e_c are displayed. If no
|
||||
arguments are supplied or if only --pp is given, ttrraapp prints the
|
||||
list of commands associated with each signal. The --ll option
|
||||
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 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-
|
||||
cuted before every _s_i_m_p_l_e _c_o_m_m_a_n_d, _f_o_r command, _c_a_s_e command,
|
||||
_s_e_l_e_c_t command, every arithmetic _f_o_r command, and before the
|
||||
first command executes in a shell function (see SSHHEELLLL GGRRAAMMMMAARR
|
||||
above). Refer to the description of the eexxttddeebbuugg option to the
|
||||
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-
|
||||
cuted before every _s_i_m_p_l_e _c_o_m_m_a_n_d, _f_o_r command, _c_a_s_e command,
|
||||
_s_e_l_e_c_t command, every arithmetic _f_o_r command, and before the
|
||||
first command executes in a shell function (see SSHHEELLLL GGRRAAMMMMAARR
|
||||
above). Refer to the description of the eexxttddeebbuugg option to the
|
||||
sshhoopptt builtin for details of its effect on the DDEEBBUUGG trap. If a
|
||||
_s_i_g_s_p_e_c is RREETTUURRNN, the command _a_r_g is executed each time a shell
|
||||
function or a script executed with the .. or ssoouurrccee builtins fin-
|
||||
ishes executing.
|
||||
|
||||
If a _s_i_g_s_p_e_c is EERRRR, the command _a_r_g is executed whenever a
|
||||
If a _s_i_g_s_p_e_c is EERRRR, the command _a_r_g is executed whenever a
|
||||
pipeline (which may consist of a single simple command), a list,
|
||||
or a compound command returns a non-zero exit status, subject to
|
||||
the following conditions. The EERRRR trap is not executed if the
|
||||
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,
|
||||
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, or if the command's return value is being inverted using
|
||||
!!. These are the same conditions obeyed by the eerrrreexxiitt (--ee)
|
||||
following the final &&&& or ||||, any command in a pipeline but the
|
||||
last, or if the command's return value is being inverted using
|
||||
!!. These are the same conditions obeyed by the eerrrreexxiitt (--ee)
|
||||
option.
|
||||
|
||||
Signals ignored upon entry to the shell cannot be trapped or
|
||||
reset. Trapped signals that are not being ignored are reset to
|
||||
Signals ignored upon entry to the shell cannot be trapped or
|
||||
reset. 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 is false if any _s_i_g_s_p_e_c is
|
||||
one is created. The return status is false if any _s_i_g_s_p_e_c is
|
||||
invalid; otherwise ttrraapp returns true.
|
||||
|
||||
ttyyppee [--aaffttppPP] _n_a_m_e [_n_a_m_e ...]
|
||||
With no options, indicate how each _n_a_m_e would be interpreted if
|
||||
With no options, 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 disk file, respectively. If the _n_a_m_e is not found,
|
||||
then nothing is printed, and an exit status of false is
|
||||
returned. If the --pp option is used, ttyyppee either returns the
|
||||
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 disk file, respectively. If the _n_a_m_e is not found,
|
||||
then nothing is printed, and an exit status of false is
|
||||
returned. If the --pp option is used, ttyyppee either returns the
|
||||
name of the disk file that would be executed if _n_a_m_e were speci-
|
||||
fied as a command name, or nothing if ``type -t name'' would not
|
||||
return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e,
|
||||
return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e,
|
||||
even if ``type -t name'' would not return _f_i_l_e. If a command is
|
||||
hashed, --pp and --PP print the hashed value, which is not necessar-
|
||||
ily the file that appears first in PPAATTHH. If the --aa option is
|
||||
used, ttyyppee prints all of the places that contain an executable
|
||||
ily the file that appears first in PPAATTHH. If the --aa option is
|
||||
used, ttyyppee prints all of the places that contain an executable
|
||||
named _n_a_m_e. This includes aliases and functions, if and only if
|
||||
the --pp option is not also used. The table of hashed commands is
|
||||
not consulted when using --aa. The --ff option suppresses shell
|
||||
not consulted when using --aa. The --ff option suppresses shell
|
||||
function lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true
|
||||
if all of the arguments are found, false if any are not found.
|
||||
|
||||
uulliimmiitt [--HHSSaabbccddeeffiikkllmmnnppqqrrssttuuvvxxPPTT [_l_i_m_i_t]]
|
||||
Provides control over the resources available to the shell and
|
||||
to processes started by it, on systems that allow such control.
|
||||
Provides control over the resources available to the shell and
|
||||
to processes started by it, on systems that allow such control.
|
||||
The --HH and --SS options specify that 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-
|
||||
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-
|
||||
fied, both the soft and hard limits are set. 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, the current value of the
|
||||
soft limit of the resource is printed, unless the --HH option is
|
||||
current hard limit, the current soft limit, and no limit,
|
||||
respectively. If _l_i_m_i_t is omitted, the current value of the
|
||||
soft limit of the resource is printed, unless the --HH option is
|
||||
given. When more than one resource is specified, the limit name
|
||||
and unit are printed before the value. Other options are inter-
|
||||
preted as follows:
|
||||
@@ -5959,12 +5960,12 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
--cc The maximum size of core files created
|
||||
--dd The maximum size of a process's data segment
|
||||
--ee The maximum scheduling priority ("nice")
|
||||
--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)
|
||||
@@ -5973,53 +5974,53 @@ SSHHEELLLL 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
|
||||
--TT The maximum number of threads
|
||||
|
||||
If _l_i_m_i_t is given, and the --aa option is not used, _l_i_m_i_t is the
|
||||
new value of the specified resource. If no option is given,
|
||||
then --ff is assumed. Values are in 1024-byte increments, except
|
||||
for --tt, which is in seconds; --pp, which is in units of 512-byte
|
||||
blocks; --PP, --TT, --bb, --kk, --nn, and --uu, which are unscaled values;
|
||||
If _l_i_m_i_t is given, and the --aa option is not used, _l_i_m_i_t is the
|
||||
new value of the specified resource. If no option is given,
|
||||
then --ff is assumed. Values are in 1024-byte increments, except
|
||||
for --tt, which is in seconds; --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 incre-
|
||||
ments. The return status is 0 unless an invalid option or argu-
|
||||
ment is supplied, or an error occurs while setting a new limit.
|
||||
|
||||
uummaasskk [--pp] [--SS] [_m_o_d_e]
|
||||
The user file-creation mask is set to _m_o_d_e. If _m_o_d_e begins with
|
||||
a digit, it is interpreted as an octal number; otherwise it is
|
||||
interpreted as a symbolic mode mask similar to that accepted by
|
||||
_c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is
|
||||
printed. The --SS option causes the mask to be printed in sym-
|
||||
bolic form; the default output is an octal number. If the --pp
|
||||
a digit, it is interpreted as an octal number; otherwise it is
|
||||
interpreted as a symbolic mode mask similar to that accepted by
|
||||
_c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is
|
||||
printed. The --SS option causes the mask to be printed in sym-
|
||||
bolic form; 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 0 if the mode
|
||||
was successfully changed or if no _m_o_d_e argument was supplied,
|
||||
was successfully changed or if no _m_o_d_e argument was supplied,
|
||||
and false otherwise.
|
||||
|
||||
uunnaalliiaass [-aa] [_n_a_m_e ...]
|
||||
Remove each _n_a_m_e from the list of defined aliases. If --aa is
|
||||
supplied, all alias definitions are removed. The return value
|
||||
Remove each _n_a_m_e from the list of defined aliases. If --aa is
|
||||
supplied, all alias definitions are removed. 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. Read-only variables may not be
|
||||
unset. If --ff is specified, each _n_a_m_e refers to a shell func-
|
||||
tion, and the function definition is removed. 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. If no options are
|
||||
supplied, each _n_a_m_e refers to a variable; if there is no vari-
|
||||
able by that name, any function with that name is unset. Each
|
||||
unset variable or function is removed from the environment
|
||||
passed to subsequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANN--
|
||||
and that variable is removed. Read-only variables may not be
|
||||
unset. If --ff is specified, each _n_a_m_e refers to a shell func-
|
||||
tion, and the function definition is removed. 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. If no options are
|
||||
supplied, each _n_a_m_e refers to a variable; if there is no vari-
|
||||
able by that name, any function with that name is unset. Each
|
||||
unset variable or function is removed from the environment
|
||||
passed to subsequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANN--
|
||||
DDOOMM, SSEECCOONNDDSS, LLIINNEENNOO, HHIISSTTCCMMDD, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, or DDIIRRSSTTAACCKK are
|
||||
unset, they lose their special properties, even if they are sub-
|
||||
sequently reset. The exit status is true unless a _n_a_m_e is read-
|
||||
@@ -6027,23 +6028,23 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
|
||||
wwaaiitt [--ffnn] [_i_d _._._.]
|
||||
Wait for each specified child process and return its termination
|
||||
status. Each _i_d may be a process ID or a job specification; if
|
||||
a job spec is given, all processes in that job's pipeline are
|
||||
status. Each _i_d may be a process ID or a job specification; if
|
||||
a job spec is given, all processes in that job's pipeline are
|
||||
waited for. If _i_d is not given, all currently active child pro-
|
||||
cesses are waited for, and the return status is zero. If the --nn
|
||||
option is supplied, wwaaiitt waits for any job to terminate and
|
||||
returns its exit status. If the --ff option is supplied, and job
|
||||
option is supplied, wwaaiitt waits for any job to terminate and
|
||||
returns its exit status. If the --ff option is supplied, and job
|
||||
control is enabled, wwaaiitt forces _i_d to terminate before returning
|
||||
its status, instead of returning when it changes status. If _i_d
|
||||
specifies a non-existent process or job, the return status is
|
||||
127. Otherwise, the return status is the exit status of the
|
||||
its status, instead of returning when it changes status. If _i_d
|
||||
specifies a non-existent process or job, the return status is
|
||||
127. Otherwise, the return status is the exit status of the
|
||||
last process or job waited for.
|
||||
|
||||
RREESSTTRRIICCTTEEDD SSHHEELLLL
|
||||
If bbaasshh is started with the name rrbbaasshh, or the --rr option is supplied at
|
||||
invocation, the shell becomes restricted. A restricted shell is used
|
||||
to set up an environment more controlled than the standard shell. It
|
||||
behaves identically to bbaasshh with the exception that the following are
|
||||
invocation, the shell becomes restricted. A restricted shell is used
|
||||
to set up an environment more controlled than the standard shell. It
|
||||
behaves identically to bbaasshh with the exception that the following are
|
||||
disallowed or not performed:
|
||||
|
||||
+o changing directories with ccdd
|
||||
@@ -6052,16 +6053,16 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL
|
||||
|
||||
+o specifying command names containing //
|
||||
|
||||
+o specifying a filename containing a // as an argument to the ..
|
||||
+o specifying a filename containing a // as an argument to the ..
|
||||
builtin command
|
||||
|
||||
+o specifying a filename containing a slash as an argument to the
|
||||
+o specifying a filename containing a slash as an argument to the
|
||||
--pp option to the hhaasshh builtin command
|
||||
|
||||
+o importing function definitions from the shell environment at
|
||||
+o importing function definitions from the shell environment at
|
||||
startup
|
||||
|
||||
+o parsing the value of SSHHEELLLLOOPPTTSS from the shell environment at
|
||||
+o parsing the value of SSHHEELLLLOOPPTTSS from the shell environment at
|
||||
startup
|
||||
|
||||
+o redirecting output using the >, >|, <>, >&, &>, and >> redirect-
|
||||
@@ -6070,10 +6071,10 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL
|
||||
+o using the eexxeecc builtin command to replace the shell with another
|
||||
command
|
||||
|
||||
+o adding or deleting builtin commands with the --ff and --dd options
|
||||
+o adding or deleting builtin commands with the --ff and --dd options
|
||||
to the eennaabbllee builtin command
|
||||
|
||||
+o using the eennaabbllee builtin command to enable disabled shell
|
||||
+o using the eennaabbllee builtin command to enable disabled shell
|
||||
builtins
|
||||
|
||||
+o specifying the --pp option to the ccoommmmaanndd builtin command
|
||||
@@ -6083,14 +6084,14 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL
|
||||
These restrictions are enforced after any startup files are read.
|
||||
|
||||
When a command that is found to be a shell script is executed (see CCOOMM--
|
||||
MMAANNDD EEXXEECCUUTTIIOONN above), rrbbaasshh turns off any restrictions in the shell
|
||||
MMAANNDD EEXXEECCUUTTIIOONN above), rrbbaasshh turns off any restrictions in the shell
|
||||
spawned to execute the script.
|
||||
|
||||
SSEEEE AALLSSOO
|
||||
_B_a_s_h _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, Brian Fox and Chet Ramey
|
||||
_T_h_e _G_n_u _R_e_a_d_l_i_n_e _L_i_b_r_a_r_y, Brian Fox and Chet Ramey
|
||||
_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_-
|
||||
_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://pubs.opengroup.org/onlinepubs/9699919799/
|
||||
http://tiswww.case.edu/~chet/bash/POSIX -- a description of posix mode
|
||||
@@ -6108,7 +6109,7 @@ FFIILLEESS
|
||||
_~_/_._b_a_s_h_r_c
|
||||
The individual per-interactive-shell startup file
|
||||
_~_/_._b_a_s_h___l_o_g_o_u_t
|
||||
The individual login shell cleanup file, executed when a login
|
||||
The individual login shell cleanup file, executed when a login
|
||||
shell exits
|
||||
_~_/_._i_n_p_u_t_r_c
|
||||
Individual _r_e_a_d_l_i_n_e initialization file
|
||||
@@ -6122,14 +6123,14 @@ AAUUTTHHOORRSS
|
||||
|
||||
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
|
||||
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_/_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
|
||||
to mail that as well! Suggestions and `philosophical' bug reports may
|
||||
be mailed to _b_u_g_-_b_a_s_h_@_g_n_u_._o_r_g or posted to the Usenet newsgroup
|
||||
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
|
||||
to mail that as well! Suggestions and `philosophical' bug reports may
|
||||
be mailed to _b_u_g_-_b_a_s_h_@_g_n_u_._o_r_g or posted to the Usenet newsgroup
|
||||
ggnnuu..bbaasshh..bbuugg.
|
||||
|
||||
ALL bug reports should include:
|
||||
@@ -6140,7 +6141,7 @@ BBUUGG RREEPPOORRTTSS
|
||||
A description of the bug behaviour
|
||||
A short script or `recipe' which exercises the bug
|
||||
|
||||
_b_a_s_h_b_u_g inserts the first three items automatically into the template
|
||||
_b_a_s_h_b_u_g inserts the first three items automatically into the template
|
||||
it provides for filing a bug report.
|
||||
|
||||
Comments and bug reports concerning this manual page should be directed
|
||||
@@ -6157,10 +6158,10 @@ BBUUGGSS
|
||||
Shell builtin commands and functions are not stoppable/restartable.
|
||||
|
||||
Compound commands and command sequences of the form `a ; b ; c' are not
|
||||
handled gracefully when process suspension is attempted. When a
|
||||
process is stopped, the shell immediately executes the next command in
|
||||
the sequence. It suffices to place the sequence of commands between
|
||||
parentheses to force it into a subshell, which may be stopped as a
|
||||
handled gracefully when process suspension is attempted. When a
|
||||
process is stopped, the shell immediately executes the next command in
|
||||
the sequence. It suffices to place the sequence of commands between
|
||||
parentheses to force it into a subshell, which may be stopped as a
|
||||
unit.
|
||||
|
||||
Array variables may not (yet) be exported.
|
||||
@@ -6169,4 +6170,4 @@ BBUUGGSS
|
||||
|
||||
|
||||
|
||||
GNU Bash 5.0 2019 January 27 BASH(1)
|
||||
GNU Bash 5.0 2019 February 26 BASH(1)
|
||||
|
||||
+6
-4
@@ -5,12 +5,12 @@
|
||||
.\" Case Western Reserve University
|
||||
.\" chet.ramey@case.edu
|
||||
.\"
|
||||
.\" Last Change: Sun Jan 27 17:41:59 EST 2019
|
||||
.\" Last Change: Tue Feb 26 09:46:20 EST 2019
|
||||
.\"
|
||||
.\" bash_builtins, strip all but Built-Ins section
|
||||
.if \n(zZ=1 .ig zZ
|
||||
.if \n(zY=1 .ig zY
|
||||
.TH BASH 1 "2019 January 27" "GNU Bash 5.0"
|
||||
.TH BASH 1 "2019 February 26" "GNU Bash 5.0"
|
||||
.\"
|
||||
.\" There's some problem with having a `@'
|
||||
.\" in a tagged paragraph with the BSD man macros.
|
||||
@@ -4499,7 +4499,7 @@ rules above.
|
||||
Conditional expressions are used by the \fB[[\fP compound command and
|
||||
the \fBtest\fP and \fB[\fP builtin commands to test file attributes
|
||||
and perform string and arithmetic comparisons.
|
||||
The \fBtest\fP abd \fB[\fP commands determine their behavior based on
|
||||
The \fBtest\fP and \fB[\fP commands determine their behavior based on
|
||||
the number of arguments; see the descriptions of those commands for any
|
||||
other command-specific actions.
|
||||
.PP
|
||||
@@ -9961,7 +9961,9 @@ If set, aliases are expanded as described above under
|
||||
This option is enabled by default for interactive shells.
|
||||
.TP 8
|
||||
.B extdebug
|
||||
If set at shell invocation, arrange to execute the debugger profile
|
||||
If set at shell invocation,
|
||||
or in a shell startup file,
|
||||
arrange to execute the debugger profile
|
||||
before the shell starts, identical to the \fB\-\-debugger\fP option.
|
||||
If set after invocation, behavior intended for use by debuggers is enabled:
|
||||
.RS
|
||||
|
||||
+11
-8
@@ -3,7 +3,7 @@
|
||||
</HEAD>
|
||||
<BODY><TABLE WIDTH=100%>
|
||||
<TR>
|
||||
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2018 December 7<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2019 February 26<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
</TR>
|
||||
</TABLE>
|
||||
<BR><A HREF="#index">Index</A>
|
||||
@@ -1155,7 +1155,8 @@ Using <B>;&</B> in place of <B>;;</B> causes execution to continue with
|
||||
the <I>list</I> associated with the next set of patterns.
|
||||
Using <B>;;&</B> in place of <B>;;</B> causes the shell to test the next
|
||||
pattern list in the statement, if any, and execute any associated <I>list</I>
|
||||
on a successful match.
|
||||
on a successful match,
|
||||
continuing the case statement execution as if the pattern list had not matched.
|
||||
The exit status is zero if no
|
||||
pattern matches. Otherwise, it is the exit status of the
|
||||
last command executed in <I>list</I>.
|
||||
@@ -5742,7 +5743,7 @@ rules above.
|
||||
Conditional expressions are used by the <B>[[</B> compound command and
|
||||
the <B>test</B> and <B>[</B> builtin commands to test file attributes
|
||||
and perform string and arithmetic comparisons.
|
||||
The <B>test</B> abd <B>[</B> commands determine their behavior based on
|
||||
The <B>test</B> and <B>[</B> commands determine their behavior based on
|
||||
the number of arguments; see the descriptions of those commands for any
|
||||
other command-specific actions.
|
||||
<P>
|
||||
@@ -9817,7 +9818,7 @@ The <B>-E</B> option indicates that other supplied options and actions should
|
||||
apply to ``empty'' command completion; that is, completion attempted on a
|
||||
blank line.
|
||||
The <B>-I</B> option indicates that other supplied options and actions should
|
||||
apply to completion on the inital non-assignment word on the line, or after
|
||||
apply to completion on the initial non-assignment word on the line, or after
|
||||
a command delimiter such as <B>;</B> or <B>|</B>, which is usually command
|
||||
name completion.
|
||||
If multiple options are supplied, the <B>-D</B> option takes precedence
|
||||
@@ -10070,7 +10071,7 @@ The <B>-E</B> option indicates that other supplied options should
|
||||
apply to ``empty'' command completion; that is, completion attempted on a
|
||||
blank line.
|
||||
The <B>-I</B> option indicates that other supplied options should
|
||||
apply to completion on the inital non-assignment word on the line,
|
||||
apply to completion on the initial non-assignment word on the line,
|
||||
or after a command delimiter such as <B>;</B> or <B>|</B>, which is usually
|
||||
command name completion.
|
||||
<P>
|
||||
@@ -12628,7 +12629,9 @@ This option is enabled by default for interactive shells.
|
||||
<DT><B>extdebug</B>
|
||||
|
||||
<DD>
|
||||
If set at shell invocation, arrange to execute the debugger profile
|
||||
If set at shell invocation,
|
||||
or in a shell startup file,
|
||||
arrange to execute the debugger profile
|
||||
before the shell starts, identical to the <B>--debugger</B> option.
|
||||
If set after invocation, behavior intended for use by debuggers is enabled:
|
||||
<DL COMPACT><DT><DD>
|
||||
@@ -13932,7 +13935,7 @@ There may be only one active coprocess at a time.
|
||||
<HR>
|
||||
<TABLE WIDTH=100%>
|
||||
<TR>
|
||||
<TH ALIGN=LEFT width=33%>GNU Bash 5.0<TH ALIGN=CENTER width=33%>2018 December 7<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
<TH ALIGN=LEFT width=33%>GNU Bash 5.0<TH ALIGN=CENTER width=33%>2019 February 26<TH ALIGN=RIGHT width=33%>BASH(1)
|
||||
</TR>
|
||||
</TABLE>
|
||||
<HR>
|
||||
@@ -14038,6 +14041,6 @@ There may be only one active coprocess at a time.
|
||||
</DL>
|
||||
<HR>
|
||||
This document was created by man2html from bash.1.<BR>
|
||||
Time: 02 January 2019 09:14:47 EST
|
||||
Time: 26 February 2019 09:57:16 EST
|
||||
</BODY>
|
||||
</HTML>
|
||||
|
||||
+157
-156
@@ -2,9 +2,9 @@ This is bash.info, produced by makeinfo version 6.5 from
|
||||
bashref.texi.
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.0, 7 December 2018).
|
||||
Bash shell (version 5.0, 26 February 2019).
|
||||
|
||||
This is Edition 5.0, last updated 7 December 2018, of 'The GNU Bash
|
||||
This is Edition 5.0, last updated 26 February 2019, of 'The GNU Bash
|
||||
Reference Manual', for 'Bash', Version 5.0.
|
||||
|
||||
Copyright (C) 1988-2018 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.0, 7 December 2018). The Bash home page is
|
||||
Bash shell (version 5.0, 26 February 2019). The Bash home page is
|
||||
<http://www.gnu.org/software/bash/>.
|
||||
|
||||
This is Edition 5.0, last updated 7 December 2018, of 'The GNU Bash
|
||||
This is Edition 5.0, last updated 26 February 2019, of 'The GNU Bash
|
||||
Reference Manual', for 'Bash', Version 5.0.
|
||||
|
||||
Bash contains features that appear in other popular shells, and some
|
||||
@@ -815,7 +815,8 @@ File: bash.info, Node: Conditional Constructs, Next: Command Grouping, Prev:
|
||||
execution to continue with the COMMAND-LIST associated with the
|
||||
next clause, if any. Using ';;&' in place of ';;' causes the shell
|
||||
to test the patterns in the next clause, if any, and execute any
|
||||
associated COMMAND-LIST on a successful match.
|
||||
associated COMMAND-LIST on a successful match, continuing the case
|
||||
statement execution as if the pattern list had not matched.
|
||||
|
||||
The return status is zero if no PATTERN is matched. Otherwise, the
|
||||
return status is the exit status of the COMMAND-LIST executed.
|
||||
@@ -1576,7 +1577,7 @@ expression. Any incorrectly formed brace expansion is left unchanged.
|
||||
A { or ',' may be quoted with a backslash to prevent its being
|
||||
considered part of a brace expression. To avoid conflicts with
|
||||
parameter expansion, the string '${' is not considered eligible for
|
||||
brace expansion, and inhibits brace expansion until the closing '}'..
|
||||
brace expansion, and inhibits brace expansion until the closing '}'.
|
||||
|
||||
This construct is typically used as shorthand when the common prefix
|
||||
of the strings to be generated is longer than in the above example:
|
||||
@@ -1898,15 +1899,15 @@ omitted, the operator tests only for existence.
|
||||
'${PARAMETER%%WORD}'
|
||||
The WORD is expanded to produce a pattern and matched according to
|
||||
the rules described below (*note Pattern Matching::). If the
|
||||
pattern matches If the pattern matches a trailing portion of the
|
||||
expanded value of PARAMETER, then the result of the expansion is
|
||||
the value of PARAMETER with the shortest matching pattern (the '%'
|
||||
case) or the longest matching pattern (the '%%' case) deleted. If
|
||||
PARAMETER is '@' or '*', the pattern removal operation is applied
|
||||
to each positional parameter in turn, and the expansion is the
|
||||
resultant list. If PARAMETER is an array variable subscripted with
|
||||
'@' or '*', the pattern removal operation is applied to each member
|
||||
of the array in turn, and the expansion is the resultant list.
|
||||
pattern matches a trailing portion of the expanded value of
|
||||
PARAMETER, then the result of the expansion is the value of
|
||||
PARAMETER with the shortest matching pattern (the '%' case) or the
|
||||
longest matching pattern (the '%%' case) deleted. If PARAMETER is
|
||||
'@' or '*', the pattern removal operation is applied to each
|
||||
positional parameter in turn, and the expansion is the resultant
|
||||
list. If PARAMETER is an array variable subscripted with '@' or
|
||||
'*', the pattern removal operation is applied to each member of the
|
||||
array in turn, and the expansion is the resultant list.
|
||||
|
||||
'${PARAMETER/PATTERN/STRING}'
|
||||
|
||||
@@ -4518,10 +4519,10 @@ This builtin allows you to change additional shell optional behavior.
|
||||
interactive shells.
|
||||
|
||||
'extdebug'
|
||||
If set at shell invocation, arrange to execute the debugger
|
||||
profile before the shell starts, identical to the '--debugger'
|
||||
option. If set after invocation, behavior intended for use by
|
||||
debuggers is enabled:
|
||||
If set at shell invocation, or in a shell startup file,
|
||||
arrange to execute the debugger profile before the shell
|
||||
starts, identical to the '--debugger' option. If set after
|
||||
invocation, behavior intended for use by debuggers is enabled:
|
||||
|
||||
1. The '-F' option to the 'declare' builtin (*note Bash
|
||||
Builtins::) displays the source file name and line number
|
||||
@@ -6251,7 +6252,7 @@ The syntax
|
||||
is also accepted; the SUBSCRIPT is ignored.
|
||||
|
||||
Associative arrays are created using
|
||||
declare -A NAME.
|
||||
declare -A NAME
|
||||
|
||||
Attributes may be specified for an array variable using the 'declare'
|
||||
and 'readonly' builtins. Each attribute applies to all members of an
|
||||
@@ -8829,8 +8830,8 @@ happening.
|
||||
that other supplied options and actions should apply to "empty"
|
||||
command completion; that is, completion attempted on a blank line.
|
||||
The '-I' option indicates that other supplied options and actions
|
||||
should apply to completion on the inital non-assignment word on the
|
||||
line, or after a command delimiter such as ';' or '|', which is
|
||||
should apply to completion on the initial non-assignment word on
|
||||
the line, or after a command delimiter such as ';' or '|', which is
|
||||
usually command name completion. If multiple options are supplied,
|
||||
the '-D' option takes precedence over '-E', and both take
|
||||
precedence over '-I'. If any of '-D', '-E', or '-I' are supplied,
|
||||
@@ -9031,8 +9032,8 @@ happening.
|
||||
'-E' option indicates that other supplied options should apply to
|
||||
"empty" command completion; that is, completion attempted on a
|
||||
blank line. The '-I' option indicates that other supplied options
|
||||
should apply to completion on the inital non-assignment word on the
|
||||
line, or after a command delimiter such as ';' or '|', which is
|
||||
should apply to completion on the initial non-assignment word on
|
||||
the line, or after a command delimiter such as ';' or '|', which is
|
||||
usually command name completion.
|
||||
|
||||
If multiple options are supplied, the '-D' option takes precedence
|
||||
@@ -11064,9 +11065,9 @@ D.2 Index of Shell Reserved Words
|
||||
|
||||
* !: Pipelines. (line 9)
|
||||
* [[: Conditional Constructs.
|
||||
(line 124)
|
||||
(line 125)
|
||||
* ]]: Conditional Constructs.
|
||||
(line 124)
|
||||
(line 125)
|
||||
* {: Command Grouping. (line 21)
|
||||
* }: Command Grouping. (line 21)
|
||||
* case: Conditional Constructs.
|
||||
@@ -11088,7 +11089,7 @@ D.2 Index of Shell Reserved Words
|
||||
* in: Conditional Constructs.
|
||||
(line 28)
|
||||
* select: Conditional Constructs.
|
||||
(line 82)
|
||||
(line 83)
|
||||
* then: Conditional Constructs.
|
||||
(line 7)
|
||||
* time: Pipelines. (line 9)
|
||||
@@ -11683,134 +11684,134 @@ D.5 Concept Index
|
||||
|
||||
|
||||
Tag Table:
|
||||
Node: Top895
|
||||
Node: Introduction2813
|
||||
Node: What is Bash?3029
|
||||
Node: What is a shell?4143
|
||||
Node: Definitions6681
|
||||
Node: Basic Shell Features9632
|
||||
Node: Shell Syntax10851
|
||||
Node: Shell Operation11877
|
||||
Node: Quoting13170
|
||||
Node: Escape Character14470
|
||||
Node: Single Quotes14955
|
||||
Node: Double Quotes15303
|
||||
Node: ANSI-C Quoting16581
|
||||
Node: Locale Translation17840
|
||||
Node: Comments18736
|
||||
Node: Shell Commands19354
|
||||
Node: Simple Commands20226
|
||||
Node: Pipelines20857
|
||||
Node: Lists23789
|
||||
Node: Compound Commands25580
|
||||
Node: Looping Constructs26592
|
||||
Node: Conditional Constructs29087
|
||||
Node: Command Grouping40170
|
||||
Node: Coprocesses41649
|
||||
Node: GNU Parallel43552
|
||||
Node: Shell Functions47610
|
||||
Node: Shell Parameters54693
|
||||
Node: Positional Parameters59106
|
||||
Node: Special Parameters60006
|
||||
Node: Shell Expansions63760
|
||||
Node: Brace Expansion65883
|
||||
Node: Tilde Expansion68607
|
||||
Node: Shell Parameter Expansion71224
|
||||
Node: Command Substitution85680
|
||||
Node: Arithmetic Expansion87035
|
||||
Node: Process Substitution87967
|
||||
Node: Word Splitting89087
|
||||
Node: Filename Expansion91031
|
||||
Node: Pattern Matching93561
|
||||
Node: Quote Removal97547
|
||||
Node: Redirections97842
|
||||
Node: Executing Commands107400
|
||||
Node: Simple Command Expansion108070
|
||||
Node: Command Search and Execution110000
|
||||
Node: Command Execution Environment112376
|
||||
Node: Environment115360
|
||||
Node: Exit Status117019
|
||||
Node: Signals118689
|
||||
Node: Shell Scripts120656
|
||||
Node: Shell Builtin Commands123171
|
||||
Node: Bourne Shell Builtins125209
|
||||
Node: Bash Builtins145959
|
||||
Node: Modifying Shell Behavior174884
|
||||
Node: The Set Builtin175229
|
||||
Node: The Shopt Builtin185642
|
||||
Node: Special Builtins203284
|
||||
Node: Shell Variables204263
|
||||
Node: Bourne Shell Variables204700
|
||||
Node: Bash Variables206804
|
||||
Node: Bash Features237264
|
||||
Node: Invoking Bash238163
|
||||
Node: Bash Startup Files244176
|
||||
Node: Interactive Shells249279
|
||||
Node: What is an Interactive Shell?249689
|
||||
Node: Is this Shell Interactive?250338
|
||||
Node: Interactive Shell Behavior251153
|
||||
Node: Bash Conditional Expressions254640
|
||||
Node: Shell Arithmetic259217
|
||||
Node: Aliases262034
|
||||
Node: Arrays264654
|
||||
Node: The Directory Stack270020
|
||||
Node: Directory Stack Builtins270804
|
||||
Node: Controlling the Prompt273772
|
||||
Node: The Restricted Shell276538
|
||||
Node: Bash POSIX Mode278363
|
||||
Node: Job Control289296
|
||||
Node: Job Control Basics289756
|
||||
Node: Job Control Builtins294724
|
||||
Node: Job Control Variables299451
|
||||
Node: Command Line Editing300607
|
||||
Node: Introduction and Notation302278
|
||||
Node: Readline Interaction303901
|
||||
Node: Readline Bare Essentials305092
|
||||
Node: Readline Movement Commands306875
|
||||
Node: Readline Killing Commands307835
|
||||
Node: Readline Arguments309753
|
||||
Node: Searching310797
|
||||
Node: Readline Init File312983
|
||||
Node: Readline Init File Syntax314130
|
||||
Node: Conditional Init Constructs334569
|
||||
Node: Sample Init File338765
|
||||
Node: Bindable Readline Commands341882
|
||||
Node: Commands For Moving343086
|
||||
Node: Commands For History344935
|
||||
Node: Commands For Text349230
|
||||
Node: Commands For Killing352618
|
||||
Node: Numeric Arguments355099
|
||||
Node: Commands For Completion356238
|
||||
Node: Keyboard Macros360429
|
||||
Node: Miscellaneous Commands361116
|
||||
Node: Readline vi Mode367069
|
||||
Node: Programmable Completion367976
|
||||
Node: Programmable Completion Builtins375756
|
||||
Node: A Programmable Completion Example386449
|
||||
Node: Using History Interactively391689
|
||||
Node: Bash History Facilities392373
|
||||
Node: Bash History Builtins395378
|
||||
Node: History Interaction399909
|
||||
Node: Event Designators403529
|
||||
Node: Word Designators404748
|
||||
Node: Modifiers406385
|
||||
Node: Installing Bash407787
|
||||
Node: Basic Installation408924
|
||||
Node: Compilers and Options412182
|
||||
Node: Compiling For Multiple Architectures412923
|
||||
Node: Installation Names414616
|
||||
Node: Specifying the System Type415434
|
||||
Node: Sharing Defaults416150
|
||||
Node: Operation Controls416823
|
||||
Node: Optional Features417781
|
||||
Node: Reporting Bugs428299
|
||||
Node: Major Differences From The Bourne Shell429493
|
||||
Node: GNU Free Documentation License446345
|
||||
Node: Indexes471522
|
||||
Node: Builtin Index471976
|
||||
Node: Reserved Word Index478803
|
||||
Node: Variable Index481251
|
||||
Node: Function Index497002
|
||||
Node: Concept Index510305
|
||||
Node: Top897
|
||||
Node: Introduction2817
|
||||
Node: What is Bash?3033
|
||||
Node: What is a shell?4147
|
||||
Node: Definitions6685
|
||||
Node: Basic Shell Features9636
|
||||
Node: Shell Syntax10855
|
||||
Node: Shell Operation11881
|
||||
Node: Quoting13174
|
||||
Node: Escape Character14474
|
||||
Node: Single Quotes14959
|
||||
Node: Double Quotes15307
|
||||
Node: ANSI-C Quoting16585
|
||||
Node: Locale Translation17844
|
||||
Node: Comments18740
|
||||
Node: Shell Commands19358
|
||||
Node: Simple Commands20230
|
||||
Node: Pipelines20861
|
||||
Node: Lists23793
|
||||
Node: Compound Commands25584
|
||||
Node: Looping Constructs26596
|
||||
Node: Conditional Constructs29091
|
||||
Node: Command Grouping40259
|
||||
Node: Coprocesses41738
|
||||
Node: GNU Parallel43641
|
||||
Node: Shell Functions47699
|
||||
Node: Shell Parameters54782
|
||||
Node: Positional Parameters59195
|
||||
Node: Special Parameters60095
|
||||
Node: Shell Expansions63849
|
||||
Node: Brace Expansion65972
|
||||
Node: Tilde Expansion68695
|
||||
Node: Shell Parameter Expansion71312
|
||||
Node: Command Substitution85745
|
||||
Node: Arithmetic Expansion87100
|
||||
Node: Process Substitution88032
|
||||
Node: Word Splitting89152
|
||||
Node: Filename Expansion91096
|
||||
Node: Pattern Matching93626
|
||||
Node: Quote Removal97612
|
||||
Node: Redirections97907
|
||||
Node: Executing Commands107465
|
||||
Node: Simple Command Expansion108135
|
||||
Node: Command Search and Execution110065
|
||||
Node: Command Execution Environment112441
|
||||
Node: Environment115425
|
||||
Node: Exit Status117084
|
||||
Node: Signals118754
|
||||
Node: Shell Scripts120721
|
||||
Node: Shell Builtin Commands123236
|
||||
Node: Bourne Shell Builtins125274
|
||||
Node: Bash Builtins146024
|
||||
Node: Modifying Shell Behavior174949
|
||||
Node: The Set Builtin175294
|
||||
Node: The Shopt Builtin185707
|
||||
Node: Special Builtins203377
|
||||
Node: Shell Variables204356
|
||||
Node: Bourne Shell Variables204793
|
||||
Node: Bash Variables206897
|
||||
Node: Bash Features237357
|
||||
Node: Invoking Bash238256
|
||||
Node: Bash Startup Files244269
|
||||
Node: Interactive Shells249372
|
||||
Node: What is an Interactive Shell?249782
|
||||
Node: Is this Shell Interactive?250431
|
||||
Node: Interactive Shell Behavior251246
|
||||
Node: Bash Conditional Expressions254733
|
||||
Node: Shell Arithmetic259310
|
||||
Node: Aliases262127
|
||||
Node: Arrays264747
|
||||
Node: The Directory Stack270112
|
||||
Node: Directory Stack Builtins270896
|
||||
Node: Controlling the Prompt273864
|
||||
Node: The Restricted Shell276630
|
||||
Node: Bash POSIX Mode278455
|
||||
Node: Job Control289388
|
||||
Node: Job Control Basics289848
|
||||
Node: Job Control Builtins294816
|
||||
Node: Job Control Variables299543
|
||||
Node: Command Line Editing300699
|
||||
Node: Introduction and Notation302370
|
||||
Node: Readline Interaction303993
|
||||
Node: Readline Bare Essentials305184
|
||||
Node: Readline Movement Commands306967
|
||||
Node: Readline Killing Commands307927
|
||||
Node: Readline Arguments309845
|
||||
Node: Searching310889
|
||||
Node: Readline Init File313075
|
||||
Node: Readline Init File Syntax314222
|
||||
Node: Conditional Init Constructs334661
|
||||
Node: Sample Init File338857
|
||||
Node: Bindable Readline Commands341974
|
||||
Node: Commands For Moving343178
|
||||
Node: Commands For History345027
|
||||
Node: Commands For Text349322
|
||||
Node: Commands For Killing352710
|
||||
Node: Numeric Arguments355191
|
||||
Node: Commands For Completion356330
|
||||
Node: Keyboard Macros360521
|
||||
Node: Miscellaneous Commands361208
|
||||
Node: Readline vi Mode367161
|
||||
Node: Programmable Completion368068
|
||||
Node: Programmable Completion Builtins375848
|
||||
Node: A Programmable Completion Example386543
|
||||
Node: Using History Interactively391783
|
||||
Node: Bash History Facilities392467
|
||||
Node: Bash History Builtins395472
|
||||
Node: History Interaction400003
|
||||
Node: Event Designators403623
|
||||
Node: Word Designators404842
|
||||
Node: Modifiers406479
|
||||
Node: Installing Bash407881
|
||||
Node: Basic Installation409018
|
||||
Node: Compilers and Options412276
|
||||
Node: Compiling For Multiple Architectures413017
|
||||
Node: Installation Names414710
|
||||
Node: Specifying the System Type415528
|
||||
Node: Sharing Defaults416244
|
||||
Node: Operation Controls416917
|
||||
Node: Optional Features417875
|
||||
Node: Reporting Bugs428393
|
||||
Node: Major Differences From The Bourne Shell429587
|
||||
Node: GNU Free Documentation License446439
|
||||
Node: Indexes471616
|
||||
Node: Builtin Index472070
|
||||
Node: Reserved Word Index478897
|
||||
Node: Variable Index481345
|
||||
Node: Function Index497096
|
||||
Node: Concept Index510399
|
||||
|
||||
End Tag Table
|
||||
|
||||
Binary file not shown.
+4332
-4332
File diff suppressed because it is too large
Load Diff
+13
-13
@@ -63,9 +63,9 @@
|
||||
@xrdef{Conditional Constructs-pg}{11}
|
||||
@xrdef{Command Grouping-title}{Grouping Commands}
|
||||
@xrdef{Command Grouping-snt}{Section@tie 3.2.4.3}
|
||||
@xrdef{Command Grouping-pg}{14}
|
||||
@xrdef{Coprocesses-title}{Coprocesses}
|
||||
@xrdef{Coprocesses-snt}{Section@tie 3.2.5}
|
||||
@xrdef{Command Grouping-pg}{15}
|
||||
@xrdef{Coprocesses-pg}{15}
|
||||
@xrdef{GNU Parallel-title}{GNU Parallel}
|
||||
@xrdef{GNU Parallel-snt}{Section@tie 3.2.6}
|
||||
@@ -75,7 +75,7 @@
|
||||
@xrdef{Shell Functions-pg}{17}
|
||||
@xrdef{Shell Parameters-title}{Shell Parameters}
|
||||
@xrdef{Shell Parameters-snt}{Section@tie 3.4}
|
||||
@xrdef{Shell Parameters-pg}{19}
|
||||
@xrdef{Shell Parameters-pg}{20}
|
||||
@xrdef{Positional Parameters-title}{Positional Parameters}
|
||||
@xrdef{Positional Parameters-snt}{Section@tie 3.4.1}
|
||||
@xrdef{Special Parameters-title}{Special Parameters}
|
||||
@@ -90,27 +90,27 @@
|
||||
@xrdef{Tilde Expansion-title}{Tilde Expansion}
|
||||
@xrdef{Tilde Expansion-snt}{Section@tie 3.5.2}
|
||||
@xrdef{Brace Expansion-pg}{23}
|
||||
@xrdef{Tilde Expansion-pg}{23}
|
||||
@xrdef{Shell Parameter Expansion-title}{Shell Parameter Expansion}
|
||||
@xrdef{Shell Parameter Expansion-snt}{Section@tie 3.5.3}
|
||||
@xrdef{Tilde Expansion-pg}{24}
|
||||
@xrdef{Shell Parameter Expansion-pg}{24}
|
||||
@xrdef{Command Substitution-title}{Command Substitution}
|
||||
@xrdef{Command Substitution-snt}{Section@tie 3.5.4}
|
||||
@xrdef{Command Substitution-pg}{30}
|
||||
@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{Word Splitting-title}{Word Splitting}
|
||||
@xrdef{Word Splitting-snt}{Section@tie 3.5.7}
|
||||
@xrdef{Command Substitution-pg}{31}
|
||||
@xrdef{Arithmetic Expansion-pg}{31}
|
||||
@xrdef{Process Substitution-pg}{31}
|
||||
@xrdef{Word Splitting-pg}{31}
|
||||
@xrdef{Word Splitting-title}{Word Splitting}
|
||||
@xrdef{Word Splitting-snt}{Section@tie 3.5.7}
|
||||
@xrdef{Filename Expansion-title}{Filename Expansion}
|
||||
@xrdef{Filename Expansion-snt}{Section@tie 3.5.8}
|
||||
@xrdef{Word Splitting-pg}{32}
|
||||
@xrdef{Filename Expansion-pg}{32}
|
||||
@xrdef{Pattern Matching-title}{Pattern Matching}
|
||||
@xrdef{Pattern Matching-snt}{Section@tie 3.5.8.1}
|
||||
@xrdef{Filename Expansion-pg}{32}
|
||||
@xrdef{Pattern Matching-pg}{33}
|
||||
@xrdef{Quote Removal-title}{Quote Removal}
|
||||
@xrdef{Quote Removal-snt}{Section@tie 3.5.9}
|
||||
@@ -126,22 +126,22 @@
|
||||
@xrdef{Command Search and Execution-snt}{Section@tie 3.7.2}
|
||||
@xrdef{Executing Commands-pg}{38}
|
||||
@xrdef{Simple Command Expansion-pg}{38}
|
||||
@xrdef{Command Search and Execution-pg}{38}
|
||||
@xrdef{Command Execution Environment-title}{Command Execution Environment}
|
||||
@xrdef{Command Execution Environment-snt}{Section@tie 3.7.3}
|
||||
@xrdef{Command Search and Execution-pg}{39}
|
||||
@xrdef{Command Execution Environment-pg}{39}
|
||||
@xrdef{Environment-title}{Environment}
|
||||
@xrdef{Environment-snt}{Section@tie 3.7.4}
|
||||
@xrdef{Environment-pg}{40}
|
||||
@xrdef{Exit Status-title}{Exit Status}
|
||||
@xrdef{Exit Status-snt}{Section@tie 3.7.5}
|
||||
@xrdef{Environment-pg}{40}
|
||||
@xrdef{Exit Status-pg}{40}
|
||||
@xrdef{Signals-title}{Signals}
|
||||
@xrdef{Signals-snt}{Section@tie 3.7.6}
|
||||
@xrdef{Exit Status-pg}{41}
|
||||
@xrdef{Signals-pg}{41}
|
||||
@xrdef{Shell Scripts-title}{Shell Scripts}
|
||||
@xrdef{Shell Scripts-snt}{Section@tie 3.8}
|
||||
@xrdef{Signals-pg}{41}
|
||||
@xrdef{Shell Scripts-pg}{41}
|
||||
@xrdef{Shell Scripts-pg}{42}
|
||||
@xrdef{Shell Builtin Commands-title}{Shell Builtin Commands}
|
||||
@xrdef{Shell Builtin Commands-snt}{Chapter@tie 4}
|
||||
@xrdef{Bourne Shell Builtins-title}{Bourne Shell Builtins}
|
||||
|
||||
+12
-12
@@ -35,27 +35,27 @@
|
||||
\entry{commands, compound}{9}{commands, compound}
|
||||
\entry{commands, looping}{10}{commands, looping}
|
||||
\entry{commands, conditional}{11}{commands, conditional}
|
||||
\entry{commands, grouping}{14}{commands, grouping}
|
||||
\entry{commands, grouping}{15}{commands, grouping}
|
||||
\entry{coprocess}{15}{coprocess}
|
||||
\entry{shell function}{17}{shell function}
|
||||
\entry{functions, shell}{17}{functions, shell}
|
||||
\entry{parameters}{19}{parameters}
|
||||
\entry{variable, shell}{19}{variable, shell}
|
||||
\entry{shell variable}{19}{shell variable}
|
||||
\entry{parameters}{20}{parameters}
|
||||
\entry{variable, shell}{20}{variable, shell}
|
||||
\entry{shell variable}{20}{shell variable}
|
||||
\entry{parameters, positional}{21}{parameters, positional}
|
||||
\entry{parameters, special}{21}{parameters, special}
|
||||
\entry{expansion}{22}{expansion}
|
||||
\entry{brace expansion}{23}{brace expansion}
|
||||
\entry{expansion, brace}{23}{expansion, brace}
|
||||
\entry{tilde expansion}{23}{tilde expansion}
|
||||
\entry{expansion, tilde}{23}{expansion, tilde}
|
||||
\entry{tilde expansion}{24}{tilde expansion}
|
||||
\entry{expansion, tilde}{24}{expansion, tilde}
|
||||
\entry{parameter expansion}{24}{parameter expansion}
|
||||
\entry{expansion, parameter}{24}{expansion, parameter}
|
||||
\entry{command substitution}{30}{command substitution}
|
||||
\entry{command substitution}{31}{command substitution}
|
||||
\entry{expansion, arithmetic}{31}{expansion, arithmetic}
|
||||
\entry{arithmetic expansion}{31}{arithmetic expansion}
|
||||
\entry{process substitution}{31}{process substitution}
|
||||
\entry{word splitting}{31}{word splitting}
|
||||
\entry{word splitting}{32}{word splitting}
|
||||
\entry{expansion, filename}{32}{expansion, filename}
|
||||
\entry{expansion, pathname}{32}{expansion, pathname}
|
||||
\entry{filename expansion}{32}{filename expansion}
|
||||
@@ -64,13 +64,13 @@
|
||||
\entry{matching, pattern}{33}{matching, pattern}
|
||||
\entry{redirection}{34}{redirection}
|
||||
\entry{command expansion}{38}{command expansion}
|
||||
\entry{command execution}{38}{command execution}
|
||||
\entry{command search}{38}{command search}
|
||||
\entry{command execution}{39}{command execution}
|
||||
\entry{command search}{39}{command search}
|
||||
\entry{execution environment}{39}{execution environment}
|
||||
\entry{environment}{40}{environment}
|
||||
\entry{exit status}{40}{exit status}
|
||||
\entry{exit status}{41}{exit status}
|
||||
\entry{signal handling}{41}{signal handling}
|
||||
\entry{shell script}{41}{shell script}
|
||||
\entry{shell script}{42}{shell script}
|
||||
\entry{special builtin}{71}{special builtin}
|
||||
\entry{login shell}{87}{login shell}
|
||||
\entry{interactive shell}{87}{interactive shell}
|
||||
|
||||
+12
-12
@@ -13,15 +13,15 @@
|
||||
\entry {builtin}{3}
|
||||
\initial {C}
|
||||
\entry {command editing}{108}
|
||||
\entry {command execution}{38}
|
||||
\entry {command execution}{39}
|
||||
\entry {command expansion}{38}
|
||||
\entry {command history}{141}
|
||||
\entry {command search}{38}
|
||||
\entry {command substitution}{30}
|
||||
\entry {command search}{39}
|
||||
\entry {command substitution}{31}
|
||||
\entry {command timing}{8}
|
||||
\entry {commands, compound}{9}
|
||||
\entry {commands, conditional}{11}
|
||||
\entry {commands, grouping}{14}
|
||||
\entry {commands, grouping}{15}
|
||||
\entry {commands, lists}{9}
|
||||
\entry {commands, looping}{10}
|
||||
\entry {commands, pipelines}{8}
|
||||
@@ -40,14 +40,14 @@
|
||||
\entry {evaluation, arithmetic}{92}
|
||||
\entry {event designators}{144}
|
||||
\entry {execution environment}{39}
|
||||
\entry {exit status}{3, 40}
|
||||
\entry {exit status}{3, 41}
|
||||
\entry {expansion}{22}
|
||||
\entry {expansion, arithmetic}{31}
|
||||
\entry {expansion, brace}{23}
|
||||
\entry {expansion, filename}{32}
|
||||
\entry {expansion, parameter}{24}
|
||||
\entry {expansion, pathname}{32}
|
||||
\entry {expansion, tilde}{23}
|
||||
\entry {expansion, tilde}{24}
|
||||
\entry {expressions, arithmetic}{92}
|
||||
\entry {expressions, conditional}{90}
|
||||
\initial {F}
|
||||
@@ -89,7 +89,7 @@
|
||||
\entry {operator, shell}{3}
|
||||
\initial {P}
|
||||
\entry {parameter expansion}{24}
|
||||
\entry {parameters}{19}
|
||||
\entry {parameters}{20}
|
||||
\entry {parameters, positional}{21}
|
||||
\entry {parameters, special}{21}
|
||||
\entry {pathname expansion}{32}
|
||||
@@ -114,8 +114,8 @@
|
||||
\initial {S}
|
||||
\entry {shell arithmetic}{92}
|
||||
\entry {shell function}{17}
|
||||
\entry {shell script}{41}
|
||||
\entry {shell variable}{19}
|
||||
\entry {shell script}{42}
|
||||
\entry {shell variable}{20}
|
||||
\entry {shell, interactive}{88}
|
||||
\entry {signal}{4}
|
||||
\entry {signal handling}{41}
|
||||
@@ -123,14 +123,14 @@
|
||||
\entry {startup files}{87}
|
||||
\entry {suspending jobs}{103}
|
||||
\initial {T}
|
||||
\entry {tilde expansion}{23}
|
||||
\entry {tilde expansion}{24}
|
||||
\entry {token}{4}
|
||||
\entry {translation, native languages}{7}
|
||||
\initial {V}
|
||||
\entry {variable, shell}{19}
|
||||
\entry {variable, shell}{20}
|
||||
\entry {variables, readline}{111}
|
||||
\initial {W}
|
||||
\entry {word}{4}
|
||||
\entry {word splitting}{31}
|
||||
\entry {word splitting}{32}
|
||||
\initial {Y}
|
||||
\entry {yanking text}{109}
|
||||
|
||||
Binary file not shown.
+14
-11
@@ -1,9 +1,9 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<!-- This text is a brief description of the features that are present in
|
||||
the Bash shell (version 5.0, 7 December 2018).
|
||||
the Bash shell (version 5.0, 26 February 2019).
|
||||
|
||||
This is Edition 5.0, last updated 7 December 2018,
|
||||
This is Edition 5.0, last updated 26 February 2019,
|
||||
of The GNU Bash Reference Manual,
|
||||
for Bash, Version 5.0.
|
||||
|
||||
@@ -284,10 +284,10 @@ Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Previou
|
||||
<h1 class="top">Bash Features</h1>
|
||||
|
||||
<p>This text is a brief description of the features that are present in
|
||||
the Bash shell (version 5.0, 7 December 2018).
|
||||
the Bash shell (version 5.0, 26 February 2019).
|
||||
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 5.0, last updated 7 December 2018,
|
||||
<p>This is Edition 5.0, last updated 26 February 2019,
|
||||
of <cite>The GNU Bash Reference Manual</cite>,
|
||||
for <code>Bash</code>, Version 5.0.
|
||||
</p>
|
||||
@@ -1353,7 +1353,8 @@ Using ‘<samp>;&</samp>’ in place of ‘<samp>;;</samp>&rsqu
|
||||
the <var>command-list</var> associated with the next clause, if any.
|
||||
Using ‘<samp>;;&</samp>’ in place of ‘<samp>;;</samp>’ causes the shell to test the patterns
|
||||
in the next clause, if any, and execute any associated <var>command-list</var>
|
||||
on a successful match.
|
||||
on a successful match,
|
||||
continuing the case statement execution as if the pattern list had not matched.
|
||||
</p>
|
||||
<p>The return status is zero if no <var>pattern</var> is matched. Otherwise, the
|
||||
return status is the exit status of the <var>command-list</var> executed.
|
||||
@@ -2370,7 +2371,7 @@ Any incorrectly formed brace expansion is left unchanged.
|
||||
being considered part of a brace expression.
|
||||
To avoid conflicts with parameter expansion, the string ‘<samp>${</samp>’
|
||||
is not considered eligible for brace expansion,
|
||||
and inhibits brace expansion until the closing ‘<samp>}</samp>’..
|
||||
and inhibits brace expansion until the closing ‘<samp>}</samp>’.
|
||||
</p>
|
||||
<p>This construct is typically used as shorthand when the common
|
||||
prefix of the strings to be generated is longer than in the
|
||||
@@ -2762,7 +2763,7 @@ array in turn, and the expansion is the resultant list.
|
||||
<dt><code>${<var>parameter</var>%%<var>word</var>}</code></dt>
|
||||
<dd><p>The <var>word</var>
|
||||
is expanded to produce a pattern and matched according to the rules
|
||||
described below (see <a href="#Pattern-Matching">Pattern Matching</a>). If the pattern matches
|
||||
described below (see <a href="#Pattern-Matching">Pattern Matching</a>).
|
||||
If the pattern matches a trailing portion of the expanded value of
|
||||
<var>parameter</var>, then the result of the expansion is the value of
|
||||
<var>parameter</var> with the shortest matching pattern (the ‘<samp>%</samp>’ case)
|
||||
@@ -6158,7 +6159,9 @@ This option is enabled by default for interactive shells.
|
||||
</p>
|
||||
</dd>
|
||||
<dt><code>extdebug</code></dt>
|
||||
<dd><p>If set at shell invocation, arrange to execute the debugger profile
|
||||
<dd><p>If set at shell invocation,
|
||||
or in a shell startup file,
|
||||
arrange to execute the debugger profile
|
||||
before the shell starts, identical to the <samp>--debugger</samp> option.
|
||||
If set after invocation, behavior intended for use by debuggers is enabled:
|
||||
</p>
|
||||
@@ -8550,7 +8553,7 @@ To explicitly declare an array, use
|
||||
</p>
|
||||
<p>Associative arrays are created using
|
||||
</p><div class="example">
|
||||
<pre class="example">declare -A <var>name</var>.
|
||||
<pre class="example">declare -A <var>name</var>
|
||||
</pre></div>
|
||||
|
||||
<p>Attributes may be
|
||||
@@ -12077,7 +12080,7 @@ The <samp>-E</samp> option indicates that other supplied options and actions sho
|
||||
apply to “empty” command completion; that is, completion attempted on a
|
||||
blank line.
|
||||
The <samp>-I</samp> option indicates that other supplied options and actions should
|
||||
apply to completion on the inital non-assignment word on the line, or after a
|
||||
apply to completion on the initial non-assignment word on the line, or after a
|
||||
command delimiter such as ‘<samp>;</samp>’ or ‘<samp>|</samp>’, which is usually command
|
||||
name completion.
|
||||
If multiple options are supplied, the <samp>-D</samp> option takes precedence
|
||||
@@ -12329,7 +12332,7 @@ The <samp>-E</samp> option indicates that other supplied options should
|
||||
apply to “empty” command completion; that is, completion attempted on a
|
||||
blank line.
|
||||
The <samp>-I</samp> option indicates that other supplied options should
|
||||
apply to completion on the inital non-assignment word on the line, or after a
|
||||
apply to completion on the initial non-assignment word on the line, or after a
|
||||
command delimiter such as ‘<samp>;</samp>’ or ‘<samp>|</samp>’, which is usually command
|
||||
name completion.
|
||||
</p>
|
||||
|
||||
+157
-156
@@ -2,9 +2,9 @@ This is bashref.info, produced by makeinfo version 6.5 from
|
||||
bashref.texi.
|
||||
|
||||
This text is a brief description of the features that are present in the
|
||||
Bash shell (version 5.0, 7 December 2018).
|
||||
Bash shell (version 5.0, 26 February 2019).
|
||||
|
||||
This is Edition 5.0, last updated 7 December 2018, of 'The GNU Bash
|
||||
This is Edition 5.0, last updated 26 February 2019, of 'The GNU Bash
|
||||
Reference Manual', for 'Bash', Version 5.0.
|
||||
|
||||
Copyright (C) 1988-2018 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.0, 7 December 2018). The Bash home page is
|
||||
Bash shell (version 5.0, 26 February 2019). The Bash home page is
|
||||
<http://www.gnu.org/software/bash/>.
|
||||
|
||||
This is Edition 5.0, last updated 7 December 2018, of 'The GNU Bash
|
||||
This is Edition 5.0, last updated 26 February 2019, of 'The GNU Bash
|
||||
Reference Manual', for 'Bash', Version 5.0.
|
||||
|
||||
Bash contains features that appear in other popular shells, and some
|
||||
@@ -815,7 +815,8 @@ File: bashref.info, Node: Conditional Constructs, Next: Command Grouping, Pre
|
||||
execution to continue with the COMMAND-LIST associated with the
|
||||
next clause, if any. Using ';;&' in place of ';;' causes the shell
|
||||
to test the patterns in the next clause, if any, and execute any
|
||||
associated COMMAND-LIST on a successful match.
|
||||
associated COMMAND-LIST on a successful match, continuing the case
|
||||
statement execution as if the pattern list had not matched.
|
||||
|
||||
The return status is zero if no PATTERN is matched. Otherwise, the
|
||||
return status is the exit status of the COMMAND-LIST executed.
|
||||
@@ -1576,7 +1577,7 @@ expression. Any incorrectly formed brace expansion is left unchanged.
|
||||
A { or ',' may be quoted with a backslash to prevent its being
|
||||
considered part of a brace expression. To avoid conflicts with
|
||||
parameter expansion, the string '${' is not considered eligible for
|
||||
brace expansion, and inhibits brace expansion until the closing '}'..
|
||||
brace expansion, and inhibits brace expansion until the closing '}'.
|
||||
|
||||
This construct is typically used as shorthand when the common prefix
|
||||
of the strings to be generated is longer than in the above example:
|
||||
@@ -1898,15 +1899,15 @@ omitted, the operator tests only for existence.
|
||||
'${PARAMETER%%WORD}'
|
||||
The WORD is expanded to produce a pattern and matched according to
|
||||
the rules described below (*note Pattern Matching::). If the
|
||||
pattern matches If the pattern matches a trailing portion of the
|
||||
expanded value of PARAMETER, then the result of the expansion is
|
||||
the value of PARAMETER with the shortest matching pattern (the '%'
|
||||
case) or the longest matching pattern (the '%%' case) deleted. If
|
||||
PARAMETER is '@' or '*', the pattern removal operation is applied
|
||||
to each positional parameter in turn, and the expansion is the
|
||||
resultant list. If PARAMETER is an array variable subscripted with
|
||||
'@' or '*', the pattern removal operation is applied to each member
|
||||
of the array in turn, and the expansion is the resultant list.
|
||||
pattern matches a trailing portion of the expanded value of
|
||||
PARAMETER, then the result of the expansion is the value of
|
||||
PARAMETER with the shortest matching pattern (the '%' case) or the
|
||||
longest matching pattern (the '%%' case) deleted. If PARAMETER is
|
||||
'@' or '*', the pattern removal operation is applied to each
|
||||
positional parameter in turn, and the expansion is the resultant
|
||||
list. If PARAMETER is an array variable subscripted with '@' or
|
||||
'*', the pattern removal operation is applied to each member of the
|
||||
array in turn, and the expansion is the resultant list.
|
||||
|
||||
'${PARAMETER/PATTERN/STRING}'
|
||||
|
||||
@@ -4518,10 +4519,10 @@ This builtin allows you to change additional shell optional behavior.
|
||||
interactive shells.
|
||||
|
||||
'extdebug'
|
||||
If set at shell invocation, arrange to execute the debugger
|
||||
profile before the shell starts, identical to the '--debugger'
|
||||
option. If set after invocation, behavior intended for use by
|
||||
debuggers is enabled:
|
||||
If set at shell invocation, or in a shell startup file,
|
||||
arrange to execute the debugger profile before the shell
|
||||
starts, identical to the '--debugger' option. If set after
|
||||
invocation, behavior intended for use by debuggers is enabled:
|
||||
|
||||
1. The '-F' option to the 'declare' builtin (*note Bash
|
||||
Builtins::) displays the source file name and line number
|
||||
@@ -6251,7 +6252,7 @@ The syntax
|
||||
is also accepted; the SUBSCRIPT is ignored.
|
||||
|
||||
Associative arrays are created using
|
||||
declare -A NAME.
|
||||
declare -A NAME
|
||||
|
||||
Attributes may be specified for an array variable using the 'declare'
|
||||
and 'readonly' builtins. Each attribute applies to all members of an
|
||||
@@ -8829,8 +8830,8 @@ happening.
|
||||
that other supplied options and actions should apply to "empty"
|
||||
command completion; that is, completion attempted on a blank line.
|
||||
The '-I' option indicates that other supplied options and actions
|
||||
should apply to completion on the inital non-assignment word on the
|
||||
line, or after a command delimiter such as ';' or '|', which is
|
||||
should apply to completion on the initial non-assignment word on
|
||||
the line, or after a command delimiter such as ';' or '|', which is
|
||||
usually command name completion. If multiple options are supplied,
|
||||
the '-D' option takes precedence over '-E', and both take
|
||||
precedence over '-I'. If any of '-D', '-E', or '-I' are supplied,
|
||||
@@ -9031,8 +9032,8 @@ happening.
|
||||
'-E' option indicates that other supplied options should apply to
|
||||
"empty" command completion; that is, completion attempted on a
|
||||
blank line. The '-I' option indicates that other supplied options
|
||||
should apply to completion on the inital non-assignment word on the
|
||||
line, or after a command delimiter such as ';' or '|', which is
|
||||
should apply to completion on the initial non-assignment word on
|
||||
the line, or after a command delimiter such as ';' or '|', which is
|
||||
usually command name completion.
|
||||
|
||||
If multiple options are supplied, the '-D' option takes precedence
|
||||
@@ -11064,9 +11065,9 @@ D.2 Index of Shell Reserved Words
|
||||
|
||||
* !: Pipelines. (line 9)
|
||||
* [[: Conditional Constructs.
|
||||
(line 124)
|
||||
(line 125)
|
||||
* ]]: Conditional Constructs.
|
||||
(line 124)
|
||||
(line 125)
|
||||
* {: Command Grouping. (line 21)
|
||||
* }: Command Grouping. (line 21)
|
||||
* case: Conditional Constructs.
|
||||
@@ -11088,7 +11089,7 @@ D.2 Index of Shell Reserved Words
|
||||
* in: Conditional Constructs.
|
||||
(line 28)
|
||||
* select: Conditional Constructs.
|
||||
(line 82)
|
||||
(line 83)
|
||||
* then: Conditional Constructs.
|
||||
(line 7)
|
||||
* time: Pipelines. (line 9)
|
||||
@@ -11683,134 +11684,134 @@ D.5 Concept Index
|
||||
|
||||
|
||||
Tag Table:
|
||||
Node: Top895
|
||||
Node: Introduction2813
|
||||
Node: What is Bash?3029
|
||||
Node: What is a shell?4143
|
||||
Node: Definitions6681
|
||||
Node: Basic Shell Features9632
|
||||
Node: Shell Syntax10851
|
||||
Node: Shell Operation11877
|
||||
Node: Quoting13170
|
||||
Node: Escape Character14470
|
||||
Node: Single Quotes14955
|
||||
Node: Double Quotes15303
|
||||
Node: ANSI-C Quoting16581
|
||||
Node: Locale Translation17840
|
||||
Node: Comments18736
|
||||
Node: Shell Commands19354
|
||||
Node: Simple Commands20226
|
||||
Node: Pipelines20857
|
||||
Node: Lists23789
|
||||
Node: Compound Commands25580
|
||||
Node: Looping Constructs26592
|
||||
Node: Conditional Constructs29087
|
||||
Node: Command Grouping40170
|
||||
Node: Coprocesses41649
|
||||
Node: GNU Parallel43552
|
||||
Node: Shell Functions47610
|
||||
Node: Shell Parameters54693
|
||||
Node: Positional Parameters59106
|
||||
Node: Special Parameters60006
|
||||
Node: Shell Expansions63760
|
||||
Node: Brace Expansion65883
|
||||
Node: Tilde Expansion68607
|
||||
Node: Shell Parameter Expansion71224
|
||||
Node: Command Substitution85680
|
||||
Node: Arithmetic Expansion87035
|
||||
Node: Process Substitution87967
|
||||
Node: Word Splitting89087
|
||||
Node: Filename Expansion91031
|
||||
Node: Pattern Matching93561
|
||||
Node: Quote Removal97547
|
||||
Node: Redirections97842
|
||||
Node: Executing Commands107400
|
||||
Node: Simple Command Expansion108070
|
||||
Node: Command Search and Execution110000
|
||||
Node: Command Execution Environment112376
|
||||
Node: Environment115360
|
||||
Node: Exit Status117019
|
||||
Node: Signals118689
|
||||
Node: Shell Scripts120656
|
||||
Node: Shell Builtin Commands123171
|
||||
Node: Bourne Shell Builtins125209
|
||||
Node: Bash Builtins145959
|
||||
Node: Modifying Shell Behavior174884
|
||||
Node: The Set Builtin175229
|
||||
Node: The Shopt Builtin185642
|
||||
Node: Special Builtins203284
|
||||
Node: Shell Variables204263
|
||||
Node: Bourne Shell Variables204700
|
||||
Node: Bash Variables206804
|
||||
Node: Bash Features237264
|
||||
Node: Invoking Bash238163
|
||||
Node: Bash Startup Files244176
|
||||
Node: Interactive Shells249279
|
||||
Node: What is an Interactive Shell?249689
|
||||
Node: Is this Shell Interactive?250338
|
||||
Node: Interactive Shell Behavior251153
|
||||
Node: Bash Conditional Expressions254640
|
||||
Node: Shell Arithmetic259217
|
||||
Node: Aliases262034
|
||||
Node: Arrays264654
|
||||
Node: The Directory Stack270020
|
||||
Node: Directory Stack Builtins270804
|
||||
Node: Controlling the Prompt273772
|
||||
Node: The Restricted Shell276538
|
||||
Node: Bash POSIX Mode278363
|
||||
Node: Job Control289296
|
||||
Node: Job Control Basics289756
|
||||
Node: Job Control Builtins294724
|
||||
Node: Job Control Variables299451
|
||||
Node: Command Line Editing300607
|
||||
Node: Introduction and Notation302278
|
||||
Node: Readline Interaction303901
|
||||
Node: Readline Bare Essentials305092
|
||||
Node: Readline Movement Commands306875
|
||||
Node: Readline Killing Commands307835
|
||||
Node: Readline Arguments309753
|
||||
Node: Searching310797
|
||||
Node: Readline Init File312983
|
||||
Node: Readline Init File Syntax314130
|
||||
Node: Conditional Init Constructs334569
|
||||
Node: Sample Init File338765
|
||||
Node: Bindable Readline Commands341882
|
||||
Node: Commands For Moving343086
|
||||
Node: Commands For History344935
|
||||
Node: Commands For Text349230
|
||||
Node: Commands For Killing352618
|
||||
Node: Numeric Arguments355099
|
||||
Node: Commands For Completion356238
|
||||
Node: Keyboard Macros360429
|
||||
Node: Miscellaneous Commands361116
|
||||
Node: Readline vi Mode367069
|
||||
Node: Programmable Completion367976
|
||||
Node: Programmable Completion Builtins375756
|
||||
Node: A Programmable Completion Example386449
|
||||
Node: Using History Interactively391689
|
||||
Node: Bash History Facilities392373
|
||||
Node: Bash History Builtins395378
|
||||
Node: History Interaction399909
|
||||
Node: Event Designators403529
|
||||
Node: Word Designators404748
|
||||
Node: Modifiers406385
|
||||
Node: Installing Bash407787
|
||||
Node: Basic Installation408924
|
||||
Node: Compilers and Options412182
|
||||
Node: Compiling For Multiple Architectures412923
|
||||
Node: Installation Names414616
|
||||
Node: Specifying the System Type415434
|
||||
Node: Sharing Defaults416150
|
||||
Node: Operation Controls416823
|
||||
Node: Optional Features417781
|
||||
Node: Reporting Bugs428299
|
||||
Node: Major Differences From The Bourne Shell429493
|
||||
Node: GNU Free Documentation License446345
|
||||
Node: Indexes471522
|
||||
Node: Builtin Index471976
|
||||
Node: Reserved Word Index478803
|
||||
Node: Variable Index481251
|
||||
Node: Function Index497002
|
||||
Node: Concept Index510305
|
||||
Node: Top897
|
||||
Node: Introduction2817
|
||||
Node: What is Bash?3033
|
||||
Node: What is a shell?4147
|
||||
Node: Definitions6685
|
||||
Node: Basic Shell Features9636
|
||||
Node: Shell Syntax10855
|
||||
Node: Shell Operation11881
|
||||
Node: Quoting13174
|
||||
Node: Escape Character14474
|
||||
Node: Single Quotes14959
|
||||
Node: Double Quotes15307
|
||||
Node: ANSI-C Quoting16585
|
||||
Node: Locale Translation17844
|
||||
Node: Comments18740
|
||||
Node: Shell Commands19358
|
||||
Node: Simple Commands20230
|
||||
Node: Pipelines20861
|
||||
Node: Lists23793
|
||||
Node: Compound Commands25584
|
||||
Node: Looping Constructs26596
|
||||
Node: Conditional Constructs29091
|
||||
Node: Command Grouping40259
|
||||
Node: Coprocesses41738
|
||||
Node: GNU Parallel43641
|
||||
Node: Shell Functions47699
|
||||
Node: Shell Parameters54782
|
||||
Node: Positional Parameters59195
|
||||
Node: Special Parameters60095
|
||||
Node: Shell Expansions63849
|
||||
Node: Brace Expansion65972
|
||||
Node: Tilde Expansion68695
|
||||
Node: Shell Parameter Expansion71312
|
||||
Node: Command Substitution85745
|
||||
Node: Arithmetic Expansion87100
|
||||
Node: Process Substitution88032
|
||||
Node: Word Splitting89152
|
||||
Node: Filename Expansion91096
|
||||
Node: Pattern Matching93626
|
||||
Node: Quote Removal97612
|
||||
Node: Redirections97907
|
||||
Node: Executing Commands107465
|
||||
Node: Simple Command Expansion108135
|
||||
Node: Command Search and Execution110065
|
||||
Node: Command Execution Environment112441
|
||||
Node: Environment115425
|
||||
Node: Exit Status117084
|
||||
Node: Signals118754
|
||||
Node: Shell Scripts120721
|
||||
Node: Shell Builtin Commands123236
|
||||
Node: Bourne Shell Builtins125274
|
||||
Node: Bash Builtins146024
|
||||
Node: Modifying Shell Behavior174949
|
||||
Node: The Set Builtin175294
|
||||
Node: The Shopt Builtin185707
|
||||
Node: Special Builtins203377
|
||||
Node: Shell Variables204356
|
||||
Node: Bourne Shell Variables204793
|
||||
Node: Bash Variables206897
|
||||
Node: Bash Features237357
|
||||
Node: Invoking Bash238256
|
||||
Node: Bash Startup Files244269
|
||||
Node: Interactive Shells249372
|
||||
Node: What is an Interactive Shell?249782
|
||||
Node: Is this Shell Interactive?250431
|
||||
Node: Interactive Shell Behavior251246
|
||||
Node: Bash Conditional Expressions254733
|
||||
Node: Shell Arithmetic259310
|
||||
Node: Aliases262127
|
||||
Node: Arrays264747
|
||||
Node: The Directory Stack270112
|
||||
Node: Directory Stack Builtins270896
|
||||
Node: Controlling the Prompt273864
|
||||
Node: The Restricted Shell276630
|
||||
Node: Bash POSIX Mode278455
|
||||
Node: Job Control289388
|
||||
Node: Job Control Basics289848
|
||||
Node: Job Control Builtins294816
|
||||
Node: Job Control Variables299543
|
||||
Node: Command Line Editing300699
|
||||
Node: Introduction and Notation302370
|
||||
Node: Readline Interaction303993
|
||||
Node: Readline Bare Essentials305184
|
||||
Node: Readline Movement Commands306967
|
||||
Node: Readline Killing Commands307927
|
||||
Node: Readline Arguments309845
|
||||
Node: Searching310889
|
||||
Node: Readline Init File313075
|
||||
Node: Readline Init File Syntax314222
|
||||
Node: Conditional Init Constructs334661
|
||||
Node: Sample Init File338857
|
||||
Node: Bindable Readline Commands341974
|
||||
Node: Commands For Moving343178
|
||||
Node: Commands For History345027
|
||||
Node: Commands For Text349322
|
||||
Node: Commands For Killing352710
|
||||
Node: Numeric Arguments355191
|
||||
Node: Commands For Completion356330
|
||||
Node: Keyboard Macros360521
|
||||
Node: Miscellaneous Commands361208
|
||||
Node: Readline vi Mode367161
|
||||
Node: Programmable Completion368068
|
||||
Node: Programmable Completion Builtins375848
|
||||
Node: A Programmable Completion Example386543
|
||||
Node: Using History Interactively391783
|
||||
Node: Bash History Facilities392467
|
||||
Node: Bash History Builtins395472
|
||||
Node: History Interaction400003
|
||||
Node: Event Designators403623
|
||||
Node: Word Designators404842
|
||||
Node: Modifiers406479
|
||||
Node: Installing Bash407881
|
||||
Node: Basic Installation409018
|
||||
Node: Compilers and Options412276
|
||||
Node: Compiling For Multiple Architectures413017
|
||||
Node: Installation Names414710
|
||||
Node: Specifying the System Type415528
|
||||
Node: Sharing Defaults416244
|
||||
Node: Operation Controls416917
|
||||
Node: Optional Features417875
|
||||
Node: Reporting Bugs428393
|
||||
Node: Major Differences From The Bourne Shell429587
|
||||
Node: GNU Free Documentation License446439
|
||||
Node: Indexes471616
|
||||
Node: Builtin Index472070
|
||||
Node: Reserved Word Index478897
|
||||
Node: Variable Index481345
|
||||
Node: Function Index497096
|
||||
Node: Concept Index510399
|
||||
|
||||
End Tag Table
|
||||
|
||||
+34
-33
@@ -1,11 +1,11 @@
|
||||
This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018/MacPorts 2018.47642_1) (preloaded format=pdfetex 2018.9.7) 2 JAN 2019 09:14
|
||||
This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018/MacPorts 2018.47642_7) (preloaded format=pdfetex 2019.1.16) 26 FEB 2019 09:57
|
||||
entering extended mode
|
||||
restricted \write18 enabled.
|
||||
file:line:error style messages enabled.
|
||||
%&-line parsing enabled.
|
||||
**\input /usr/homes/chet/src/bash/src/doc/bashref.texi
|
||||
(/usr/homes/chet/src/bash/src/doc/bashref.texi
|
||||
(/Users/chet/src/bash/src/doc/texinfo.tex
|
||||
(/usr/homes/chet/src/bash/src/doc/texinfo.tex
|
||||
Loading texinfo [version 2015-11-22.14]:
|
||||
\outerhsize=\dimen16
|
||||
\outervsize=\dimen17
|
||||
@@ -161,14 +161,15 @@ This is `epsf.tex' v2.7.4 <14 February 2011>
|
||||
texinfo.tex: doing @include of version.texi
|
||||
|
||||
|
||||
(/Users/chet/src/bash/src/doc/version.texi) [1{/opt/local/var/db/texmf/fonts/ma
|
||||
p/pdftex/updmap/pdftex.map}] [2] (/Users/chet/src/bash/src/doc/bashref.toc
|
||||
[-1] [-2] [-3]) [-4] (/Users/chet/src/bash/src/doc/bashref.toc)
|
||||
(/Users/chet/src/bash/src/doc/bashref.toc) Chapter 1
|
||||
(/usr/homes/chet/src/bash/src/doc/version.texi) [1{/opt/local/var/db/texmf/font
|
||||
s/map/pdftex/updmap/pdftex.map}] [2]
|
||||
(/usr/homes/chet/src/bash/src/doc/bashref.toc [-1] [-2] [-3]) [-4]
|
||||
(/usr/homes/chet/src/bash/src/doc/bashref.toc)
|
||||
(/usr/homes/chet/src/bash/src/doc/bashref.toc) Chapter 1
|
||||
\openout0 = `bashref.toc'.
|
||||
|
||||
|
||||
(/Users/chet/src/bash/src/doc/bashref.aux)
|
||||
(/usr/homes/chet/src/bash/src/doc/bashref.aux)
|
||||
\openout1 = `bashref.aux'.
|
||||
|
||||
Chapter 2 [1] [2]
|
||||
@@ -267,38 +268,38 @@ texinfo.tex: doing @include of hsuser.texi
|
||||
[160] Appendix C [161]
|
||||
texinfo.tex: doing @include of fdl.texi
|
||||
|
||||
(/Users/chet/src/bash/src/doc/fdl.texi [162] [163]
|
||||
[164] [165] [166] [167] [168]) Appendix D [169] [170] [171] [172] [173]
|
||||
[174] [175] [176] [177] [178] )
|
||||
(/usr/homes/chet/src/bash/src/doc/fdl.texi [162]
|
||||
[163] [164] [165] [166] [167] [168]) Appendix D [169] [170] [171] [172]
|
||||
[173] [174] [175] [176] [177] [178] )
|
||||
Here is how much of TeX's memory you used:
|
||||
4066 strings out of 497100
|
||||
47081 string characters out of 6206795
|
||||
137581 words of memory out of 5000000
|
||||
4065 strings out of 497100
|
||||
47108 string characters out of 6206794
|
||||
136573 words of memory out of 5000000
|
||||
4846 multiletter control sequences out of 15000+600000
|
||||
34315 words of font info for 116 fonts, out of 8000000 for 9000
|
||||
51 hyphenation exceptions out of 8191
|
||||
16i,6n,16p,326b,968s stack positions out of 5000i,500n,10000p,200000b,80000s
|
||||
{/opt/local/share/texmf-texlive/fonts/enc/dvips/
|
||||
cm-super/cm-super-t1.enc}</opt/local/share/texmf-texlive/fonts/type1/public/ams
|
||||
fonts/cm/cmbx12.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts
|
||||
/cm/cmcsc10.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/
|
||||
cmmi10.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmmi1
|
||||
2.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmmi9.pfb>
|
||||
</opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmr10.pfb></opt/
|
||||
local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmr9.pfb></opt/local/s
|
||||
hare/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsl10.pfb></opt/local/share/
|
||||
texmf-texlive/fonts/type1/public/amsfonts/cm/cmsltt10.pfb></opt/local/share/tex
|
||||
mf-texlive/fonts/type1/public/amsfonts/cm/cmsy10.pfb></opt/local/share/texmf-te
|
||||
xlive/fonts/type1/public/amsfonts/cm/cmti10.pfb></opt/local/share/texmf-texlive
|
||||
/fonts/type1/public/amsfonts/cm/cmtt10.pfb></opt/local/share/texmf-texlive/font
|
||||
s/type1/public/amsfonts/cm/cmtt12.pfb></opt/local/share/texmf-texlive/fonts/typ
|
||||
e1/public/amsfonts/cm/cmtt9.pfb></opt/local/share/texmf-texlive/fonts/type1/pub
|
||||
lic/cm-super/sfrm1095.pfb></opt/local/share/texmf-texlive/fonts/type1/public/cm
|
||||
-super/sfrm1440.pfb>
|
||||
Output written on bashref.pdf (184 pages, 753125 bytes).
|
||||
{/opt/local/share/texmf-texlive/fonts/enc/
|
||||
dvips/cm-super/cm-super-t1.enc}</opt/local/share/texmf-texlive/fonts/type1/publ
|
||||
ic/amsfonts/cm/cmbx12.pfb></opt/local/share/texmf-texlive/fonts/type1/public/am
|
||||
sfonts/cm/cmcsc10.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfon
|
||||
ts/cm/cmmi10.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm
|
||||
/cmmi12.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmmi
|
||||
9.pfb></opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmr10.pfb>
|
||||
</opt/local/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmr9.pfb></opt/l
|
||||
ocal/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsl10.pfb></opt/local/
|
||||
share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsltt10.pfb></opt/local/sha
|
||||
re/texmf-texlive/fonts/type1/public/amsfonts/cm/cmsy10.pfb></opt/local/share/te
|
||||
xmf-texlive/fonts/type1/public/amsfonts/cm/cmti10.pfb></opt/local/share/texmf-t
|
||||
exlive/fonts/type1/public/amsfonts/cm/cmtt10.pfb></opt/local/share/texmf-texliv
|
||||
e/fonts/type1/public/amsfonts/cm/cmtt12.pfb></opt/local/share/texmf-texlive/fon
|
||||
ts/type1/public/amsfonts/cm/cmtt9.pfb></opt/local/share/texmf-texlive/fonts/typ
|
||||
e1/public/cm-super/sfrm1095.pfb></opt/local/share/texmf-texlive/fonts/type1/pub
|
||||
lic/cm-super/sfrm1440.pfb>
|
||||
Output written on bashref.pdf (184 pages, 752696 bytes).
|
||||
PDF statistics:
|
||||
2624 PDF objects out of 2984 (max. 8388607)
|
||||
2395 compressed objects within 24 object streams
|
||||
2623 PDF objects out of 2984 (max. 8388607)
|
||||
2394 compressed objects within 24 object streams
|
||||
310 named destinations out of 1000 (max. 500000)
|
||||
1125 words of extra memory for PDF output out of 10000 (max. 10000000)
|
||||
|
||||
|
||||
Binary file not shown.
+1840
-1840
File diff suppressed because it is too large
Load Diff
+2
-2
@@ -14,8 +14,8 @@
|
||||
\entry{in}{11}{\code {in}}
|
||||
\entry{esac}{11}{\code {esac}}
|
||||
\entry{select}{12}{\code {select}}
|
||||
\entry{[[}{12}{\code {[[}}
|
||||
\entry{]]}{12}{\code {]]}}
|
||||
\entry{[[}{13}{\code {[[}}
|
||||
\entry{]]}{13}{\code {]]}}
|
||||
\entry{{\indexlbrace }}{15}{\code {{\tt \char 123}}}
|
||||
\entry{{\indexrbrace }}{15}{\code {{\tt \char 125}}}
|
||||
\entry{function}{17}{\code {function}}
|
||||
|
||||
+2
-2
@@ -1,9 +1,9 @@
|
||||
\initial {!}
|
||||
\entry {\code {!}}{8}
|
||||
\initial {[}
|
||||
\entry {\code {[[}}{12}
|
||||
\entry {\code {[[}}{13}
|
||||
\initial {]}
|
||||
\entry {\code {]]}}{12}
|
||||
\entry {\code {]]}}{13}
|
||||
\initial {{\indexlbrace }}
|
||||
\entry {\code {{\tt \char 123}}}{15}
|
||||
\initial {{\indexrbrace }}
|
||||
|
||||
+3
-1
@@ -5295,7 +5295,9 @@ If set, aliases are expanded as described below under Aliases,
|
||||
This option is enabled by default for interactive shells.
|
||||
|
||||
@item extdebug
|
||||
If set at shell invocation, arrange to execute the debugger profile
|
||||
If set at shell invocation,
|
||||
or in a shell startup file,
|
||||
arrange to execute the debugger profile
|
||||
before the shell starts, identical to the @option{--debugger} option.
|
||||
If set after invocation, behavior intended for use by debuggers is enabled:
|
||||
|
||||
|
||||
+12
-12
@@ -19,43 +19,43 @@
|
||||
@numsubsecentry{Compound Commands}{3.2.4}{Compound Commands}{9}
|
||||
@numsubsubsecentry{Looping Constructs}{3.2.4.1}{Looping Constructs}{10}
|
||||
@numsubsubsecentry{Conditional Constructs}{3.2.4.2}{Conditional Constructs}{11}
|
||||
@numsubsubsecentry{Grouping Commands}{3.2.4.3}{Command Grouping}{14}
|
||||
@numsubsubsecentry{Grouping Commands}{3.2.4.3}{Command Grouping}{15}
|
||||
@numsubsecentry{Coprocesses}{3.2.5}{Coprocesses}{15}
|
||||
@numsubsecentry{GNU Parallel}{3.2.6}{GNU Parallel}{16}
|
||||
@numsecentry{Shell Functions}{3.3}{Shell Functions}{17}
|
||||
@numsecentry{Shell Parameters}{3.4}{Shell Parameters}{19}
|
||||
@numsecentry{Shell Parameters}{3.4}{Shell Parameters}{20}
|
||||
@numsubsecentry{Positional Parameters}{3.4.1}{Positional Parameters}{21}
|
||||
@numsubsecentry{Special Parameters}{3.4.2}{Special Parameters}{21}
|
||||
@numsecentry{Shell Expansions}{3.5}{Shell Expansions}{22}
|
||||
@numsubsecentry{Brace Expansion}{3.5.1}{Brace Expansion}{23}
|
||||
@numsubsecentry{Tilde Expansion}{3.5.2}{Tilde Expansion}{23}
|
||||
@numsubsecentry{Tilde Expansion}{3.5.2}{Tilde Expansion}{24}
|
||||
@numsubsecentry{Shell Parameter Expansion}{3.5.3}{Shell Parameter Expansion}{24}
|
||||
@numsubsecentry{Command Substitution}{3.5.4}{Command Substitution}{30}
|
||||
@numsubsecentry{Command Substitution}{3.5.4}{Command Substitution}{31}
|
||||
@numsubsecentry{Arithmetic Expansion}{3.5.5}{Arithmetic Expansion}{31}
|
||||
@numsubsecentry{Process Substitution}{3.5.6}{Process Substitution}{31}
|
||||
@numsubsecentry{Word Splitting}{3.5.7}{Word Splitting}{31}
|
||||
@numsubsecentry{Word Splitting}{3.5.7}{Word Splitting}{32}
|
||||
@numsubsecentry{Filename Expansion}{3.5.8}{Filename Expansion}{32}
|
||||
@numsubsubsecentry{Pattern Matching}{3.5.8.1}{Pattern Matching}{33}
|
||||
@numsubsecentry{Quote Removal}{3.5.9}{Quote Removal}{34}
|
||||
@numsecentry{Redirections}{3.6}{Redirections}{34}
|
||||
@numsubsecentry{Redirecting Input}{3.6.1}{}{35}
|
||||
@numsubsecentry{Redirecting Output}{3.6.2}{}{35}
|
||||
@numsubsecentry{Redirecting Output}{3.6.2}{}{36}
|
||||
@numsubsecentry{Appending Redirected Output}{3.6.3}{}{36}
|
||||
@numsubsecentry{Redirecting Standard Output and Standard Error}{3.6.4}{}{36}
|
||||
@numsubsecentry{Appending Standard Output and Standard Error}{3.6.5}{}{36}
|
||||
@numsubsecentry{Here Documents}{3.6.6}{}{36}
|
||||
@numsubsecentry{Here Documents}{3.6.6}{}{37}
|
||||
@numsubsecentry{Here Strings}{3.6.7}{}{37}
|
||||
@numsubsecentry{Duplicating File Descriptors}{3.6.8}{}{37}
|
||||
@numsubsecentry{Moving File Descriptors}{3.6.9}{}{37}
|
||||
@numsubsecentry{Opening File Descriptors for Reading and Writing}{3.6.10}{}{37}
|
||||
@numsubsecentry{Moving File Descriptors}{3.6.9}{}{38}
|
||||
@numsubsecentry{Opening File Descriptors for Reading and Writing}{3.6.10}{}{38}
|
||||
@numsecentry{Executing Commands}{3.7}{Executing Commands}{38}
|
||||
@numsubsecentry{Simple Command Expansion}{3.7.1}{Simple Command Expansion}{38}
|
||||
@numsubsecentry{Command Search and Execution}{3.7.2}{Command Search and Execution}{38}
|
||||
@numsubsecentry{Command Search and Execution}{3.7.2}{Command Search and Execution}{39}
|
||||
@numsubsecentry{Command Execution Environment}{3.7.3}{Command Execution Environment}{39}
|
||||
@numsubsecentry{Environment}{3.7.4}{Environment}{40}
|
||||
@numsubsecentry{Exit Status}{3.7.5}{Exit Status}{40}
|
||||
@numsubsecentry{Exit Status}{3.7.5}{Exit Status}{41}
|
||||
@numsubsecentry{Signals}{3.7.6}{Signals}{41}
|
||||
@numsecentry{Shell Scripts}{3.8}{Shell Scripts}{41}
|
||||
@numsecentry{Shell Scripts}{3.8}{Shell Scripts}{42}
|
||||
@numchapentry{Shell Builtin Commands}{4}{Shell Builtin Commands}{43}
|
||||
@numsecentry{Bourne Shell Builtins}{4.1}{Bourne Shell Builtins}{43}
|
||||
@numsecentry{Bash Builtin Commands}{4.2}{Bash Builtins}{50}
|
||||
|
||||
+2
-2
@@ -7,8 +7,8 @@
|
||||
\entry{$@}{21}{\code {$@}}
|
||||
\entry{#}{21}{\code {#}}
|
||||
\entry{$#}{21}{\code {$#}}
|
||||
\entry{?}{21}{\code {?}}
|
||||
\entry{$?}{21}{\code {$?}}
|
||||
\entry{?}{22}{\code {?}}
|
||||
\entry{$?}{22}{\code {$?}}
|
||||
\entry{-}{22}{\code {-}}
|
||||
\entry{$-}{22}{\code {$-}}
|
||||
\entry{$}{22}{\code {$}}
|
||||
|
||||
+2
-2
@@ -9,7 +9,7 @@
|
||||
\entry {\code {$$}}{22}
|
||||
\entry {\code {$*}}{21}
|
||||
\entry {\code {$-}}{22}
|
||||
\entry {\code {$?}}{21}
|
||||
\entry {\code {$?}}{22}
|
||||
\entry {\code {$@}}{21}
|
||||
\entry {\code {$_}}{22}
|
||||
\entry {\code {$0}}{22}
|
||||
@@ -18,7 +18,7 @@
|
||||
\initial {-}
|
||||
\entry {\code {-}}{22}
|
||||
\initial {?}
|
||||
\entry {\code {?}}{21}
|
||||
\entry {\code {?}}{22}
|
||||
\initial {@}
|
||||
\entry {\code {@}}{21}
|
||||
\initial {_}
|
||||
|
||||
+177
-176
@@ -226,7 +226,7 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
indicates that other supplied options and actions should apply
|
||||
to ``empty'' command completion; that is, completion attempted
|
||||
on a blank line. The --II option indicates that other supplied
|
||||
options and actions should apply to completion on the inital
|
||||
options and actions should apply to completion on the initial
|
||||
non-assignment word on the line, or after a command delimiter
|
||||
such as ;; or ||, which is usually command name completion. If
|
||||
multiple options are supplied, the --DD option takes precedence
|
||||
@@ -373,7 +373,7 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
supplied options should apply to ``empty'' command completion;
|
||||
that is, completion attempted on a blank line. The --II option
|
||||
indicates that other supplied options should apply to completion
|
||||
on the inital non-assignment word on the line, or after a com-
|
||||
on the initial non-assignment word on the line, or after a com-
|
||||
mand delimiter such as ;; or ||, which is usually command name
|
||||
completion.
|
||||
|
||||
@@ -1437,194 +1437,195 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
AALLIIAASSEESS. This option is enabled by default for interac-
|
||||
tive shells.
|
||||
eexxttddeebbuugg
|
||||
If set at shell invocation, arrange to execute the
|
||||
debugger profile before the shell starts, identical to
|
||||
the ----ddeebbuuggggeerr option. If set after invocation, behav-
|
||||
ior intended for use by debuggers is enabled:
|
||||
If set at shell invocation, or in a shell startup file,
|
||||
arrange to execute the debugger profile before the shell
|
||||
starts, identical to the ----ddeebbuuggggeerr option. If set
|
||||
after invocation, behavior intended for use by debuggers
|
||||
is enabled:
|
||||
11.. The --FF option to the ddeeccllaarree builtin displays the
|
||||
source file name and line number corresponding to
|
||||
each function name supplied as an argument.
|
||||
22.. If the command run by the DDEEBBUUGG trap returns a
|
||||
non-zero value, the next command is skipped and
|
||||
22.. If the command run by the DDEEBBUUGG trap returns a
|
||||
non-zero value, the next command is skipped and
|
||||
not executed.
|
||||
33.. If the command run by the DDEEBBUUGG trap returns a
|
||||
value of 2, and the shell is executing in a sub-
|
||||
routine (a shell function or a shell script exe-
|
||||
cuted by the .. or ssoouurrccee builtins), the shell
|
||||
33.. If the command run by the DDEEBBUUGG trap returns a
|
||||
value of 2, and the shell is executing in a sub-
|
||||
routine (a shell function or a shell script exe-
|
||||
cuted by the .. or ssoouurrccee builtins), the shell
|
||||
simulates a call to rreettuurrnn.
|
||||
44.. BBAASSHH__AARRGGCC and BBAASSHH__AARRGGVV are updated as described
|
||||
44.. BBAASSHH__AARRGGCC and BBAASSHH__AARRGGVV are updated as described
|
||||
in their descriptions above.
|
||||
55.. Function tracing is enabled: command substitu-
|
||||
55.. Function tracing is enabled: command substitu-
|
||||
tion, shell functions, and subshells invoked with
|
||||
(( _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 ((
|
||||
66.. Error tracing is enabled: command substitution,
|
||||
shell functions, and subshells invoked with ((
|
||||
_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
|
||||
If set, $$'_s_t_r_i_n_g' and $$"_s_t_r_i_n_g" quoting is performed
|
||||
within $${{_p_a_r_a_m_e_t_e_r}} expansions enclosed in double
|
||||
If set, $$'_s_t_r_i_n_g' and $$"_s_t_r_i_n_g" quoting is performed
|
||||
within $${{_p_a_r_a_m_e_t_e_r}} expansions enclosed in double
|
||||
quotes. This option is enabled by default.
|
||||
ffaaiillgglloobb
|
||||
If set, patterns which fail to match filenames during
|
||||
If set, patterns which fail to match filenames during
|
||||
pathname expansion result in an expansion error.
|
||||
ffoorrccee__ffiiggnnoorree
|
||||
If set, the suffixes specified by the FFIIGGNNOORREE shell
|
||||
variable cause words to be ignored when performing word
|
||||
If set, the suffixes specified by the FFIIGGNNOORREE shell
|
||||
variable cause words to be ignored when performing word
|
||||
completion even if the ignored words are the only possi-
|
||||
ble completions. See SSHHEELLLL VVAARRIIAABBLLEESS above for a
|
||||
description of FFIIGGNNOORREE. This option is enabled by
|
||||
description of FFIIGGNNOORREE. This option is enabled by
|
||||
default.
|
||||
gglloobbaasscciiiirraannggeess
|
||||
If set, range expressions used in pattern matching
|
||||
bracket expressions (see PPaatttteerrnn MMaattcchhiinngg above) behave
|
||||
as if in the traditional C locale when performing com-
|
||||
If set, range expressions used in pattern matching
|
||||
bracket expressions (see PPaatttteerrnn MMaattcchhiinngg above) behave
|
||||
as if in the traditional C locale when performing com-
|
||||
parisons. That is, the current locale's collating
|
||||
sequence is not taken into account, so bb will not col-
|
||||
late between AA and BB, and upper-case and lower-case
|
||||
sequence is not taken into account, so bb will not col-
|
||||
late between AA and BB, and upper-case and lower-case
|
||||
ASCII characters will collate together.
|
||||
gglloobbssttaarr
|
||||
If set, the pattern **** used in a pathname expansion con-
|
||||
text will match all files and zero or more directories
|
||||
and subdirectories. If the pattern is followed by a //,
|
||||
text will match all files and zero or more directories
|
||||
and subdirectories. If the pattern is followed by a //,
|
||||
only directories and subdirectories match.
|
||||
ggnnuu__eerrrrffmmtt
|
||||
If set, shell error messages are written in the standard
|
||||
GNU error message format.
|
||||
hhiissttaappppeenndd
|
||||
If set, the history list is appended to the file named
|
||||
by the value of the HHIISSTTFFIILLEE variable when the shell
|
||||
If set, the history list is appended to the file named
|
||||
by the value of the HHIISSTTFFIILLEE variable when the shell
|
||||
exits, rather than overwriting the file.
|
||||
hhiissttrreeeeddiitt
|
||||
If set, and rreeaaddlliinnee is being used, a user is given the
|
||||
If set, and rreeaaddlliinnee is being used, a user is given the
|
||||
opportunity to re-edit a failed history substitution.
|
||||
hhiissttvveerriiffyy
|
||||
If set, and rreeaaddlliinnee is being used, the results of his-
|
||||
tory substitution are not immediately passed to the
|
||||
shell parser. Instead, the resulting line is loaded
|
||||
If set, and rreeaaddlliinnee is being used, the results of his-
|
||||
tory substitution are not immediately passed to the
|
||||
shell parser. Instead, the resulting line is loaded
|
||||
into the rreeaaddlliinnee editing buffer, allowing further modi-
|
||||
fication.
|
||||
hhoossttccoommpplleettee
|
||||
If set, and rreeaaddlliinnee is being used, bbaasshh will attempt to
|
||||
perform hostname completion when a word containing a @@
|
||||
is being completed (see CCoommpplleettiinngg under RREEAADDLLIINNEE
|
||||
perform hostname completion when a word containing a @@
|
||||
is being completed (see CCoommpplleettiinngg under RREEAADDLLIINNEE
|
||||
above). This is enabled by default.
|
||||
hhuuppoonneexxiitt
|
||||
If set, bbaasshh will send SSIIGGHHUUPP to all jobs when an inter-
|
||||
active login shell exits.
|
||||
iinnhheerriitt__eerrrreexxiitt
|
||||
If set, command substitution inherits the value of the
|
||||
eerrrreexxiitt option, instead of unsetting it in the subshell
|
||||
environment. This option is enabled when _p_o_s_i_x _m_o_d_e is
|
||||
If set, command substitution inherits the value of the
|
||||
eerrrreexxiitt option, instead of unsetting it in the subshell
|
||||
environment. This option is enabled when _p_o_s_i_x _m_o_d_e is
|
||||
enabled.
|
||||
iinntteerraaccttiivvee__ccoommmmeennttss
|
||||
If set, allow a word beginning with ## to cause that word
|
||||
and all remaining characters on that line to be ignored
|
||||
in an interactive shell (see CCOOMMMMEENNTTSS above). This
|
||||
and all remaining characters on that line to be ignored
|
||||
in an interactive shell (see CCOOMMMMEENNTTSS above). This
|
||||
option is enabled by default.
|
||||
llaassttppiippee
|
||||
If set, and job control is not active, the shell runs
|
||||
If set, and job control is not active, the shell runs
|
||||
the last command of a pipeline not executed in the back-
|
||||
ground in the current shell environment.
|
||||
lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line
|
||||
lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line
|
||||
commands are saved to the history with embedded newlines
|
||||
rather than using semicolon separators where possible.
|
||||
llooccaallvvaarr__iinnhheerriitt
|
||||
If set, local variables inherit the value and attributes
|
||||
of a variable of the same name that exists at a previous
|
||||
scope before any new value is assigned. The nameref
|
||||
scope before any new value is assigned. The nameref
|
||||
attribute is not inherited.
|
||||
llooccaallvvaarr__uunnsseett
|
||||
If set, calling uunnsseett on local variables in previous
|
||||
function scopes marks them so subsequent lookups find
|
||||
them unset until that function returns. This is identi-
|
||||
cal to the behavior of unsetting local variables at the
|
||||
If set, calling uunnsseett on local variables in previous
|
||||
function scopes marks them so subsequent lookups find
|
||||
them unset until that function returns. This is identi-
|
||||
cal to the behavior of unsetting local variables at the
|
||||
current function scope.
|
||||
llooggiinn__sshheellll
|
||||
The shell sets this option if it is started as a login
|
||||
shell (see IINNVVOOCCAATTIIOONN above). The value may not be
|
||||
The shell sets this option if it is started as a login
|
||||
shell (see IINNVVOOCCAATTIIOONN above). The value may not be
|
||||
changed.
|
||||
mmaaiillwwaarrnn
|
||||
If set, and a file that bbaasshh is checking for mail has
|
||||
been accessed since the last time it was checked, the
|
||||
message ``The mail in _m_a_i_l_f_i_l_e has been read'' is dis-
|
||||
If set, and a file that bbaasshh is checking for mail has
|
||||
been accessed since the last time it was checked, the
|
||||
message ``The mail in _m_a_i_l_f_i_l_e has been read'' is dis-
|
||||
played.
|
||||
nnoo__eemmppttyy__ccmmdd__ccoommpplleettiioonn
|
||||
If set, and rreeaaddlliinnee is being used, bbaasshh will not
|
||||
If set, and rreeaaddlliinnee is being used, bbaasshh will not
|
||||
attempt to search the PPAATTHH for possible completions when
|
||||
completion is attempted on an empty line.
|
||||
nnooccaasseegglloobb
|
||||
If set, bbaasshh matches filenames in a case-insensitive
|
||||
If set, bbaasshh matches filenames in a case-insensitive
|
||||
fashion when performing pathname expansion (see PPaatthhnnaammee
|
||||
EExxppaannssiioonn above).
|
||||
nnooccaasseemmaattcchh
|
||||
If set, bbaasshh matches patterns in a case-insensitive
|
||||
If set, bbaasshh matches patterns in a case-insensitive
|
||||
fashion when performing matching while executing ccaassee or
|
||||
[[[[ conditional commands, when performing pattern substi-
|
||||
tution word expansions, or when filtering possible com-
|
||||
tution word expansions, or when filtering possible com-
|
||||
pletions as part of programmable completion.
|
||||
nnuullllgglloobb
|
||||
If set, bbaasshh allows patterns which match no files (see
|
||||
PPaatthhnnaammee EExxppaannssiioonn above) to expand to a null string,
|
||||
If set, bbaasshh allows patterns which match no files (see
|
||||
PPaatthhnnaammee EExxppaannssiioonn above) to expand to a null string,
|
||||
rather than themselves.
|
||||
pprrooggccoommpp
|
||||
If set, the programmable completion facilities (see PPrroo--
|
||||
ggrraammmmaabbllee CCoommpplleettiioonn above) are enabled. This option is
|
||||
enabled by default.
|
||||
pprrooggccoommpp__aalliiaass
|
||||
If set, and programmable completion is enabled, bbaasshh
|
||||
treats a command name that doesn't have any completions
|
||||
as a possible alias and attempts alias expansion. If it
|
||||
has an alias, bbaasshh attempts programmable completion
|
||||
using the command word resulting from the expanded
|
||||
If set, and programmable completion is enabled, bbaasshh
|
||||
treats a command name that doesn't have any completions
|
||||
as a possible alias and attempts alias expansion. If it
|
||||
has an alias, bbaasshh attempts programmable completion
|
||||
using the command word resulting from the expanded
|
||||
alias.
|
||||
pprroommppttvvaarrss
|
||||
If set, prompt strings undergo parameter expansion, com-
|
||||
mand substitution, arithmetic expansion, and quote
|
||||
removal after being expanded as described in PPRROOMMPPTTIINNGG
|
||||
mand substitution, arithmetic expansion, and quote
|
||||
removal after being expanded as described in PPRROOMMPPTTIINNGG
|
||||
above. This option is enabled by default.
|
||||
rreessttrriicctteedd__sshheellll
|
||||
The shell sets this option if it is started in
|
||||
The shell sets this option if it is started in
|
||||
restricted mode (see RREESSTTRRIICCTTEEDD SSHHEELLLL below). The value
|
||||
may not be changed. This is not reset when the startup
|
||||
files are executed, allowing the startup files to dis-
|
||||
may not be changed. This is not reset when the startup
|
||||
files are executed, allowing the startup files to dis-
|
||||
cover whether or not a shell is restricted.
|
||||
sshhiifftt__vveerrbboossee
|
||||
If set, the sshhiifftt builtin prints an error message when
|
||||
If set, the sshhiifftt builtin prints an error message when
|
||||
the shift count exceeds the number of positional parame-
|
||||
ters.
|
||||
ssoouurrcceeppaatthh
|
||||
If set, the ssoouurrccee (..) builtin uses the value of PPAATTHH to
|
||||
find the directory containing the file supplied as an
|
||||
find the directory containing the file supplied as an
|
||||
argument. This option is enabled by default.
|
||||
xxppgg__eecchhoo
|
||||
If set, the eecchhoo builtin expands backslash-escape
|
||||
If set, the eecchhoo builtin expands backslash-escape
|
||||
sequences by default.
|
||||
|
||||
ssuussppeenndd [--ff]
|
||||
Suspend the execution of this shell until it receives a SSIIGGCCOONNTT
|
||||
Suspend the execution of this shell until it receives a SSIIGGCCOONNTT
|
||||
signal. A login shell cannot be suspended; the --ff option can be
|
||||
used to override this and force the suspension. The return sta-
|
||||
tus is 0 unless the shell is a login shell and --ff is not sup-
|
||||
tus is 0 unless the shell is a login shell and --ff is not sup-
|
||||
plied, or if job control is not enabled.
|
||||
|
||||
tteesstt _e_x_p_r
|
||||
[[ _e_x_p_r ]]
|
||||
Return a status of 0 (true) or 1 (false) depending on the evalu-
|
||||
ation of the conditional expression _e_x_p_r. Each operator and op-
|
||||
erand must be a separate argument. Expressions are composed of
|
||||
the primaries described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS.
|
||||
tteesstt does not accept any options, nor does it accept and ignore
|
||||
erand must be a separate argument. Expressions are composed of
|
||||
the primaries described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS.
|
||||
tteesstt does not accept any options, nor does it accept and ignore
|
||||
an argument of ---- as signifying the end of options.
|
||||
|
||||
Expressions may be combined using the following operators,
|
||||
Expressions may be combined using the following operators,
|
||||
listed in decreasing order of precedence. The evaluation
|
||||
depends on the number of arguments; see below. Operator prece-
|
||||
depends on the number of arguments; see below. Operator prece-
|
||||
dence is used when there are five or more arguments.
|
||||
!! _e_x_p_r True if _e_x_p_r is false.
|
||||
(( _e_x_p_r ))
|
||||
Returns the value of _e_x_p_r. This may be used to override
|
||||
Returns the value of _e_x_p_r. This may be used to override
|
||||
the normal precedence of operators.
|
||||
_e_x_p_r_1 -aa _e_x_p_r_2
|
||||
True if both _e_x_p_r_1 and _e_x_p_r_2 are true.
|
||||
@@ -1641,120 +1642,120 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
null.
|
||||
2 arguments
|
||||
If the first argument is !!, the expression is true if and
|
||||
only if the second argument is null. If the first argu-
|
||||
ment is one of the unary conditional operators listed
|
||||
above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is
|
||||
only if the second argument is null. If the first argu-
|
||||
ment is one of the unary conditional operators listed
|
||||
above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is
|
||||
true if the unary test is true. If the first argument is
|
||||
not a valid unary conditional operator, the expression is
|
||||
false.
|
||||
3 arguments
|
||||
The following conditions are applied in the order listed.
|
||||
If the second argument is one of the binary conditional
|
||||
If the second argument is one of the binary conditional
|
||||
operators listed above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the
|
||||
result of the expression is the result of the binary test
|
||||
using the first and third arguments as operands. The --aa
|
||||
and --oo operators are considered binary operators when
|
||||
there are three arguments. If the first argument is !!,
|
||||
the value is the negation of the two-argument test using
|
||||
using the first and third arguments as operands. The --aa
|
||||
and --oo operators are considered binary operators when
|
||||
there are three arguments. If the first argument is !!,
|
||||
the value is the negation of the two-argument test using
|
||||
the second and third arguments. If the first argument is
|
||||
exactly (( and the third argument is exactly )), the result
|
||||
is the one-argument test of the second argument. Other-
|
||||
is the one-argument test of the second argument. Other-
|
||||
wise, the expression is false.
|
||||
4 arguments
|
||||
If the first argument is !!, the result is the negation of
|
||||
the three-argument expression composed of the remaining
|
||||
the three-argument expression composed of the remaining
|
||||
arguments. Otherwise, the expression is parsed and eval-
|
||||
uated according to precedence using the rules listed
|
||||
uated according to precedence using the rules listed
|
||||
above.
|
||||
5 or more arguments
|
||||
The expression is parsed and evaluated according to
|
||||
The expression is parsed and evaluated according to
|
||||
precedence using the rules listed above.
|
||||
|
||||
When used with tteesstt or [[, the << and >> operators sort lexico-
|
||||
When used with tteesstt or [[, the << and >> operators sort lexico-
|
||||
graphically using ASCII ordering.
|
||||
|
||||
ttiimmeess Print the accumulated user and system times for the shell and
|
||||
ttiimmeess Print the accumulated user and system times for the shell and
|
||||
for processes run from the shell. The return status is 0.
|
||||
|
||||
ttrraapp [--llpp] [[_a_r_g] _s_i_g_s_p_e_c ...]
|
||||
The command _a_r_g is to be read and executed when the shell
|
||||
receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a
|
||||
single _s_i_g_s_p_e_c) or --, each specified signal is reset to its
|
||||
original disposition (the value it had upon entrance to the
|
||||
shell). If _a_r_g is the null string the signal specified by each
|
||||
_s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes.
|
||||
If _a_r_g is not present and --pp has been supplied, then the trap
|
||||
commands associated with each _s_i_g_s_p_e_c are displayed. If no
|
||||
arguments are supplied or if only --pp is given, ttrraapp prints the
|
||||
list of commands associated with each signal. The --ll option
|
||||
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
|
||||
The command _a_r_g is to be read and executed when the shell
|
||||
receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a
|
||||
single _s_i_g_s_p_e_c) or --, each specified signal is reset to its
|
||||
original disposition (the value it had upon entrance to the
|
||||
shell). If _a_r_g is the null string the signal specified by each
|
||||
_s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes.
|
||||
If _a_r_g is not present and --pp has been supplied, then the trap
|
||||
commands associated with each _s_i_g_s_p_e_c are displayed. If no
|
||||
arguments are supplied or if only --pp is given, ttrraapp prints the
|
||||
list of commands associated with each signal. The --ll option
|
||||
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 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-
|
||||
cuted before every _s_i_m_p_l_e _c_o_m_m_a_n_d, _f_o_r command, _c_a_s_e command,
|
||||
_s_e_l_e_c_t command, every arithmetic _f_o_r command, and before the
|
||||
first command executes in a shell function (see SSHHEELLLL GGRRAAMMMMAARR
|
||||
above). Refer to the description of the eexxttddeebbuugg option to the
|
||||
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-
|
||||
cuted before every _s_i_m_p_l_e _c_o_m_m_a_n_d, _f_o_r command, _c_a_s_e command,
|
||||
_s_e_l_e_c_t command, every arithmetic _f_o_r command, and before the
|
||||
first command executes in a shell function (see SSHHEELLLL GGRRAAMMMMAARR
|
||||
above). Refer to the description of the eexxttddeebbuugg option to the
|
||||
sshhoopptt builtin for details of its effect on the DDEEBBUUGG trap. If a
|
||||
_s_i_g_s_p_e_c is RREETTUURRNN, the command _a_r_g is executed each time a shell
|
||||
function or a script executed with the .. or ssoouurrccee builtins fin-
|
||||
ishes executing.
|
||||
|
||||
If a _s_i_g_s_p_e_c is EERRRR, the command _a_r_g is executed whenever a
|
||||
If a _s_i_g_s_p_e_c is EERRRR, the command _a_r_g is executed whenever a
|
||||
pipeline (which may consist of a single simple command), a list,
|
||||
or a compound command returns a non-zero exit status, subject to
|
||||
the following conditions. The EERRRR trap is not executed if the
|
||||
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,
|
||||
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, or if the command's return value is being inverted using
|
||||
!!. These are the same conditions obeyed by the eerrrreexxiitt (--ee)
|
||||
following the final &&&& or ||||, any command in a pipeline but the
|
||||
last, or if the command's return value is being inverted using
|
||||
!!. These are the same conditions obeyed by the eerrrreexxiitt (--ee)
|
||||
option.
|
||||
|
||||
Signals ignored upon entry to the shell cannot be trapped or
|
||||
reset. Trapped signals that are not being ignored are reset to
|
||||
Signals ignored upon entry to the shell cannot be trapped or
|
||||
reset. 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 is false if any _s_i_g_s_p_e_c is
|
||||
one is created. The return status is false if any _s_i_g_s_p_e_c is
|
||||
invalid; otherwise ttrraapp returns true.
|
||||
|
||||
ttyyppee [--aaffttppPP] _n_a_m_e [_n_a_m_e ...]
|
||||
With no options, indicate how each _n_a_m_e would be interpreted if
|
||||
With no options, 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 disk file, respectively. If the _n_a_m_e is not found,
|
||||
then nothing is printed, and an exit status of false is
|
||||
returned. If the --pp option is used, ttyyppee either returns the
|
||||
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 disk file, respectively. If the _n_a_m_e is not found,
|
||||
then nothing is printed, and an exit status of false is
|
||||
returned. If the --pp option is used, ttyyppee either returns the
|
||||
name of the disk file that would be executed if _n_a_m_e were speci-
|
||||
fied as a command name, or nothing if ``type -t name'' would not
|
||||
return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e,
|
||||
return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e,
|
||||
even if ``type -t name'' would not return _f_i_l_e. If a command is
|
||||
hashed, --pp and --PP print the hashed value, which is not necessar-
|
||||
ily the file that appears first in PPAATTHH. If the --aa option is
|
||||
used, ttyyppee prints all of the places that contain an executable
|
||||
ily the file that appears first in PPAATTHH. If the --aa option is
|
||||
used, ttyyppee prints all of the places that contain an executable
|
||||
named _n_a_m_e. This includes aliases and functions, if and only if
|
||||
the --pp option is not also used. The table of hashed commands is
|
||||
not consulted when using --aa. The --ff option suppresses shell
|
||||
not consulted when using --aa. The --ff option suppresses shell
|
||||
function lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true
|
||||
if all of the arguments are found, false if any are not found.
|
||||
|
||||
uulliimmiitt [--HHSSaabbccddeeffiikkllmmnnppqqrrssttuuvvxxPPTT [_l_i_m_i_t]]
|
||||
Provides control over the resources available to the shell and
|
||||
to processes started by it, on systems that allow such control.
|
||||
Provides control over the resources available to the shell and
|
||||
to processes started by it, on systems that allow such control.
|
||||
The --HH and --SS options specify that 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-
|
||||
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-
|
||||
fied, both the soft and hard limits are set. 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, the current value of the
|
||||
soft limit of the resource is printed, unless the --HH option is
|
||||
current hard limit, the current soft limit, and no limit,
|
||||
respectively. If _l_i_m_i_t is omitted, the current value of the
|
||||
soft limit of the resource is printed, unless the --HH option is
|
||||
given. When more than one resource is specified, the limit name
|
||||
and unit are printed before the value. Other options are inter-
|
||||
preted as follows:
|
||||
@@ -1763,12 +1764,12 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
--cc The maximum size of core files created
|
||||
--dd The maximum size of a process's data segment
|
||||
--ee The maximum scheduling priority ("nice")
|
||||
--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)
|
||||
@@ -1777,53 +1778,53 @@ 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
|
||||
--TT The maximum number of threads
|
||||
|
||||
If _l_i_m_i_t is given, and the --aa option is not used, _l_i_m_i_t is the
|
||||
new value of the specified resource. If no option is given,
|
||||
then --ff is assumed. Values are in 1024-byte increments, except
|
||||
for --tt, which is in seconds; --pp, which is in units of 512-byte
|
||||
blocks; --PP, --TT, --bb, --kk, --nn, and --uu, which are unscaled values;
|
||||
If _l_i_m_i_t is given, and the --aa option is not used, _l_i_m_i_t is the
|
||||
new value of the specified resource. If no option is given,
|
||||
then --ff is assumed. Values are in 1024-byte increments, except
|
||||
for --tt, which is in seconds; --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 incre-
|
||||
ments. The return status is 0 unless an invalid option or argu-
|
||||
ment is supplied, or an error occurs while setting a new limit.
|
||||
|
||||
uummaasskk [--pp] [--SS] [_m_o_d_e]
|
||||
The user file-creation mask is set to _m_o_d_e. If _m_o_d_e begins with
|
||||
a digit, it is interpreted as an octal number; otherwise it is
|
||||
interpreted as a symbolic mode mask similar to that accepted by
|
||||
_c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is
|
||||
printed. The --SS option causes the mask to be printed in sym-
|
||||
bolic form; the default output is an octal number. If the --pp
|
||||
a digit, it is interpreted as an octal number; otherwise it is
|
||||
interpreted as a symbolic mode mask similar to that accepted by
|
||||
_c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is
|
||||
printed. The --SS option causes the mask to be printed in sym-
|
||||
bolic form; 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 0 if the mode
|
||||
was successfully changed or if no _m_o_d_e argument was supplied,
|
||||
was successfully changed or if no _m_o_d_e argument was supplied,
|
||||
and false otherwise.
|
||||
|
||||
uunnaalliiaass [-aa] [_n_a_m_e ...]
|
||||
Remove each _n_a_m_e from the list of defined aliases. If --aa is
|
||||
supplied, all alias definitions are removed. The return value
|
||||
Remove each _n_a_m_e from the list of defined aliases. If --aa is
|
||||
supplied, all alias definitions are removed. 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. Read-only variables may not be
|
||||
unset. If --ff is specified, each _n_a_m_e refers to a shell func-
|
||||
tion, and the function definition is removed. 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. If no options are
|
||||
supplied, each _n_a_m_e refers to a variable; if there is no vari-
|
||||
able by that name, any function with that name is unset. Each
|
||||
unset variable or function is removed from the environment
|
||||
passed to subsequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANN--
|
||||
and that variable is removed. Read-only variables may not be
|
||||
unset. If --ff is specified, each _n_a_m_e refers to a shell func-
|
||||
tion, and the function definition is removed. 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. If no options are
|
||||
supplied, each _n_a_m_e refers to a variable; if there is no vari-
|
||||
able by that name, any function with that name is unset. Each
|
||||
unset variable or function is removed from the environment
|
||||
passed to subsequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANN--
|
||||
DDOOMM, SSEECCOONNDDSS, LLIINNEENNOO, HHIISSTTCCMMDD, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, or DDIIRRSSTTAACCKK are
|
||||
unset, they lose their special properties, even if they are sub-
|
||||
sequently reset. The exit status is true unless a _n_a_m_e is read-
|
||||
@@ -1831,16 +1832,16 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
|
||||
|
||||
wwaaiitt [--ffnn] [_i_d _._._.]
|
||||
Wait for each specified child process and return its termination
|
||||
status. Each _i_d may be a process ID or a job specification; if
|
||||
a job spec is given, all processes in that job's pipeline are
|
||||
status. Each _i_d may be a process ID or a job specification; if
|
||||
a job spec is given, all processes in that job's pipeline are
|
||||
waited for. If _i_d is not given, all currently active child pro-
|
||||
cesses are waited for, and the return status is zero. If the --nn
|
||||
option is supplied, wwaaiitt waits for any job to terminate and
|
||||
returns its exit status. If the --ff option is supplied, and job
|
||||
option is supplied, wwaaiitt waits for any job to terminate and
|
||||
returns its exit status. If the --ff option is supplied, and job
|
||||
control is enabled, wwaaiitt forces _i_d to terminate before returning
|
||||
its status, instead of returning when it changes status. If _i_d
|
||||
specifies a non-existent process or job, the return status is
|
||||
127. Otherwise, the return status is the exit status of the
|
||||
its status, instead of returning when it changes status. If _i_d
|
||||
specifies a non-existent process or job, the return status is
|
||||
127. Otherwise, the return status is the exit status of the
|
||||
last process or job waited for.
|
||||
|
||||
SSEEEE AALLSSOO
|
||||
|
||||
+13
-13
@@ -1,6 +1,6 @@
|
||||
%!PS-Adobe-3.0
|
||||
%%Creator: groff version 1.22.3
|
||||
%%CreationDate: Wed Jan 2 09:14:38 2019
|
||||
%%CreationDate: Tue Feb 26 09:57:04 2019
|
||||
%%DocumentNeededResources: font Times-Roman
|
||||
%%+ font Times-Bold
|
||||
%%+ font Times-Italic
|
||||
@@ -627,9 +627,9 @@ F2<ad44>3.707 E F0 1.208(option indicates that other supplied options)
|
||||
(`empty')-.74 E 3.376('c)-.74 G .876(ommand completion; that is, com-)
|
||||
-3.376 F .447(pletion attempted on a blank line.)144 638.4 R(The)5.447 E
|
||||
F2<ad49>2.947 E F0 .448
|
||||
(option indicates that other supplied options and actions)2.947 F 1.335
|
||||
(should apply to completion on the inital non-assignment w)144 650.4 R
|
||||
1.334(ord on the line, or after a command)-.1 F .43(delimiter such as)
|
||||
(option indicates that other supplied options and actions)2.947 F 1.15
|
||||
(should apply to completion on the initial non-assignment w)144 650.4 R
|
||||
1.149(ord on the line, or after a command)-.1 F .43(delimiter such as)
|
||||
144 662.4 R F2(;)2.93 E F0(or)2.93 E F2(|)2.93 E F0 2.93(,w)C .431
|
||||
(hich is usually command name completion.)-2.93 F .431
|
||||
(If multiple options are sup-)5.431 F .708(plied, the)144 674.4 R F2
|
||||
@@ -823,9 +823,9 @@ no)-3.728 F 2.038(completion has pre)144 657.6 R 2.038
|
||||
(option indicates that other supplied options)4.538 F 1.539
|
||||
(should apply to `)144 669.6 R(`empty')-.74 E 4.039('c)-.74 G 1.538
|
||||
(ommand completion; that is, completion attempted on a blank line.)
|
||||
-4.039 F(The)144 681.6 Q F1<ad49>3.205 E F0 .705(option indicates that \
|
||||
other supplied options should apply to completion on the inital non-)
|
||||
3.205 F .868(assignment w)144 693.6 R .868
|
||||
-4.039 F(The)144 681.6 Q F1<ad49>3.02 E F0 .52(option indicates that ot\
|
||||
her supplied options should apply to completion on the initial non-)3.02
|
||||
F .868(assignment w)144 693.6 R .868
|
||||
(ord on the line, or after a command delimiter such as)-.1 F F1(;)3.368
|
||||
E F0(or)3.368 E F1(|)3.368 E F0 3.367(,w)C .867(hich is usually com-)
|
||||
-3.367 F(mand name completion.)144 705.6 Q 1.387(The return v)144 729.6
|
||||
@@ -2507,12 +2507,12 @@ E F1(exec)2.5 E F0 -.2(bu)2.5 G(iltin command.).2 E(An interacti)5 E .3
|
||||
1.017 -.15(ve u)-.15 H(nder).15 E/F2 9/Times-Bold@0 SF(ALIASES)3.217 E
|
||||
/F3 9/Times-Roman@0 SF(.)A F0 .716(This option is enabled)5.217 F
|
||||
(by def)184 492 Q(ault for interacti)-.1 E .3 -.15(ve s)-.25 H(hells.)
|
||||
.15 E F1(extdeb)144 504 Q(ug)-.2 E F0 .671(If set at shell in)184 516 R
|
||||
-.2(vo)-.4 G .671(cation, arrange to e).2 F -.15(xe)-.15 G .671
|
||||
(cute the deb).15 F .672(ugger pro\214le before the shell starts,)-.2 F
|
||||
.221(identical to the)184 528 R F1<adad646562>2.721 E(ugger)-.2 E F0
|
||||
2.721(option. If)2.721 F .221(set after in)2.721 F -.2(vo)-.4 G .221
|
||||
(cation, beha).2 F .22(vior intended for use by)-.2 F(deb)184 540 Q
|
||||
.15 E F1(extdeb)144 504 Q(ug)-.2 E F0 .17(If set at shell in)184 516 R
|
||||
-.2(vo)-.4 G .17(cation, or in a shell startup \214le, arrange to e).2 F
|
||||
-.15(xe)-.15 G .17(cute the deb).15 F .17(ugger pro\214le)-.2 F 2.444
|
||||
(before the shell starts, identical to the)184 528 R F1<adad646562>4.944
|
||||
E(ugger)-.2 E F0 4.944(option. If)4.944 F 2.444(set after in)4.944 F -.2
|
||||
(vo)-.4 G(cation,).2 E(beha)184 540 Q(vior intended for use by deb)-.2 E
|
||||
(uggers is enabled:)-.2 E F1(1.)184 552 Q F0(The)220 552 Q F1<ad46>4.25
|
||||
E F0 1.75(option to the)4.25 F F1(declar)4.251 E(e)-.18 E F0 -.2(bu)
|
||||
4.251 G 1.751(iltin displays the source \214le name and line).2 F
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
%!PS-Adobe-3.0
|
||||
%%Creator: groff version 1.22.3
|
||||
%%CreationDate: Wed Jan 2 09:14:38 2019
|
||||
%%CreationDate: Tue Feb 26 09:57:04 2019
|
||||
%%DocumentNeededResources: font Times-Roman
|
||||
%%+ font Times-Bold
|
||||
%%DocumentSuppliedResources: procset grops 1.22 3
|
||||
|
||||
+3
-3
@@ -2,10 +2,10 @@
|
||||
Copyright (C) 1988-2019 Free Software Foundation, Inc.
|
||||
@end ignore
|
||||
|
||||
@set LASTCHANGE Sun Jan 27 17:41:35 EST 2019
|
||||
@set LASTCHANGE Tue Feb 26 09:46:37 EST 2019
|
||||
|
||||
@set EDITION 5.0
|
||||
@set VERSION 5.0
|
||||
|
||||
@set UPDATED 27 January 2019
|
||||
@set UPDATED-MONTH January 2019
|
||||
@set UPDATED 26 February 2019
|
||||
@set UPDATED-MONTH February 2019
|
||||
|
||||
@@ -1770,7 +1770,9 @@ init_interactive ()
|
||||
interactive = 1;
|
||||
#if defined (HISTORY)
|
||||
remember_on_history = enable_history_list = 1; /* XXX */
|
||||
# if defined (BANG_HISTORY)
|
||||
histexp_flag = history_expansion; /* XXX */
|
||||
# endif
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -2838,6 +2838,10 @@ list_string (string, separators, quoted)
|
||||
result->word->flags &= ~W_HASQUOTEDNULL; /* just to be sure */
|
||||
if (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT))
|
||||
result->word->flags |= W_QUOTED;
|
||||
/* If removing quoted null characters leaves an empty word, note
|
||||
that we saw this for the caller to act on. */
|
||||
if (current_word == 0 || current_word[0] == '\0')
|
||||
result->word->flags |= W_SAWQUOTEDNULL;
|
||||
}
|
||||
|
||||
/* If we're not doing sequences of separators in the traditional
|
||||
@@ -3892,6 +3896,7 @@ expand_string_for_rhs (string, quoted, op, pflags, dollar_at_p, expanded_p)
|
||||
depending on whether or not are are going to be splitting: if the expansion
|
||||
is quoted, if the OP is `=', or if IFS is set to the empty string, we
|
||||
are not going to be splitting, so we set expand_no_split_dollar_star to
|
||||
note this to callees.
|
||||
We pass through PF_ASSIGNRHS as W_ASSIGNRHS if this is on the RHS of an
|
||||
assignment statement. */
|
||||
/* The updated treatment of $* is the result of Posix interp 888 */
|
||||
@@ -6868,7 +6873,7 @@ parameter_brace_expand_rhs (name, value, op, quoted, pflags, qdollaratp, hasdoll
|
||||
int op, quoted, pflags, *qdollaratp, *hasdollarat;
|
||||
{
|
||||
WORD_DESC *w;
|
||||
WORD_LIST *l;
|
||||
WORD_LIST *l, *tl;
|
||||
char *t, *t1, *temp, *vname;
|
||||
int l_hasdollat, sindex;
|
||||
SHELL_VAR *v;
|
||||
@@ -6893,6 +6898,23 @@ parameter_brace_expand_rhs (name, value, op, quoted, pflags, qdollaratp, hasdoll
|
||||
*hasdollarat = l_hasdollat || (l && l->next);
|
||||
if (temp != value)
|
||||
free (temp);
|
||||
|
||||
/* list_string takes multiple CTLNULs and turns them into an empty word
|
||||
with W_SAWQUOTEDNULL set. Turn it back into a single CTLNUL for the
|
||||
rest of this function and the caller. */
|
||||
for (tl = l; tl; tl = tl->next)
|
||||
{
|
||||
if (tl->word && (tl->word->word == 0 || tl->word->word[0] == 0) &&
|
||||
(tl->word->flags | W_SAWQUOTEDNULL))
|
||||
{
|
||||
t = make_quoted_char ('\0');
|
||||
FREE (tl->word->word);
|
||||
tl->word->word = t;
|
||||
tl->word->flags |= W_QUOTED|W_HASQUOTEDNULL;
|
||||
tl->word->flags &= ~W_SAWQUOTEDNULL;
|
||||
}
|
||||
}
|
||||
|
||||
if (l)
|
||||
{
|
||||
/* If l->next is not null, we know that TEMP contained "$@", since that
|
||||
@@ -10204,13 +10226,8 @@ add_twochars:
|
||||
disable the special handling that "$@" gets. */
|
||||
if (list && list->word && list->next == 0 && (list->word->flags & W_HASQUOTEDNULL))
|
||||
{
|
||||
/* If we already saw a quoted null, we don't need to add
|
||||
another one */
|
||||
if (had_quoted_null && temp_has_dollar_at)
|
||||
{
|
||||
quoted_dollar_at++;
|
||||
break;
|
||||
}
|
||||
quoted_dollar_at++;
|
||||
had_quoted_null = 1; /* XXX */
|
||||
}
|
||||
|
||||
@@ -10572,7 +10589,7 @@ finished_with_string:
|
||||
tword->word = remove_quoted_ifs (istring);
|
||||
else
|
||||
tword->word = istring;
|
||||
if (had_quoted_null && QUOTED_NULL (istring))
|
||||
if (had_quoted_null && QUOTED_NULL (istring)) /* should check for more than one */
|
||||
tword->flags |= W_HASQUOTEDNULL; /* XXX */
|
||||
else if (had_quoted_null)
|
||||
tword->flags |= W_SAWQUOTEDNULL; /* XXX */
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
BUILD_DIR=/usr/local/build/chet/bash/bash-current
|
||||
BUILD_DIR=/usr/local/build/bash/bash-current
|
||||
THIS_SH=$BUILD_DIR/bash
|
||||
PATH=$PATH:$BUILD_DIR
|
||||
|
||||
|
||||
@@ -142,3 +142,35 @@ argv[1] = <ab ''>
|
||||
argv[1] = <ab >
|
||||
argv[1] = <ab ''>
|
||||
argv[1] = <ab >
|
||||
0
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
0
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
2
|
||||
2
|
||||
2
|
||||
2
|
||||
0
|
||||
0
|
||||
0
|
||||
2
|
||||
2
|
||||
4
|
||||
4
|
||||
3
|
||||
|
||||
@@ -123,3 +123,4 @@ echo ${foo:-string \\\}}
|
||||
${THIS_SH} ./quote1.sub
|
||||
${THIS_SH} ./quote2.sub
|
||||
${THIS_SH} ./quote3.sub
|
||||
${THIS_SH} ./quote4.sub
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
n() { echo $#; }
|
||||
|
||||
set --
|
||||
|
||||
n "$@"
|
||||
|
||||
# should be 1
|
||||
n "$@"''
|
||||
n ''"$@"
|
||||
n ''"$@"''
|
||||
|
||||
set -- ''
|
||||
|
||||
n "$@"
|
||||
# should be 1
|
||||
n "$@"''
|
||||
n ''"$@"
|
||||
n ''"$@"''
|
||||
|
||||
set -- '' ''
|
||||
|
||||
n "$@"
|
||||
# should be 2
|
||||
n ''"$@"
|
||||
# should be 2
|
||||
n "$@"''
|
||||
# should be 2
|
||||
n ''"$@"''
|
||||
|
||||
x=x
|
||||
|
||||
set --
|
||||
|
||||
n ${x+"$@"}
|
||||
|
||||
# should be 1
|
||||
n ${x+"$@"''}
|
||||
n ${x+''"$@"}
|
||||
n ${x+''"$@"''}
|
||||
|
||||
set -- ''
|
||||
|
||||
n ${x+"$@"}
|
||||
# should be 1
|
||||
n ${x+"$@"''}
|
||||
n ${x+''"$@"}
|
||||
n ${x+''"$@"''}
|
||||
|
||||
set -- '' ''
|
||||
|
||||
n ${x+"$@"}
|
||||
# should be 2
|
||||
n ${x+''"$@"}
|
||||
# should be 2
|
||||
n ${x+"$@"''}
|
||||
# should be 2
|
||||
n ${x+''"$@"''}
|
||||
|
||||
|
||||
set --
|
||||
|
||||
n "$@" "$@"
|
||||
n "$@""$@"
|
||||
|
||||
n ${x+"$@" "$@"}
|
||||
|
||||
set -- ''
|
||||
|
||||
n ${x+"$@" "$@"}
|
||||
n "$@" "$@"
|
||||
|
||||
set -- '' ''
|
||||
|
||||
n ${x+"$@" "$@"}
|
||||
n "$@" "$@"
|
||||
n "$@""$@"
|
||||
Reference in New Issue
Block a user