commit bash-20181109 snapshot

This commit is contained in:
Chet Ramey
2018-11-12 10:15:40 -05:00
parent 48c37afdd3
commit a6ae8f3539
39 changed files with 9805 additions and 9375 deletions
+76
View File
@@ -4654,3 +4654,79 @@ braces.c
- mkseq: make sure to terminate result array before passing it to
strvec_dispose on an interrupt. Report and fix from Corbin Souffrant
<corbin.souffrant@gmail.com>
11/6
----
trap.c
- _run_trap_internal: if the signal shows up as SIG_CHANGED after
running the trap handler, check for terminating signals and run any
terminating signal handler indicates. Fixes issue reported by
Owen Stephens <owen@owenstephens.co.uk>
11/7
----
execute_cmd.c
- execute_builtin: don't merge the temporary environment when the
`return' builtin is being executed if it's being executed by the
`command' builtin, since that's supposed to inhibit the special
builtin properties. Part of POSIX conformance problems reported
by Martin Rehak <martin.rehak@oracle.com>
builtins/cd.def
- bindpwd: if canonicalization fails when -P is specified (e.g. if the
directory name length exceeds PATH_MAX), reset dirname ($PWD value) =
to the_current_working_directory (Posix cd description, step 10.)
Part of POSIX conformance problems reported by Martin Rehak
<martin.rehak@oracle.com>
builtins/kill.def
- kill_builtin: support -sSIG and -nSIG without requiring them to be
separate arguments. POSIX says a "conforming implementation" should
accept them.
Part of POSIX conformance problems reported by Martin Rehak
<martin.rehak@oracle.com>
11/8
----
arrayfunc.c
- array_value_internal: return NULL for invisible array variables.
Fixes issue with FUNCNAME sometimes returning invalid value reported
by Great Big Dot <greatbigdot@gmail.com>
builtins/cd.def
- change_to_directory: if we are in posix mode, and the chdir to the
absolute pathname ($PWD/dirname) fails, return an error without
trying to use just `dirname' (posix cd step 10).
Part of POSIX conformance problems reported by Martin Rehak
<martin.rehak@oracle.com>
execute_cmd.c
- execute_case_command: use expand_word_leave_quoted to expand the
word, then dequote the resulting string. This performs the
expansions in the order posix specifies.
Part of POSIX conformance problems reported by Martin Rehak
<martin.rehak@oracle.com>
subst.c
- expand_word_unsplit: rewrite in terms of expand_word_leave_quoted
- ifs_whitespace: new macro, Posix ifs whitespace (ISSPACE; member
of current locale's space char class)
- ifs_whitesep: new macro, whitespace that is a member of $IFS; used
by list_string and get_word_from_string
- list_string: use ifs_whitesep instead of spctabnl in case $IFS
contains whitespace characters that are not space, tab, or newline
- get_word_from_string: use ifs_whitesep instead of spctabnl in case
$IFS contains whitespace characters that are not space, tab, or
newline.
Part of POSIX conformance problems reported by Martin Rehak
<martin.rehak@oracle.com>
11/9
----
general.c
- posix_initialize: enable the shift_verbose option when turning on
posix mode, and disable it when posix mode is disabled. From a
report by Eric Blake <eblake@redhat.com>
doc/bashref.texi
- posix mode: note the effect of posix mode on shift_verbose
+1
View File
@@ -912,6 +912,7 @@ tests/case.right f
tests/case1.sub f
tests/case2.sub f
tests/case3.sub f
tests/case4.sub f
tests/casemod.tests f
tests/casemod.right f
tests/comsub.tests f
+24 -14
View File
@@ -169,56 +169,66 @@ The following list is what's changed when 'POSIX mode' is in effect:
shell. When the 'inherit_errexit' option is not enabled, Bash
clears the '-e' option in such subshells.
44. When the 'alias' builtin displays alias definitions, it does not
44. Enabling POSIX mode has the effect of setting the 'shift_verbose'
option, so numeric arguments to 'shift' that exceed the number of
positional parameters will result in an error message.
45. When the 'alias' builtin displays alias definitions, it does not
display them with a leading 'alias ' unless the '-p' option is
supplied.
45. When the 'set' builtin is invoked without options, it does not
46. When the 'set' builtin is invoked without options, it does not
display shell function names and definitions.
46. When the 'set' builtin is invoked without options, it displays
47. When the 'set' builtin is invoked without options, it displays
variable values without quotes, unless they contain shell
metacharacters, even if the result contains nonprinting characters.
47. When the 'cd' builtin is invoked in LOGICAL mode, and the pathname
48. When the 'cd' builtin is invoked in LOGICAL mode, and the pathname
constructed from '$PWD' and the directory name supplied as an
argument does not refer to an existing directory, 'cd' will fail
instead of falling back to PHYSICAL mode.
48. The 'pwd' builtin verifies that the value it prints is the same as
49. When the 'cd' builtin cannot change a directory because the length
of the pathname constructed from '$PWD' and the directory name
supplied as an argument exceeds PATH_MAX when all symbolic links
are expanded, 'cd' will fail instead of attempting to use only the
supplied directory name.
50. The 'pwd' builtin verifies that the value it prints is the same as
the current directory, even if it is not asked to check the file
system with the '-P' option.
49. When listing the history, the 'fc' builtin does not include an
51. When listing the history, the 'fc' builtin does not include an
indication of whether or not a history entry has been modified.
50. The default editor used by 'fc' is 'ed'.
52. The default editor used by 'fc' is 'ed'.
51. The 'type' and 'command' builtins will not report a non-executable
53. The 'type' and 'command' builtins will not report a non-executable
file as having been found, though the shell will attempt to execute
such a file if it is the only so-named file found in '$PATH'.
52. The 'vi' editing mode will invoke the 'vi' editor directly when
54. The 'vi' editing mode will invoke the 'vi' editor directly when
the 'v' command is run, instead of checking '$VISUAL' and
'$EDITOR'.
53. When the 'xpg_echo' option is enabled, Bash does not attempt to
55. When the 'xpg_echo' option is enabled, Bash does not attempt to
interpret any arguments to 'echo' as options. Each argument is
displayed, after escape characters are converted.
54. The 'ulimit' builtin uses a block size of 512 bytes for the '-c'
56. The 'ulimit' builtin uses a block size of 512 bytes for the '-c'
and '-f' options.
55. The arrival of 'SIGCHLD' when a trap is set on 'SIGCHLD' does not
57. The arrival of 'SIGCHLD' when a trap is set on 'SIGCHLD' does not
interrupt the 'wait' builtin and cause it to return immediately.
The trap command is run once for each child that exits.
56. The 'read' builtin may be interrupted by a signal for which a trap
58. The 'read' builtin may be interrupted by a signal for which a trap
has been set. If Bash receives a trapped signal while executing
'read', the trap handler executes and 'read' returns an exit status
greater than 128.
57. Bash removes an exited background process's status from the list
59. Bash removes an exited background process's status from the list
of such statuses after the 'wait' builtin is used to obtain it.
There is other POSIX behavior that Bash does not implement by default
+7
View File
@@ -1107,6 +1107,8 @@ array_value_internal (s, quoted, flags, rtype, indp)
}
else if (var == 0 || value_cell (var) == 0) /* XXX - check for invisible_p(var) ? */
return ((char *)NULL);
else if (invisible_p (var))
return ((char *)NULL);
else if (array_p (var) == 0 && assoc_p (var) == 0)
l = add_string_to_list (value_cell (var), (WORD_LIST *)NULL);
else if (assoc_p (var))
@@ -1178,6 +1180,11 @@ array_value_internal (s, quoted, flags, rtype, indp)
FREE (akey);
return ((char *)NULL);
}
else if (invisible_p (var))
{
FREE (akey);
return ((char *)NULL);
}
if (array_p (var) == 0 && assoc_p (var) == 0)
return (ind == 0 ? value_cell (var) : (char *)NULL);
else if (assoc_p (var))
+16 -4
View File
@@ -138,7 +138,7 @@ bindpwd (no_symlinks)
int no_symlinks;
{
char *dirname, *pwdvar;
int old_anm, r;
int old_anm, r, canon_failed;
SHELL_VAR *tvar;
r = sh_chkwrite (EXECUTION_SUCCESS);
@@ -148,6 +148,13 @@ bindpwd (no_symlinks)
: get_working_directory ("cd");
#undef tcwd
/* If canonicalization fails, reset dirname to the_current_working_directory */
if (dirname == 0)
{
canon_failed = 1;
dirname = the_current_working_directory;
}
old_anm = array_needs_making;
pwdvar = get_string_value ("PWD");
@@ -163,7 +170,7 @@ bindpwd (no_symlinks)
if (setpwd (dirname) == EXECUTION_FAILURE)
r = EXECUTION_FAILURE;
if (dirname == 0 && eflag)
if (canon_failed && eflag)
r = EXECUTION_FAILURE;
if (dirname && dirname != the_current_working_directory)
@@ -580,7 +587,11 @@ change_to_directory (newdir, nolinks, xattr)
/* In POSIX mode, if we're resolving symlinks logically and sh_canonpath
returns NULL (because it checks the path, it will return NULL if the
resolved path doesn't exist), fail immediately. */
#if defined (ENAMETOOLONG)
if (posixly_correct && nolinks == 0 && canon_failed && (errno != ENAMETOOLONG || ndlen > PATH_MAX))
#else
if (posixly_correct && nolinks == 0 && canon_failed && ndlen > PATH_MAX)
#endif
{
#if defined ENAMETOOLONG
if (errno != ENOENT && errno != ENAMETOOLONG)
@@ -650,8 +661,9 @@ change_to_directory (newdir, nolinks, xattr)
/* We're not in physical mode (nolinks == 0), but we failed to change to
the canonicalized directory name (TDIR). Try what the user passed
verbatim. If we succeed, reinitialize the_current_working_directory. */
if (chdir (newdir) == 0)
verbatim. If we succeed, reinitialize the_current_working_directory.
POSIX requires that we just fail here, so we do in posix mode. */
if (posixly_correct == 0 && chdir (newdir) == 0)
{
t = resetpwd ("cd");
if (t == 0)
+3
View File
@@ -230,6 +230,9 @@ extern int loop_level;
/* variables from read.def */
extern int sigalrm_seen;
/* variables from shift.def */
extern int print_shift_error;
/* variables from source.def */
extern int source_searches_cwd;
extern int source_uses_path;
+11
View File
@@ -118,6 +118,7 @@ kill_builtin (list)
if (list)
{
sigspec = list->word->word;
use_sigspec:
if (sigspec[0] == '0' && sigspec[1] == '\0')
sig = 0;
else
@@ -131,6 +132,16 @@ kill_builtin (list)
return (EXECUTION_FAILURE);
}
}
else if (word[0] == '-' && word[1] == 's' && ISALPHA (word[2]))
{
sigspec = word + 2;
goto use_sigspec;
}
else if (word[0] == '-' && word[1] == 'n' && ISDIGIT (word[2]))
{
sigspec = word + 2;
goto use_sigspec;
}
else if (ISOPTION (word, '-'))
{
list = list->next;
+984 -963
View File
File diff suppressed because it is too large Load Diff
+32 -9
View File
@@ -3,7 +3,7 @@
</HEAD>
<BODY><TABLE WIDTH=100%>
<TR>
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2018 August 7<TH ALIGN=RIGHT width=33%>BASH(1)
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2018 October 22<TH ALIGN=RIGHT width=33%>BASH(1)
</TR>
</TABLE>
<BR><A HREF="#index">Index</A>
@@ -1825,8 +1825,8 @@ as given by argument zero.
At shell startup, set to the absolute pathname used to invoke the
shell or shell script being executed as passed in the environment
or argument list.
Subsequently, expands to the last argument to the previous command,
after expansion.
Subsequently, expands to the last argument to the previous simple
command executed in the foreground, after expansion.
Also set to the full pathname used to invoke each command executed
and placed in the environment exported to that command.
When checking mail, this parameter holds the name of the mail file
@@ -5617,14 +5617,14 @@ The levels are listed in order of decreasing precedence.
<DD>
variable post-increment and post-decrement
<DT><B>++</B><I>id</I> --<I>id</I>
<DD>
variable pre-increment and pre-decrement
<DT><B>- +</B>
<DD>
unary minus and plus
<DT><B>++</B><I>id</I> --<I>id</I>
<DD>
variable pre-increment and pre-decrement
<DT><B>! ~</B>
<DD>
@@ -5726,6 +5726,11 @@ 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 number of arguments; see the descriptions of those commands for any
other command-specific actions.
<P>
Expressions are formed from the following unary or binary primaries.
<B>Bash</B> handles several filenames specially when they are used in
expressions.
@@ -8569,6 +8574,9 @@ If no compspec is found for the full pathname, an attempt is made to
find a compspec for the portion following the final slash.
If those searches do not result in a compspec, any compspec defined with
the <B>-D</B> option to <B>complete</B> is used as the default.
If there is no default compspec, <B>bash</B> attempts alias expansion
on the command word as a final resort, and attempts to find a compspec
for the command word from any successful expansion.
<P>
Once a compspec has been found, it is used to generate the list of
@@ -12423,6 +12431,7 @@ and
<FONT SIZE=-1><B>COLUMNS</B>.
</FONT>
This option is enabled by default.
<DT><B>cmdhist</B>
<DD>
@@ -12801,6 +12810,13 @@ embedded newlines rather than using semicolon separators where possible.
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 attribute is not inherited.
<DT><B>localvar_unset</B>
<DD>
If set, calling <B>unset</B> on local variables in previous function scopes
marks them so subsequent lookups find them unset until that function
returns. This is identical to the behavior of unsetting local variables
at the current function scope.
<DT><B>login_shell</B>
<DD>
@@ -12870,6 +12886,13 @@ to expand to a null string, rather than themselves.
If set, the programmable completion facilities (see
<B>Programmable Completion</B> above) are enabled.
This option is enabled by default.
<DT><B>progcomp_alias</B>
<DD>
If set, and programmable completion is enabled, <B>bash</B> treats a command
name that doesn't have any completions as a possible alias and attempts
alias expansion. If it has an alias, <B>bash</B> attempts programmable
completion using the command word resulting from the expanded alias.
<DT><B>promptvars</B>
<DD>
@@ -13892,7 +13915,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 August 7<TH ALIGN=RIGHT width=33%>BASH(1)
<TH ALIGN=LEFT width=33%>GNU Bash 5.0<TH ALIGN=CENTER width=33%>2018 October 22<TH ALIGN=RIGHT width=33%>BASH(1)
</TR>
</TABLE>
<HR>
@@ -13998,6 +14021,6 @@ There may be only one active coprocess at a time.
</DL>
<HR>
This document was created by man2html from bash.1.<BR>
Time: 07 September 2018 16:15:28 EDT
Time: 09 November 2018 14:50:32 EST
</BODY>
</HTML>
+218 -183
View File
@@ -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 August 2018).
Bash shell (version 5.0, 9 November 2018).
This is Edition 5.0, last updated 7 August 2018, of 'The GNU Bash
This is Edition 5.0, last updated 9 November 2018, 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 August 2018). The Bash home page is
Bash shell (version 5.0, 9 November 2018). The Bash home page is
<http://www.gnu.org/software/bash/>.
This is Edition 5.0, last updated 7 August 2018, of 'The GNU Bash
This is Edition 5.0, last updated 9 November 2018, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.0.
Bash contains features that appear in other popular shells, and some
@@ -1468,10 +1468,11 @@ only be referenced; assignment to them is not allowed.
($_, an underscore.) At shell startup, set to the absolute
pathname used to invoke the shell or shell script being executed as
passed in the environment or argument list. Subsequently, expands
to the last argument to the previous command, after expansion.
Also set to the full pathname used to invoke each command executed
and placed in the environment exported to that command. When
checking mail, this parameter holds the name of the mail file.
to the last argument to the previous simple command executed in the
foreground, after expansion. Also set to the full pathname used to
invoke each command executed and placed in the environment exported
to that command. When checking mail, this parameter holds the name
of the mail file.

File: bash.info, Node: Shell Expansions, Next: Redirections, Prev: Shell Parameters, Up: Basic Shell Features
@@ -3201,17 +3202,21 @@ standard.
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 operators
(*note Bash Conditional Expressions::), the result of the
expression is the result of the binary test using the first
and third arguments as operands. The '-a' and '-o' 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. Otherwise, the expression is false.
The following conditions are applied in the order listed.
1. If the second argument is one of the binary conditional
operators (*note Bash Conditional Expressions::), the
result of the expression is the result of the binary test
using the first and third arguments as operands. The
'-a' and '-o' operators are considered binary operators
when there are three arguments.
2. If the first argument is '!', the value is the negation
of the two-argument test using the second and third
arguments.
3. If the first argument is exactly '(' and the third
argument is exactly ')', the result is the one-argument
test of the second argument.
4. Otherwise, the expression is false.
4 arguments
If the first argument is '!', the result is the negation of
@@ -4406,7 +4411,7 @@ This builtin allows you to change additional shell optional behavior.
'checkwinsize'
If set, Bash checks the window size after each external
(non-builtin) command and, if necessary, updates the values of
'LINES' and 'COLUMNS'.
'LINES' and 'COLUMNS'. This option is enabled by default.
'cmdhist'
If set, Bash attempts to save all lines of a multiple-line
@@ -4631,6 +4636,13 @@ This builtin allows you to change additional shell optional behavior.
before any new value is assigned. The NAMEREF attribute is
not inherited.
'localvar_unset'
If set, calling 'unset' on local variables in previous
function scopes marks them so subsequent lookups find them
unset until that function returns. This is identical to the
behavior of unsetting local variables at the current function
scope.
'login_shell'
The shell sets this option if it is started as a login shell
(*note Invoking Bash::). The value may not be changed.
@@ -4665,6 +4677,13 @@ This builtin allows you to change additional shell optional behavior.
Programmable Completion::) are enabled. This option is
enabled by default.
'progcomp_alias'
If set, and programmable completion is enabled, Bash treats a
command name that doesn't have any completions as a possible
alias and attempts alias expansion. If it has an alias, Bash
attempts programmable completion using the command word
resulting from the expanded alias.
'promptvars'
If set, prompt strings undergo parameter expansion, command
substitution, arithmetic expansion, and quote removal after
@@ -5912,18 +5931,21 @@ File: bash.info, Node: Bash Conditional Expressions, Next: Shell Arithmetic,
================================
Conditional expressions are used by the '[[' compound command and the
'test' and '[' builtin commands.
'test' and '[' builtin commands. The 'test' and '[' commands determine
their behavior based on the number of arguments; see the descriptions of
those commands for any other command-specific actions.
Expressions may be unary or binary. Unary expressions are often used
to examine the status of a file. There are string operators and numeric
comparison operators as well. Bash handles several filenames specially
when they are used in expressions. If the operating system on which
Bash is running provides these special files, Bash will use them;
otherwise it will emulate them internally with this behavior: If the
FILE argument to one of the primaries is of the form '/dev/fd/N', then
file descriptor N is checked. If the FILE argument to one of the
primaries is one of '/dev/stdin', '/dev/stdout', or '/dev/stderr', file
descriptor 0, 1, or 2, respectively, is checked.
Expressions may be unary or binary, and are formed from the following
primaries. Unary expressions are often used to examine the status of a
file. There are string operators and numeric comparison operators as
well. Bash handles several filenames specially when they are used in
expressions. If the operating system on which Bash is running provides
these special files, Bash will use them; otherwise it will emulate them
internally with this behavior: If the FILE argument to one of the
primaries is of the form '/dev/fd/N', then file descriptor N is checked.
If the FILE argument to one of the primaries is one of '/dev/stdin',
'/dev/stdout', or '/dev/stderr', file descriptor 0, 1, or 2,
respectively, is checked.
When used with '[[', the '<' and '>' operators sort lexicographically
using the current locale. The 'test' command uses ASCII ordering.
@@ -6703,56 +6725,66 @@ startup files.
shell. When the 'inherit_errexit' option is not enabled, Bash
clears the '-e' option in such subshells.
44. When the 'alias' builtin displays alias definitions, it does not
44. Enabling POSIX mode has the effect of setting the 'shift_verbose'
option, so numeric arguments to 'shift' that exceed the number of
positional parameters will result in an error message.
45. When the 'alias' builtin displays alias definitions, it does not
display them with a leading 'alias ' unless the '-p' option is
supplied.
45. When the 'set' builtin is invoked without options, it does not
46. When the 'set' builtin is invoked without options, it does not
display shell function names and definitions.
46. When the 'set' builtin is invoked without options, it displays
47. When the 'set' builtin is invoked without options, it displays
variable values without quotes, unless they contain shell
metacharacters, even if the result contains nonprinting characters.
47. When the 'cd' builtin is invoked in LOGICAL mode, and the pathname
48. When the 'cd' builtin is invoked in LOGICAL mode, and the pathname
constructed from '$PWD' and the directory name supplied as an
argument does not refer to an existing directory, 'cd' will fail
instead of falling back to PHYSICAL mode.
48. The 'pwd' builtin verifies that the value it prints is the same as
49. When the 'cd' builtin cannot change a directory because the length
of the pathname constructed from '$PWD' and the directory name
supplied as an argument exceeds PATH_MAX when all symbolic links
are expanded, 'cd' will fail instead of attempting to use only the
supplied directory name.
50. The 'pwd' builtin verifies that the value it prints is the same as
the current directory, even if it is not asked to check the file
system with the '-P' option.
49. When listing the history, the 'fc' builtin does not include an
51. When listing the history, the 'fc' builtin does not include an
indication of whether or not a history entry has been modified.
50. The default editor used by 'fc' is 'ed'.
52. The default editor used by 'fc' is 'ed'.
51. The 'type' and 'command' builtins will not report a non-executable
53. The 'type' and 'command' builtins will not report a non-executable
file as having been found, though the shell will attempt to execute
such a file if it is the only so-named file found in '$PATH'.
52. The 'vi' editing mode will invoke the 'vi' editor directly when
54. The 'vi' editing mode will invoke the 'vi' editor directly when
the 'v' command is run, instead of checking '$VISUAL' and
'$EDITOR'.
53. When the 'xpg_echo' option is enabled, Bash does not attempt to
55. When the 'xpg_echo' option is enabled, Bash does not attempt to
interpret any arguments to 'echo' as options. Each argument is
displayed, after escape characters are converted.
54. The 'ulimit' builtin uses a block size of 512 bytes for the '-c'
56. The 'ulimit' builtin uses a block size of 512 bytes for the '-c'
and '-f' options.
55. The arrival of 'SIGCHLD' when a trap is set on 'SIGCHLD' does not
57. The arrival of 'SIGCHLD' when a trap is set on 'SIGCHLD' does not
interrupt the 'wait' builtin and cause it to return immediately.
The trap command is run once for each child that exits.
56. The 'read' builtin may be interrupted by a signal for which a trap
58. The 'read' builtin may be interrupted by a signal for which a trap
has been set. If Bash receives a trapped signal while executing
'read', the trap handler executes and 'read' returns an exit status
greater than 128.
57. Bash removes an exited background process's status from the list
59. Bash removes an exited background process's status from the list
of such statuses after the 'wait' builtin is used to obtain it.
There is other POSIX behavior that Bash does not implement by default
@@ -7525,13 +7557,13 @@ Variable Settings
'keymap'
Sets Readline's idea of the current keymap for key binding
commands. Acceptable 'keymap' names are 'emacs',
commands. Built-in 'keymap' names are 'emacs',
'emacs-standard', 'emacs-meta', 'emacs-ctlx', 'vi', 'vi-move',
'vi-command', and 'vi-insert'. 'vi' is equivalent to
'vi-command' ('vi-move' is also a synonym); 'emacs' is
equivalent to 'emacs-standard'. The default value is 'emacs'.
The value of the 'editing-mode' variable also affects the
default keymap.
equivalent to 'emacs-standard'. Applications may add
additional names. The default value is 'emacs'. The value of
the 'editing-mode' variable also affects the default keymap.
'keyseq-timeout'
Specifies the duration Readline will wait for a character when
@@ -8626,7 +8658,10 @@ command word is a full pathname, a compspec for the full pathname is
searched for first. If no compspec is found for the full pathname, an
attempt is made to find a compspec for the portion following the final
slash. If those searches do not result in a compspec, any compspec
defined with the '-D' option to 'complete' is used as the default.
defined with the '-D' option to 'complete' is used as the default. If
there is no default compspec, Bash attempts alias expansion on the
command word as a final resort, and attempts to find a compspec for the
command word from any successful expansion
Once a compspec has been found, it is used to generate the list of
matching words. If a compspec is not found, the default Bash completion
@@ -11000,17 +11035,17 @@ D.1 Index of Shell Builtin Commands
* test: Bourne Shell Builtins.
(line 269)
* times: Bourne Shell Builtins.
(line 344)
(line 348)
* trap: Bourne Shell Builtins.
(line 350)
(line 354)
* type: Bash Builtins. (line 567)
* typeset: Bash Builtins. (line 599)
* ulimit: Bash Builtins. (line 605)
* umask: Bourne Shell Builtins.
(line 399)
(line 403)
* unalias: Bash Builtins. (line 704)
* unset: Bourne Shell Builtins.
(line 417)
(line 421)
* wait: Job Control Builtins.
(line 76)
@@ -11644,134 +11679,134 @@ D.5 Concept Index

Tag Table:
Node: Top891
Node: Introduction2805
Node: What is Bash?3021
Node: What is a shell?4135
Node: Definitions6673
Node: Basic Shell Features9624
Node: Shell Syntax10843
Node: Shell Operation11869
Node: Quoting13162
Node: Escape Character14462
Node: Single Quotes14947
Node: Double Quotes15295
Node: ANSI-C Quoting16573
Node: Locale Translation17832
Node: Comments18728
Node: Shell Commands19346
Node: Simple Commands20218
Node: Pipelines20849
Node: Lists23781
Node: Compound Commands25520
Node: Looping Constructs26532
Node: Conditional Constructs29027
Node: Command Grouping40110
Node: Coprocesses41589
Node: GNU Parallel43492
Node: Shell Functions47550
Node: Shell Parameters54633
Node: Positional Parameters59046
Node: Special Parameters59946
Node: Shell Expansions63660
Node: Brace Expansion65783
Node: Tilde Expansion68507
Node: Shell Parameter Expansion71124
Node: Command Substitution85580
Node: Arithmetic Expansion86935
Node: Process Substitution87867
Node: Word Splitting88987
Node: Filename Expansion90931
Node: Pattern Matching93461
Node: Quote Removal97447
Node: Redirections97742
Node: Executing Commands107300
Node: Simple Command Expansion107970
Node: Command Search and Execution109900
Node: Command Execution Environment112276
Node: Environment115260
Node: Exit Status116919
Node: Signals118589
Node: Shell Scripts120556
Node: Shell Builtin Commands123071
Node: Bourne Shell Builtins125109
Node: Bash Builtins145767
Node: Modifying Shell Behavior174675
Node: The Set Builtin175020
Node: The Shopt Builtin185433
Node: Special Builtins202303
Node: Shell Variables203282
Node: Bourne Shell Variables203719
Node: Bash Variables205823
Node: Bash Features236283
Node: Invoking Bash237182
Node: Bash Startup Files243195
Node: Interactive Shells248298
Node: What is an Interactive Shell?248708
Node: Is this Shell Interactive?249357
Node: Interactive Shell Behavior250172
Node: Bash Conditional Expressions253659
Node: Shell Arithmetic258025
Node: Aliases260842
Node: Arrays263390
Node: The Directory Stack268756
Node: Directory Stack Builtins269540
Node: Controlling the Prompt272508
Node: The Restricted Shell275274
Node: Bash POSIX Mode277099
Node: Job Control287514
Node: Job Control Basics287974
Node: Job Control Builtins292942
Node: Job Control Variables297669
Node: Command Line Editing298825
Node: Introduction and Notation300496
Node: Readline Interaction302119
Node: Readline Bare Essentials303310
Node: Readline Movement Commands305093
Node: Readline Killing Commands306053
Node: Readline Arguments307971
Node: Searching309015
Node: Readline Init File311201
Node: Readline Init File Syntax312348
Node: Conditional Init Constructs332748
Node: Sample Init File336944
Node: Bindable Readline Commands340061
Node: Commands For Moving341265
Node: Commands For History343114
Node: Commands For Text347409
Node: Commands For Killing350797
Node: Numeric Arguments353278
Node: Commands For Completion354417
Node: Keyboard Macros358608
Node: Miscellaneous Commands359295
Node: Readline vi Mode365248
Node: Programmable Completion366155
Node: Programmable Completion Builtins373749
Node: A Programmable Completion Example384442
Node: Using History Interactively389682
Node: Bash History Facilities390366
Node: Bash History Builtins393371
Node: History Interaction397902
Node: Event Designators401522
Node: Word Designators402741
Node: Modifiers404378
Node: Installing Bash405780
Node: Basic Installation406917
Node: Compilers and Options410175
Node: Compiling For Multiple Architectures410916
Node: Installation Names412609
Node: Specifying the System Type413427
Node: Sharing Defaults414143
Node: Operation Controls414816
Node: Optional Features415774
Node: Reporting Bugs426292
Node: Major Differences From The Bourne Shell427486
Node: GNU Free Documentation License444338
Node: Indexes469515
Node: Builtin Index469969
Node: Reserved Word Index476796
Node: Variable Index479244
Node: Function Index494995
Node: Concept Index508298
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 Commands25528
Node: Looping Constructs26540
Node: Conditional Constructs29035
Node: Command Grouping40118
Node: Coprocesses41597
Node: GNU Parallel43500
Node: Shell Functions47558
Node: Shell Parameters54641
Node: Positional Parameters59054
Node: Special Parameters59954
Node: Shell Expansions63708
Node: Brace Expansion65831
Node: Tilde Expansion68555
Node: Shell Parameter Expansion71172
Node: Command Substitution85628
Node: Arithmetic Expansion86983
Node: Process Substitution87915
Node: Word Splitting89035
Node: Filename Expansion90979
Node: Pattern Matching93509
Node: Quote Removal97495
Node: Redirections97790
Node: Executing Commands107348
Node: Simple Command Expansion108018
Node: Command Search and Execution109948
Node: Command Execution Environment112324
Node: Environment115308
Node: Exit Status116967
Node: Signals118637
Node: Shell Scripts120604
Node: Shell Builtin Commands123119
Node: Bourne Shell Builtins125157
Node: Bash Builtins145907
Node: Modifying Shell Behavior174815
Node: The Set Builtin175160
Node: The Shopt Builtin185573
Node: Special Builtins203145
Node: Shell Variables204124
Node: Bourne Shell Variables204561
Node: Bash Variables206665
Node: Bash Features237125
Node: Invoking Bash238024
Node: Bash Startup Files244037
Node: Interactive Shells249140
Node: What is an Interactive Shell?249550
Node: Is this Shell Interactive?250199
Node: Interactive Shell Behavior251014
Node: Bash Conditional Expressions254501
Node: Shell Arithmetic259078
Node: Aliases261895
Node: Arrays264443
Node: The Directory Stack269809
Node: Directory Stack Builtins270593
Node: Controlling the Prompt273561
Node: The Restricted Shell276327
Node: Bash POSIX Mode278152
Node: Job Control289085
Node: Job Control Basics289545
Node: Job Control Builtins294513
Node: Job Control Variables299240
Node: Command Line Editing300396
Node: Introduction and Notation302067
Node: Readline Interaction303690
Node: Readline Bare Essentials304881
Node: Readline Movement Commands306664
Node: Readline Killing Commands307624
Node: Readline Arguments309542
Node: Searching310586
Node: Readline Init File312772
Node: Readline Init File Syntax313919
Node: Conditional Init Constructs334358
Node: Sample Init File338554
Node: Bindable Readline Commands341671
Node: Commands For Moving342875
Node: Commands For History344724
Node: Commands For Text349019
Node: Commands For Killing352407
Node: Numeric Arguments354888
Node: Commands For Completion356027
Node: Keyboard Macros360218
Node: Miscellaneous Commands360905
Node: Readline vi Mode366858
Node: Programmable Completion367765
Node: Programmable Completion Builtins375545
Node: A Programmable Completion Example386238
Node: Using History Interactively391478
Node: Bash History Facilities392162
Node: Bash History Builtins395167
Node: History Interaction399698
Node: Event Designators403318
Node: Word Designators404537
Node: Modifiers406174
Node: Installing Bash407576
Node: Basic Installation408713
Node: Compilers and Options411971
Node: Compiling For Multiple Architectures412712
Node: Installation Names414405
Node: Specifying the System Type415223
Node: Sharing Defaults415939
Node: Operation Controls416612
Node: Optional Features417570
Node: Reporting Bugs428088
Node: Major Differences From The Bourne Shell429282
Node: GNU Free Documentation License446134
Node: Indexes471311
Node: Builtin Index471765
Node: Reserved Word Index478592
Node: Variable Index481040
Node: Function Index496791
Node: Concept Index510094

End Tag Table
BIN
View File
Binary file not shown.
+4527 -4488
View File
File diff suppressed because it is too large Load Diff
+73 -73
View File
@@ -169,69 +169,69 @@
@xrdef{Bourne Shell Variables-snt}{Section@tie 5.1}
@xrdef{Bash Variables-title}{Bash Variables}
@xrdef{Bash Variables-snt}{Section@tie 5.2}
@xrdef{Shell Variables-pg}{72}
@xrdef{Bourne Shell Variables-pg}{72}
@xrdef{Bash Variables-pg}{72}
@xrdef{Shell Variables-pg}{73}
@xrdef{Bourne Shell Variables-pg}{73}
@xrdef{Bash Variables-pg}{73}
@xrdef{Bash Features-title}{Bash Features}
@xrdef{Bash Features-snt}{Chapter@tie 6}
@xrdef{Invoking Bash-title}{Invoking Bash}
@xrdef{Invoking Bash-snt}{Section@tie 6.1}
@xrdef{Bash Features-pg}{84}
@xrdef{Invoking Bash-pg}{84}
@xrdef{Bash Features-pg}{85}
@xrdef{Invoking Bash-pg}{85}
@xrdef{Bash Startup Files-title}{Bash Startup Files}
@xrdef{Bash Startup Files-snt}{Section@tie 6.2}
@xrdef{Bash Startup Files-pg}{86}
@xrdef{Bash Startup Files-pg}{87}
@xrdef{Interactive Shells-title}{Interactive Shells}
@xrdef{Interactive Shells-snt}{Section@tie 6.3}
@xrdef{What is an Interactive Shell?-title}{What is an Interactive Shell?}
@xrdef{What is an Interactive Shell?-snt}{Section@tie 6.3.1}
@xrdef{Interactive Shells-pg}{87}
@xrdef{Interactive Shells-pg}{88}
@xrdef{Is this Shell Interactive?-title}{Is this Shell Interactive?}
@xrdef{Is this Shell Interactive?-snt}{Section@tie 6.3.2}
@xrdef{Interactive Shell Behavior-title}{Interactive Shell Behavior}
@xrdef{Interactive Shell Behavior-snt}{Section@tie 6.3.3}
@xrdef{What is an Interactive Shell?-pg}{88}
@xrdef{Is this Shell Interactive?-pg}{88}
@xrdef{Interactive Shell Behavior-pg}{88}
@xrdef{What is an Interactive Shell?-pg}{89}
@xrdef{Is this Shell Interactive?-pg}{89}
@xrdef{Interactive Shell Behavior-pg}{89}
@xrdef{Bash Conditional Expressions-title}{Bash Conditional Expressions}
@xrdef{Bash Conditional Expressions-snt}{Section@tie 6.4}
@xrdef{Bash Conditional Expressions-pg}{89}
@xrdef{Bash Conditional Expressions-pg}{90}
@xrdef{Shell Arithmetic-title}{Shell Arithmetic}
@xrdef{Shell Arithmetic-snt}{Section@tie 6.5}
@xrdef{Shell Arithmetic-pg}{91}
@xrdef{Shell Arithmetic-pg}{92}
@xrdef{Aliases-title}{Aliases}
@xrdef{Aliases-snt}{Section@tie 6.6}
@xrdef{Aliases-pg}{92}
@xrdef{Aliases-pg}{93}
@xrdef{Arrays-title}{Arrays}
@xrdef{Arrays-snt}{Section@tie 6.7}
@xrdef{Arrays-pg}{93}
@xrdef{Arrays-pg}{94}
@xrdef{The Directory Stack-title}{The Directory Stack}
@xrdef{The Directory Stack-snt}{Section@tie 6.8}
@xrdef{Directory Stack Builtins-title}{Directory Stack Builtins}
@xrdef{Directory Stack Builtins-snt}{Section@tie 6.8.1}
@xrdef{The Directory Stack-pg}{95}
@xrdef{Directory Stack Builtins-pg}{95}
@xrdef{The Directory Stack-pg}{96}
@xrdef{Directory Stack Builtins-pg}{96}
@xrdef{Controlling the Prompt-title}{Controlling the Prompt}
@xrdef{Controlling the Prompt-snt}{Section@tie 6.9}
@xrdef{Controlling the Prompt-pg}{96}
@xrdef{Controlling the Prompt-pg}{97}
@xrdef{The Restricted Shell-title}{The Restricted Shell}
@xrdef{The Restricted Shell-snt}{Section@tie 6.10}
@xrdef{The Restricted Shell-pg}{97}
@xrdef{The Restricted Shell-pg}{98}
@xrdef{Bash POSIX Mode-title}{Bash POSIX Mode}
@xrdef{Bash POSIX Mode-snt}{Section@tie 6.11}
@xrdef{Bash POSIX Mode-pg}{98}
@xrdef{Bash POSIX Mode-pg}{99}
@xrdef{Job Control-title}{Job Control}
@xrdef{Job Control-snt}{Chapter@tie 7}
@xrdef{Job Control Basics-title}{Job Control Basics}
@xrdef{Job Control Basics-snt}{Section@tie 7.1}
@xrdef{Job Control-pg}{102}
@xrdef{Job Control Basics-pg}{102}
@xrdef{Job Control-pg}{103}
@xrdef{Job Control Basics-pg}{103}
@xrdef{Job Control Builtins-title}{Job Control Builtins}
@xrdef{Job Control Builtins-snt}{Section@tie 7.2}
@xrdef{Job Control Builtins-pg}{103}
@xrdef{Job Control Builtins-pg}{104}
@xrdef{Job Control Variables-title}{Job Control Variables}
@xrdef{Job Control Variables-snt}{Section@tie 7.3}
@xrdef{Job Control Variables-pg}{105}
@xrdef{Job Control Variables-pg}{106}
@xrdef{Command Line Editing-title}{Command Line Editing}
@xrdef{Command Line Editing-snt}{Chapter@tie 8}
@xrdef{Introduction and Notation-title}{Introduction to Line Editing}
@@ -240,109 +240,109 @@
@xrdef{Readline Interaction-snt}{Section@tie 8.2}
@xrdef{Readline Bare Essentials-title}{Readline Bare Essentials}
@xrdef{Readline Bare Essentials-snt}{Section@tie 8.2.1}
@xrdef{Command Line Editing-pg}{106}
@xrdef{Introduction and Notation-pg}{106}
@xrdef{Readline Interaction-pg}{106}
@xrdef{Command Line Editing-pg}{107}
@xrdef{Introduction and Notation-pg}{107}
@xrdef{Readline Interaction-pg}{107}
@xrdef{Readline Movement Commands-title}{Readline Movement Commands}
@xrdef{Readline Movement Commands-snt}{Section@tie 8.2.2}
@xrdef{Readline Killing Commands-title}{Readline Killing Commands}
@xrdef{Readline Killing Commands-snt}{Section@tie 8.2.3}
@xrdef{Readline Bare Essentials-pg}{107}
@xrdef{Readline Movement Commands-pg}{107}
@xrdef{Readline Bare Essentials-pg}{108}
@xrdef{Readline Movement Commands-pg}{108}
@xrdef{Readline Arguments-title}{Readline Arguments}
@xrdef{Readline Arguments-snt}{Section@tie 8.2.4}
@xrdef{Searching-title}{Searching for Commands in the History}
@xrdef{Searching-snt}{Section@tie 8.2.5}
@xrdef{Readline Killing Commands-pg}{108}
@xrdef{Readline Arguments-pg}{108}
@xrdef{Searching-pg}{108}
@xrdef{Readline Killing Commands-pg}{109}
@xrdef{Readline Arguments-pg}{109}
@xrdef{Searching-pg}{109}
@xrdef{Readline Init File-title}{Readline Init File}
@xrdef{Readline Init File-snt}{Section@tie 8.3}
@xrdef{Readline Init File Syntax-title}{Readline Init File Syntax}
@xrdef{Readline Init File Syntax-snt}{Section@tie 8.3.1}
@xrdef{Readline Init File-pg}{109}
@xrdef{Readline Init File Syntax-pg}{109}
@xrdef{Readline Init File-pg}{110}
@xrdef{Readline Init File Syntax-pg}{110}
@xrdef{Conditional Init Constructs-title}{Conditional Init Constructs}
@xrdef{Conditional Init Constructs-snt}{Section@tie 8.3.2}
@xrdef{Conditional Init Constructs-pg}{117}
@xrdef{Conditional Init Constructs-pg}{118}
@xrdef{Sample Init File-title}{Sample Init File}
@xrdef{Sample Init File-snt}{Section@tie 8.3.3}
@xrdef{Sample Init File-pg}{118}
@xrdef{Sample Init File-pg}{119}
@xrdef{Bindable Readline Commands-title}{Bindable Readline Commands}
@xrdef{Bindable Readline Commands-snt}{Section@tie 8.4}
@xrdef{Commands For Moving-title}{Commands For Moving}
@xrdef{Commands For Moving-snt}{Section@tie 8.4.1}
@xrdef{Bindable Readline Commands-pg}{121}
@xrdef{Commands For Moving-pg}{121}
@xrdef{Bindable Readline Commands-pg}{122}
@xrdef{Commands For Moving-pg}{122}
@xrdef{Commands For History-title}{Commands For Manipulating The History}
@xrdef{Commands For History-snt}{Section@tie 8.4.2}
@xrdef{Commands For History-pg}{122}
@xrdef{Commands For History-pg}{123}
@xrdef{Commands For Text-title}{Commands For Changing Text}
@xrdef{Commands For Text-snt}{Section@tie 8.4.3}
@xrdef{Commands For Text-pg}{123}
@xrdef{Commands For Text-pg}{124}
@xrdef{Commands For Killing-title}{Killing And Yanking}
@xrdef{Commands For Killing-snt}{Section@tie 8.4.4}
@xrdef{Commands For Killing-pg}{125}
@xrdef{Commands For Killing-pg}{126}
@xrdef{Numeric Arguments-title}{Specifying Numeric Arguments}
@xrdef{Numeric Arguments-snt}{Section@tie 8.4.5}
@xrdef{Commands For Completion-title}{Letting Readline Type For You}
@xrdef{Commands For Completion-snt}{Section@tie 8.4.6}
@xrdef{Numeric Arguments-pg}{126}
@xrdef{Commands For Completion-pg}{126}
@xrdef{Numeric Arguments-pg}{127}
@xrdef{Commands For Completion-pg}{127}
@xrdef{Keyboard Macros-title}{Keyboard Macros}
@xrdef{Keyboard Macros-snt}{Section@tie 8.4.7}
@xrdef{Miscellaneous Commands-title}{Some Miscellaneous Commands}
@xrdef{Miscellaneous Commands-snt}{Section@tie 8.4.8}
@xrdef{Keyboard Macros-pg}{128}
@xrdef{Miscellaneous Commands-pg}{128}
@xrdef{Keyboard Macros-pg}{129}
@xrdef{Miscellaneous Commands-pg}{129}
@xrdef{Readline vi Mode-title}{Readline vi Mode}
@xrdef{Readline vi Mode-snt}{Section@tie 8.5}
@xrdef{Readline vi Mode-pg}{130}
@xrdef{Readline vi Mode-pg}{131}
@xrdef{Programmable Completion-title}{Programmable Completion}
@xrdef{Programmable Completion-snt}{Section@tie 8.6}
@xrdef{Programmable Completion-pg}{131}
@xrdef{Programmable Completion-pg}{132}
@xrdef{Programmable Completion Builtins-title}{Programmable Completion Builtins}
@xrdef{Programmable Completion Builtins-snt}{Section@tie 8.7}
@xrdef{Programmable Completion Builtins-pg}{133}
@xrdef{Programmable Completion Builtins-pg}{134}
@xrdef{A Programmable Completion Example-title}{A Programmable Completion Example}
@xrdef{A Programmable Completion Example-snt}{Section@tie 8.8}
@xrdef{A Programmable Completion Example-pg}{137}
@xrdef{A Programmable Completion Example-pg}{138}
@xrdef{Using History Interactively-title}{Using History Interactively}
@xrdef{Using History Interactively-snt}{Chapter@tie 9}
@xrdef{Bash History Facilities-title}{Bash History Facilities}
@xrdef{Bash History Facilities-snt}{Section@tie 9.1}
@xrdef{Bash History Builtins-title}{Bash History Builtins}
@xrdef{Bash History Builtins-snt}{Section@tie 9.2}
@xrdef{Using History Interactively-pg}{140}
@xrdef{Bash History Facilities-pg}{140}
@xrdef{Bash History Builtins-pg}{140}
@xrdef{Using History Interactively-pg}{141}
@xrdef{Bash History Facilities-pg}{141}
@xrdef{Bash History Builtins-pg}{141}
@xrdef{History Interaction-title}{History Expansion}
@xrdef{History Interaction-snt}{Section@tie 9.3}
@xrdef{History Interaction-pg}{142}
@xrdef{History Interaction-pg}{143}
@xrdef{Event Designators-title}{Event Designators}
@xrdef{Event Designators-snt}{Section@tie 9.3.1}
@xrdef{Word Designators-title}{Word Designators}
@xrdef{Word Designators-snt}{Section@tie 9.3.2}
@xrdef{Event Designators-pg}{143}
@xrdef{Word Designators-pg}{143}
@xrdef{Event Designators-pg}{144}
@xrdef{Word Designators-pg}{144}
@xrdef{Modifiers-title}{Modifiers}
@xrdef{Modifiers-snt}{Section@tie 9.3.3}
@xrdef{Modifiers-pg}{144}
@xrdef{Modifiers-pg}{145}
@xrdef{Installing Bash-title}{Installing Bash}
@xrdef{Installing Bash-snt}{Chapter@tie 10}
@xrdef{Basic Installation-title}{Basic Installation}
@xrdef{Basic Installation-snt}{Section@tie 10.1}
@xrdef{Installing Bash-pg}{146}
@xrdef{Basic Installation-pg}{146}
@xrdef{Installing Bash-pg}{147}
@xrdef{Basic Installation-pg}{147}
@xrdef{Compilers and Options-title}{Compilers and Options}
@xrdef{Compilers and Options-snt}{Section@tie 10.2}
@xrdef{Compiling For Multiple Architectures-title}{Compiling For Multiple Architectures}
@xrdef{Compiling For Multiple Architectures-snt}{Section@tie 10.3}
@xrdef{Installation Names-title}{Installation Names}
@xrdef{Installation Names-snt}{Section@tie 10.4}
@xrdef{Compilers and Options-pg}{147}
@xrdef{Compiling For Multiple Architectures-pg}{147}
@xrdef{Installation Names-pg}{147}
@xrdef{Compilers and Options-pg}{148}
@xrdef{Compiling For Multiple Architectures-pg}{148}
@xrdef{Installation Names-pg}{148}
@xrdef{Specifying the System Type-title}{Specifying the System Type}
@xrdef{Specifying the System Type-snt}{Section@tie 10.5}
@xrdef{Sharing Defaults-title}{Sharing Defaults}
@@ -351,34 +351,34 @@
@xrdef{Operation Controls-snt}{Section@tie 10.7}
@xrdef{Optional Features-title}{Optional Features}
@xrdef{Optional Features-snt}{Section@tie 10.8}
@xrdef{Specifying the System Type-pg}{148}
@xrdef{Sharing Defaults-pg}{148}
@xrdef{Operation Controls-pg}{148}
@xrdef{Optional Features-pg}{149}
@xrdef{Specifying the System Type-pg}{149}
@xrdef{Sharing Defaults-pg}{149}
@xrdef{Operation Controls-pg}{149}
@xrdef{Optional Features-pg}{150}
@xrdef{Reporting Bugs-title}{Reporting Bugs}
@xrdef{Reporting Bugs-snt}{Appendix@tie @char65{}}
@xrdef{Reporting Bugs-pg}{154}
@xrdef{Reporting Bugs-pg}{155}
@xrdef{Major Differences From The Bourne Shell-title}{Major Differences From The Bourne Shell}
@xrdef{Major Differences From The Bourne Shell-snt}{Appendix@tie @char66{}}
@xrdef{Major Differences From The Bourne Shell-pg}{155}
@xrdef{Major Differences From The Bourne Shell-pg}{156}
@xrdef{GNU Free Documentation License-title}{GNU Free Documentation License}
@xrdef{GNU Free Documentation License-snt}{Appendix@tie @char67{}}
@xrdef{GNU Free Documentation License-pg}{161}
@xrdef{GNU Free Documentation License-pg}{162}
@xrdef{Indexes-title}{Indexes}
@xrdef{Indexes-snt}{Appendix@tie @char68{}}
@xrdef{Builtin Index-title}{Index of Shell Builtin Commands}
@xrdef{Builtin Index-snt}{Section@tie @char68.1}
@xrdef{Indexes-pg}{169}
@xrdef{Builtin Index-pg}{169}
@xrdef{Indexes-pg}{170}
@xrdef{Builtin Index-pg}{170}
@xrdef{Reserved Word Index-title}{Index of Shell Reserved Words}
@xrdef{Reserved Word Index-snt}{Section@tie @char68.2}
@xrdef{Variable Index-title}{Parameter and Variable Index}
@xrdef{Variable Index-snt}{Section@tie @char68.3}
@xrdef{Reserved Word Index-pg}{170}
@xrdef{Variable Index-pg}{171}
@xrdef{Reserved Word Index-pg}{171}
@xrdef{Variable Index-pg}{172}
@xrdef{Function Index-title}{Function Index}
@xrdef{Function Index-snt}{Section@tie @char68.4}
@xrdef{Function Index-pg}{173}
@xrdef{Function Index-pg}{174}
@xrdef{Concept Index-title}{Concept Index}
@xrdef{Concept Index-snt}{Section@tie @char68.5}
@xrdef{Concept Index-pg}{175}
@xrdef{Concept Index-pg}{176}
+18 -18
View File
@@ -17,16 +17,16 @@
\entry{[}{47}{\code {[}}
\entry{times}{49}{\code {times}}
\entry{trap}{49}{\code {trap}}
\entry{umask}{49}{\code {umask}}
\entry{umask}{50}{\code {umask}}
\entry{unset}{50}{\code {unset}}
\entry{alias}{50}{\code {alias}}
\entry{bind}{50}{\code {bind}}
\entry{builtin}{51}{\code {builtin}}
\entry{builtin}{52}{\code {builtin}}
\entry{caller}{52}{\code {caller}}
\entry{command}{52}{\code {command}}
\entry{declare}{52}{\code {declare}}
\entry{echo}{54}{\code {echo}}
\entry{enable}{54}{\code {enable}}
\entry{enable}{55}{\code {enable}}
\entry{help}{55}{\code {help}}
\entry{let}{55}{\code {let}}
\entry{local}{55}{\code {local}}
@@ -42,18 +42,18 @@
\entry{unalias}{61}{\code {unalias}}
\entry{set}{61}{\code {set}}
\entry{shopt}{65}{\code {shopt}}
\entry{dirs}{95}{\code {dirs}}
\entry{popd}{95}{\code {popd}}
\entry{pushd}{96}{\code {pushd}}
\entry{bg}{103}{\code {bg}}
\entry{fg}{103}{\code {fg}}
\entry{jobs}{103}{\code {jobs}}
\entry{kill}{104}{\code {kill}}
\entry{wait}{104}{\code {wait}}
\entry{disown}{104}{\code {disown}}
\entry{suspend}{105}{\code {suspend}}
\entry{compgen}{133}{\code {compgen}}
\entry{complete}{133}{\code {complete}}
\entry{compopt}{136}{\code {compopt}}
\entry{fc}{141}{\code {fc}}
\entry{history}{141}{\code {history}}
\entry{dirs}{96}{\code {dirs}}
\entry{popd}{96}{\code {popd}}
\entry{pushd}{97}{\code {pushd}}
\entry{bg}{104}{\code {bg}}
\entry{fg}{104}{\code {fg}}
\entry{jobs}{104}{\code {jobs}}
\entry{kill}{105}{\code {kill}}
\entry{wait}{105}{\code {wait}}
\entry{disown}{105}{\code {disown}}
\entry{suspend}{106}{\code {suspend}}
\entry{compgen}{134}{\code {compgen}}
\entry{complete}{134}{\code {complete}}
\entry{compopt}{137}{\code {compopt}}
\entry{fc}{142}{\code {fc}}
\entry{history}{142}{\code {history}}
+18 -18
View File
@@ -7,42 +7,42 @@
\initial {A}
\entry {\code {alias}}{50}
\initial {B}
\entry {\code {bg}}{103}
\entry {\code {bg}}{104}
\entry {\code {bind}}{50}
\entry {\code {break}}{44}
\entry {\code {builtin}}{51}
\entry {\code {builtin}}{52}
\initial {C}
\entry {\code {caller}}{52}
\entry {\code {cd}}{44}
\entry {\code {command}}{52}
\entry {\code {compgen}}{133}
\entry {\code {complete}}{133}
\entry {\code {compopt}}{136}
\entry {\code {compgen}}{134}
\entry {\code {complete}}{134}
\entry {\code {compopt}}{137}
\entry {\code {continue}}{44}
\initial {D}
\entry {\code {declare}}{52}
\entry {\code {dirs}}{95}
\entry {\code {disown}}{104}
\entry {\code {dirs}}{96}
\entry {\code {disown}}{105}
\initial {E}
\entry {\code {echo}}{54}
\entry {\code {enable}}{54}
\entry {\code {enable}}{55}
\entry {\code {eval}}{44}
\entry {\code {exec}}{45}
\entry {\code {exit}}{45}
\entry {\code {export}}{45}
\initial {F}
\entry {\code {fc}}{141}
\entry {\code {fg}}{103}
\entry {\code {fc}}{142}
\entry {\code {fg}}{104}
\initial {G}
\entry {\code {getopts}}{45}
\initial {H}
\entry {\code {hash}}{46}
\entry {\code {help}}{55}
\entry {\code {history}}{141}
\entry {\code {history}}{142}
\initial {J}
\entry {\code {jobs}}{103}
\entry {\code {jobs}}{104}
\initial {K}
\entry {\code {kill}}{104}
\entry {\code {kill}}{105}
\initial {L}
\entry {\code {let}}{55}
\entry {\code {local}}{55}
@@ -50,9 +50,9 @@
\initial {M}
\entry {\code {mapfile}}{56}
\initial {P}
\entry {\code {popd}}{95}
\entry {\code {popd}}{96}
\entry {\code {printf}}{56}
\entry {\code {pushd}}{96}
\entry {\code {pushd}}{97}
\entry {\code {pwd}}{46}
\initial {R}
\entry {\code {read}}{57}
@@ -64,7 +64,7 @@
\entry {\code {shift}}{47}
\entry {\code {shopt}}{65}
\entry {\code {source}}{59}
\entry {\code {suspend}}{105}
\entry {\code {suspend}}{106}
\initial {T}
\entry {\code {test}}{47}
\entry {\code {times}}{49}
@@ -73,8 +73,8 @@
\entry {\code {typeset}}{59}
\initial {U}
\entry {\code {ulimit}}{59}
\entry {\code {umask}}{49}
\entry {\code {umask}}{50}
\entry {\code {unalias}}{61}
\entry {\code {unset}}{50}
\initial {W}
\entry {\code {wait}}{104}
\entry {\code {wait}}{105}
+43 -43
View File
@@ -72,47 +72,47 @@
\entry{signal handling}{41}{signal handling}
\entry{shell script}{41}{shell script}
\entry{special builtin}{71}{special builtin}
\entry{login shell}{86}{login shell}
\entry{interactive shell}{86}{interactive shell}
\entry{startup files}{86}{startup files}
\entry{login shell}{87}{login shell}
\entry{interactive shell}{87}{interactive shell}
\entry{shell, interactive}{87}{shell, interactive}
\entry{expressions, conditional}{89}{expressions, conditional}
\entry{arithmetic, shell}{91}{arithmetic, shell}
\entry{shell arithmetic}{91}{shell arithmetic}
\entry{expressions, arithmetic}{91}{expressions, arithmetic}
\entry{evaluation, arithmetic}{91}{evaluation, arithmetic}
\entry{arithmetic evaluation}{91}{arithmetic evaluation}
\entry{alias expansion}{92}{alias expansion}
\entry{arrays}{93}{arrays}
\entry{directory stack}{95}{directory stack}
\entry{prompting}{96}{prompting}
\entry{restricted shell}{97}{restricted shell}
\entry{POSIX Mode}{98}{POSIX Mode}
\entry{job control}{102}{job control}
\entry{foreground}{102}{foreground}
\entry{background}{102}{background}
\entry{suspending jobs}{102}{suspending jobs}
\entry{Readline, how to use}{105}{Readline, how to use}
\entry{interaction, readline}{106}{interaction, readline}
\entry{notation, readline}{107}{notation, readline}
\entry{command editing}{107}{command editing}
\entry{editing command lines}{107}{editing command lines}
\entry{killing text}{108}{killing text}
\entry{yanking text}{108}{yanking text}
\entry{kill ring}{108}{kill ring}
\entry{initialization file, readline}{109}{initialization file, readline}
\entry{variables, readline}{110}{variables, readline}
\entry{programmable completion}{131}{programmable completion}
\entry{completion builtins}{133}{completion builtins}
\entry{History, how to use}{139}{History, how to use}
\entry{command history}{140}{command history}
\entry{history list}{140}{history list}
\entry{history builtins}{140}{history builtins}
\entry{history expansion}{142}{history expansion}
\entry{event designators}{143}{event designators}
\entry{history events}{143}{history events}
\entry{installation}{146}{installation}
\entry{configuration}{146}{configuration}
\entry{Bash installation}{146}{Bash installation}
\entry{Bash configuration}{146}{Bash configuration}
\entry{startup files}{87}{startup files}
\entry{interactive shell}{88}{interactive shell}
\entry{shell, interactive}{88}{shell, interactive}
\entry{expressions, conditional}{90}{expressions, conditional}
\entry{arithmetic, shell}{92}{arithmetic, shell}
\entry{shell arithmetic}{92}{shell arithmetic}
\entry{expressions, arithmetic}{92}{expressions, arithmetic}
\entry{evaluation, arithmetic}{92}{evaluation, arithmetic}
\entry{arithmetic evaluation}{92}{arithmetic evaluation}
\entry{alias expansion}{93}{alias expansion}
\entry{arrays}{94}{arrays}
\entry{directory stack}{96}{directory stack}
\entry{prompting}{97}{prompting}
\entry{restricted shell}{98}{restricted shell}
\entry{POSIX Mode}{99}{POSIX Mode}
\entry{job control}{103}{job control}
\entry{foreground}{103}{foreground}
\entry{background}{103}{background}
\entry{suspending jobs}{103}{suspending jobs}
\entry{Readline, how to use}{106}{Readline, how to use}
\entry{interaction, readline}{107}{interaction, readline}
\entry{notation, readline}{108}{notation, readline}
\entry{command editing}{108}{command editing}
\entry{editing command lines}{108}{editing command lines}
\entry{killing text}{109}{killing text}
\entry{yanking text}{109}{yanking text}
\entry{kill ring}{109}{kill ring}
\entry{initialization file, readline}{110}{initialization file, readline}
\entry{variables, readline}{111}{variables, readline}
\entry{programmable completion}{132}{programmable completion}
\entry{completion builtins}{134}{completion builtins}
\entry{History, how to use}{140}{History, how to use}
\entry{command history}{141}{command history}
\entry{history list}{141}{history list}
\entry{history builtins}{141}{history builtins}
\entry{history expansion}{143}{history expansion}
\entry{event designators}{144}{event designators}
\entry{history events}{144}{history events}
\entry{installation}{147}{installation}
\entry{configuration}{147}{configuration}
\entry{Bash installation}{147}{Bash installation}
\entry{Bash configuration}{147}{Bash configuration}
+43 -43
View File
@@ -1,21 +1,21 @@
\initial {A}
\entry {alias expansion}{92}
\entry {arithmetic evaluation}{91}
\entry {alias expansion}{93}
\entry {arithmetic evaluation}{92}
\entry {arithmetic expansion}{31}
\entry {arithmetic, shell}{91}
\entry {arrays}{93}
\entry {arithmetic, shell}{92}
\entry {arrays}{94}
\initial {B}
\entry {background}{102}
\entry {Bash configuration}{146}
\entry {Bash installation}{146}
\entry {background}{103}
\entry {Bash configuration}{147}
\entry {Bash installation}{147}
\entry {Bourne shell}{5}
\entry {brace expansion}{23}
\entry {builtin}{3}
\initial {C}
\entry {command editing}{107}
\entry {command editing}{108}
\entry {command execution}{38}
\entry {command expansion}{38}
\entry {command history}{140}
\entry {command history}{141}
\entry {command search}{38}
\entry {command substitution}{30}
\entry {command timing}{8}
@@ -28,17 +28,17 @@
\entry {commands, shell}{8}
\entry {commands, simple}{8}
\entry {comments, shell}{7}
\entry {completion builtins}{133}
\entry {configuration}{146}
\entry {completion builtins}{134}
\entry {configuration}{147}
\entry {control operator}{3}
\entry {coprocess}{15}
\initial {D}
\entry {directory stack}{95}
\entry {directory stack}{96}
\initial {E}
\entry {editing command lines}{107}
\entry {editing command lines}{108}
\entry {environment}{40}
\entry {evaluation, arithmetic}{91}
\entry {event designators}{143}
\entry {evaluation, arithmetic}{92}
\entry {event designators}{144}
\entry {execution environment}{39}
\entry {exit status}{3, 40}
\entry {expansion}{22}
@@ -48,43 +48,43 @@
\entry {expansion, parameter}{24}
\entry {expansion, pathname}{32}
\entry {expansion, tilde}{23}
\entry {expressions, arithmetic}{91}
\entry {expressions, conditional}{89}
\entry {expressions, arithmetic}{92}
\entry {expressions, conditional}{90}
\initial {F}
\entry {field}{3}
\entry {filename}{3}
\entry {filename expansion}{32}
\entry {foreground}{102}
\entry {foreground}{103}
\entry {functions, shell}{17}
\initial {H}
\entry {history builtins}{140}
\entry {history events}{143}
\entry {history expansion}{142}
\entry {history list}{140}
\entry {History, how to use}{139}
\entry {history builtins}{141}
\entry {history events}{144}
\entry {history expansion}{143}
\entry {history list}{141}
\entry {History, how to use}{140}
\initial {I}
\entry {identifier}{3}
\entry {initialization file, readline}{109}
\entry {installation}{146}
\entry {interaction, readline}{106}
\entry {interactive shell}{86, 87}
\entry {initialization file, readline}{110}
\entry {installation}{147}
\entry {interaction, readline}{107}
\entry {interactive shell}{87, 88}
\entry {internationalization}{7}
\initial {J}
\entry {job}{3}
\entry {job control}{3, 102}
\entry {job control}{3, 103}
\initial {K}
\entry {kill ring}{108}
\entry {killing text}{108}
\entry {kill ring}{109}
\entry {killing text}{109}
\initial {L}
\entry {localization}{7}
\entry {login shell}{86}
\entry {login shell}{87}
\initial {M}
\entry {matching, pattern}{33}
\entry {metacharacter}{3}
\initial {N}
\entry {name}{3}
\entry {native languages}{7}
\entry {notation, readline}{107}
\entry {notation, readline}{108}
\initial {O}
\entry {operator, shell}{3}
\initial {P}
@@ -96,41 +96,41 @@
\entry {pattern matching}{33}
\entry {pipeline}{8}
\entry {POSIX}{3}
\entry {POSIX Mode}{98}
\entry {POSIX Mode}{99}
\entry {process group}{3}
\entry {process group ID}{3}
\entry {process substitution}{31}
\entry {programmable completion}{131}
\entry {prompting}{96}
\entry {programmable completion}{132}
\entry {prompting}{97}
\initial {Q}
\entry {quoting}{6}
\entry {quoting, ANSI}{6}
\initial {R}
\entry {Readline, how to use}{105}
\entry {Readline, how to use}{106}
\entry {redirection}{34}
\entry {reserved word}{3}
\entry {restricted shell}{97}
\entry {restricted shell}{98}
\entry {return status}{4}
\initial {S}
\entry {shell arithmetic}{91}
\entry {shell arithmetic}{92}
\entry {shell function}{17}
\entry {shell script}{41}
\entry {shell variable}{19}
\entry {shell, interactive}{87}
\entry {shell, interactive}{88}
\entry {signal}{4}
\entry {signal handling}{41}
\entry {special builtin}{4, 71}
\entry {startup files}{86}
\entry {suspending jobs}{102}
\entry {startup files}{87}
\entry {suspending jobs}{103}
\initial {T}
\entry {tilde expansion}{23}
\entry {token}{4}
\entry {translation, native languages}{7}
\initial {V}
\entry {variable, shell}{19}
\entry {variables, readline}{110}
\entry {variables, readline}{111}
\initial {W}
\entry {word}{4}
\entry {word splitting}{31}
\initial {Y}
\entry {yanking text}{108}
\entry {yanking text}{109}
BIN
View File
Binary file not shown.
+110 -110
View File
@@ -1,110 +1,110 @@
\entry{beginning-of-line (C-a)}{121}{\code {beginning-of-line (C-a)}}
\entry{end-of-line (C-e)}{121}{\code {end-of-line (C-e)}}
\entry{forward-char (C-f)}{121}{\code {forward-char (C-f)}}
\entry{backward-char (C-b)}{121}{\code {backward-char (C-b)}}
\entry{forward-word (M-f)}{121}{\code {forward-word (M-f)}}
\entry{backward-word (M-b)}{121}{\code {backward-word (M-b)}}
\entry{shell-forward-word ()}{121}{\code {shell-forward-word ()}}
\entry{shell-backward-word ()}{121}{\code {shell-backward-word ()}}
\entry{previous-screen-line ()}{121}{\code {previous-screen-line ()}}
\entry{next-screen-line ()}{122}{\code {next-screen-line ()}}
\entry{clear-screen (C-l)}{122}{\code {clear-screen (C-l)}}
\entry{redraw-current-line ()}{122}{\code {redraw-current-line ()}}
\entry{accept-line (Newline or Return)}{122}{\code {accept-line (Newline or Return)}}
\entry{previous-history (C-p)}{122}{\code {previous-history (C-p)}}
\entry{next-history (C-n)}{122}{\code {next-history (C-n)}}
\entry{beginning-of-history (M-<)}{122}{\code {beginning-of-history (M-<)}}
\entry{end-of-history (M->)}{122}{\code {end-of-history (M->)}}
\entry{reverse-search-history (C-r)}{122}{\code {reverse-search-history (C-r)}}
\entry{forward-search-history (C-s)}{122}{\code {forward-search-history (C-s)}}
\entry{non-incremental-reverse-search-history (M-p)}{122}{\code {non-incremental-reverse-search-history (M-p)}}
\entry{non-incremental-forward-search-history (M-n)}{122}{\code {non-incremental-forward-search-history (M-n)}}
\entry{history-search-forward ()}{122}{\code {history-search-forward ()}}
\entry{history-search-backward ()}{123}{\code {history-search-backward ()}}
\entry{history-substring-search-forward ()}{123}{\code {history-substring-search-forward ()}}
\entry{history-substring-search-backward ()}{123}{\code {history-substring-search-backward ()}}
\entry{yank-nth-arg (M-C-y)}{123}{\code {yank-nth-arg (M-C-y)}}
\entry{yank-last-arg (M-. or M-_)}{123}{\code {yank-last-arg (M-. or M-_)}}
\entry{end-of-file (usually C-d)}{123}{\code {\i {end-of-file} (usually C-d)}}
\entry{delete-char (C-d)}{123}{\code {delete-char (C-d)}}
\entry{backward-delete-char (Rubout)}{124}{\code {backward-delete-char (Rubout)}}
\entry{forward-backward-delete-char ()}{124}{\code {forward-backward-delete-char ()}}
\entry{quoted-insert (C-q or C-v)}{124}{\code {quoted-insert (C-q or C-v)}}
\entry{self-insert (a, b, A, 1, !, ...{})}{124}{\code {self-insert (a, b, A, 1, !, \dots {})}}
\entry{bracketed-paste-begin ()}{124}{\code {bracketed-paste-begin ()}}
\entry{transpose-chars (C-t)}{124}{\code {transpose-chars (C-t)}}
\entry{transpose-words (M-t)}{124}{\code {transpose-words (M-t)}}
\entry{upcase-word (M-u)}{124}{\code {upcase-word (M-u)}}
\entry{downcase-word (M-l)}{124}{\code {downcase-word (M-l)}}
\entry{capitalize-word (M-c)}{124}{\code {capitalize-word (M-c)}}
\entry{overwrite-mode ()}{124}{\code {overwrite-mode ()}}
\entry{kill-line (C-k)}{125}{\code {kill-line (C-k)}}
\entry{backward-kill-line (C-x Rubout)}{125}{\code {backward-kill-line (C-x Rubout)}}
\entry{unix-line-discard (C-u)}{125}{\code {unix-line-discard (C-u)}}
\entry{kill-whole-line ()}{125}{\code {kill-whole-line ()}}
\entry{kill-word (M-d)}{125}{\code {kill-word (M-d)}}
\entry{backward-kill-word (M-DEL)}{125}{\code {backward-kill-word (M-\key {DEL})}}
\entry{shell-kill-word ()}{125}{\code {shell-kill-word ()}}
\entry{shell-backward-kill-word ()}{125}{\code {shell-backward-kill-word ()}}
\entry{unix-word-rubout (C-w)}{125}{\code {unix-word-rubout (C-w)}}
\entry{unix-filename-rubout ()}{125}{\code {unix-filename-rubout ()}}
\entry{delete-horizontal-space ()}{125}{\code {delete-horizontal-space ()}}
\entry{kill-region ()}{125}{\code {kill-region ()}}
\entry{copy-region-as-kill ()}{125}{\code {copy-region-as-kill ()}}
\entry{copy-backward-word ()}{125}{\code {copy-backward-word ()}}
\entry{copy-forward-word ()}{126}{\code {copy-forward-word ()}}
\entry{yank (C-y)}{126}{\code {yank (C-y)}}
\entry{yank-pop (M-y)}{126}{\code {yank-pop (M-y)}}
\entry{digit-argument (M-0, M-1, ...{} M--)}{126}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}
\entry{universal-argument ()}{126}{\code {universal-argument ()}}
\entry{complete (TAB)}{126}{\code {complete (\key {TAB})}}
\entry{possible-completions (M-?)}{126}{\code {possible-completions (M-?)}}
\entry{insert-completions (M-*)}{126}{\code {insert-completions (M-*)}}
\entry{menu-complete ()}{126}{\code {menu-complete ()}}
\entry{menu-complete-backward ()}{127}{\code {menu-complete-backward ()}}
\entry{delete-char-or-list ()}{127}{\code {delete-char-or-list ()}}
\entry{complete-filename (M-/)}{127}{\code {complete-filename (M-/)}}
\entry{possible-filename-completions (C-x /)}{127}{\code {possible-filename-completions (C-x /)}}
\entry{complete-username (M-~)}{127}{\code {complete-username (M-~)}}
\entry{possible-username-completions (C-x ~)}{127}{\code {possible-username-completions (C-x ~)}}
\entry{complete-variable (M-$)}{127}{\code {complete-variable (M-$)}}
\entry{possible-variable-completions (C-x $)}{127}{\code {possible-variable-completions (C-x $)}}
\entry{complete-hostname (M-@)}{127}{\code {complete-hostname (M-@)}}
\entry{possible-hostname-completions (C-x @)}{127}{\code {possible-hostname-completions (C-x @)}}
\entry{complete-command (M-!)}{127}{\code {complete-command (M-!)}}
\entry{possible-command-completions (C-x !)}{127}{\code {possible-command-completions (C-x !)}}
\entry{dynamic-complete-history (M-TAB)}{127}{\code {dynamic-complete-history (M-\key {TAB})}}
\entry{dabbrev-expand ()}{128}{\code {dabbrev-expand ()}}
\entry{complete-into-braces (M-{\indexlbrace })}{128}{\code {complete-into-braces (M-{\tt \char 123})}}
\entry{start-kbd-macro (C-x ()}{128}{\code {start-kbd-macro (C-x ()}}
\entry{end-kbd-macro (C-x ))}{128}{\code {end-kbd-macro (C-x ))}}
\entry{call-last-kbd-macro (C-x e)}{128}{\code {call-last-kbd-macro (C-x e)}}
\entry{print-last-kbd-macro ()}{128}{\code {print-last-kbd-macro ()}}
\entry{re-read-init-file (C-x C-r)}{128}{\code {re-read-init-file (C-x C-r)}}
\entry{abort (C-g)}{128}{\code {abort (C-g)}}
\entry{do-lowercase-version (M-A, M-B, M-x, ...{})}{128}{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}
\entry{prefix-meta (ESC)}{128}{\code {prefix-meta (\key {ESC})}}
\entry{undo (C-_ or C-x C-u)}{128}{\code {undo (C-_ or C-x C-u)}}
\entry{revert-line (M-r)}{128}{\code {revert-line (M-r)}}
\entry{tilde-expand (M-&)}{128}{\code {tilde-expand (M-&)}}
\entry{set-mark (C-@)}{129}{\code {set-mark (C-@)}}
\entry{exchange-point-and-mark (C-x C-x)}{129}{\code {exchange-point-and-mark (C-x C-x)}}
\entry{character-search (C-])}{129}{\code {character-search (C-])}}
\entry{character-search-backward (M-C-])}{129}{\code {character-search-backward (M-C-])}}
\entry{skip-csi-sequence ()}{129}{\code {skip-csi-sequence ()}}
\entry{insert-comment (M-#)}{129}{\code {insert-comment (M-#)}}
\entry{dump-functions ()}{129}{\code {dump-functions ()}}
\entry{dump-variables ()}{129}{\code {dump-variables ()}}
\entry{dump-macros ()}{129}{\code {dump-macros ()}}
\entry{glob-complete-word (M-g)}{130}{\code {glob-complete-word (M-g)}}
\entry{glob-expand-word (C-x *)}{130}{\code {glob-expand-word (C-x *)}}
\entry{glob-list-expansions (C-x g)}{130}{\code {glob-list-expansions (C-x g)}}
\entry{display-shell-version (C-x C-v)}{130}{\code {display-shell-version (C-x C-v)}}
\entry{shell-expand-line (M-C-e)}{130}{\code {shell-expand-line (M-C-e)}}
\entry{history-expand-line (M-^)}{130}{\code {history-expand-line (M-^)}}
\entry{magic-space ()}{130}{\code {magic-space ()}}
\entry{alias-expand-line ()}{130}{\code {alias-expand-line ()}}
\entry{history-and-alias-expand-line ()}{130}{\code {history-and-alias-expand-line ()}}
\entry{insert-last-argument (M-. or M-_)}{130}{\code {insert-last-argument (M-. or M-_)}}
\entry{operate-and-get-next (C-o)}{130}{\code {operate-and-get-next (C-o)}}
\entry{edit-and-execute-command (C-x C-e)}{130}{\code {edit-and-execute-command (C-x C-e)}}
\entry{beginning-of-line (C-a)}{122}{\code {beginning-of-line (C-a)}}
\entry{end-of-line (C-e)}{122}{\code {end-of-line (C-e)}}
\entry{forward-char (C-f)}{122}{\code {forward-char (C-f)}}
\entry{backward-char (C-b)}{122}{\code {backward-char (C-b)}}
\entry{forward-word (M-f)}{122}{\code {forward-word (M-f)}}
\entry{backward-word (M-b)}{122}{\code {backward-word (M-b)}}
\entry{shell-forward-word ()}{122}{\code {shell-forward-word ()}}
\entry{shell-backward-word ()}{122}{\code {shell-backward-word ()}}
\entry{previous-screen-line ()}{122}{\code {previous-screen-line ()}}
\entry{next-screen-line ()}{123}{\code {next-screen-line ()}}
\entry{clear-screen (C-l)}{123}{\code {clear-screen (C-l)}}
\entry{redraw-current-line ()}{123}{\code {redraw-current-line ()}}
\entry{accept-line (Newline or Return)}{123}{\code {accept-line (Newline or Return)}}
\entry{previous-history (C-p)}{123}{\code {previous-history (C-p)}}
\entry{next-history (C-n)}{123}{\code {next-history (C-n)}}
\entry{beginning-of-history (M-<)}{123}{\code {beginning-of-history (M-<)}}
\entry{end-of-history (M->)}{123}{\code {end-of-history (M->)}}
\entry{reverse-search-history (C-r)}{123}{\code {reverse-search-history (C-r)}}
\entry{forward-search-history (C-s)}{123}{\code {forward-search-history (C-s)}}
\entry{non-incremental-reverse-search-history (M-p)}{123}{\code {non-incremental-reverse-search-history (M-p)}}
\entry{non-incremental-forward-search-history (M-n)}{123}{\code {non-incremental-forward-search-history (M-n)}}
\entry{history-search-forward ()}{123}{\code {history-search-forward ()}}
\entry{history-search-backward ()}{124}{\code {history-search-backward ()}}
\entry{history-substring-search-forward ()}{124}{\code {history-substring-search-forward ()}}
\entry{history-substring-search-backward ()}{124}{\code {history-substring-search-backward ()}}
\entry{yank-nth-arg (M-C-y)}{124}{\code {yank-nth-arg (M-C-y)}}
\entry{yank-last-arg (M-. or M-_)}{124}{\code {yank-last-arg (M-. or M-_)}}
\entry{end-of-file (usually C-d)}{124}{\code {\i {end-of-file} (usually C-d)}}
\entry{delete-char (C-d)}{124}{\code {delete-char (C-d)}}
\entry{backward-delete-char (Rubout)}{125}{\code {backward-delete-char (Rubout)}}
\entry{forward-backward-delete-char ()}{125}{\code {forward-backward-delete-char ()}}
\entry{quoted-insert (C-q or C-v)}{125}{\code {quoted-insert (C-q or C-v)}}
\entry{self-insert (a, b, A, 1, !, ...{})}{125}{\code {self-insert (a, b, A, 1, !, \dots {})}}
\entry{bracketed-paste-begin ()}{125}{\code {bracketed-paste-begin ()}}
\entry{transpose-chars (C-t)}{125}{\code {transpose-chars (C-t)}}
\entry{transpose-words (M-t)}{125}{\code {transpose-words (M-t)}}
\entry{upcase-word (M-u)}{125}{\code {upcase-word (M-u)}}
\entry{downcase-word (M-l)}{125}{\code {downcase-word (M-l)}}
\entry{capitalize-word (M-c)}{125}{\code {capitalize-word (M-c)}}
\entry{overwrite-mode ()}{125}{\code {overwrite-mode ()}}
\entry{kill-line (C-k)}{126}{\code {kill-line (C-k)}}
\entry{backward-kill-line (C-x Rubout)}{126}{\code {backward-kill-line (C-x Rubout)}}
\entry{unix-line-discard (C-u)}{126}{\code {unix-line-discard (C-u)}}
\entry{kill-whole-line ()}{126}{\code {kill-whole-line ()}}
\entry{kill-word (M-d)}{126}{\code {kill-word (M-d)}}
\entry{backward-kill-word (M-DEL)}{126}{\code {backward-kill-word (M-\key {DEL})}}
\entry{shell-kill-word ()}{126}{\code {shell-kill-word ()}}
\entry{shell-backward-kill-word ()}{126}{\code {shell-backward-kill-word ()}}
\entry{unix-word-rubout (C-w)}{126}{\code {unix-word-rubout (C-w)}}
\entry{unix-filename-rubout ()}{126}{\code {unix-filename-rubout ()}}
\entry{delete-horizontal-space ()}{126}{\code {delete-horizontal-space ()}}
\entry{kill-region ()}{126}{\code {kill-region ()}}
\entry{copy-region-as-kill ()}{126}{\code {copy-region-as-kill ()}}
\entry{copy-backward-word ()}{126}{\code {copy-backward-word ()}}
\entry{copy-forward-word ()}{127}{\code {copy-forward-word ()}}
\entry{yank (C-y)}{127}{\code {yank (C-y)}}
\entry{yank-pop (M-y)}{127}{\code {yank-pop (M-y)}}
\entry{digit-argument (M-0, M-1, ...{} M--)}{127}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}
\entry{universal-argument ()}{127}{\code {universal-argument ()}}
\entry{complete (TAB)}{127}{\code {complete (\key {TAB})}}
\entry{possible-completions (M-?)}{127}{\code {possible-completions (M-?)}}
\entry{insert-completions (M-*)}{127}{\code {insert-completions (M-*)}}
\entry{menu-complete ()}{127}{\code {menu-complete ()}}
\entry{menu-complete-backward ()}{128}{\code {menu-complete-backward ()}}
\entry{delete-char-or-list ()}{128}{\code {delete-char-or-list ()}}
\entry{complete-filename (M-/)}{128}{\code {complete-filename (M-/)}}
\entry{possible-filename-completions (C-x /)}{128}{\code {possible-filename-completions (C-x /)}}
\entry{complete-username (M-~)}{128}{\code {complete-username (M-~)}}
\entry{possible-username-completions (C-x ~)}{128}{\code {possible-username-completions (C-x ~)}}
\entry{complete-variable (M-$)}{128}{\code {complete-variable (M-$)}}
\entry{possible-variable-completions (C-x $)}{128}{\code {possible-variable-completions (C-x $)}}
\entry{complete-hostname (M-@)}{128}{\code {complete-hostname (M-@)}}
\entry{possible-hostname-completions (C-x @)}{128}{\code {possible-hostname-completions (C-x @)}}
\entry{complete-command (M-!)}{128}{\code {complete-command (M-!)}}
\entry{possible-command-completions (C-x !)}{128}{\code {possible-command-completions (C-x !)}}
\entry{dynamic-complete-history (M-TAB)}{128}{\code {dynamic-complete-history (M-\key {TAB})}}
\entry{dabbrev-expand ()}{129}{\code {dabbrev-expand ()}}
\entry{complete-into-braces (M-{\indexlbrace })}{129}{\code {complete-into-braces (M-{\tt \char 123})}}
\entry{start-kbd-macro (C-x ()}{129}{\code {start-kbd-macro (C-x ()}}
\entry{end-kbd-macro (C-x ))}{129}{\code {end-kbd-macro (C-x ))}}
\entry{call-last-kbd-macro (C-x e)}{129}{\code {call-last-kbd-macro (C-x e)}}
\entry{print-last-kbd-macro ()}{129}{\code {print-last-kbd-macro ()}}
\entry{re-read-init-file (C-x C-r)}{129}{\code {re-read-init-file (C-x C-r)}}
\entry{abort (C-g)}{129}{\code {abort (C-g)}}
\entry{do-lowercase-version (M-A, M-B, M-x, ...{})}{129}{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}
\entry{prefix-meta (ESC)}{129}{\code {prefix-meta (\key {ESC})}}
\entry{undo (C-_ or C-x C-u)}{129}{\code {undo (C-_ or C-x C-u)}}
\entry{revert-line (M-r)}{129}{\code {revert-line (M-r)}}
\entry{tilde-expand (M-&)}{129}{\code {tilde-expand (M-&)}}
\entry{set-mark (C-@)}{130}{\code {set-mark (C-@)}}
\entry{exchange-point-and-mark (C-x C-x)}{130}{\code {exchange-point-and-mark (C-x C-x)}}
\entry{character-search (C-])}{130}{\code {character-search (C-])}}
\entry{character-search-backward (M-C-])}{130}{\code {character-search-backward (M-C-])}}
\entry{skip-csi-sequence ()}{130}{\code {skip-csi-sequence ()}}
\entry{insert-comment (M-#)}{130}{\code {insert-comment (M-#)}}
\entry{dump-functions ()}{130}{\code {dump-functions ()}}
\entry{dump-variables ()}{130}{\code {dump-variables ()}}
\entry{dump-macros ()}{130}{\code {dump-macros ()}}
\entry{glob-complete-word (M-g)}{131}{\code {glob-complete-word (M-g)}}
\entry{glob-expand-word (C-x *)}{131}{\code {glob-expand-word (C-x *)}}
\entry{glob-list-expansions (C-x g)}{131}{\code {glob-list-expansions (C-x g)}}
\entry{display-shell-version (C-x C-v)}{131}{\code {display-shell-version (C-x C-v)}}
\entry{shell-expand-line (M-C-e)}{131}{\code {shell-expand-line (M-C-e)}}
\entry{history-expand-line (M-^)}{131}{\code {history-expand-line (M-^)}}
\entry{magic-space ()}{131}{\code {magic-space ()}}
\entry{alias-expand-line ()}{131}{\code {alias-expand-line ()}}
\entry{history-and-alias-expand-line ()}{131}{\code {history-and-alias-expand-line ()}}
\entry{insert-last-argument (M-. or M-_)}{131}{\code {insert-last-argument (M-. or M-_)}}
\entry{operate-and-get-next (C-o)}{131}{\code {operate-and-get-next (C-o)}}
\entry{edit-and-execute-command (C-x C-e)}{131}{\code {edit-and-execute-command (C-x C-e)}}
+110 -110
View File
@@ -1,130 +1,130 @@
\initial {A}
\entry {\code {abort (C-g)}}{128}
\entry {\code {accept-line (Newline or Return)}}{122}
\entry {\code {alias-expand-line ()}}{130}
\entry {\code {abort (C-g)}}{129}
\entry {\code {accept-line (Newline or Return)}}{123}
\entry {\code {alias-expand-line ()}}{131}
\initial {B}
\entry {\code {backward-char (C-b)}}{121}
\entry {\code {backward-delete-char (Rubout)}}{124}
\entry {\code {backward-kill-line (C-x Rubout)}}{125}
\entry {\code {backward-kill-word (M-\key {DEL})}}{125}
\entry {\code {backward-word (M-b)}}{121}
\entry {\code {beginning-of-history (M-<)}}{122}
\entry {\code {beginning-of-line (C-a)}}{121}
\entry {\code {bracketed-paste-begin ()}}{124}
\entry {\code {backward-char (C-b)}}{122}
\entry {\code {backward-delete-char (Rubout)}}{125}
\entry {\code {backward-kill-line (C-x Rubout)}}{126}
\entry {\code {backward-kill-word (M-\key {DEL})}}{126}
\entry {\code {backward-word (M-b)}}{122}
\entry {\code {beginning-of-history (M-<)}}{123}
\entry {\code {beginning-of-line (C-a)}}{122}
\entry {\code {bracketed-paste-begin ()}}{125}
\initial {C}
\entry {\code {call-last-kbd-macro (C-x e)}}{128}
\entry {\code {capitalize-word (M-c)}}{124}
\entry {\code {character-search (C-])}}{129}
\entry {\code {character-search-backward (M-C-])}}{129}
\entry {\code {clear-screen (C-l)}}{122}
\entry {\code {complete (\key {TAB})}}{126}
\entry {\code {complete-command (M-!)}}{127}
\entry {\code {complete-filename (M-/)}}{127}
\entry {\code {complete-hostname (M-@)}}{127}
\entry {\code {complete-into-braces (M-{\tt \char 123})}}{128}
\entry {\code {complete-username (M-~)}}{127}
\entry {\code {complete-variable (M-$)}}{127}
\entry {\code {copy-backward-word ()}}{125}
\entry {\code {copy-forward-word ()}}{126}
\entry {\code {copy-region-as-kill ()}}{125}
\entry {\code {call-last-kbd-macro (C-x e)}}{129}
\entry {\code {capitalize-word (M-c)}}{125}
\entry {\code {character-search (C-])}}{130}
\entry {\code {character-search-backward (M-C-])}}{130}
\entry {\code {clear-screen (C-l)}}{123}
\entry {\code {complete (\key {TAB})}}{127}
\entry {\code {complete-command (M-!)}}{128}
\entry {\code {complete-filename (M-/)}}{128}
\entry {\code {complete-hostname (M-@)}}{128}
\entry {\code {complete-into-braces (M-{\tt \char 123})}}{129}
\entry {\code {complete-username (M-~)}}{128}
\entry {\code {complete-variable (M-$)}}{128}
\entry {\code {copy-backward-word ()}}{126}
\entry {\code {copy-forward-word ()}}{127}
\entry {\code {copy-region-as-kill ()}}{126}
\initial {D}
\entry {\code {dabbrev-expand ()}}{128}
\entry {\code {delete-char (C-d)}}{123}
\entry {\code {delete-char-or-list ()}}{127}
\entry {\code {delete-horizontal-space ()}}{125}
\entry {\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{126}
\entry {\code {display-shell-version (C-x C-v)}}{130}
\entry {\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}{128}
\entry {\code {downcase-word (M-l)}}{124}
\entry {\code {dump-functions ()}}{129}
\entry {\code {dump-macros ()}}{129}
\entry {\code {dump-variables ()}}{129}
\entry {\code {dynamic-complete-history (M-\key {TAB})}}{127}
\entry {\code {dabbrev-expand ()}}{129}
\entry {\code {delete-char (C-d)}}{124}
\entry {\code {delete-char-or-list ()}}{128}
\entry {\code {delete-horizontal-space ()}}{126}
\entry {\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{127}
\entry {\code {display-shell-version (C-x C-v)}}{131}
\entry {\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}{129}
\entry {\code {downcase-word (M-l)}}{125}
\entry {\code {dump-functions ()}}{130}
\entry {\code {dump-macros ()}}{130}
\entry {\code {dump-variables ()}}{130}
\entry {\code {dynamic-complete-history (M-\key {TAB})}}{128}
\initial {E}
\entry {\code {edit-and-execute-command (C-x C-e)}}{130}
\entry {\code {end-kbd-macro (C-x ))}}{128}
\entry {\code {\i {end-of-file} (usually C-d)}}{123}
\entry {\code {end-of-history (M->)}}{122}
\entry {\code {end-of-line (C-e)}}{121}
\entry {\code {exchange-point-and-mark (C-x C-x)}}{129}
\entry {\code {edit-and-execute-command (C-x C-e)}}{131}
\entry {\code {end-kbd-macro (C-x ))}}{129}
\entry {\code {\i {end-of-file} (usually C-d)}}{124}
\entry {\code {end-of-history (M->)}}{123}
\entry {\code {end-of-line (C-e)}}{122}
\entry {\code {exchange-point-and-mark (C-x C-x)}}{130}
\initial {F}
\entry {\code {forward-backward-delete-char ()}}{124}
\entry {\code {forward-char (C-f)}}{121}
\entry {\code {forward-search-history (C-s)}}{122}
\entry {\code {forward-word (M-f)}}{121}
\entry {\code {forward-backward-delete-char ()}}{125}
\entry {\code {forward-char (C-f)}}{122}
\entry {\code {forward-search-history (C-s)}}{123}
\entry {\code {forward-word (M-f)}}{122}
\initial {G}
\entry {\code {glob-complete-word (M-g)}}{130}
\entry {\code {glob-expand-word (C-x *)}}{130}
\entry {\code {glob-list-expansions (C-x g)}}{130}
\entry {\code {glob-complete-word (M-g)}}{131}
\entry {\code {glob-expand-word (C-x *)}}{131}
\entry {\code {glob-list-expansions (C-x g)}}{131}
\initial {H}
\entry {\code {history-and-alias-expand-line ()}}{130}
\entry {\code {history-expand-line (M-^)}}{130}
\entry {\code {history-search-backward ()}}{123}
\entry {\code {history-search-forward ()}}{122}
\entry {\code {history-substring-search-backward ()}}{123}
\entry {\code {history-substring-search-forward ()}}{123}
\entry {\code {history-and-alias-expand-line ()}}{131}
\entry {\code {history-expand-line (M-^)}}{131}
\entry {\code {history-search-backward ()}}{124}
\entry {\code {history-search-forward ()}}{123}
\entry {\code {history-substring-search-backward ()}}{124}
\entry {\code {history-substring-search-forward ()}}{124}
\initial {I}
\entry {\code {insert-comment (M-#)}}{129}
\entry {\code {insert-completions (M-*)}}{126}
\entry {\code {insert-last-argument (M-. or M-_)}}{130}
\entry {\code {insert-comment (M-#)}}{130}
\entry {\code {insert-completions (M-*)}}{127}
\entry {\code {insert-last-argument (M-. or M-_)}}{131}
\initial {K}
\entry {\code {kill-line (C-k)}}{125}
\entry {\code {kill-region ()}}{125}
\entry {\code {kill-whole-line ()}}{125}
\entry {\code {kill-word (M-d)}}{125}
\entry {\code {kill-line (C-k)}}{126}
\entry {\code {kill-region ()}}{126}
\entry {\code {kill-whole-line ()}}{126}
\entry {\code {kill-word (M-d)}}{126}
\initial {M}
\entry {\code {magic-space ()}}{130}
\entry {\code {menu-complete ()}}{126}
\entry {\code {menu-complete-backward ()}}{127}
\entry {\code {magic-space ()}}{131}
\entry {\code {menu-complete ()}}{127}
\entry {\code {menu-complete-backward ()}}{128}
\initial {N}
\entry {\code {next-history (C-n)}}{122}
\entry {\code {next-screen-line ()}}{122}
\entry {\code {non-incremental-forward-search-history (M-n)}}{122}
\entry {\code {non-incremental-reverse-search-history (M-p)}}{122}
\entry {\code {next-history (C-n)}}{123}
\entry {\code {next-screen-line ()}}{123}
\entry {\code {non-incremental-forward-search-history (M-n)}}{123}
\entry {\code {non-incremental-reverse-search-history (M-p)}}{123}
\initial {O}
\entry {\code {operate-and-get-next (C-o)}}{130}
\entry {\code {overwrite-mode ()}}{124}
\entry {\code {operate-and-get-next (C-o)}}{131}
\entry {\code {overwrite-mode ()}}{125}
\initial {P}
\entry {\code {possible-command-completions (C-x !)}}{127}
\entry {\code {possible-completions (M-?)}}{126}
\entry {\code {possible-filename-completions (C-x /)}}{127}
\entry {\code {possible-hostname-completions (C-x @)}}{127}
\entry {\code {possible-username-completions (C-x ~)}}{127}
\entry {\code {possible-variable-completions (C-x $)}}{127}
\entry {\code {prefix-meta (\key {ESC})}}{128}
\entry {\code {previous-history (C-p)}}{122}
\entry {\code {previous-screen-line ()}}{121}
\entry {\code {print-last-kbd-macro ()}}{128}
\entry {\code {possible-command-completions (C-x !)}}{128}
\entry {\code {possible-completions (M-?)}}{127}
\entry {\code {possible-filename-completions (C-x /)}}{128}
\entry {\code {possible-hostname-completions (C-x @)}}{128}
\entry {\code {possible-username-completions (C-x ~)}}{128}
\entry {\code {possible-variable-completions (C-x $)}}{128}
\entry {\code {prefix-meta (\key {ESC})}}{129}
\entry {\code {previous-history (C-p)}}{123}
\entry {\code {previous-screen-line ()}}{122}
\entry {\code {print-last-kbd-macro ()}}{129}
\initial {Q}
\entry {\code {quoted-insert (C-q or C-v)}}{124}
\entry {\code {quoted-insert (C-q or C-v)}}{125}
\initial {R}
\entry {\code {re-read-init-file (C-x C-r)}}{128}
\entry {\code {redraw-current-line ()}}{122}
\entry {\code {reverse-search-history (C-r)}}{122}
\entry {\code {revert-line (M-r)}}{128}
\entry {\code {re-read-init-file (C-x C-r)}}{129}
\entry {\code {redraw-current-line ()}}{123}
\entry {\code {reverse-search-history (C-r)}}{123}
\entry {\code {revert-line (M-r)}}{129}
\initial {S}
\entry {\code {self-insert (a, b, A, 1, !, \dots {})}}{124}
\entry {\code {set-mark (C-@)}}{129}
\entry {\code {shell-backward-kill-word ()}}{125}
\entry {\code {shell-backward-word ()}}{121}
\entry {\code {shell-expand-line (M-C-e)}}{130}
\entry {\code {shell-forward-word ()}}{121}
\entry {\code {shell-kill-word ()}}{125}
\entry {\code {skip-csi-sequence ()}}{129}
\entry {\code {start-kbd-macro (C-x ()}}{128}
\entry {\code {self-insert (a, b, A, 1, !, \dots {})}}{125}
\entry {\code {set-mark (C-@)}}{130}
\entry {\code {shell-backward-kill-word ()}}{126}
\entry {\code {shell-backward-word ()}}{122}
\entry {\code {shell-expand-line (M-C-e)}}{131}
\entry {\code {shell-forward-word ()}}{122}
\entry {\code {shell-kill-word ()}}{126}
\entry {\code {skip-csi-sequence ()}}{130}
\entry {\code {start-kbd-macro (C-x ()}}{129}
\initial {T}
\entry {\code {tilde-expand (M-&)}}{128}
\entry {\code {transpose-chars (C-t)}}{124}
\entry {\code {transpose-words (M-t)}}{124}
\entry {\code {tilde-expand (M-&)}}{129}
\entry {\code {transpose-chars (C-t)}}{125}
\entry {\code {transpose-words (M-t)}}{125}
\initial {U}
\entry {\code {undo (C-_ or C-x C-u)}}{128}
\entry {\code {universal-argument ()}}{126}
\entry {\code {unix-filename-rubout ()}}{125}
\entry {\code {unix-line-discard (C-u)}}{125}
\entry {\code {unix-word-rubout (C-w)}}{125}
\entry {\code {upcase-word (M-u)}}{124}
\entry {\code {undo (C-_ or C-x C-u)}}{129}
\entry {\code {universal-argument ()}}{127}
\entry {\code {unix-filename-rubout ()}}{126}
\entry {\code {unix-line-discard (C-u)}}{126}
\entry {\code {unix-word-rubout (C-w)}}{126}
\entry {\code {upcase-word (M-u)}}{125}
\initial {Y}
\entry {\code {yank (C-y)}}{126}
\entry {\code {yank-last-arg (M-. or M-_)}}{123}
\entry {\code {yank-nth-arg (M-C-y)}}{123}
\entry {\code {yank-pop (M-y)}}{126}
\entry {\code {yank (C-y)}}{127}
\entry {\code {yank-last-arg (M-. or M-_)}}{124}
\entry {\code {yank-nth-arg (M-C-y)}}{124}
\entry {\code {yank-pop (M-y)}}{127}
+51 -14
View File
@@ -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 August 2018).
the Bash shell (version 5.0, 9 November 2018).
This is Edition 5.0, last updated 7 August 2018,
This is Edition 5.0, last updated 9 November 2018,
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 August 2018).
the Bash shell (version 5.0, 9 November 2018).
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 August 2018,
<p>This is Edition 5.0, last updated 9 November 2018,
of <cite>The GNU Bash Reference Manual</cite>,
for <code>Bash</code>, Version 5.0.
</p>
@@ -2222,8 +2222,8 @@ to the filename used to invoke Bash, as given by argument zero.
At shell startup, set to the absolute pathname used to invoke the
shell or shell script being executed as passed in the environment
or argument list.
Subsequently, expands to the last argument to the previous command,
after expansion.
Subsequently, expands to the last argument to the previous simple
command executed in the foreground, after expansion.
Also set to the full pathname used to invoke each command executed
and placed in the environment exported to that command.
When checking mail, this parameter holds the name of the mail file.
@@ -4455,19 +4455,22 @@ false.
</dd>
<dt>3 arguments</dt>
<dd><p>The following conditions are applied in the order listed.
If the second argument is one of the binary conditional
</p>
<ol>
<li> If the second argument is one of the binary conditional
operators (see <a href="#Bash-Conditional-Expressions">Bash Conditional Expressions</a>), the
result of the expression is the result of the binary test using the
first and third arguments as operands.
The &lsquo;<samp>-a</samp>&rsquo; and &lsquo;<samp>-o</samp>&rsquo; operators are considered binary operators
when there are three arguments.
If the first argument is &lsquo;<samp>!</samp>&rsquo;, the value is the negation of
</li><li> If the first argument is &lsquo;<samp>!</samp>&rsquo;, the value is the negation of
the two-argument test using the second and third arguments.
If the first argument is exactly &lsquo;<samp>(</samp>&rsquo; and the third argument is
</li><li> If the first argument is exactly &lsquo;<samp>(</samp>&rsquo; and the third argument is
exactly &lsquo;<samp>)</samp>&rsquo;, the result is the one-argument test of the second
argument.
Otherwise, the expression is false.
</p>
</li><li> Otherwise, the expression is false.
</li></ol>
</dd>
<dt>4 arguments</dt>
<dd><p>If the first argument is &lsquo;<samp>!</samp>&rsquo;, the result is the negation of
@@ -6024,6 +6027,7 @@ The shell always postpones exiting if any jobs are stopped.
<dd><p>If set, Bash checks the window size after each external (non-builtin)
command and, if necessary, updates the values of
<code>LINES</code> and <code>COLUMNS</code>.
This option is enabled by default.
</p>
</dd>
<dt><code>cmdhist</code></dt>
@@ -6289,6 +6293,13 @@ the same name that exists at a previous scope before any new value is
assigned. The <var>nameref</var> attribute is not inherited.
</p>
</dd>
<dt><code>localvar_unset</code></dt>
<dd><p>If set, calling <code>unset</code> on local variables in previous function scopes
marks them so subsequent lookups find them unset until that function
returns. This is identical to the behavior of unsetting local variables
at the current function scope.
</p>
</dd>
<dt><code>login_shell</code></dt>
<dd><p>The shell sets this option if it is started as a login shell
(see <a href="#Invoking-Bash">Invoking Bash</a>).
@@ -6331,6 +6342,13 @@ files to expand to a null string, rather than themselves.
This option is enabled by default.
</p>
</dd>
<dt><code>progcomp_alias</code></dt>
<dd><p>If set, and programmable completion is enabled, Bash treats a command
name that doesn&rsquo;t have any completions as a possible alias and attempts
alias expansion. If it has an alias, Bash attempts programmable
completion using the command word resulting from the expanded alias.
</p>
</dd>
<dt><code>promptvars</code></dt>
<dd><p>If set, prompt strings undergo
parameter expansion, command substitution, arithmetic
@@ -8108,9 +8126,13 @@ Next: <a href="#Shell-Arithmetic" accesskey="n" rel="next">Shell Arithmetic</a>,
<a name="index-expressions_002c-conditional"></a>
<p>Conditional expressions are used by the <code>[[</code> compound command
and the <code>test</code> and <code>[</code> builtin commands.
and the <code>test</code> and <code>[</code> builtin commands. The <code>test</code>
and <code>[</code> commands determine their behavior based on the number
of arguments; see the descriptions of those commands for any other
command-specific actions.
</p>
<p>Expressions may be unary or binary.
<p>Expressions may be unary or binary,
and are formed from the following primaries.
Unary expressions are often used to examine the status of a file.
There are string operators and numeric comparison operators as well.
Bash handles several filenames specially when they are used in
@@ -9113,6 +9135,11 @@ the <samp>-e</samp> option from the parent shell.
When the <code>inherit_errexit</code> option is not enabled,
Bash clears the <samp>-e</samp> option in such subshells.
</li><li> Enabling <small>POSIX</small> mode has the effect of setting the
<code>shift_verbose</code> option, so numeric arguments to <code>shift</code>
that exceed the number of positional parameters will result in an
error message.
</li><li> When the <code>alias</code> builtin displays alias definitions, it does not
display them with a leading &lsquo;<samp>alias </samp>&rsquo; unless the <samp>-p</samp> option
is supplied.
@@ -9129,6 +9156,12 @@ constructed from <code>$PWD</code> and the directory name supplied as an argumen
does not refer to an existing directory, <code>cd</code> will fail instead of
falling back to <var>physical</var> mode.
</li><li> When the <code>cd</code> builtin cannot change a directory because the
length of the pathname
constructed from <code>$PWD</code> and the directory name supplied as an argument
exceeds <var>PATH_MAX</var> when all symbolic links are expanded, <code>cd</code> will
fail instead of attempting to use only the supplied directory name.
</li><li> The <code>pwd</code> builtin verifies that the value it prints is the same as the
current directory, even if it is not asked to check the file system with the
<samp>-P</samp> option.
@@ -10195,7 +10228,7 @@ If this variable has not been given a value, the characters <tt class="key">ESC<
<dt><code>keymap</code></dt>
<dd><a name="index-keymap"></a>
<p>Sets Readline&rsquo;s idea of the current keymap for key binding commands.
Acceptable <code>keymap</code> names are
Built-in <code>keymap</code> names are
<code>emacs</code>,
<code>emacs-standard</code>,
<code>emacs-meta</code>,
@@ -10206,6 +10239,7 @@ Acceptable <code>keymap</code> names are
<code>vi-insert</code>.
<code>vi</code> is equivalent to <code>vi-command</code> (<code>vi-move</code> is also a
synonym); <code>emacs</code> is equivalent to <code>emacs-standard</code>.
Applications may add additional names.
The default value is <code>emacs</code>.
The value of the <code>editing-mode</code> variable also affects the
default keymap.
@@ -11840,6 +11874,9 @@ If no compspec is found for the full pathname, an attempt is made to
find a compspec for the portion following the final slash.
If those searches do not result in a compspec, any compspec defined with
the <samp>-D</samp> option to <code>complete</code> is used as the default.
If there is no default compspec, Bash attempts alias expansion
on the command word as a final resort, and attempts to find a compspec
for the command word from any successful expansion
</p>
<p>Once a compspec has been found, it is used to generate the list of
matching words.
+218 -183
View File
@@ -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 August 2018).
Bash shell (version 5.0, 9 November 2018).
This is Edition 5.0, last updated 7 August 2018, of 'The GNU Bash
This is Edition 5.0, last updated 9 November 2018, 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 August 2018). The Bash home page is
Bash shell (version 5.0, 9 November 2018). The Bash home page is
<http://www.gnu.org/software/bash/>.
This is Edition 5.0, last updated 7 August 2018, of 'The GNU Bash
This is Edition 5.0, last updated 9 November 2018, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.0.
Bash contains features that appear in other popular shells, and some
@@ -1468,10 +1468,11 @@ only be referenced; assignment to them is not allowed.
($_, an underscore.) At shell startup, set to the absolute
pathname used to invoke the shell or shell script being executed as
passed in the environment or argument list. Subsequently, expands
to the last argument to the previous command, after expansion.
Also set to the full pathname used to invoke each command executed
and placed in the environment exported to that command. When
checking mail, this parameter holds the name of the mail file.
to the last argument to the previous simple command executed in the
foreground, after expansion. Also set to the full pathname used to
invoke each command executed and placed in the environment exported
to that command. When checking mail, this parameter holds the name
of the mail file.

File: bashref.info, Node: Shell Expansions, Next: Redirections, Prev: Shell Parameters, Up: Basic Shell Features
@@ -3201,17 +3202,21 @@ standard.
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 operators
(*note Bash Conditional Expressions::), the result of the
expression is the result of the binary test using the first
and third arguments as operands. The '-a' and '-o' 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. Otherwise, the expression is false.
The following conditions are applied in the order listed.
1. If the second argument is one of the binary conditional
operators (*note Bash Conditional Expressions::), the
result of the expression is the result of the binary test
using the first and third arguments as operands. The
'-a' and '-o' operators are considered binary operators
when there are three arguments.
2. If the first argument is '!', the value is the negation
of the two-argument test using the second and third
arguments.
3. If the first argument is exactly '(' and the third
argument is exactly ')', the result is the one-argument
test of the second argument.
4. Otherwise, the expression is false.
4 arguments
If the first argument is '!', the result is the negation of
@@ -4406,7 +4411,7 @@ This builtin allows you to change additional shell optional behavior.
'checkwinsize'
If set, Bash checks the window size after each external
(non-builtin) command and, if necessary, updates the values of
'LINES' and 'COLUMNS'.
'LINES' and 'COLUMNS'. This option is enabled by default.
'cmdhist'
If set, Bash attempts to save all lines of a multiple-line
@@ -4631,6 +4636,13 @@ This builtin allows you to change additional shell optional behavior.
before any new value is assigned. The NAMEREF attribute is
not inherited.
'localvar_unset'
If set, calling 'unset' on local variables in previous
function scopes marks them so subsequent lookups find them
unset until that function returns. This is identical to the
behavior of unsetting local variables at the current function
scope.
'login_shell'
The shell sets this option if it is started as a login shell
(*note Invoking Bash::). The value may not be changed.
@@ -4665,6 +4677,13 @@ This builtin allows you to change additional shell optional behavior.
Programmable Completion::) are enabled. This option is
enabled by default.
'progcomp_alias'
If set, and programmable completion is enabled, Bash treats a
command name that doesn't have any completions as a possible
alias and attempts alias expansion. If it has an alias, Bash
attempts programmable completion using the command word
resulting from the expanded alias.
'promptvars'
If set, prompt strings undergo parameter expansion, command
substitution, arithmetic expansion, and quote removal after
@@ -5912,18 +5931,21 @@ File: bashref.info, Node: Bash Conditional Expressions, Next: Shell Arithmetic
================================
Conditional expressions are used by the '[[' compound command and the
'test' and '[' builtin commands.
'test' and '[' builtin commands. The 'test' and '[' commands determine
their behavior based on the number of arguments; see the descriptions of
those commands for any other command-specific actions.
Expressions may be unary or binary. Unary expressions are often used
to examine the status of a file. There are string operators and numeric
comparison operators as well. Bash handles several filenames specially
when they are used in expressions. If the operating system on which
Bash is running provides these special files, Bash will use them;
otherwise it will emulate them internally with this behavior: If the
FILE argument to one of the primaries is of the form '/dev/fd/N', then
file descriptor N is checked. If the FILE argument to one of the
primaries is one of '/dev/stdin', '/dev/stdout', or '/dev/stderr', file
descriptor 0, 1, or 2, respectively, is checked.
Expressions may be unary or binary, and are formed from the following
primaries. Unary expressions are often used to examine the status of a
file. There are string operators and numeric comparison operators as
well. Bash handles several filenames specially when they are used in
expressions. If the operating system on which Bash is running provides
these special files, Bash will use them; otherwise it will emulate them
internally with this behavior: If the FILE argument to one of the
primaries is of the form '/dev/fd/N', then file descriptor N is checked.
If the FILE argument to one of the primaries is one of '/dev/stdin',
'/dev/stdout', or '/dev/stderr', file descriptor 0, 1, or 2,
respectively, is checked.
When used with '[[', the '<' and '>' operators sort lexicographically
using the current locale. The 'test' command uses ASCII ordering.
@@ -6703,56 +6725,66 @@ startup files.
shell. When the 'inherit_errexit' option is not enabled, Bash
clears the '-e' option in such subshells.
44. When the 'alias' builtin displays alias definitions, it does not
44. Enabling POSIX mode has the effect of setting the 'shift_verbose'
option, so numeric arguments to 'shift' that exceed the number of
positional parameters will result in an error message.
45. When the 'alias' builtin displays alias definitions, it does not
display them with a leading 'alias ' unless the '-p' option is
supplied.
45. When the 'set' builtin is invoked without options, it does not
46. When the 'set' builtin is invoked without options, it does not
display shell function names and definitions.
46. When the 'set' builtin is invoked without options, it displays
47. When the 'set' builtin is invoked without options, it displays
variable values without quotes, unless they contain shell
metacharacters, even if the result contains nonprinting characters.
47. When the 'cd' builtin is invoked in LOGICAL mode, and the pathname
48. When the 'cd' builtin is invoked in LOGICAL mode, and the pathname
constructed from '$PWD' and the directory name supplied as an
argument does not refer to an existing directory, 'cd' will fail
instead of falling back to PHYSICAL mode.
48. The 'pwd' builtin verifies that the value it prints is the same as
49. When the 'cd' builtin cannot change a directory because the length
of the pathname constructed from '$PWD' and the directory name
supplied as an argument exceeds PATH_MAX when all symbolic links
are expanded, 'cd' will fail instead of attempting to use only the
supplied directory name.
50. The 'pwd' builtin verifies that the value it prints is the same as
the current directory, even if it is not asked to check the file
system with the '-P' option.
49. When listing the history, the 'fc' builtin does not include an
51. When listing the history, the 'fc' builtin does not include an
indication of whether or not a history entry has been modified.
50. The default editor used by 'fc' is 'ed'.
52. The default editor used by 'fc' is 'ed'.
51. The 'type' and 'command' builtins will not report a non-executable
53. The 'type' and 'command' builtins will not report a non-executable
file as having been found, though the shell will attempt to execute
such a file if it is the only so-named file found in '$PATH'.
52. The 'vi' editing mode will invoke the 'vi' editor directly when
54. The 'vi' editing mode will invoke the 'vi' editor directly when
the 'v' command is run, instead of checking '$VISUAL' and
'$EDITOR'.
53. When the 'xpg_echo' option is enabled, Bash does not attempt to
55. When the 'xpg_echo' option is enabled, Bash does not attempt to
interpret any arguments to 'echo' as options. Each argument is
displayed, after escape characters are converted.
54. The 'ulimit' builtin uses a block size of 512 bytes for the '-c'
56. The 'ulimit' builtin uses a block size of 512 bytes for the '-c'
and '-f' options.
55. The arrival of 'SIGCHLD' when a trap is set on 'SIGCHLD' does not
57. The arrival of 'SIGCHLD' when a trap is set on 'SIGCHLD' does not
interrupt the 'wait' builtin and cause it to return immediately.
The trap command is run once for each child that exits.
56. The 'read' builtin may be interrupted by a signal for which a trap
58. The 'read' builtin may be interrupted by a signal for which a trap
has been set. If Bash receives a trapped signal while executing
'read', the trap handler executes and 'read' returns an exit status
greater than 128.
57. Bash removes an exited background process's status from the list
59. Bash removes an exited background process's status from the list
of such statuses after the 'wait' builtin is used to obtain it.
There is other POSIX behavior that Bash does not implement by default
@@ -7525,13 +7557,13 @@ Variable Settings
'keymap'
Sets Readline's idea of the current keymap for key binding
commands. Acceptable 'keymap' names are 'emacs',
commands. Built-in 'keymap' names are 'emacs',
'emacs-standard', 'emacs-meta', 'emacs-ctlx', 'vi', 'vi-move',
'vi-command', and 'vi-insert'. 'vi' is equivalent to
'vi-command' ('vi-move' is also a synonym); 'emacs' is
equivalent to 'emacs-standard'. The default value is 'emacs'.
The value of the 'editing-mode' variable also affects the
default keymap.
equivalent to 'emacs-standard'. Applications may add
additional names. The default value is 'emacs'. The value of
the 'editing-mode' variable also affects the default keymap.
'keyseq-timeout'
Specifies the duration Readline will wait for a character when
@@ -8626,7 +8658,10 @@ command word is a full pathname, a compspec for the full pathname is
searched for first. If no compspec is found for the full pathname, an
attempt is made to find a compspec for the portion following the final
slash. If those searches do not result in a compspec, any compspec
defined with the '-D' option to 'complete' is used as the default.
defined with the '-D' option to 'complete' is used as the default. If
there is no default compspec, Bash attempts alias expansion on the
command word as a final resort, and attempts to find a compspec for the
command word from any successful expansion
Once a compspec has been found, it is used to generate the list of
matching words. If a compspec is not found, the default Bash completion
@@ -11000,17 +11035,17 @@ D.1 Index of Shell Builtin Commands
* test: Bourne Shell Builtins.
(line 269)
* times: Bourne Shell Builtins.
(line 344)
(line 348)
* trap: Bourne Shell Builtins.
(line 350)
(line 354)
* type: Bash Builtins. (line 567)
* typeset: Bash Builtins. (line 599)
* ulimit: Bash Builtins. (line 605)
* umask: Bourne Shell Builtins.
(line 399)
(line 403)
* unalias: Bash Builtins. (line 704)
* unset: Bourne Shell Builtins.
(line 417)
(line 421)
* wait: Job Control Builtins.
(line 76)
@@ -11644,134 +11679,134 @@ D.5 Concept Index

Tag Table:
Node: Top891
Node: Introduction2805
Node: What is Bash?3021
Node: What is a shell?4135
Node: Definitions6673
Node: Basic Shell Features9624
Node: Shell Syntax10843
Node: Shell Operation11869
Node: Quoting13162
Node: Escape Character14462
Node: Single Quotes14947
Node: Double Quotes15295
Node: ANSI-C Quoting16573
Node: Locale Translation17832
Node: Comments18728
Node: Shell Commands19346
Node: Simple Commands20218
Node: Pipelines20849
Node: Lists23781
Node: Compound Commands25520
Node: Looping Constructs26532
Node: Conditional Constructs29027
Node: Command Grouping40110
Node: Coprocesses41589
Node: GNU Parallel43492
Node: Shell Functions47550
Node: Shell Parameters54633
Node: Positional Parameters59046
Node: Special Parameters59946
Node: Shell Expansions63660
Node: Brace Expansion65783
Node: Tilde Expansion68507
Node: Shell Parameter Expansion71124
Node: Command Substitution85580
Node: Arithmetic Expansion86935
Node: Process Substitution87867
Node: Word Splitting88987
Node: Filename Expansion90931
Node: Pattern Matching93461
Node: Quote Removal97447
Node: Redirections97742
Node: Executing Commands107300
Node: Simple Command Expansion107970
Node: Command Search and Execution109900
Node: Command Execution Environment112276
Node: Environment115260
Node: Exit Status116919
Node: Signals118589
Node: Shell Scripts120556
Node: Shell Builtin Commands123071
Node: Bourne Shell Builtins125109
Node: Bash Builtins145767
Node: Modifying Shell Behavior174675
Node: The Set Builtin175020
Node: The Shopt Builtin185433
Node: Special Builtins202303
Node: Shell Variables203282
Node: Bourne Shell Variables203719
Node: Bash Variables205823
Node: Bash Features236283
Node: Invoking Bash237182
Node: Bash Startup Files243195
Node: Interactive Shells248298
Node: What is an Interactive Shell?248708
Node: Is this Shell Interactive?249357
Node: Interactive Shell Behavior250172
Node: Bash Conditional Expressions253659
Node: Shell Arithmetic258025
Node: Aliases260842
Node: Arrays263390
Node: The Directory Stack268756
Node: Directory Stack Builtins269540
Node: Controlling the Prompt272508
Node: The Restricted Shell275274
Node: Bash POSIX Mode277099
Node: Job Control287514
Node: Job Control Basics287974
Node: Job Control Builtins292942
Node: Job Control Variables297669
Node: Command Line Editing298825
Node: Introduction and Notation300496
Node: Readline Interaction302119
Node: Readline Bare Essentials303310
Node: Readline Movement Commands305093
Node: Readline Killing Commands306053
Node: Readline Arguments307971
Node: Searching309015
Node: Readline Init File311201
Node: Readline Init File Syntax312348
Node: Conditional Init Constructs332748
Node: Sample Init File336944
Node: Bindable Readline Commands340061
Node: Commands For Moving341265
Node: Commands For History343114
Node: Commands For Text347409
Node: Commands For Killing350797
Node: Numeric Arguments353278
Node: Commands For Completion354417
Node: Keyboard Macros358608
Node: Miscellaneous Commands359295
Node: Readline vi Mode365248
Node: Programmable Completion366155
Node: Programmable Completion Builtins373749
Node: A Programmable Completion Example384442
Node: Using History Interactively389682
Node: Bash History Facilities390366
Node: Bash History Builtins393371
Node: History Interaction397902
Node: Event Designators401522
Node: Word Designators402741
Node: Modifiers404378
Node: Installing Bash405780
Node: Basic Installation406917
Node: Compilers and Options410175
Node: Compiling For Multiple Architectures410916
Node: Installation Names412609
Node: Specifying the System Type413427
Node: Sharing Defaults414143
Node: Operation Controls414816
Node: Optional Features415774
Node: Reporting Bugs426292
Node: Major Differences From The Bourne Shell427486
Node: GNU Free Documentation License444338
Node: Indexes469515
Node: Builtin Index469969
Node: Reserved Word Index476796
Node: Variable Index479244
Node: Function Index494995
Node: Concept Index508298
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 Commands25528
Node: Looping Constructs26540
Node: Conditional Constructs29035
Node: Command Grouping40118
Node: Coprocesses41597
Node: GNU Parallel43500
Node: Shell Functions47558
Node: Shell Parameters54641
Node: Positional Parameters59054
Node: Special Parameters59954
Node: Shell Expansions63708
Node: Brace Expansion65831
Node: Tilde Expansion68555
Node: Shell Parameter Expansion71172
Node: Command Substitution85628
Node: Arithmetic Expansion86983
Node: Process Substitution87915
Node: Word Splitting89035
Node: Filename Expansion90979
Node: Pattern Matching93509
Node: Quote Removal97495
Node: Redirections97790
Node: Executing Commands107348
Node: Simple Command Expansion108018
Node: Command Search and Execution109948
Node: Command Execution Environment112324
Node: Environment115308
Node: Exit Status116967
Node: Signals118637
Node: Shell Scripts120604
Node: Shell Builtin Commands123119
Node: Bourne Shell Builtins125157
Node: Bash Builtins145907
Node: Modifying Shell Behavior174815
Node: The Set Builtin175160
Node: The Shopt Builtin185573
Node: Special Builtins203145
Node: Shell Variables204124
Node: Bourne Shell Variables204561
Node: Bash Variables206665
Node: Bash Features237125
Node: Invoking Bash238024
Node: Bash Startup Files244037
Node: Interactive Shells249140
Node: What is an Interactive Shell?249550
Node: Is this Shell Interactive?250199
Node: Interactive Shell Behavior251014
Node: Bash Conditional Expressions254501
Node: Shell Arithmetic259078
Node: Aliases261895
Node: Arrays264443
Node: The Directory Stack269809
Node: Directory Stack Builtins270593
Node: Controlling the Prompt273561
Node: The Restricted Shell276327
Node: Bash POSIX Mode278152
Node: Job Control289085
Node: Job Control Basics289545
Node: Job Control Builtins294513
Node: Job Control Variables299240
Node: Command Line Editing300396
Node: Introduction and Notation302067
Node: Readline Interaction303690
Node: Readline Bare Essentials304881
Node: Readline Movement Commands306664
Node: Readline Killing Commands307624
Node: Readline Arguments309542
Node: Searching310586
Node: Readline Init File312772
Node: Readline Init File Syntax313919
Node: Conditional Init Constructs334358
Node: Sample Init File338554
Node: Bindable Readline Commands341671
Node: Commands For Moving342875
Node: Commands For History344724
Node: Commands For Text349019
Node: Commands For Killing352407
Node: Numeric Arguments354888
Node: Commands For Completion356027
Node: Keyboard Macros360218
Node: Miscellaneous Commands360905
Node: Readline vi Mode366858
Node: Programmable Completion367765
Node: Programmable Completion Builtins375545
Node: A Programmable Completion Example386238
Node: Using History Interactively391478
Node: Bash History Facilities392162
Node: Bash History Builtins395167
Node: History Interaction399698
Node: Event Designators403318
Node: Word Designators404537
Node: Modifiers406174
Node: Installing Bash407576
Node: Basic Installation408713
Node: Compilers and Options411971
Node: Compiling For Multiple Architectures412712
Node: Installation Names414405
Node: Specifying the System Type415223
Node: Sharing Defaults415939
Node: Operation Controls416612
Node: Optional Features417570
Node: Reporting Bugs428088
Node: Major Differences From The Bourne Shell429282
Node: GNU Free Documentation License446134
Node: Indexes471311
Node: Builtin Index471765
Node: Reserved Word Index478592
Node: Variable Index481040
Node: Function Index496791
Node: Concept Index510094

End Tag Table
+31 -30
View File
@@ -1,4 +1,4 @@
This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018/MacPorts 2018.47642_1) (preloaded format=pdfetex 2018.9.7) 7 SEP 2018 16:15
This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018/MacPorts 2018.47642_1) (preloaded format=pdfetex 2018.9.7) 9 NOV 2018 16:30
entering extended mode
restricted \write18 enabled.
file:line:error style messages enabled.
@@ -192,15 +192,16 @@ p/pdftex/updmap/pdftex.map}] [2] (/Users/chet/src/bash/src/doc/bashref.toc
[43] [44] [45] [46] [47]
[48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62]
[63] [64] [65] [66] [67] [68] [69] [70] Chapter 5 [71] [72] [73] [74] [75]
[76] [77] [78] [79] [80] [81] [82] Chapter 6 [83] [84] [85] [86] [87] [88]
[89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] Chapter 7 [101]
[102] [103] [104]
[63] [64] [65] [66] [67] [68] [69] [70] [71] Chapter 5 [72] [73] [74] [75]
[76] [77] [78] [79] [80] [81] [82] [83] Chapter 6 [84] [85] [86] [87] [88]
[89] [90] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] [101] Chapter 7
[102] [103] [104] [105]
texinfo.tex: doing @include of rluser.texi
(/usr/homes/chet/src/bash/src/lib/readline/doc/rluser.texi
Chapter 8 [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115]
Underfull \hbox (badness 7540) in paragraph at lines 806--812
(/usr/homes/chet/src/bash/src/lib/readline/doc/rluser.texi Chapter 8 [106]
[107] [108] [109] [110] [111] [112] [113] [114] [115] [116]
Underfull \hbox (badness 7540) in paragraph at lines 807--813
[]@textrm In the ex-am-ple above, @textttsl C-u[] @textrm is bound to the func
-tion
@@ -213,7 +214,7 @@ Underfull \hbox (badness 7540) in paragraph at lines 806--812
.etc.
Underfull \hbox (badness 10000) in paragraph at lines 806--812
Underfull \hbox (badness 10000) in paragraph at lines 807--813
@texttt universal-argument[]@textrm , @textttsl M-DEL[] @textrm is bound to th
e func-tion
@@ -225,8 +226,8 @@ e func-tion
.@texttt v
.etc.
[116] [117] [118]
Overfull \hbox (26.43913pt too wide) in paragraph at lines 1040--1040
[117] [118] [119]
Overfull \hbox (26.43913pt too wide) in paragraph at lines 1041--1041
[]@texttt Meta-Control-h: backward-kill-word Text after the function name is i
gnored[]
@@ -238,13 +239,13 @@ gnored[]
.@texttt t
.etc.
[119] [120]
[120] [121]
@fnindfile=@write6
\openout6 = `bashref.fn'.
[121] [122] [123] [124] [125] [126] [127] [128] [129] [130]
[131] [132]
Overfull \hbox (15.27109pt too wide) in paragraph at lines 2025--2025
[122] [123] [124] [125] [126] [127] [128] [129] [130] [131]
[132] [133]
Overfull \hbox (15.27109pt too wide) in paragraph at lines 2029--2029
[]@texttt complete [-abcdefgjksuv] [-o @textttsl comp-option@texttt ] [-DEI] [
-A @textttsl ac-tion@texttt ] [-
@@ -256,23 +257,23 @@ Overfull \hbox (15.27109pt too wide) in paragraph at lines 2025--2025
.@texttt m
.etc.
[133] [134] [135] [136] [137] [138])
[134] [135] [136] [137] [138] [139])
texinfo.tex: doing @include of hsuser.texi
(/usr/homes/chet/src/bash/src/lib/readline/doc/hsuser.texi Chapter 9 [139]
[140] [141] [142] [143] [144]) Chapter 10 [145] [146] [147] [148] [149]
[150] [151] [152] Appendix A [153] Appendix B [154] [155] [156] [157] [158]
[159] Appendix C [160]
(/usr/homes/chet/src/bash/src/lib/readline/doc/hsuser.texi Chapter 9 [140]
[141] [142] [143] [144] [145]) Chapter 10 [146] [147] [148] [149] [150]
[151] [152] [153] Appendix A [154] Appendix B [155] [156] [157] [158] [159]
[160] Appendix C [161]
texinfo.tex: doing @include of fdl.texi
(/Users/chet/src/bash/src/doc/fdl.texi [161] [162]
[163] [164] [165] [166] [167]) Appendix D [168] [169] [170] [171] [172]
[173] [174] [175] [176] [177] )
(/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] )
Here is how much of TeX's memory you used:
4065 strings out of 497100
47078 string characters out of 6206795
136577 words of memory out of 5000000
4066 strings out of 497100
47081 string characters out of 6206795
136581 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
@@ -294,10 +295,10 @@ 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 (183 pages, 751241 bytes).
Output written on bashref.pdf (184 pages, 753143 bytes).
PDF statistics:
2620 PDF objects out of 2984 (max. 8388607)
2392 compressed objects within 24 object streams
309 named destinations out of 1000 (max. 500000)
2624 PDF objects out of 2984 (max. 8388607)
2395 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)
BIN
View File
Binary file not shown.
+2190 -2144
View File
File diff suppressed because it is too large Load Diff
+13
View File
@@ -7756,6 +7756,12 @@ the @option{-e} option from the parent shell.
When the @code{inherit_errexit} option is not enabled,
Bash clears the @option{-e} option in such subshells.
@item
Enabling @sc{posix} mode has the effect of setting the
@code{shift_verbose} option, so numeric arguments to @code{shift}
that exceed the number of positional parameters will result in an
error message.
@item
When the @code{alias} builtin displays alias definitions, it does not
display them with a leading @samp{alias } unless the @option{-p} option
@@ -7776,6 +7782,13 @@ constructed from @code{$PWD} and the directory name supplied as an argument
does not refer to an existing directory, @code{cd} will fail instead of
falling back to @var{physical} mode.
@item
When the @code{cd} builtin cannot change a directory because the
length of the pathname
constructed from @code{$PWD} and the directory name supplied as an argument
exceeds @var{PATH_MAX} when all symbolic links are expanded, @code{cd} will
fail instead of attempting to use only the supplied directory name.
@item
The @code{pwd} builtin verifies that the value it prints is the same as the
current directory, even if it is not asked to check the file system with the
+74 -74
View File
@@ -63,77 +63,77 @@
@numsubsecentry{The Set Builtin}{4.3.1}{The Set Builtin}{61}
@numsubsecentry{The Shopt Builtin}{4.3.2}{The Shopt Builtin}{65}
@numsecentry{Special Builtins}{4.4}{Special Builtins}{71}
@numchapentry{Shell Variables}{5}{Shell Variables}{72}
@numsecentry{Bourne Shell Variables}{5.1}{Bourne Shell Variables}{72}
@numsecentry{Bash Variables}{5.2}{Bash Variables}{72}
@numchapentry{Bash Features}{6}{Bash Features}{84}
@numsecentry{Invoking Bash}{6.1}{Invoking Bash}{84}
@numsecentry{Bash Startup Files}{6.2}{Bash Startup Files}{86}
@numsecentry{Interactive Shells}{6.3}{Interactive Shells}{87}
@numsubsecentry{What is an Interactive Shell?}{6.3.1}{What is an Interactive Shell?}{88}
@numsubsecentry{Is this Shell Interactive?}{6.3.2}{Is this Shell Interactive?}{88}
@numsubsecentry{Interactive Shell Behavior}{6.3.3}{Interactive Shell Behavior}{88}
@numsecentry{Bash Conditional Expressions}{6.4}{Bash Conditional Expressions}{89}
@numsecentry{Shell Arithmetic}{6.5}{Shell Arithmetic}{91}
@numsecentry{Aliases}{6.6}{Aliases}{92}
@numsecentry{Arrays}{6.7}{Arrays}{93}
@numsecentry{The Directory Stack}{6.8}{The Directory Stack}{95}
@numsubsecentry{Directory Stack Builtins}{6.8.1}{Directory Stack Builtins}{95}
@numsecentry{Controlling the Prompt}{6.9}{Controlling the Prompt}{96}
@numsecentry{The Restricted Shell}{6.10}{The Restricted Shell}{97}
@numsecentry{Bash POSIX Mode}{6.11}{Bash POSIX Mode}{98}
@numchapentry{Job Control}{7}{Job Control}{102}
@numsecentry{Job Control Basics}{7.1}{Job Control Basics}{102}
@numsecentry{Job Control Builtins}{7.2}{Job Control Builtins}{103}
@numsecentry{Job Control Variables}{7.3}{Job Control Variables}{105}
@numchapentry{Command Line Editing}{8}{Command Line Editing}{106}
@numsecentry{Introduction to Line Editing}{8.1}{Introduction and Notation}{106}
@numsecentry{Readline Interaction}{8.2}{Readline Interaction}{106}
@numsubsecentry{Readline Bare Essentials}{8.2.1}{Readline Bare Essentials}{107}
@numsubsecentry{Readline Movement Commands}{8.2.2}{Readline Movement Commands}{107}
@numsubsecentry{Readline Killing Commands}{8.2.3}{Readline Killing Commands}{108}
@numsubsecentry{Readline Arguments}{8.2.4}{Readline Arguments}{108}
@numsubsecentry{Searching for Commands in the History}{8.2.5}{Searching}{108}
@numsecentry{Readline Init File}{8.3}{Readline Init File}{109}
@numsubsecentry{Readline Init File Syntax}{8.3.1}{Readline Init File Syntax}{109}
@numsubsecentry{Conditional Init Constructs}{8.3.2}{Conditional Init Constructs}{117}
@numsubsecentry{Sample Init File}{8.3.3}{Sample Init File}{118}
@numsecentry{Bindable Readline Commands}{8.4}{Bindable Readline Commands}{121}
@numsubsecentry{Commands For Moving}{8.4.1}{Commands For Moving}{121}
@numsubsecentry{Commands For Manipulating The History}{8.4.2}{Commands For History}{122}
@numsubsecentry{Commands For Changing Text}{8.4.3}{Commands For Text}{123}
@numsubsecentry{Killing And Yanking}{8.4.4}{Commands For Killing}{125}
@numsubsecentry{Specifying Numeric Arguments}{8.4.5}{Numeric Arguments}{126}
@numsubsecentry{Letting Readline Type For You}{8.4.6}{Commands For Completion}{126}
@numsubsecentry{Keyboard Macros}{8.4.7}{Keyboard Macros}{128}
@numsubsecentry{Some Miscellaneous Commands}{8.4.8}{Miscellaneous Commands}{128}
@numsecentry{Readline vi Mode}{8.5}{Readline vi Mode}{130}
@numsecentry{Programmable Completion}{8.6}{Programmable Completion}{131}
@numsecentry{Programmable Completion Builtins}{8.7}{Programmable Completion Builtins}{133}
@numsecentry{A Programmable Completion Example}{8.8}{A Programmable Completion Example}{137}
@numchapentry{Using History Interactively}{9}{Using History Interactively}{140}
@numsecentry{Bash History Facilities}{9.1}{Bash History Facilities}{140}
@numsecentry{Bash History Builtins}{9.2}{Bash History Builtins}{140}
@numsecentry{History Expansion}{9.3}{History Interaction}{142}
@numsubsecentry{Event Designators}{9.3.1}{Event Designators}{143}
@numsubsecentry{Word Designators}{9.3.2}{Word Designators}{143}
@numsubsecentry{Modifiers}{9.3.3}{Modifiers}{144}
@numchapentry{Installing Bash}{10}{Installing Bash}{146}
@numsecentry{Basic Installation}{10.1}{Basic Installation}{146}
@numsecentry{Compilers and Options}{10.2}{Compilers and Options}{147}
@numsecentry{Compiling For Multiple Architectures}{10.3}{Compiling For Multiple Architectures}{147}
@numsecentry{Installation Names}{10.4}{Installation Names}{147}
@numsecentry{Specifying the System Type}{10.5}{Specifying the System Type}{148}
@numsecentry{Sharing Defaults}{10.6}{Sharing Defaults}{148}
@numsecentry{Operation Controls}{10.7}{Operation Controls}{148}
@numsecentry{Optional Features}{10.8}{Optional Features}{149}
@appentry{Reporting Bugs}{A}{Reporting Bugs}{154}
@appentry{Major Differences From The Bourne Shell}{B}{Major Differences From The Bourne Shell}{155}
@appsecentry{Implementation Differences From The SVR4.2 Shell}{B.1}{}{159}
@appentry{GNU Free Documentation License}{C}{GNU Free Documentation License}{161}
@appentry{Indexes}{D}{Indexes}{169}
@appsecentry{Index of Shell Builtin Commands}{D.1}{Builtin Index}{169}
@appsecentry{Index of Shell Reserved Words}{D.2}{Reserved Word Index}{170}
@appsecentry{Parameter and Variable Index}{D.3}{Variable Index}{171}
@appsecentry{Function Index}{D.4}{Function Index}{173}
@appsecentry{Concept Index}{D.5}{Concept Index}{175}
@numchapentry{Shell Variables}{5}{Shell Variables}{73}
@numsecentry{Bourne Shell Variables}{5.1}{Bourne Shell Variables}{73}
@numsecentry{Bash Variables}{5.2}{Bash Variables}{73}
@numchapentry{Bash Features}{6}{Bash Features}{85}
@numsecentry{Invoking Bash}{6.1}{Invoking Bash}{85}
@numsecentry{Bash Startup Files}{6.2}{Bash Startup Files}{87}
@numsecentry{Interactive Shells}{6.3}{Interactive Shells}{88}
@numsubsecentry{What is an Interactive Shell?}{6.3.1}{What is an Interactive Shell?}{89}
@numsubsecentry{Is this Shell Interactive?}{6.3.2}{Is this Shell Interactive?}{89}
@numsubsecentry{Interactive Shell Behavior}{6.3.3}{Interactive Shell Behavior}{89}
@numsecentry{Bash Conditional Expressions}{6.4}{Bash Conditional Expressions}{90}
@numsecentry{Shell Arithmetic}{6.5}{Shell Arithmetic}{92}
@numsecentry{Aliases}{6.6}{Aliases}{93}
@numsecentry{Arrays}{6.7}{Arrays}{94}
@numsecentry{The Directory Stack}{6.8}{The Directory Stack}{96}
@numsubsecentry{Directory Stack Builtins}{6.8.1}{Directory Stack Builtins}{96}
@numsecentry{Controlling the Prompt}{6.9}{Controlling the Prompt}{97}
@numsecentry{The Restricted Shell}{6.10}{The Restricted Shell}{98}
@numsecentry{Bash POSIX Mode}{6.11}{Bash POSIX Mode}{99}
@numchapentry{Job Control}{7}{Job Control}{103}
@numsecentry{Job Control Basics}{7.1}{Job Control Basics}{103}
@numsecentry{Job Control Builtins}{7.2}{Job Control Builtins}{104}
@numsecentry{Job Control Variables}{7.3}{Job Control Variables}{106}
@numchapentry{Command Line Editing}{8}{Command Line Editing}{107}
@numsecentry{Introduction to Line Editing}{8.1}{Introduction and Notation}{107}
@numsecentry{Readline Interaction}{8.2}{Readline Interaction}{107}
@numsubsecentry{Readline Bare Essentials}{8.2.1}{Readline Bare Essentials}{108}
@numsubsecentry{Readline Movement Commands}{8.2.2}{Readline Movement Commands}{108}
@numsubsecentry{Readline Killing Commands}{8.2.3}{Readline Killing Commands}{109}
@numsubsecentry{Readline Arguments}{8.2.4}{Readline Arguments}{109}
@numsubsecentry{Searching for Commands in the History}{8.2.5}{Searching}{109}
@numsecentry{Readline Init File}{8.3}{Readline Init File}{110}
@numsubsecentry{Readline Init File Syntax}{8.3.1}{Readline Init File Syntax}{110}
@numsubsecentry{Conditional Init Constructs}{8.3.2}{Conditional Init Constructs}{118}
@numsubsecentry{Sample Init File}{8.3.3}{Sample Init File}{119}
@numsecentry{Bindable Readline Commands}{8.4}{Bindable Readline Commands}{122}
@numsubsecentry{Commands For Moving}{8.4.1}{Commands For Moving}{122}
@numsubsecentry{Commands For Manipulating The History}{8.4.2}{Commands For History}{123}
@numsubsecentry{Commands For Changing Text}{8.4.3}{Commands For Text}{124}
@numsubsecentry{Killing And Yanking}{8.4.4}{Commands For Killing}{126}
@numsubsecentry{Specifying Numeric Arguments}{8.4.5}{Numeric Arguments}{127}
@numsubsecentry{Letting Readline Type For You}{8.4.6}{Commands For Completion}{127}
@numsubsecentry{Keyboard Macros}{8.4.7}{Keyboard Macros}{129}
@numsubsecentry{Some Miscellaneous Commands}{8.4.8}{Miscellaneous Commands}{129}
@numsecentry{Readline vi Mode}{8.5}{Readline vi Mode}{131}
@numsecentry{Programmable Completion}{8.6}{Programmable Completion}{132}
@numsecentry{Programmable Completion Builtins}{8.7}{Programmable Completion Builtins}{134}
@numsecentry{A Programmable Completion Example}{8.8}{A Programmable Completion Example}{138}
@numchapentry{Using History Interactively}{9}{Using History Interactively}{141}
@numsecentry{Bash History Facilities}{9.1}{Bash History Facilities}{141}
@numsecentry{Bash History Builtins}{9.2}{Bash History Builtins}{141}
@numsecentry{History Expansion}{9.3}{History Interaction}{143}
@numsubsecentry{Event Designators}{9.3.1}{Event Designators}{144}
@numsubsecentry{Word Designators}{9.3.2}{Word Designators}{144}
@numsubsecentry{Modifiers}{9.3.3}{Modifiers}{145}
@numchapentry{Installing Bash}{10}{Installing Bash}{147}
@numsecentry{Basic Installation}{10.1}{Basic Installation}{147}
@numsecentry{Compilers and Options}{10.2}{Compilers and Options}{148}
@numsecentry{Compiling For Multiple Architectures}{10.3}{Compiling For Multiple Architectures}{148}
@numsecentry{Installation Names}{10.4}{Installation Names}{148}
@numsecentry{Specifying the System Type}{10.5}{Specifying the System Type}{149}
@numsecentry{Sharing Defaults}{10.6}{Sharing Defaults}{149}
@numsecentry{Operation Controls}{10.7}{Operation Controls}{149}
@numsecentry{Optional Features}{10.8}{Optional Features}{150}
@appentry{Reporting Bugs}{A}{Reporting Bugs}{155}
@appentry{Major Differences From The Bourne Shell}{B}{Major Differences From The Bourne Shell}{156}
@appsecentry{Implementation Differences From The SVR4.2 Shell}{B.1}{}{160}
@appentry{GNU Free Documentation License}{C}{GNU Free Documentation License}{162}
@appentry{Indexes}{D}{Indexes}{170}
@appsecentry{Index of Shell Builtin Commands}{D.1}{Builtin Index}{170}
@appsecentry{Index of Shell Reserved Words}{D.2}{Reserved Word Index}{171}
@appsecentry{Parameter and Variable Index}{D.3}{Variable Index}{172}
@appsecentry{Function Index}{D.4}{Function Index}{174}
@appsecentry{Concept Index}{D.5}{Concept Index}{176}
+145 -145
View File
@@ -19,148 +19,148 @@
\entry{$0}{22}{\code {$0}}
\entry{_}{22}{\code {_}}
\entry{$_}{22}{\code {$_}}
\entry{CDPATH}{72}{\code {CDPATH}}
\entry{HOME}{72}{\code {HOME}}
\entry{IFS}{72}{\code {IFS}}
\entry{MAIL}{72}{\code {MAIL}}
\entry{MAILPATH}{72}{\code {MAILPATH}}
\entry{OPTARG}{72}{\code {OPTARG}}
\entry{OPTIND}{72}{\code {OPTIND}}
\entry{PATH}{72}{\code {PATH}}
\entry{PS1}{72}{\code {PS1}}
\entry{PS2}{72}{\code {PS2}}
\entry{BASH}{72}{\code {BASH}}
\entry{BASHOPTS}{73}{\code {BASHOPTS}}
\entry{BASHPID}{73}{\code {BASHPID}}
\entry{BASH_ALIASES}{73}{\code {BASH_ALIASES}}
\entry{BASH_ARGC}{73}{\code {BASH_ARGC}}
\entry{BASH_ARGV}{73}{\code {BASH_ARGV}}
\entry{BASH_ARGV0}{73}{\code {BASH_ARGV0}}
\entry{BASH_CMDS}{74}{\code {BASH_CMDS}}
\entry{BASH_COMMAND}{74}{\code {BASH_COMMAND}}
\entry{BASH_COMPAT}{74}{\code {BASH_COMPAT}}
\entry{BASH_ENV}{74}{\code {BASH_ENV}}
\entry{BASH_EXECUTION_STRING}{74}{\code {BASH_EXECUTION_STRING}}
\entry{BASH_LINENO}{74}{\code {BASH_LINENO}}
\entry{BASH_LOADABLES_PATH}{74}{\code {BASH_LOADABLES_PATH}}
\entry{BASH_REMATCH}{74}{\code {BASH_REMATCH}}
\entry{BASH_SOURCE}{75}{\code {BASH_SOURCE}}
\entry{BASH_SUBSHELL}{75}{\code {BASH_SUBSHELL}}
\entry{BASH_VERSINFO}{75}{\code {BASH_VERSINFO}}
\entry{BASH_VERSION}{75}{\code {BASH_VERSION}}
\entry{BASH_XTRACEFD}{75}{\code {BASH_XTRACEFD}}
\entry{CHILD_MAX}{75}{\code {CHILD_MAX}}
\entry{COLUMNS}{75}{\code {COLUMNS}}
\entry{COMP_CWORD}{76}{\code {COMP_CWORD}}
\entry{COMP_LINE}{76}{\code {COMP_LINE}}
\entry{COMP_POINT}{76}{\code {COMP_POINT}}
\entry{COMP_TYPE}{76}{\code {COMP_TYPE}}
\entry{COMP_KEY}{76}{\code {COMP_KEY}}
\entry{COMP_WORDBREAKS}{76}{\code {COMP_WORDBREAKS}}
\entry{COMP_WORDS}{76}{\code {COMP_WORDS}}
\entry{COMPREPLY}{76}{\code {COMPREPLY}}
\entry{COPROC}{76}{\code {COPROC}}
\entry{DIRSTACK}{77}{\code {DIRSTACK}}
\entry{EMACS}{77}{\code {EMACS}}
\entry{ENV}{77}{\code {ENV}}
\entry{EPOCHREALTIME}{77}{\code {EPOCHREALTIME}}
\entry{EPOCHSECONDS}{77}{\code {EPOCHSECONDS}}
\entry{EUID}{77}{\code {EUID}}
\entry{EXECIGNORE}{77}{\code {EXECIGNORE}}
\entry{FCEDIT}{77}{\code {FCEDIT}}
\entry{FIGNORE}{77}{\code {FIGNORE}}
\entry{FUNCNAME}{77}{\code {FUNCNAME}}
\entry{FUNCNEST}{78}{\code {FUNCNEST}}
\entry{GLOBIGNORE}{78}{\code {GLOBIGNORE}}
\entry{GROUPS}{78}{\code {GROUPS}}
\entry{histchars}{78}{\code {histchars}}
\entry{HISTCMD}{78}{\code {HISTCMD}}
\entry{HISTCONTROL}{78}{\code {HISTCONTROL}}
\entry{HISTFILE}{79}{\code {HISTFILE}}
\entry{HISTFILESIZE}{79}{\code {HISTFILESIZE}}
\entry{HISTIGNORE}{79}{\code {HISTIGNORE}}
\entry{HISTSIZE}{79}{\code {HISTSIZE}}
\entry{HISTTIMEFORMAT}{79}{\code {HISTTIMEFORMAT}}
\entry{HOSTFILE}{79}{\code {HOSTFILE}}
\entry{HOSTNAME}{79}{\code {HOSTNAME}}
\entry{HOSTTYPE}{80}{\code {HOSTTYPE}}
\entry{IGNOREEOF}{80}{\code {IGNOREEOF}}
\entry{INPUTRC}{80}{\code {INPUTRC}}
\entry{INSIDE_EMACS}{80}{\code {INSIDE_EMACS}}
\entry{LANG}{80}{\code {LANG}}
\entry{LC_ALL}{80}{\code {LC_ALL}}
\entry{LC_COLLATE}{80}{\code {LC_COLLATE}}
\entry{LC_CTYPE}{80}{\code {LC_CTYPE}}
\entry{LC_MESSAGES}{80}{\code {LC_MESSAGES}}
\entry{LC_NUMERIC}{80}{\code {LC_NUMERIC}}
\entry{LC_TIME}{80}{\code {LC_TIME}}
\entry{LINENO}{80}{\code {LINENO}}
\entry{LINES}{80}{\code {LINES}}
\entry{MACHTYPE}{80}{\code {MACHTYPE}}
\entry{MAILCHECK}{80}{\code {MAILCHECK}}
\entry{MAPFILE}{81}{\code {MAPFILE}}
\entry{OLDPWD}{81}{\code {OLDPWD}}
\entry{OPTERR}{81}{\code {OPTERR}}
\entry{OSTYPE}{81}{\code {OSTYPE}}
\entry{PIPESTATUS}{81}{\code {PIPESTATUS}}
\entry{POSIXLY_CORRECT}{81}{\code {POSIXLY_CORRECT}}
\entry{PPID}{81}{\code {PPID}}
\entry{PROMPT_COMMAND}{81}{\code {PROMPT_COMMAND}}
\entry{PROMPT_DIRTRIM}{81}{\code {PROMPT_DIRTRIM}}
\entry{PS0}{81}{\code {PS0}}
\entry{PS3}{81}{\code {PS3}}
\entry{PS4}{81}{\code {PS4}}
\entry{PWD}{81}{\code {PWD}}
\entry{RANDOM}{82}{\code {RANDOM}}
\entry{READLINE_LINE}{82}{\code {READLINE_LINE}}
\entry{READLINE_POINT}{82}{\code {READLINE_POINT}}
\entry{REPLY}{82}{\code {REPLY}}
\entry{SECONDS}{82}{\code {SECONDS}}
\entry{SHELL}{82}{\code {SHELL}}
\entry{SHELLOPTS}{82}{\code {SHELLOPTS}}
\entry{SHLVL}{82}{\code {SHLVL}}
\entry{TIMEFORMAT}{82}{\code {TIMEFORMAT}}
\entry{TMOUT}{83}{\code {TMOUT}}
\entry{TMPDIR}{83}{\code {TMPDIR}}
\entry{UID}{83}{\code {UID}}
\entry{auto_resume}{105}{\code {auto_resume}}
\entry{bell-style}{110}{\code {bell-style}}
\entry{bind-tty-special-chars}{110}{\code {bind-tty-special-chars}}
\entry{blink-matching-paren}{110}{\code {blink-matching-paren}}
\entry{colored-completion-prefix}{110}{\code {colored-completion-prefix}}
\entry{colored-stats}{110}{\code {colored-stats}}
\entry{comment-begin}{110}{\code {comment-begin}}
\entry{completion-display-width}{110}{\code {completion-display-width}}
\entry{completion-ignore-case}{111}{\code {completion-ignore-case}}
\entry{completion-map-case}{111}{\code {completion-map-case}}
\entry{completion-prefix-display-length}{111}{\code {completion-prefix-display-length}}
\entry{completion-query-items}{111}{\code {completion-query-items}}
\entry{convert-meta}{111}{\code {convert-meta}}
\entry{disable-completion}{111}{\code {disable-completion}}
\entry{echo-control-characters}{111}{\code {echo-control-characters}}
\entry{editing-mode}{111}{\code {editing-mode}}
\entry{emacs-mode-string}{111}{\code {emacs-mode-string}}
\entry{enable-bracketed-paste}{112}{\code {enable-bracketed-paste}}
\entry{enable-keypad}{112}{\code {enable-keypad}}
\entry{expand-tilde}{112}{\code {expand-tilde}}
\entry{history-preserve-point}{112}{\code {history-preserve-point}}
\entry{history-size}{112}{\code {history-size}}
\entry{horizontal-scroll-mode}{112}{\code {horizontal-scroll-mode}}
\entry{input-meta}{113}{\code {input-meta}}
\entry{meta-flag}{113}{\code {meta-flag}}
\entry{isearch-terminators}{113}{\code {isearch-terminators}}
\entry{keymap}{113}{\code {keymap}}
\entry{mark-modified-lines}{113}{\code {mark-modified-lines}}
\entry{mark-symlinked-directories}{113}{\code {mark-symlinked-directories}}
\entry{match-hidden-files}{114}{\code {match-hidden-files}}
\entry{menu-complete-display-prefix}{114}{\code {menu-complete-display-prefix}}
\entry{output-meta}{114}{\code {output-meta}}
\entry{page-completions}{114}{\code {page-completions}}
\entry{revert-all-at-newline}{114}{\code {revert-all-at-newline}}
\entry{show-all-if-ambiguous}{114}{\code {show-all-if-ambiguous}}
\entry{show-all-if-unmodified}{114}{\code {show-all-if-unmodified}}
\entry{show-mode-in-prompt}{114}{\code {show-mode-in-prompt}}
\entry{skip-completed-text}{115}{\code {skip-completed-text}}
\entry{vi-cmd-mode-string}{115}{\code {vi-cmd-mode-string}}
\entry{vi-ins-mode-string}{115}{\code {vi-ins-mode-string}}
\entry{visible-stats}{115}{\code {visible-stats}}
\entry{CDPATH}{73}{\code {CDPATH}}
\entry{HOME}{73}{\code {HOME}}
\entry{IFS}{73}{\code {IFS}}
\entry{MAIL}{73}{\code {MAIL}}
\entry{MAILPATH}{73}{\code {MAILPATH}}
\entry{OPTARG}{73}{\code {OPTARG}}
\entry{OPTIND}{73}{\code {OPTIND}}
\entry{PATH}{73}{\code {PATH}}
\entry{PS1}{73}{\code {PS1}}
\entry{PS2}{73}{\code {PS2}}
\entry{BASH}{73}{\code {BASH}}
\entry{BASHOPTS}{74}{\code {BASHOPTS}}
\entry{BASHPID}{74}{\code {BASHPID}}
\entry{BASH_ALIASES}{74}{\code {BASH_ALIASES}}
\entry{BASH_ARGC}{74}{\code {BASH_ARGC}}
\entry{BASH_ARGV}{74}{\code {BASH_ARGV}}
\entry{BASH_ARGV0}{74}{\code {BASH_ARGV0}}
\entry{BASH_CMDS}{75}{\code {BASH_CMDS}}
\entry{BASH_COMMAND}{75}{\code {BASH_COMMAND}}
\entry{BASH_COMPAT}{75}{\code {BASH_COMPAT}}
\entry{BASH_ENV}{75}{\code {BASH_ENV}}
\entry{BASH_EXECUTION_STRING}{75}{\code {BASH_EXECUTION_STRING}}
\entry{BASH_LINENO}{75}{\code {BASH_LINENO}}
\entry{BASH_LOADABLES_PATH}{75}{\code {BASH_LOADABLES_PATH}}
\entry{BASH_REMATCH}{75}{\code {BASH_REMATCH}}
\entry{BASH_SOURCE}{76}{\code {BASH_SOURCE}}
\entry{BASH_SUBSHELL}{76}{\code {BASH_SUBSHELL}}
\entry{BASH_VERSINFO}{76}{\code {BASH_VERSINFO}}
\entry{BASH_VERSION}{76}{\code {BASH_VERSION}}
\entry{BASH_XTRACEFD}{76}{\code {BASH_XTRACEFD}}
\entry{CHILD_MAX}{76}{\code {CHILD_MAX}}
\entry{COLUMNS}{76}{\code {COLUMNS}}
\entry{COMP_CWORD}{77}{\code {COMP_CWORD}}
\entry{COMP_LINE}{77}{\code {COMP_LINE}}
\entry{COMP_POINT}{77}{\code {COMP_POINT}}
\entry{COMP_TYPE}{77}{\code {COMP_TYPE}}
\entry{COMP_KEY}{77}{\code {COMP_KEY}}
\entry{COMP_WORDBREAKS}{77}{\code {COMP_WORDBREAKS}}
\entry{COMP_WORDS}{77}{\code {COMP_WORDS}}
\entry{COMPREPLY}{77}{\code {COMPREPLY}}
\entry{COPROC}{77}{\code {COPROC}}
\entry{DIRSTACK}{78}{\code {DIRSTACK}}
\entry{EMACS}{78}{\code {EMACS}}
\entry{ENV}{78}{\code {ENV}}
\entry{EPOCHREALTIME}{78}{\code {EPOCHREALTIME}}
\entry{EPOCHSECONDS}{78}{\code {EPOCHSECONDS}}
\entry{EUID}{78}{\code {EUID}}
\entry{EXECIGNORE}{78}{\code {EXECIGNORE}}
\entry{FCEDIT}{78}{\code {FCEDIT}}
\entry{FIGNORE}{78}{\code {FIGNORE}}
\entry{FUNCNAME}{78}{\code {FUNCNAME}}
\entry{FUNCNEST}{79}{\code {FUNCNEST}}
\entry{GLOBIGNORE}{79}{\code {GLOBIGNORE}}
\entry{GROUPS}{79}{\code {GROUPS}}
\entry{histchars}{79}{\code {histchars}}
\entry{HISTCMD}{79}{\code {HISTCMD}}
\entry{HISTCONTROL}{79}{\code {HISTCONTROL}}
\entry{HISTFILE}{80}{\code {HISTFILE}}
\entry{HISTFILESIZE}{80}{\code {HISTFILESIZE}}
\entry{HISTIGNORE}{80}{\code {HISTIGNORE}}
\entry{HISTSIZE}{80}{\code {HISTSIZE}}
\entry{HISTTIMEFORMAT}{80}{\code {HISTTIMEFORMAT}}
\entry{HOSTFILE}{80}{\code {HOSTFILE}}
\entry{HOSTNAME}{80}{\code {HOSTNAME}}
\entry{HOSTTYPE}{81}{\code {HOSTTYPE}}
\entry{IGNOREEOF}{81}{\code {IGNOREEOF}}
\entry{INPUTRC}{81}{\code {INPUTRC}}
\entry{INSIDE_EMACS}{81}{\code {INSIDE_EMACS}}
\entry{LANG}{81}{\code {LANG}}
\entry{LC_ALL}{81}{\code {LC_ALL}}
\entry{LC_COLLATE}{81}{\code {LC_COLLATE}}
\entry{LC_CTYPE}{81}{\code {LC_CTYPE}}
\entry{LC_MESSAGES}{81}{\code {LC_MESSAGES}}
\entry{LC_NUMERIC}{81}{\code {LC_NUMERIC}}
\entry{LC_TIME}{81}{\code {LC_TIME}}
\entry{LINENO}{81}{\code {LINENO}}
\entry{LINES}{81}{\code {LINES}}
\entry{MACHTYPE}{81}{\code {MACHTYPE}}
\entry{MAILCHECK}{81}{\code {MAILCHECK}}
\entry{MAPFILE}{82}{\code {MAPFILE}}
\entry{OLDPWD}{82}{\code {OLDPWD}}
\entry{OPTERR}{82}{\code {OPTERR}}
\entry{OSTYPE}{82}{\code {OSTYPE}}
\entry{PIPESTATUS}{82}{\code {PIPESTATUS}}
\entry{POSIXLY_CORRECT}{82}{\code {POSIXLY_CORRECT}}
\entry{PPID}{82}{\code {PPID}}
\entry{PROMPT_COMMAND}{82}{\code {PROMPT_COMMAND}}
\entry{PROMPT_DIRTRIM}{82}{\code {PROMPT_DIRTRIM}}
\entry{PS0}{82}{\code {PS0}}
\entry{PS3}{82}{\code {PS3}}
\entry{PS4}{82}{\code {PS4}}
\entry{PWD}{82}{\code {PWD}}
\entry{RANDOM}{83}{\code {RANDOM}}
\entry{READLINE_LINE}{83}{\code {READLINE_LINE}}
\entry{READLINE_POINT}{83}{\code {READLINE_POINT}}
\entry{REPLY}{83}{\code {REPLY}}
\entry{SECONDS}{83}{\code {SECONDS}}
\entry{SHELL}{83}{\code {SHELL}}
\entry{SHELLOPTS}{83}{\code {SHELLOPTS}}
\entry{SHLVL}{83}{\code {SHLVL}}
\entry{TIMEFORMAT}{83}{\code {TIMEFORMAT}}
\entry{TMOUT}{84}{\code {TMOUT}}
\entry{TMPDIR}{84}{\code {TMPDIR}}
\entry{UID}{84}{\code {UID}}
\entry{auto_resume}{106}{\code {auto_resume}}
\entry{bell-style}{111}{\code {bell-style}}
\entry{bind-tty-special-chars}{111}{\code {bind-tty-special-chars}}
\entry{blink-matching-paren}{111}{\code {blink-matching-paren}}
\entry{colored-completion-prefix}{111}{\code {colored-completion-prefix}}
\entry{colored-stats}{111}{\code {colored-stats}}
\entry{comment-begin}{111}{\code {comment-begin}}
\entry{completion-display-width}{111}{\code {completion-display-width}}
\entry{completion-ignore-case}{112}{\code {completion-ignore-case}}
\entry{completion-map-case}{112}{\code {completion-map-case}}
\entry{completion-prefix-display-length}{112}{\code {completion-prefix-display-length}}
\entry{completion-query-items}{112}{\code {completion-query-items}}
\entry{convert-meta}{112}{\code {convert-meta}}
\entry{disable-completion}{112}{\code {disable-completion}}
\entry{echo-control-characters}{112}{\code {echo-control-characters}}
\entry{editing-mode}{112}{\code {editing-mode}}
\entry{emacs-mode-string}{112}{\code {emacs-mode-string}}
\entry{enable-bracketed-paste}{113}{\code {enable-bracketed-paste}}
\entry{enable-keypad}{113}{\code {enable-keypad}}
\entry{expand-tilde}{113}{\code {expand-tilde}}
\entry{history-preserve-point}{113}{\code {history-preserve-point}}
\entry{history-size}{113}{\code {history-size}}
\entry{horizontal-scroll-mode}{113}{\code {horizontal-scroll-mode}}
\entry{input-meta}{114}{\code {input-meta}}
\entry{meta-flag}{114}{\code {meta-flag}}
\entry{isearch-terminators}{114}{\code {isearch-terminators}}
\entry{keymap}{114}{\code {keymap}}
\entry{mark-modified-lines}{114}{\code {mark-modified-lines}}
\entry{mark-symlinked-directories}{114}{\code {mark-symlinked-directories}}
\entry{match-hidden-files}{115}{\code {match-hidden-files}}
\entry{menu-complete-display-prefix}{115}{\code {menu-complete-display-prefix}}
\entry{output-meta}{115}{\code {output-meta}}
\entry{page-completions}{115}{\code {page-completions}}
\entry{revert-all-at-newline}{115}{\code {revert-all-at-newline}}
\entry{show-all-if-ambiguous}{115}{\code {show-all-if-ambiguous}}
\entry{show-all-if-unmodified}{115}{\code {show-all-if-unmodified}}
\entry{show-mode-in-prompt}{115}{\code {show-mode-in-prompt}}
\entry{skip-completed-text}{116}{\code {skip-completed-text}}
\entry{vi-cmd-mode-string}{116}{\code {vi-cmd-mode-string}}
\entry{vi-ins-mode-string}{116}{\code {vi-ins-mode-string}}
\entry{visible-stats}{116}{\code {visible-stats}}
+145 -145
View File
@@ -26,168 +26,168 @@
\initial {0}
\entry {\code {0}}{22}
\initial {A}
\entry {\code {auto_resume}}{105}
\entry {\code {auto_resume}}{106}
\initial {B}
\entry {\code {BASH}}{72}
\entry {\code {BASH_ALIASES}}{73}
\entry {\code {BASH_ARGC}}{73}
\entry {\code {BASH_ARGV}}{73}
\entry {\code {BASH_ARGV0}}{73}
\entry {\code {BASH_CMDS}}{74}
\entry {\code {BASH_COMMAND}}{74}
\entry {\code {BASH_COMPAT}}{74}
\entry {\code {BASH_ENV}}{74}
\entry {\code {BASH_EXECUTION_STRING}}{74}
\entry {\code {BASH_LINENO}}{74}
\entry {\code {BASH_LOADABLES_PATH}}{74}
\entry {\code {BASH_REMATCH}}{74}
\entry {\code {BASH_SOURCE}}{75}
\entry {\code {BASH_SUBSHELL}}{75}
\entry {\code {BASH_VERSINFO}}{75}
\entry {\code {BASH_VERSION}}{75}
\entry {\code {BASH_XTRACEFD}}{75}
\entry {\code {BASHOPTS}}{73}
\entry {\code {BASHPID}}{73}
\entry {\code {bell-style}}{110}
\entry {\code {bind-tty-special-chars}}{110}
\entry {\code {blink-matching-paren}}{110}
\entry {\code {BASH}}{73}
\entry {\code {BASH_ALIASES}}{74}
\entry {\code {BASH_ARGC}}{74}
\entry {\code {BASH_ARGV}}{74}
\entry {\code {BASH_ARGV0}}{74}
\entry {\code {BASH_CMDS}}{75}
\entry {\code {BASH_COMMAND}}{75}
\entry {\code {BASH_COMPAT}}{75}
\entry {\code {BASH_ENV}}{75}
\entry {\code {BASH_EXECUTION_STRING}}{75}
\entry {\code {BASH_LINENO}}{75}
\entry {\code {BASH_LOADABLES_PATH}}{75}
\entry {\code {BASH_REMATCH}}{75}
\entry {\code {BASH_SOURCE}}{76}
\entry {\code {BASH_SUBSHELL}}{76}
\entry {\code {BASH_VERSINFO}}{76}
\entry {\code {BASH_VERSION}}{76}
\entry {\code {BASH_XTRACEFD}}{76}
\entry {\code {BASHOPTS}}{74}
\entry {\code {BASHPID}}{74}
\entry {\code {bell-style}}{111}
\entry {\code {bind-tty-special-chars}}{111}
\entry {\code {blink-matching-paren}}{111}
\initial {C}
\entry {\code {CDPATH}}{72}
\entry {\code {CHILD_MAX}}{75}
\entry {\code {colored-completion-prefix}}{110}
\entry {\code {colored-stats}}{110}
\entry {\code {COLUMNS}}{75}
\entry {\code {comment-begin}}{110}
\entry {\code {COMP_CWORD}}{76}
\entry {\code {COMP_KEY}}{76}
\entry {\code {COMP_LINE}}{76}
\entry {\code {COMP_POINT}}{76}
\entry {\code {COMP_TYPE}}{76}
\entry {\code {COMP_WORDBREAKS}}{76}
\entry {\code {COMP_WORDS}}{76}
\entry {\code {completion-display-width}}{110}
\entry {\code {completion-ignore-case}}{111}
\entry {\code {completion-map-case}}{111}
\entry {\code {completion-prefix-display-length}}{111}
\entry {\code {completion-query-items}}{111}
\entry {\code {COMPREPLY}}{76}
\entry {\code {convert-meta}}{111}
\entry {\code {COPROC}}{76}
\entry {\code {CDPATH}}{73}
\entry {\code {CHILD_MAX}}{76}
\entry {\code {colored-completion-prefix}}{111}
\entry {\code {colored-stats}}{111}
\entry {\code {COLUMNS}}{76}
\entry {\code {comment-begin}}{111}
\entry {\code {COMP_CWORD}}{77}
\entry {\code {COMP_KEY}}{77}
\entry {\code {COMP_LINE}}{77}
\entry {\code {COMP_POINT}}{77}
\entry {\code {COMP_TYPE}}{77}
\entry {\code {COMP_WORDBREAKS}}{77}
\entry {\code {COMP_WORDS}}{77}
\entry {\code {completion-display-width}}{111}
\entry {\code {completion-ignore-case}}{112}
\entry {\code {completion-map-case}}{112}
\entry {\code {completion-prefix-display-length}}{112}
\entry {\code {completion-query-items}}{112}
\entry {\code {COMPREPLY}}{77}
\entry {\code {convert-meta}}{112}
\entry {\code {COPROC}}{77}
\initial {D}
\entry {\code {DIRSTACK}}{77}
\entry {\code {disable-completion}}{111}
\entry {\code {DIRSTACK}}{78}
\entry {\code {disable-completion}}{112}
\initial {E}
\entry {\code {echo-control-characters}}{111}
\entry {\code {editing-mode}}{111}
\entry {\code {emacs-mode-string}}{111}
\entry {\code {EMACS}}{77}
\entry {\code {enable-bracketed-paste}}{112}
\entry {\code {enable-keypad}}{112}
\entry {\code {ENV}}{77}
\entry {\code {EPOCHREALTIME}}{77}
\entry {\code {EPOCHSECONDS}}{77}
\entry {\code {EUID}}{77}
\entry {\code {EXECIGNORE}}{77}
\entry {\code {expand-tilde}}{112}
\entry {\code {echo-control-characters}}{112}
\entry {\code {editing-mode}}{112}
\entry {\code {emacs-mode-string}}{112}
\entry {\code {EMACS}}{78}
\entry {\code {enable-bracketed-paste}}{113}
\entry {\code {enable-keypad}}{113}
\entry {\code {ENV}}{78}
\entry {\code {EPOCHREALTIME}}{78}
\entry {\code {EPOCHSECONDS}}{78}
\entry {\code {EUID}}{78}
\entry {\code {EXECIGNORE}}{78}
\entry {\code {expand-tilde}}{113}
\initial {F}
\entry {\code {FCEDIT}}{77}
\entry {\code {FIGNORE}}{77}
\entry {\code {FUNCNAME}}{77}
\entry {\code {FUNCNEST}}{78}
\entry {\code {FCEDIT}}{78}
\entry {\code {FIGNORE}}{78}
\entry {\code {FUNCNAME}}{78}
\entry {\code {FUNCNEST}}{79}
\initial {G}
\entry {\code {GLOBIGNORE}}{78}
\entry {\code {GROUPS}}{78}
\entry {\code {GLOBIGNORE}}{79}
\entry {\code {GROUPS}}{79}
\initial {H}
\entry {\code {histchars}}{78}
\entry {\code {HISTCMD}}{78}
\entry {\code {HISTCONTROL}}{78}
\entry {\code {HISTFILE}}{79}
\entry {\code {HISTFILESIZE}}{79}
\entry {\code {HISTIGNORE}}{79}
\entry {\code {history-preserve-point}}{112}
\entry {\code {history-size}}{112}
\entry {\code {HISTSIZE}}{79}
\entry {\code {HISTTIMEFORMAT}}{79}
\entry {\code {HOME}}{72}
\entry {\code {horizontal-scroll-mode}}{112}
\entry {\code {HOSTFILE}}{79}
\entry {\code {HOSTNAME}}{79}
\entry {\code {HOSTTYPE}}{80}
\entry {\code {histchars}}{79}
\entry {\code {HISTCMD}}{79}
\entry {\code {HISTCONTROL}}{79}
\entry {\code {HISTFILE}}{80}
\entry {\code {HISTFILESIZE}}{80}
\entry {\code {HISTIGNORE}}{80}
\entry {\code {history-preserve-point}}{113}
\entry {\code {history-size}}{113}
\entry {\code {HISTSIZE}}{80}
\entry {\code {HISTTIMEFORMAT}}{80}
\entry {\code {HOME}}{73}
\entry {\code {horizontal-scroll-mode}}{113}
\entry {\code {HOSTFILE}}{80}
\entry {\code {HOSTNAME}}{80}
\entry {\code {HOSTTYPE}}{81}
\initial {I}
\entry {\code {IFS}}{72}
\entry {\code {IGNOREEOF}}{80}
\entry {\code {input-meta}}{113}
\entry {\code {INPUTRC}}{80}
\entry {\code {INSIDE_EMACS}}{80}
\entry {\code {isearch-terminators}}{113}
\entry {\code {IFS}}{73}
\entry {\code {IGNOREEOF}}{81}
\entry {\code {input-meta}}{114}
\entry {\code {INPUTRC}}{81}
\entry {\code {INSIDE_EMACS}}{81}
\entry {\code {isearch-terminators}}{114}
\initial {K}
\entry {\code {keymap}}{113}
\entry {\code {keymap}}{114}
\initial {L}
\entry {\code {LANG}}{80}
\entry {\code {LC_ALL}}{80}
\entry {\code {LC_COLLATE}}{80}
\entry {\code {LC_CTYPE}}{80}
\entry {\code {LC_MESSAGES}}{7, 80}
\entry {\code {LC_NUMERIC}}{80}
\entry {\code {LC_TIME}}{80}
\entry {\code {LINENO}}{80}
\entry {\code {LINES}}{80}
\entry {\code {LANG}}{81}
\entry {\code {LC_ALL}}{81}
\entry {\code {LC_COLLATE}}{81}
\entry {\code {LC_CTYPE}}{81}
\entry {\code {LC_MESSAGES}}{7, 81}
\entry {\code {LC_NUMERIC}}{81}
\entry {\code {LC_TIME}}{81}
\entry {\code {LINENO}}{81}
\entry {\code {LINES}}{81}
\initial {M}
\entry {\code {MACHTYPE}}{80}
\entry {\code {MAIL}}{72}
\entry {\code {MAILCHECK}}{80}
\entry {\code {MAILPATH}}{72}
\entry {\code {MAPFILE}}{81}
\entry {\code {mark-modified-lines}}{113}
\entry {\code {mark-symlinked-directories}}{113}
\entry {\code {match-hidden-files}}{114}
\entry {\code {menu-complete-display-prefix}}{114}
\entry {\code {meta-flag}}{113}
\entry {\code {MACHTYPE}}{81}
\entry {\code {MAIL}}{73}
\entry {\code {MAILCHECK}}{81}
\entry {\code {MAILPATH}}{73}
\entry {\code {MAPFILE}}{82}
\entry {\code {mark-modified-lines}}{114}
\entry {\code {mark-symlinked-directories}}{114}
\entry {\code {match-hidden-files}}{115}
\entry {\code {menu-complete-display-prefix}}{115}
\entry {\code {meta-flag}}{114}
\initial {O}
\entry {\code {OLDPWD}}{81}
\entry {\code {OPTARG}}{72}
\entry {\code {OPTERR}}{81}
\entry {\code {OPTIND}}{72}
\entry {\code {OSTYPE}}{81}
\entry {\code {output-meta}}{114}
\entry {\code {OLDPWD}}{82}
\entry {\code {OPTARG}}{73}
\entry {\code {OPTERR}}{82}
\entry {\code {OPTIND}}{73}
\entry {\code {OSTYPE}}{82}
\entry {\code {output-meta}}{115}
\initial {P}
\entry {\code {page-completions}}{114}
\entry {\code {PATH}}{72}
\entry {\code {PIPESTATUS}}{81}
\entry {\code {POSIXLY_CORRECT}}{81}
\entry {\code {PPID}}{81}
\entry {\code {PROMPT_COMMAND}}{81}
\entry {\code {PROMPT_DIRTRIM}}{81}
\entry {\code {PS0}}{81}
\entry {\code {PS1}}{72}
\entry {\code {PS2}}{72}
\entry {\code {PS3}}{81}
\entry {\code {PS4}}{81}
\entry {\code {PWD}}{81}
\entry {\code {page-completions}}{115}
\entry {\code {PATH}}{73}
\entry {\code {PIPESTATUS}}{82}
\entry {\code {POSIXLY_CORRECT}}{82}
\entry {\code {PPID}}{82}
\entry {\code {PROMPT_COMMAND}}{82}
\entry {\code {PROMPT_DIRTRIM}}{82}
\entry {\code {PS0}}{82}
\entry {\code {PS1}}{73}
\entry {\code {PS2}}{73}
\entry {\code {PS3}}{82}
\entry {\code {PS4}}{82}
\entry {\code {PWD}}{82}
\initial {R}
\entry {\code {RANDOM}}{82}
\entry {\code {READLINE_LINE}}{82}
\entry {\code {READLINE_POINT}}{82}
\entry {\code {REPLY}}{82}
\entry {\code {revert-all-at-newline}}{114}
\entry {\code {RANDOM}}{83}
\entry {\code {READLINE_LINE}}{83}
\entry {\code {READLINE_POINT}}{83}
\entry {\code {REPLY}}{83}
\entry {\code {revert-all-at-newline}}{115}
\initial {S}
\entry {\code {SECONDS}}{82}
\entry {\code {SHELL}}{82}
\entry {\code {SHELLOPTS}}{82}
\entry {\code {SHLVL}}{82}
\entry {\code {show-all-if-ambiguous}}{114}
\entry {\code {show-all-if-unmodified}}{114}
\entry {\code {show-mode-in-prompt}}{114}
\entry {\code {skip-completed-text}}{115}
\entry {\code {SECONDS}}{83}
\entry {\code {SHELL}}{83}
\entry {\code {SHELLOPTS}}{83}
\entry {\code {SHLVL}}{83}
\entry {\code {show-all-if-ambiguous}}{115}
\entry {\code {show-all-if-unmodified}}{115}
\entry {\code {show-mode-in-prompt}}{115}
\entry {\code {skip-completed-text}}{116}
\initial {T}
\entry {\code {TEXTDOMAIN}}{7}
\entry {\code {TEXTDOMAINDIR}}{7}
\entry {\code {TIMEFORMAT}}{82}
\entry {\code {TMOUT}}{83}
\entry {\code {TMPDIR}}{83}
\entry {\code {TIMEFORMAT}}{83}
\entry {\code {TMOUT}}{84}
\entry {\code {TMPDIR}}{84}
\initial {U}
\entry {\code {UID}}{83}
\entry {\code {UID}}{84}
\initial {V}
\entry {\code {vi-cmd-mode-string}}{115}
\entry {\code {vi-ins-mode-string}}{115}
\entry {\code {visible-stats}}{115}
\entry {\code {vi-cmd-mode-string}}{116}
\entry {\code {vi-ins-mode-string}}{116}
\entry {\code {visible-stats}}{116}
+125 -111
View File
@@ -1340,230 +1340,244 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS
cchheecckkwwiinnssiizzee
If set, bbaasshh checks the window size after each external
(non-builtin) command and, if necessary, updates the
values of LLIINNEESS and CCOOLLUUMMNNSS.
ccmmddhhiisstt If set, bbaasshh attempts to save all lines of a multiple-
line command in the same history entry. This allows
easy re-editing of multi-line commands. This option is
enabled by default, but only has an effect if command
values of LLIINNEESS and CCOOLLUUMMNNSS. This option is enabled by
default.
ccmmddhhiisstt If set, bbaasshh attempts to save all lines of a multiple-
line command in the same history entry. This allows
easy re-editing of multi-line commands. This option is
enabled by default, but only has an effect if command
history is enabled, as described above under HHIISSTTOORRYY.
ccoommppaatt3311
If set, bbaasshh changes its behavior to that of version 3.1
with respect to quoted arguments to the [[[[ conditional
with respect to quoted arguments to the [[[[ conditional
command's ==~~ operator and locale-specific string compar-
ison when using the [[[[ conditional command's << and >>
operators. Bash versions prior to bash-4.1 use ASCII
ison when using the [[[[ conditional command's << and >>
operators. Bash versions prior to bash-4.1 use ASCII
collation and _s_t_r_c_m_p(3); bash-4.1 and later use the cur-
rent locale's collation sequence and _s_t_r_c_o_l_l(3).
ccoommppaatt3322
If set, bbaasshh changes its behavior to that of version 3.2
with respect to locale-specific string comparison when
using the [[[[ conditional command's << and >> operators
(see previous item) and the effect of interrupting a
command list. Bash versions 3.2 and earlier continue
with the next command in the list after one terminates
with respect to locale-specific string comparison when
using the [[[[ conditional command's << and >> operators
(see previous item) and the effect of interrupting a
command list. Bash versions 3.2 and earlier continue
with the next command in the list after one terminates
due to an interrupt.
ccoommppaatt4400
If set, bbaasshh changes its behavior to that of version 4.0
with respect to locale-specific string comparison when
using the [[[[ conditional command's << and >> operators
(see description of ccoommppaatt3311) and the effect of inter-
rupting a command list. Bash versions 4.0 and later
interrupt the list as if the shell received the inter-
rupt; previous versions continue with the next command
with respect to locale-specific string comparison when
using the [[[[ conditional command's << and >> operators
(see description of ccoommppaatt3311) and the effect of inter-
rupting a command list. Bash versions 4.0 and later
interrupt the list as if the shell received the inter-
rupt; previous versions continue with the next command
in the list.
ccoommppaatt4411
If set, bbaasshh, when in _p_o_s_i_x _m_o_d_e, treats a single quote
in a double-quoted parameter expansion as a special
character. The single quotes must match (an even num-
ber) and the characters between the single quotes are
considered quoted. This is the behavior of posix mode
through version 4.1. The default bash behavior remains
If set, bbaasshh, when in _p_o_s_i_x _m_o_d_e, treats a single quote
in a double-quoted parameter expansion as a special
character. The single quotes must match (an even num-
ber) and the characters between the single quotes are
considered quoted. This is the behavior of posix mode
through version 4.1. The default bash behavior remains
as in previous versions.
ccoommppaatt4422
If set, bbaasshh does not process the replacement string in
the pattern substitution word expansion using quote
If set, bbaasshh does not process the replacement string in
the pattern substitution word expansion using quote
removal.
ccoommppaatt4433
If set, bbaasshh does not print a warning message if an
attempt is made to use a quoted compound array assign-
ment as an argument to ddeeccllaarree, makes word expansion
errors non-fatal errors that cause the current command
to fail (the default behavior is to make them fatal
If set, bbaasshh does not print a warning message if an
attempt is made to use a quoted compound array assign-
ment as an argument to ddeeccllaarree, makes word expansion
errors non-fatal errors that cause the current command
to fail (the default behavior is to make them fatal
errors that cause the shell to exit), and does not reset
the loop state when a shell function is executed (this
allows bbrreeaakk or ccoonnttiinnuuee in a shell function to affect
the loop state when a shell function is executed (this
allows bbrreeaakk or ccoonnttiinnuuee in a shell function to affect
loops in the caller's context).
ccoommppaatt4444
If set, bbaasshh saves the positional parameters to
If set, bbaasshh saves the positional parameters to
BASH_ARGV and BASH_ARGC before they are used, regardless
of whether or not extended debugging mode is enabled.
ccoommpplleettee__ffuullllqquuoottee
If set, bbaasshh quotes all shell metacharacters in file-
names and directory names when performing completion.
If set, bbaasshh quotes all shell metacharacters in file-
names and directory names when performing completion.
If not set, bbaasshh removes metacharacters such as the dol-
lar sign from the set of characters that will be quoted
in completed filenames when these metacharacters appear
in shell variable references in words to be completed.
This means that dollar signs in variable names that
expand to directories will not be quoted; however, any
dollar signs appearing in filenames will not be quoted,
either. This is active only when bash is using back-
slashes to quote completed filenames. This variable is
set by default, which is the default bash behavior in
lar sign from the set of characters that will be quoted
in completed filenames when these metacharacters appear
in shell variable references in words to be completed.
This means that dollar signs in variable names that
expand to directories will not be quoted; however, any
dollar signs appearing in filenames will not be quoted,
either. This is active only when bash is using back-
slashes to quote completed filenames. This variable is
set by default, which is the default bash behavior in
versions through 4.2.
ddiirreexxppaanndd
If set, bbaasshh replaces directory names with the results
of word expansion when performing filename completion.
This changes the contents of the readline editing buf-
fer. If not set, bbaasshh attempts to preserve what the
If set, bbaasshh replaces directory names with the results
of word expansion when performing filename completion.
This changes the contents of the readline editing buf-
fer. If not set, bbaasshh attempts to preserve what the
user typed.
ddiirrssppeellll
If set, bbaasshh attempts spelling correction on directory
names during word completion if the directory name ini-
If set, bbaasshh attempts spelling correction on directory
names during word completion if the directory name ini-
tially supplied does not exist.
ddoottgglloobb If set, bbaasshh includes filenames beginning with a `.' in
the results of pathname expansion. The filenames ````..''''
and ````....'''' must always be matched explicitly, even if
ddoottgglloobb If set, bbaasshh includes filenames beginning with a `.' in
the results of pathname expansion. The filenames ````..''''
and ````....'''' must always be matched explicitly, even if
ddoottgglloobb is set.
eexxeeccffaaiill
If set, a non-interactive shell will not exit if it can-
not execute the file specified as an argument to the
eexxeecc builtin command. An interactive shell does not
not execute the file specified as an argument to the
eexxeecc builtin command. An interactive shell does not
exit if eexxeecc fails.
eexxppaanndd__aalliiaasseess
If set, aliases are expanded as described above under
If set, aliases are expanded as described above under
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-
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:
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
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
alias.
pprroommppttvvaarrss
If set, prompt strings undergo parameter expansion, com-
mand substitution, arithmetic expansion, and quote
+416 -396
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,6 +1,6 @@
%!PS-Adobe-3.0
%%Creator: groff version 1.22.3
%%CreationDate: Fri Sep 7 15:34:15 2018
%%CreationDate: Fri Nov 9 14:50:19 2018
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%DocumentSuppliedResources: procset grops 1.22 3
+3 -3
View File
@@ -2,10 +2,10 @@
Copyright (C) 1988-2018 Free Software Foundation, Inc.
@end ignore
@set LASTCHANGE Mon Oct 22 09:55:52 EDT 2018
@set LASTCHANGE Fri Nov 9 14:24:49 EST 2018
@set EDITION 5.0
@set VERSION 5.0
@set UPDATED 22 October 2018
@set UPDATED-MONTH October 2018
@set UPDATED 9 November 2018
@set UPDATED-MONTH November 2018
+15 -23
View File
@@ -3473,31 +3473,21 @@ execute_case_command (case_command)
}
#endif
#if 0 /* TAG: bash-5.1 */
/* Use the same expansions (POSIX leaves them unspecified) as the patterns
but dequote the resulting string, since the quotes are handled specially
below. */
if (posixly_correct)
/* Use the same expansions (the ones POSIX specifies) as the patterns;
dequote the resulting string (as POSIX specifies) since the quotes in
patterns are handled specially below. We have to do it in this order
because we're not supposed to perform word splitting. */
wlist = expand_word_leave_quoted (case_command->word, 0);
if (wlist)
{
wlist = expand_word_leave_quoted (case_command->word, 0);
if (wlist)
{
char *t;
t = string_list (wlist);
word = dequote_string (t);
free (t);
}
else
word = savestring ("");
dispose_words (wlist);
char *t;
t = string_list (wlist);
word = dequote_string (t);
free (t);
}
else
#endif
{
wlist = expand_word_unsplit (case_command->word, 0);
word = wlist ? string_list (wlist) : savestring ("");
word = savestring ("");
dispose_words (wlist);
}
retval = EXECUTION_SUCCESS;
ignore_return = case_command->flags & CMD_IGNORE_RETURN;
@@ -4693,8 +4683,10 @@ execute_builtin (builtin, words, flags, subshell)
/* `return' does a longjmp() back to a saved environment in execute_function.
If a variable assignment list preceded the command, and the shell is
running in POSIX mode, we need to merge that into the shell_variables
table, since `return' is a POSIX special builtin. */
if (posixly_correct && subshell == 0 && builtin == return_builtin && temporary_env)
table, since `return' is a POSIX special builtin. We don't do this if
it's being run by the `command' builtin, since that's supposed to inhibit
the special builtin properties. */
if (posixly_correct && subshell == 0 && builtin == return_builtin && (flags & CMD_COMMAND_BUILTIN) == 0 && temporary_env)
{
begin_unwind_frame ("return_temp_env");
add_unwind_protect (merge_temporary_env, (char *)NULL);
+2
View File
@@ -79,6 +79,7 @@ posix_initialize (on)
interactive_comments = source_uses_path = expand_aliases = 1;
inherit_errexit = 1;
source_searches_cwd = 0;
print_shift_error = 1;
}
/* Things that should be turned on when posix mode is disabled. */
@@ -86,6 +87,7 @@ posix_initialize (on)
{
source_searches_cwd = 1;
expand_aliases = interactive_shell;
print_shift_error = 0;
}
}
+33 -29
View File
@@ -2754,6 +2754,13 @@ string_list_pos_params (pchar, list, quoted)
: (c) == (separators)[0]) \
: 0)
/* member of the space character class in the current locale */
#define ifs_whitespace(c) ISSPACE(c)
/* "adjacent IFS white space" */
#define ifs_whitesep(c) ((sh_style_split || separators == 0) ? spctabnl (c) \
: ifs_whitespace (c))
WORD_LIST *
list_string (string, separators, quoted)
register char *string, *separators;
@@ -2781,10 +2788,12 @@ list_string (string, separators, quoted)
slen = 0;
/* Remove sequences of whitespace at the beginning of STRING, as
long as those characters appear in IFS. Do not do this if
STRING is quoted or if there are no separator characters. */
STRING is quoted or if there are no separator characters. We use the
Posix definition of whitespace as a member of the space character
class in the current locale. */
if (!quoted || !separators || !*separators)
{
for (s = string; *s && spctabnl (*s) && issep (*s); s++);
for (s = string; *s && issep (*s) && ifs_whitespace (*s); s++);
if (!*s)
return ((WORD_LIST *)NULL);
@@ -2795,7 +2804,7 @@ list_string (string, separators, quoted)
/* OK, now STRING points to a word that does not begin with white space.
The splitting algorithm is:
extract a word, stopping at a separator
skip sequences of spc, tab, or nl as long as they are separators
skip sequences of whitespace characters as long as they are separators
This obeys the field splitting rules in Posix.2. */
slen = STRLEN (string);
for (result = (WORD_LIST *)NULL, sindex = 0; string[sindex]; )
@@ -2830,7 +2839,7 @@ list_string (string, separators, quoted)
/* If we're not doing sequences of separators in the traditional
Bourne shell style, then add a quoted null argument. */
else if (!sh_style_split && !spctabnl (string[sindex]))
else if (!sh_style_split && !ifs_whitespace (string[sindex]))
{
t = alloc_word_desc ();
t->word = make_quoted_char ('\0');
@@ -2841,7 +2850,7 @@ list_string (string, separators, quoted)
free (current_word);
/* Note whether or not the separator is IFS whitespace, used later. */
whitesep = string[sindex] && spctabnl (string[sindex]);
whitesep = string[sindex] && ifs_whitesep (string[sindex]);
/* Move past the current separator character. */
if (string[sindex])
@@ -2850,21 +2859,21 @@ list_string (string, separators, quoted)
ADVANCE_CHAR (string, slen, sindex);
}
/* Now skip sequences of space, tab, or newline characters if they are
/* Now skip sequences of whitespace characters if they are
in the list of separators. */
while (string[sindex] && spctabnl (string[sindex]) && issep (string[sindex]))
while (string[sindex] && ifs_whitesep (string[sindex]) && issep (string[sindex]))
sindex++;
/* If the first separator was IFS whitespace and the current character
is a non-whitespace IFS character, it should be part of the current
field delimiter, not a separate delimiter that would result in an
empty field. Look at POSIX.2, 3.6.5, (3)(b). */
if (string[sindex] && whitesep && issep (string[sindex]) && !spctabnl (string[sindex]))
if (string[sindex] && whitesep && issep (string[sindex]) && !ifs_whitesep (string[sindex]))
{
sindex++;
/* An IFS character that is not IFS white space, along with any
adjacent IFS white space, shall delimit a field. (SUSv3) */
while (string[sindex] && spctabnl (string[sindex]) && isifs (string[sindex]))
while (string[sindex] && ifs_whitesep (string[sindex]) && isifs (string[sindex]))
sindex++;
}
}
@@ -2880,6 +2889,7 @@ list_string (string, separators, quoted)
XXX - this function is very similar to list_string; they should be
combined - XXX */
/* character is in $IFS */
#define islocalsep(c) (local_cmap[(unsigned char)(c)] != 0)
char *
@@ -2914,17 +2924,17 @@ get_word_from_string (stringp, separators, endptr)
long as those characters appear in SEPARATORS. This happens if
SEPARATORS == $' \t\n' or if IFS is unset. */
if (sh_style_split || separators == 0)
{
for (; *s && spctabnl (*s) && islocalsep (*s); s++);
for (; *s && spctabnl (*s) && islocalsep (*s); s++);
else
for (; *s && ifs_whitespace (*s) && islocalsep (*s); s++);
/* If the string is nothing but whitespace, update it and return. */
if (!*s)
{
*stringp = s;
if (endptr)
*endptr = s;
return ((char *)NULL);
}
/* If the string is nothing but whitespace, update it and return. */
if (!*s)
{
*stringp = s;
if (endptr)
*endptr = s;
return ((char *)NULL);
}
/* OK, S points to a word that does not begin with white space.
@@ -2944,7 +2954,7 @@ get_word_from_string (stringp, separators, endptr)
*endptr = s + sindex;
/* Note whether or not the separator is IFS whitespace, used later. */
whitesep = s[sindex] && spctabnl (s[sindex]);
whitesep = s[sindex] && ifs_whitesep (s[sindex]);
/* Move past the current separator character. */
if (s[sindex])
@@ -2962,12 +2972,12 @@ get_word_from_string (stringp, separators, endptr)
a non-whitespace IFS character, it should be part of the current field
delimiter, not a separate delimiter that would result in an empty field.
Look at POSIX.2, 3.6.5, (3)(b). */
if (s[sindex] && whitesep && islocalsep (s[sindex]) && !spctabnl (s[sindex]))
if (s[sindex] && whitesep && islocalsep (s[sindex]) && !ifs_whitesep (s[sindex]))
{
sindex++;
/* An IFS character that is not IFS white space, along with any adjacent
IFS white space, shall delimit a field. */
while (s[sindex] && spctabnl (s[sindex]) && islocalsep(s[sindex]))
while (s[sindex] && ifs_whitesep (s[sindex]) && islocalsep(s[sindex]))
sindex++;
}
@@ -3974,13 +3984,7 @@ expand_word_unsplit (word, quoted)
{
WORD_LIST *result;
expand_no_split_dollar_star = 1;
if (ifs_is_null)
word->flags |= W_NOSPLIT;
word->flags |= W_NOSPLIT2;
result = call_expand_word_internal (word, quoted, 0, (int *)NULL, (int *)NULL);
expand_no_split_dollar_star = 0;
result = expand_word_leave_quoted (word, quoted);
return (result ? dequote_list (result) : result);
}
+1
View File
@@ -53,3 +53,4 @@ case " " in ( [" "] ) echo ok;; ( * ) echo no;; esac
${THIS_SH} ./case1.sub
${THIS_SH} ./case2.sub
${THIS_SH} ./case3.sub
${THIS_SH} ./case4.sub
+25
View File
@@ -0,0 +1,25 @@
shopt -s -o posix
two="t w o"
ten="t e
n"
set 1 "$two" 3 4 5 6 7 8 9 "$ten"
unset IFS
expvar="$*"
case $* in
"$expvar") ;;
*) echo "failed 1" ;;
esac
case $* in
$expvar) ;;
*) echo "failed 2" ;;
esac
alias foo='oneword'
foo_word='foo'
case "$foo_word"
in
foo) ;;
*) echo failed 3;;
esac
+3 -1
View File
@@ -348,7 +348,7 @@ run_pending_traps ()
/* We don't modify evalnest here, since run_interrupt_trap() calls
_run_trap_internal, which does. */
run_interrupt_trap (0);
CLRINTERRUPT;
CLRINTERRUPT; /* interrupts don't stack */
}
#if defined (JOB_CONTROL) && defined (SIGCHLD)
else if (sig == SIGCHLD &&
@@ -1064,6 +1064,8 @@ _run_trap_internal (sig, tag)
#endif
free (old_trap);
sigmodes[sig] &= ~SIG_CHANGED;
CHECK_TERMSIG; /* some pathological conditions lead here */
}
if (save_return_catch_flag)