First set of documentation updates to man page, texinfo manual

This commit is contained in:
Chet Ramey
2024-10-08 09:52:21 -04:00
parent 254081c097
commit 9d1eb43fdd
32 changed files with 14856 additions and 12403 deletions
+7
View File
@@ -10282,3 +10282,10 @@ variables.c
doc/bashref.texi
- --enable-bash-source-default: document
9/27
----
doc/bash.1,doc/bashref.texi
- update builtins documenation: make language and paragraph breaks
more consistent between the document formats; update active
language
+33 -23
View File
@@ -24,8 +24,8 @@ The simplest way to compile Bash is:
files, some supplemental documentation, a number of example
loadable builtin commands, and a set of header files for developing
loadable builtins. You may need additional privileges to install
bash to your desired destination, so sudo make install might be
required. More information about controlling the locations where
bash to your desired destination, which may require sudo make
install. More information about controlling the locations where
bash and other files are installed is below (*note Installation
Names::).
@@ -228,7 +228,7 @@ Optional Features
The Bash configure has a number of --enable-FEATURE options, where
FEATURE indicates an optional part of Bash. There are also several
--with-PACKAGE options, where PACKAGE is something like bash-malloc
or purify. To turn off the default use of a package, use
or afs. To turn off the default use of a package, use
--without-PACKAGE. To configure Bash without a feature that is
enabled by default, use --disable-FEATURE.
@@ -240,18 +240,18 @@ the Bash configure recognizes.
--with-bash-malloc
Use the Bash version of malloc in the directory lib/malloc.
This is not the same malloc that appears in GNU libc, but an
older version originally derived from the 4.2 BSD malloc. This
malloc is very fast, but wastes some space on each allocation.
This option is enabled by default. The NOTES file contains a
list of systems for which this should be turned off, and
configure disables this option automatically for a number of
systems.
This is not the same malloc that appears in GNU libc, but a
custom version originally derived from the 4.2 BSD malloc. This
malloc is very fast, but wastes some space on each allocation,
though it uses several techniques to minimize the waste. This
option is enabled by default. The NOTES file contains a list of
systems for which this should be turned off, and configure
disables this option automatically for a number of systems.
--with-curses
Use the curses library instead of the termcap library. This should
be supplied if your system has an inadequate or incomplete termcap
database.
Use the curses library instead of the termcap library. configure
usually chooses this automatically, since most systems include the
termcap functions in the curses library.
--with-gnu-malloc
A synonym for --with-bash-malloc.
@@ -268,7 +268,9 @@ the Bash configure recognizes.
set to any other value, configure treats it as a directory
pathname and looks for the installed version of Readline in
subdirectories of that directory (include files in PREFIX/include
and the library in PREFIX/lib).
and the library in PREFIX/lib). The Bash default is to link with
a static library built in the lib/readline subdirectory of the
build directory.
--with-libintl-prefix[=PREFIX]
Define this to make Bash link with a locally-installed version of
@@ -276,10 +278,11 @@ the Bash configure recognizes.
--with-libiconv-prefix[=PREFIX]
Define this to make Bash look for libiconv in PREFIX instead of the
standard system locations. There is no version included with Bash.
standard system locations. The Bash distribution does not include
this library.
--enable-minimal-config
This produces a shell with minimal features, close to the
This produces a shell with minimal features, closer to the
historical Bourne shell.
There are several --enable- options that alter how Bash is compiled,
@@ -336,6 +339,12 @@ does not provide the necessary support.
Include support for csh-like history substitution (*note History
Interaction::).
--enable-bash-source-fullpath-default
Set the default value of the bash_source_fullpath shell option
described above under *note The Shopt Builtin:: to be enabled.
This controls how filenames are assigned to the BASH_SOURCE array
variable.
--enable-brace-expansion
Include csh-like brace expansion ( b{a,b}cbac bbc ). See
*note Brace Expansion::, for a complete description.
@@ -352,8 +361,9 @@ does not provide the necessary support.
--enable-command-timing
Include support for recognizing time as a reserved word and for
displaying timing statistics for the pipeline following time
(*note Pipelines::). This allows pipelines as well as shell
builtins and functions to be timed.
(*note Pipelines::). This allows timing pipelines, shell compound
commands, shell builtins, and shell functions, which an external
command cannot do easily.
--enable-cond-command
Include support for the [[ conditional command. (*note
@@ -456,13 +466,13 @@ does not provide the necessary support.
version of the Readline library (*note Command Line Editing::).
--enable-restricted
Include support for a “restricted shell”. If this is enabled,
Bash, when called as rbash, enters a restricted mode. See *note
The Restricted Shell::, for a description of restricted mode.
Include support for a “restricted shell”. If this is enabled, Bash
enters a restricted mode when called as rbash. See *note The
Restricted Shell::, for a description of restricted mode.
--enable-select
Include the select compound command, which allows the generation
of simple menus (*note Conditional Constructs::).
Include the select compound command, which allows generation of
simple menus (*note Conditional Constructs::).
--enable-single-help-strings
Store the text displayed by the help builtin as a single string
+3 -1
View File
@@ -2,7 +2,7 @@
=========================
If Bash is started with the name rbash, or the --restricted or -r
option is supplied at invocation, the shell becomes restricted. A
option is supplied at invocation, the shell becomes RESTRICTED. A
restricted shell is used to set up an environment more controlled than
the standard shell. A restricted shell behaves identically to bash
with the exception that the following are disallowed or not performed:
@@ -13,6 +13,8 @@ with the exception that the following are disallowed or not performed:
• Specifying command names containing slashes.
• Specifying a filename containing a slash as an argument to the .
builtin command.
• Using the -p option to the . builtin command to specify a
search path.
• Specifying a filename containing a slash as an argument to the
history builtin command.
• Specifying a filename containing a slash as an argument to the -p
+1
View File
@@ -427,6 +427,7 @@ cd_builtin (WORD_LIST *list)
builtin_error ("%s: %s", temp, strerror (e));
if (temp != dirname)
free (temp);
/* posix says to return >1 if eflag && no_symlinks?? */
return (EXECUTION_FAILURE);
}
+3
View File
@@ -112,6 +112,9 @@ Define local variables.
Create a local variable called NAME, and give it VALUE. OPTION can
be any option accepted by `declare'.
If any NAME is "-", local saves the set of shell options and restores
them when the function returns.
Local variables can only be used within a function; they are visible
only to the function where they are defined and its children.
+3249 -2945
View File
File diff suppressed because it is too large Load Diff
+1730 -1296
View File
File diff suppressed because it is too large Load Diff
+1988 -1467
View File
File diff suppressed because it is too large Load Diff
+1952 -1669
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+107 -107
View File
@@ -45,24 +45,24 @@
@xrdef{Reserved Words-snt}{Section@tie 3.2.1}
@xrdef{Simple Commands-title}{Simple Commands}
@xrdef{Simple Commands-snt}{Section@tie 3.2.2}
@xrdef{Pipelines-title}{Pipelines}
@xrdef{Pipelines-snt}{Section@tie 3.2.3}
@xrdef{Comments-pg}{9}
@xrdef{Shell Commands-pg}{9}
@xrdef{Reserved Words-pg}{9}
@xrdef{Simple Commands-pg}{9}
@xrdef{Pipelines-title}{Pipelines}
@xrdef{Pipelines-snt}{Section@tie 3.2.3}
@xrdef{Pipelines-pg}{10}
@xrdef{Lists-title}{Lists of Commands}
@xrdef{Lists-snt}{Section@tie 3.2.4}
@xrdef{Pipelines-pg}{10}
@xrdef{Lists-pg}{10}
@xrdef{Compound Commands-title}{Compound Commands}
@xrdef{Compound Commands-snt}{Section@tie 3.2.5}
@xrdef{Looping Constructs-title}{Looping Constructs}
@xrdef{Looping Constructs-snt}{Section@tie 3.2.5.1}
@xrdef{Lists-pg}{11}
@xrdef{Compound Commands-pg}{11}
@xrdef{Looping Constructs-pg}{11}
@xrdef{Conditional Constructs-title}{Conditional Constructs}
@xrdef{Conditional Constructs-snt}{Section@tie 3.2.5.2}
@xrdef{Looping Constructs-pg}{12}
@xrdef{Conditional Constructs-pg}{12}
@xrdef{Command Grouping-title}{Grouping Commands}
@xrdef{Command Grouping-snt}{Section@tie 3.2.5.3}
@@ -78,7 +78,7 @@
@xrdef{Shell Functions-pg}{19}
@xrdef{Shell Parameters-title}{Shell Parameters}
@xrdef{Shell Parameters-snt}{Section@tie 3.4}
@xrdef{Shell Parameters-pg}{21}
@xrdef{Shell Parameters-pg}{22}
@xrdef{Positional Parameters-title}{Positional Parameters}
@xrdef{Positional Parameters-snt}{Section@tie 3.4.1}
@xrdef{Special Parameters-title}{Special Parameters}
@@ -87,103 +87,103 @@
@xrdef{Special Parameters-pg}{23}
@xrdef{Shell Expansions-title}{Shell Expansions}
@xrdef{Shell Expansions-snt}{Section@tie 3.5}
@xrdef{Shell Expansions-pg}{24}
@xrdef{Brace Expansion-title}{Brace Expansion}
@xrdef{Brace Expansion-snt}{Section@tie 3.5.1}
@xrdef{Shell Expansions-pg}{24}
@xrdef{Brace Expansion-pg}{24}
@xrdef{Brace Expansion-pg}{25}
@xrdef{Tilde Expansion-title}{Tilde Expansion}
@xrdef{Tilde Expansion-snt}{Section@tie 3.5.2}
@xrdef{Tilde Expansion-pg}{25}
@xrdef{Tilde Expansion-pg}{26}
@xrdef{Shell Parameter Expansion-title}{Shell Parameter Expansion}
@xrdef{Shell Parameter Expansion-snt}{Section@tie 3.5.3}
@xrdef{Shell Parameter Expansion-pg}{26}
@xrdef{Shell Parameter Expansion-pg}{27}
@xrdef{Command Substitution-title}{Command Substitution}
@xrdef{Command Substitution-snt}{Section@tie 3.5.4}
@xrdef{Command Substitution-pg}{34}
@xrdef{Command Substitution-pg}{35}
@xrdef{Arithmetic Expansion-title}{Arithmetic Expansion}
@xrdef{Arithmetic Expansion-snt}{Section@tie 3.5.5}
@xrdef{Process Substitution-title}{Process Substitution}
@xrdef{Process Substitution-snt}{Section@tie 3.5.6}
@xrdef{Arithmetic Expansion-pg}{35}
@xrdef{Process Substitution-pg}{35}
@xrdef{Arithmetic Expansion-pg}{36}
@xrdef{Process Substitution-pg}{36}
@xrdef{Word Splitting-title}{Word Splitting}
@xrdef{Word Splitting-snt}{Section@tie 3.5.7}
@xrdef{Filename Expansion-title}{Filename Expansion}
@xrdef{Filename Expansion-snt}{Section@tie 3.5.8}
@xrdef{Word Splitting-pg}{36}
@xrdef{Filename Expansion-pg}{36}
@xrdef{Word Splitting-pg}{37}
@xrdef{Filename Expansion-pg}{37}
@xrdef{Pattern Matching-title}{Pattern Matching}
@xrdef{Pattern Matching-snt}{Section@tie 3.5.8.1}
@xrdef{Pattern Matching-pg}{37}
@xrdef{Pattern Matching-pg}{38}
@xrdef{Quote Removal-title}{Quote Removal}
@xrdef{Quote Removal-snt}{Section@tie 3.5.9}
@xrdef{Redirections-title}{Redirections}
@xrdef{Redirections-snt}{Section@tie 3.6}
@xrdef{Quote Removal-pg}{39}
@xrdef{Redirections-pg}{39}
@xrdef{Quote Removal-pg}{40}
@xrdef{Redirections-pg}{40}
@xrdef{Executing Commands-title}{Executing Commands}
@xrdef{Executing Commands-snt}{Section@tie 3.7}
@xrdef{Simple Command Expansion-title}{Simple Command Expansion}
@xrdef{Simple Command Expansion-snt}{Section@tie 3.7.1}
@xrdef{Command Search and Execution-title}{Command Search and Execution}
@xrdef{Command Search and Execution-snt}{Section@tie 3.7.2}
@xrdef{Executing Commands-pg}{43}
@xrdef{Simple Command Expansion-pg}{43}
@xrdef{Command Search and Execution-pg}{43}
@xrdef{Executing Commands-pg}{44}
@xrdef{Simple Command Expansion-pg}{44}
@xrdef{Command Search and Execution-pg}{44}
@xrdef{Command Execution Environment-title}{Command Execution Environment}
@xrdef{Command Execution Environment-snt}{Section@tie 3.7.3}
@xrdef{Command Execution Environment-pg}{44}
@xrdef{Command Execution Environment-pg}{45}
@xrdef{Environment-title}{Environment}
@xrdef{Environment-snt}{Section@tie 3.7.4}
@xrdef{Environment-pg}{46}
@xrdef{Exit Status-title}{Exit Status}
@xrdef{Exit Status-snt}{Section@tie 3.7.5}
@xrdef{Environment-pg}{45}
@xrdef{Exit Status-pg}{45}
@xrdef{Signals-title}{Signals}
@xrdef{Signals-snt}{Section@tie 3.7.6}
@xrdef{Signals-pg}{46}
@xrdef{Exit Status-pg}{47}
@xrdef{Signals-pg}{47}
@xrdef{Shell Scripts-title}{Shell Scripts}
@xrdef{Shell Scripts-snt}{Section@tie 3.8}
@xrdef{Shell Scripts-pg}{47}
@xrdef{Shell Scripts-pg}{48}
@xrdef{Shell Builtin Commands-title}{Shell Builtin Commands}
@xrdef{Shell Builtin Commands-snt}{Chapter@tie 4}
@xrdef{Bourne Shell Builtins-title}{Bourne Shell Builtins}
@xrdef{Bourne Shell Builtins-snt}{Section@tie 4.1}
@xrdef{Shell Builtin Commands-pg}{49}
@xrdef{Bourne Shell Builtins-pg}{49}
@xrdef{Shell Builtin Commands-pg}{50}
@xrdef{Bourne Shell Builtins-pg}{50}
@xrdef{Bash Builtins-title}{Bash Builtin Commands}
@xrdef{Bash Builtins-snt}{Section@tie 4.2}
@xrdef{Bash Builtins-pg}{57}
@xrdef{Bash Builtins-pg}{59}
@xrdef{Modifying Shell Behavior-title}{Modifying Shell Behavior}
@xrdef{Modifying Shell Behavior-snt}{Section@tie 4.3}
@xrdef{The Set Builtin-title}{The Set Builtin}
@xrdef{The Set Builtin-snt}{Section@tie 4.3.1}
@xrdef{Modifying Shell Behavior-pg}{69}
@xrdef{The Set Builtin-pg}{69}
@xrdef{Modifying Shell Behavior-pg}{71}
@xrdef{The Set Builtin-pg}{71}
@xrdef{The Shopt Builtin-title}{The Shopt Builtin}
@xrdef{The Shopt Builtin-snt}{Section@tie 4.3.2}
@xrdef{The Shopt Builtin-pg}{74}
@xrdef{The Shopt Builtin-pg}{76}
@xrdef{Special Builtins-title}{Special Builtins}
@xrdef{Special Builtins-snt}{Section@tie 4.4}
@xrdef{Special Builtins-pg}{80}
@xrdef{Special Builtins-pg}{82}
@xrdef{Shell Variables-title}{Shell Variables}
@xrdef{Shell Variables-snt}{Chapter@tie 5}
@xrdef{Bourne Shell Variables-title}{Bourne Shell Variables}
@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}{81}
@xrdef{Bourne Shell Variables-pg}{81}
@xrdef{Bash Variables-pg}{81}
@xrdef{Shell Variables-pg}{84}
@xrdef{Bourne Shell Variables-pg}{84}
@xrdef{Bash Variables-pg}{85}
@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}{94}
@xrdef{Invoking Bash-pg}{94}
@xrdef{Bash Features-pg}{98}
@xrdef{Invoking Bash-pg}{98}
@xrdef{Bash Startup Files-title}{Bash Startup Files}
@xrdef{Bash Startup Files-snt}{Section@tie 6.2}
@xrdef{Bash Startup Files-pg}{96}
@xrdef{Bash Startup Files-pg}{100}
@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?}
@@ -192,199 +192,199 @@
@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{Interactive Shells-pg}{98}
@xrdef{What is an Interactive Shell?-pg}{98}
@xrdef{Is this Shell Interactive?-pg}{98}
@xrdef{Interactive Shell Behavior-pg}{98}
@xrdef{Interactive Shells-pg}{102}
@xrdef{What is an Interactive Shell?-pg}{102}
@xrdef{Is this Shell Interactive?-pg}{102}
@xrdef{Interactive Shell Behavior-pg}{102}
@xrdef{Bash Conditional Expressions-title}{Bash Conditional Expressions}
@xrdef{Bash Conditional Expressions-snt}{Section@tie 6.4}
@xrdef{Bash Conditional Expressions-pg}{99}
@xrdef{Bash Conditional Expressions-pg}{103}
@xrdef{Shell Arithmetic-title}{Shell Arithmetic}
@xrdef{Shell Arithmetic-snt}{Section@tie 6.5}
@xrdef{Shell Arithmetic-pg}{101}
@xrdef{Shell Arithmetic-pg}{105}
@xrdef{Aliases-title}{Aliases}
@xrdef{Aliases-snt}{Section@tie 6.6}
@xrdef{Arrays-title}{Arrays}
@xrdef{Arrays-snt}{Section@tie 6.7}
@xrdef{Aliases-pg}{103}
@xrdef{Arrays-pg}{103}
@xrdef{Aliases-pg}{107}
@xrdef{Arrays-pg}{108}
@xrdef{The Directory Stack-title}{The Directory Stack}
@xrdef{The Directory Stack-snt}{Section@tie 6.8}
@xrdef{The Directory Stack-pg}{105}
@xrdef{Directory Stack Builtins-title}{Directory Stack Builtins}
@xrdef{Directory Stack Builtins-snt}{Section@tie 6.8.1}
@xrdef{Directory Stack Builtins-pg}{106}
@xrdef{The Directory Stack-pg}{110}
@xrdef{Directory Stack Builtins-pg}{110}
@xrdef{Controlling the Prompt-title}{Controlling the Prompt}
@xrdef{Controlling the Prompt-snt}{Section@tie 6.9}
@xrdef{Controlling the Prompt-pg}{107}
@xrdef{Controlling the Prompt-pg}{111}
@xrdef{The Restricted Shell-title}{The Restricted Shell}
@xrdef{The Restricted Shell-snt}{Section@tie 6.10}
@xrdef{Bash POSIX Mode-title}{Bash and POSIX}
@xrdef{Bash POSIX Mode-snt}{Section@tie 6.11}
@xrdef{The Restricted Shell-pg}{109}
@xrdef{Bash POSIX Mode-pg}{109}
@xrdef{The Restricted Shell-pg}{113}
@xrdef{Bash POSIX Mode-pg}{114}
@xrdef{Shell Compatibility Mode-title}{Shell Compatibility Mode}
@xrdef{Shell Compatibility Mode-snt}{Section@tie 6.12}
@xrdef{Shell Compatibility Mode-pg}{114}
@xrdef{Shell Compatibility Mode-pg}{119}
@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}{118}
@xrdef{Job Control Basics-pg}{118}
@xrdef{Job Control-pg}{123}
@xrdef{Job Control Basics-pg}{123}
@xrdef{Job Control Builtins-title}{Job Control Builtins}
@xrdef{Job Control Builtins-snt}{Section@tie 7.2}
@xrdef{Job Control Builtins-pg}{119}
@xrdef{Job Control Builtins-pg}{124}
@xrdef{Job Control Variables-title}{Job Control Variables}
@xrdef{Job Control Variables-snt}{Section@tie 7.3}
@xrdef{Job Control Variables-pg}{121}
@xrdef{Job Control Variables-pg}{126}
@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}
@xrdef{Introduction and Notation-snt}{Section@tie 8.1}
@xrdef{Readline Interaction-title}{Readline Interaction}
@xrdef{Readline Interaction-snt}{Section@tie 8.2}
@xrdef{Command Line Editing-pg}{127}
@xrdef{Introduction and Notation-pg}{127}
@xrdef{Readline Interaction-pg}{127}
@xrdef{Readline Bare Essentials-title}{Readline Bare Essentials}
@xrdef{Readline Bare Essentials-snt}{Section@tie 8.2.1}
@xrdef{Command Line Editing-pg}{122}
@xrdef{Introduction and Notation-pg}{122}
@xrdef{Readline Interaction-pg}{122}
@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}{123}
@xrdef{Readline Movement Commands-pg}{123}
@xrdef{Readline Bare Essentials-pg}{128}
@xrdef{Readline Movement Commands-pg}{128}
@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}{124}
@xrdef{Readline Arguments-pg}{124}
@xrdef{Searching-pg}{124}
@xrdef{Readline Killing Commands-pg}{129}
@xrdef{Readline Arguments-pg}{129}
@xrdef{Searching-pg}{129}
@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}{125}
@xrdef{Readline Init File Syntax-pg}{125}
@xrdef{Readline Init File-pg}{130}
@xrdef{Readline Init File Syntax-pg}{130}
@xrdef{Conditional Init Constructs-title}{Conditional Init Constructs}
@xrdef{Conditional Init Constructs-snt}{Section@tie 8.3.2}
@xrdef{Conditional Init Constructs-pg}{134}
@xrdef{Conditional Init Constructs-pg}{140}
@xrdef{Sample Init File-title}{Sample Init File}
@xrdef{Sample Init File-snt}{Section@tie 8.3.3}
@xrdef{Sample Init File-pg}{136}
@xrdef{Sample Init File-pg}{141}
@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}{139}
@xrdef{Commands For Moving-pg}{139}
@xrdef{Bindable Readline Commands-pg}{144}
@xrdef{Commands For Moving-pg}{144}
@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}{140}
@xrdef{Commands For History-pg}{145}
@xrdef{Commands For Text-title}{Commands For Changing Text}
@xrdef{Commands For Text-snt}{Section@tie 8.4.3}
@xrdef{Commands For Text-pg}{142}
@xrdef{Commands For Text-pg}{147}
@xrdef{Commands For Killing-title}{Killing And Yanking}
@xrdef{Commands For Killing-snt}{Section@tie 8.4.4}
@xrdef{Commands For Killing-pg}{143}
@xrdef{Commands For Killing-pg}{148}
@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}{145}
@xrdef{Commands For Completion-pg}{145}
@xrdef{Numeric Arguments-pg}{150}
@xrdef{Commands For Completion-pg}{150}
@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}{147}
@xrdef{Miscellaneous Commands-pg}{147}
@xrdef{Keyboard Macros-pg}{152}
@xrdef{Miscellaneous Commands-pg}{152}
@xrdef{Readline vi Mode-title}{Readline vi Mode}
@xrdef{Readline vi Mode-snt}{Section@tie 8.5}
@xrdef{Readline vi Mode-pg}{149}
@xrdef{Readline vi Mode-pg}{154}
@xrdef{Programmable Completion-title}{Programmable Completion}
@xrdef{Programmable Completion-snt}{Section@tie 8.6}
@xrdef{Programmable Completion-pg}{150}
@xrdef{Programmable Completion-pg}{155}
@xrdef{Programmable Completion Builtins-title}{Programmable Completion Builtins}
@xrdef{Programmable Completion Builtins-snt}{Section@tie 8.7}
@xrdef{Programmable Completion Builtins-pg}{152}
@xrdef{Programmable Completion Builtins-pg}{157}
@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}{156}
@xrdef{A Programmable Completion Example-pg}{161}
@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{Using History Interactively-pg}{164}
@xrdef{Bash History Facilities-pg}{164}
@xrdef{Bash History Builtins-title}{Bash History Builtins}
@xrdef{Bash History Builtins-snt}{Section@tie 9.2}
@xrdef{Using History Interactively-pg}{159}
@xrdef{Bash History Facilities-pg}{159}
@xrdef{Bash History Builtins-pg}{159}
@xrdef{Bash History Builtins-pg}{165}
@xrdef{History Interaction-title}{History Expansion}
@xrdef{History Interaction-snt}{Section@tie 9.3}
@xrdef{History Interaction-pg}{161}
@xrdef{History Interaction-pg}{167}
@xrdef{Event Designators-title}{Event Designators}
@xrdef{Event Designators-snt}{Section@tie 9.3.1}
@xrdef{Event Designators-pg}{162}
@xrdef{Word Designators-title}{Word Designators}
@xrdef{Word Designators-snt}{Section@tie 9.3.2}
@xrdef{Word Designators-pg}{163}
@xrdef{Event Designators-pg}{168}
@xrdef{Modifiers-title}{Modifiers}
@xrdef{Modifiers-snt}{Section@tie 9.3.3}
@xrdef{Modifiers-pg}{164}
@xrdef{Word Designators-pg}{169}
@xrdef{Modifiers-pg}{169}
@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}{165}
@xrdef{Basic Installation-pg}{165}
@xrdef{Installing Bash-pg}{171}
@xrdef{Basic Installation-pg}{171}
@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}{166}
@xrdef{Compiling For Multiple Architectures-pg}{166}
@xrdef{Compilers and Options-pg}{172}
@xrdef{Compiling For Multiple Architectures-pg}{172}
@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}
@xrdef{Sharing Defaults-snt}{Section@tie 10.6}
@xrdef{Operation Controls-title}{Operation Controls}
@xrdef{Operation Controls-snt}{Section@tie 10.7}
@xrdef{Installation Names-pg}{167}
@xrdef{Specifying the System Type-pg}{167}
@xrdef{Sharing Defaults-pg}{167}
@xrdef{Installation Names-pg}{173}
@xrdef{Specifying the System Type-pg}{173}
@xrdef{Sharing Defaults-pg}{173}
@xrdef{Optional Features-title}{Optional Features}
@xrdef{Optional Features-snt}{Section@tie 10.8}
@xrdef{Operation Controls-pg}{168}
@xrdef{Optional Features-pg}{168}
@xrdef{Operation Controls-pg}{174}
@xrdef{Optional Features-pg}{174}
@xrdef{Reporting Bugs-title}{Reporting Bugs}
@xrdef{Reporting Bugs-snt}{Appendix@tie @char65{}}
@xrdef{Reporting Bugs-pg}{174}
@xrdef{Reporting Bugs-pg}{180}
@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}{175}
@xrdef{Major Differences From The Bourne Shell-pg}{181}
@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}{181}
@xrdef{GNU Free Documentation License-pg}{187}
@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}{189}
@xrdef{Builtin Index-pg}{189}
@xrdef{Indexes-pg}{195}
@xrdef{Builtin Index-pg}{195}
@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}{190}
@xrdef{Variable Index-pg}{191}
@xrdef{Reserved Word Index-pg}{196}
@xrdef{Variable Index-pg}{197}
@xrdef{Function Index-title}{Function Index}
@xrdef{Function Index-snt}{Section@tie @char68.4}
@xrdef{Function Index-pg}{193}
@xrdef{Function Index-pg}{199}
@xrdef{Concept Index-title}{Concept Index}
@xrdef{Concept Index-snt}{Section@tie @char68.5}
@xrdef{Concept Index-pg}{195}
@xrdef{Concept Index-pg}{201}
+61 -61
View File
@@ -1,61 +1,61 @@
\entry{:}{49}{\code {:}}
\entry{.}{49}{\code {.}}
\entry{break}{50}{\code {break}}
\entry{cd}{50}{\code {cd}}
\entry{continue}{50}{\code {continue}}
\entry{eval}{51}{\code {eval}}
\entry{exec}{51}{\code {exec}}
\entry{exit}{51}{\code {exit}}
\entry{export}{51}{\code {export}}
\entry{false}{51}{\code {false}}
\entry{getopts}{51}{\code {getopts}}
\entry{hash}{52}{\code {hash}}
\entry{pwd}{53}{\code {pwd}}
\entry{readonly}{53}{\code {readonly}}
\entry{return}{53}{\code {return}}
\entry{shift}{53}{\code {shift}}
\entry{test}{54}{\code {test}}
\entry{[}{54}{\code {[}}
\entry{times}{55}{\code {times}}
\entry{trap}{55}{\code {trap}}
\entry{true}{56}{\code {true}}
\entry{umask}{56}{\code {umask}}
\entry{unset}{57}{\code {unset}}
\entry{alias}{57}{\code {alias}}
\entry{bind}{57}{\code {bind}}
\entry{builtin}{59}{\code {builtin}}
\entry{caller}{59}{\code {caller}}
\entry{command}{59}{\code {command}}
\entry{declare}{60}{\code {declare}}
\entry{echo}{61}{\code {echo}}
\entry{enable}{62}{\code {enable}}
\entry{help}{63}{\code {help}}
\entry{let}{63}{\code {let}}
\entry{local}{63}{\code {local}}
\entry{logout}{63}{\code {logout}}
\entry{mapfile}{63}{\code {mapfile}}
\entry{printf}{64}{\code {printf}}
\entry{read}{65}{\code {read}}
\entry{readarray}{67}{\code {readarray}}
\entry{source}{67}{\code {source}}
\entry{type}{67}{\code {type}}
\entry{typeset}{68}{\code {typeset}}
\entry{ulimit}{68}{\code {ulimit}}
\entry{unalias}{69}{\code {unalias}}
\entry{set}{69}{\code {set}}
\entry{shopt}{74}{\code {shopt}}
\entry{dirs}{106}{\code {dirs}}
\entry{popd}{106}{\code {popd}}
\entry{pushd}{106}{\code {pushd}}
\entry{bg}{119}{\code {bg}}
\entry{fg}{119}{\code {fg}}
\entry{jobs}{119}{\code {jobs}}
\entry{kill}{120}{\code {kill}}
\entry{wait}{120}{\code {wait}}
\entry{disown}{121}{\code {disown}}
\entry{suspend}{121}{\code {suspend}}
\entry{compgen}{152}{\code {compgen}}
\entry{complete}{152}{\code {complete}}
\entry{compopt}{155}{\code {compopt}}
\entry{fc}{160}{\code {fc}}
\entry{history}{160}{\code {history}}
\entry{:}{50}{\code {:}}
\entry{.}{50}{\code {.}}
\entry{break}{51}{\code {break}}
\entry{cd}{51}{\code {cd}}
\entry{continue}{52}{\code {continue}}
\entry{eval}{52}{\code {eval}}
\entry{exec}{52}{\code {exec}}
\entry{exit}{52}{\code {exit}}
\entry{export}{52}{\code {export}}
\entry{false}{53}{\code {false}}
\entry{getopts}{53}{\code {getopts}}
\entry{hash}{54}{\code {hash}}
\entry{pwd}{54}{\code {pwd}}
\entry{readonly}{54}{\code {readonly}}
\entry{return}{55}{\code {return}}
\entry{shift}{55}{\code {shift}}
\entry{test}{55}{\code {test}}
\entry{[}{55}{\code {[}}
\entry{times}{57}{\code {times}}
\entry{trap}{57}{\code {trap}}
\entry{true}{58}{\code {true}}
\entry{umask}{58}{\code {umask}}
\entry{unset}{58}{\code {unset}}
\entry{alias}{59}{\code {alias}}
\entry{bind}{59}{\code {bind}}
\entry{builtin}{61}{\code {builtin}}
\entry{caller}{61}{\code {caller}}
\entry{command}{61}{\code {command}}
\entry{declare}{62}{\code {declare}}
\entry{echo}{63}{\code {echo}}
\entry{enable}{64}{\code {enable}}
\entry{help}{65}{\code {help}}
\entry{let}{65}{\code {let}}
\entry{local}{65}{\code {local}}
\entry{logout}{65}{\code {logout}}
\entry{mapfile}{66}{\code {mapfile}}
\entry{printf}{66}{\code {printf}}
\entry{read}{67}{\code {read}}
\entry{readarray}{69}{\code {readarray}}
\entry{source}{69}{\code {source}}
\entry{type}{69}{\code {type}}
\entry{typeset}{70}{\code {typeset}}
\entry{ulimit}{70}{\code {ulimit}}
\entry{unalias}{71}{\code {unalias}}
\entry{set}{71}{\code {set}}
\entry{shopt}{76}{\code {shopt}}
\entry{dirs}{110}{\code {dirs}}
\entry{popd}{110}{\code {popd}}
\entry{pushd}{111}{\code {pushd}}
\entry{bg}{124}{\code {bg}}
\entry{fg}{124}{\code {fg}}
\entry{jobs}{124}{\code {jobs}}
\entry{kill}{125}{\code {kill}}
\entry{wait}{125}{\code {wait}}
\entry{disown}{126}{\code {disown}}
\entry{suspend}{126}{\code {suspend}}
\entry{compgen}{157}{\code {compgen}}
\entry{complete}{157}{\code {complete}}
\entry{compopt}{161}{\code {compopt}}
\entry{fc}{165}{\code {fc}}
\entry{history}{165}{\code {history}}
+61 -61
View File
@@ -1,82 +1,82 @@
\initial {.}
\entry{\code {.}}{49}
\entry{\code {.}}{50}
\initial {:}
\entry{\code {:}}{49}
\entry{\code {:}}{50}
\initial {[}
\entry{\code {[}}{54}
\entry{\code {[}}{55}
\initial {A}
\entry{\code {alias}}{57}
\entry{\code {alias}}{59}
\initial {B}
\entry{\code {bg}}{119}
\entry{\code {bind}}{57}
\entry{\code {break}}{50}
\entry{\code {builtin}}{59}
\entry{\code {bg}}{124}
\entry{\code {bind}}{59}
\entry{\code {break}}{51}
\entry{\code {builtin}}{61}
\initial {C}
\entry{\code {caller}}{59}
\entry{\code {cd}}{50}
\entry{\code {command}}{59}
\entry{\code {compgen}}{152}
\entry{\code {complete}}{152}
\entry{\code {compopt}}{155}
\entry{\code {continue}}{50}
\entry{\code {caller}}{61}
\entry{\code {cd}}{51}
\entry{\code {command}}{61}
\entry{\code {compgen}}{157}
\entry{\code {complete}}{157}
\entry{\code {compopt}}{161}
\entry{\code {continue}}{52}
\initial {D}
\entry{\code {declare}}{60}
\entry{\code {dirs}}{106}
\entry{\code {disown}}{121}
\entry{\code {declare}}{62}
\entry{\code {dirs}}{110}
\entry{\code {disown}}{126}
\initial {E}
\entry{\code {echo}}{61}
\entry{\code {enable}}{62}
\entry{\code {eval}}{51}
\entry{\code {exec}}{51}
\entry{\code {exit}}{51}
\entry{\code {export}}{51}
\entry{\code {echo}}{63}
\entry{\code {enable}}{64}
\entry{\code {eval}}{52}
\entry{\code {exec}}{52}
\entry{\code {exit}}{52}
\entry{\code {export}}{52}
\initial {F}
\entry{\code {false}}{51}
\entry{\code {fc}}{160}
\entry{\code {fg}}{119}
\entry{\code {false}}{53}
\entry{\code {fc}}{165}
\entry{\code {fg}}{124}
\initial {G}
\entry{\code {getopts}}{51}
\entry{\code {getopts}}{53}
\initial {H}
\entry{\code {hash}}{52}
\entry{\code {help}}{63}
\entry{\code {history}}{160}
\entry{\code {hash}}{54}
\entry{\code {help}}{65}
\entry{\code {history}}{165}
\initial {J}
\entry{\code {jobs}}{119}
\entry{\code {jobs}}{124}
\initial {K}
\entry{\code {kill}}{120}
\entry{\code {kill}}{125}
\initial {L}
\entry{\code {let}}{63}
\entry{\code {local}}{63}
\entry{\code {logout}}{63}
\entry{\code {let}}{65}
\entry{\code {local}}{65}
\entry{\code {logout}}{65}
\initial {M}
\entry{\code {mapfile}}{63}
\entry{\code {mapfile}}{66}
\initial {P}
\entry{\code {popd}}{106}
\entry{\code {printf}}{64}
\entry{\code {pushd}}{106}
\entry{\code {pwd}}{53}
\entry{\code {popd}}{110}
\entry{\code {printf}}{66}
\entry{\code {pushd}}{111}
\entry{\code {pwd}}{54}
\initial {R}
\entry{\code {read}}{65}
\entry{\code {readarray}}{67}
\entry{\code {readonly}}{53}
\entry{\code {return}}{53}
\entry{\code {read}}{67}
\entry{\code {readarray}}{69}
\entry{\code {readonly}}{54}
\entry{\code {return}}{55}
\initial {S}
\entry{\code {set}}{69}
\entry{\code {shift}}{53}
\entry{\code {shopt}}{74}
\entry{\code {source}}{67}
\entry{\code {suspend}}{121}
\entry{\code {set}}{71}
\entry{\code {shift}}{55}
\entry{\code {shopt}}{76}
\entry{\code {source}}{69}
\entry{\code {suspend}}{126}
\initial {T}
\entry{\code {test}}{54}
\entry{\code {times}}{55}
\entry{\code {trap}}{55}
\entry{\code {true}}{56}
\entry{\code {type}}{67}
\entry{\code {typeset}}{68}
\entry{\code {test}}{55}
\entry{\code {times}}{57}
\entry{\code {trap}}{57}
\entry{\code {true}}{58}
\entry{\code {type}}{69}
\entry{\code {typeset}}{70}
\initial {U}
\entry{\code {ulimit}}{68}
\entry{\code {umask}}{56}
\entry{\code {unalias}}{69}
\entry{\code {unset}}{57}
\entry{\code {ulimit}}{70}
\entry{\code {umask}}{58}
\entry{\code {unalias}}{71}
\entry{\code {unset}}{58}
\initial {W}
\entry{\code {wait}}{120}
\entry{\code {wait}}{125}
+87 -86
View File
@@ -21,12 +21,13 @@
\entry{Bourne shell}{5}{Bourne shell}
\entry{quoting}{6}{quoting}
\entry{quoting, ANSI}{6}{quoting, ANSI}
\entry{dollar-single quote quoting}{6}{dollar-single quote quoting}
\entry{localization}{7}{localization}
\entry{internationalization}{7}{internationalization}
\entry{native languages}{7}{native languages}
\entry{translation, native languages}{7}{translation, native languages}
\entry{internationalized scripts}{7}{internationalized scripts}
\entry{string translations}{7}{string translations}
\entry{internationalized scripts}{8}{internationalized scripts}
\entry{string translations}{8}{string translations}
\entry{comments, shell}{9}{comments, shell}
\entry{commands, shell}{9}{commands, shell}
\entry{reserved words}{9}{reserved words}
@@ -34,96 +35,96 @@
\entry{pipeline}{10}{pipeline}
\entry{commands, pipelines}{10}{commands, pipelines}
\entry{command timing}{10}{command timing}
\entry{commands, lists}{10}{commands, lists}
\entry{commands, lists}{11}{commands, lists}
\entry{commands, compound}{11}{commands, compound}
\entry{commands, looping}{11}{commands, looping}
\entry{commands, looping}{12}{commands, looping}
\entry{commands, conditional}{12}{commands, conditional}
\entry{commands, grouping}{17}{commands, grouping}
\entry{coprocess}{18}{coprocess}
\entry{shell function}{19}{shell function}
\entry{functions, shell}{19}{functions, shell}
\entry{parameters}{21}{parameters}
\entry{variable, shell}{21}{variable, shell}
\entry{shell variable}{21}{shell variable}
\entry{parameters}{22}{parameters}
\entry{variable, shell}{22}{variable, shell}
\entry{shell variable}{22}{shell variable}
\entry{parameters, positional}{23}{parameters, positional}
\entry{parameters, special}{23}{parameters, special}
\entry{expansion}{24}{expansion}
\entry{brace expansion}{24}{brace expansion}
\entry{expansion, brace}{24}{expansion, brace}
\entry{tilde expansion}{25}{tilde expansion}
\entry{expansion, tilde}{25}{expansion, tilde}
\entry{parameter expansion}{26}{parameter expansion}
\entry{expansion, parameter}{26}{expansion, parameter}
\entry{command substitution}{34}{command substitution}
\entry{expansion, arithmetic}{35}{expansion, arithmetic}
\entry{arithmetic expansion}{35}{arithmetic expansion}
\entry{process substitution}{35}{process substitution}
\entry{word splitting}{36}{word splitting}
\entry{expansion, filename}{36}{expansion, filename}
\entry{expansion, pathname}{36}{expansion, pathname}
\entry{filename expansion}{36}{filename expansion}
\entry{pathname expansion}{36}{pathname expansion}
\entry{pattern matching}{37}{pattern matching}
\entry{matching, pattern}{37}{matching, pattern}
\entry{redirection}{39}{redirection}
\entry{command expansion}{43}{command expansion}
\entry{command execution}{43}{command execution}
\entry{command search}{43}{command search}
\entry{execution environment}{44}{execution environment}
\entry{environment}{45}{environment}
\entry{exit status}{45}{exit status}
\entry{signal handling}{46}{signal handling}
\entry{shell script}{47}{shell script}
\entry{special builtin}{80}{special builtin}
\entry{login shell}{96}{login shell}
\entry{interactive shell}{96}{interactive shell}
\entry{startup files}{96}{startup files}
\entry{interactive shell}{98}{interactive shell}
\entry{shell, interactive}{98}{shell, interactive}
\entry{expressions, conditional}{99}{expressions, conditional}
\entry{arithmetic, shell}{101}{arithmetic, shell}
\entry{shell arithmetic}{101}{shell arithmetic}
\entry{expressions, arithmetic}{101}{expressions, arithmetic}
\entry{evaluation, arithmetic}{101}{evaluation, arithmetic}
\entry{arithmetic evaluation}{101}{arithmetic evaluation}
\entry{arithmetic operators}{101}{arithmetic operators}
\entry{unary arithmetic operators}{101}{unary arithmetic operators}
\entry{binary arithmetic operators}{101}{binary arithmetic operators}
\entry{conditional arithmetic operator}{101}{conditional arithmetic operator}
\entry{bitwise arithmetic operators}{101}{bitwise arithmetic operators}
\entry{alias expansion}{103}{alias expansion}
\entry{arrays}{103}{arrays}
\entry{directory stack}{105}{directory stack}
\entry{prompting}{107}{prompting}
\entry{restricted shell}{109}{restricted shell}
\entry{POSIX description}{109}{POSIX description}
\entry{POSIX Mode}{110}{POSIX Mode}
\entry{Compatibility Level}{114}{Compatibility Level}
\entry{Compatibility Mode}{114}{Compatibility Mode}
\entry{job control}{118}{job control}
\entry{foreground}{118}{foreground}
\entry{background}{118}{background}
\entry{suspending jobs}{118}{suspending jobs}
\entry{Readline, how to use}{121}{Readline, how to use}
\entry{interaction, readline}{122}{interaction, readline}
\entry{notation, readline}{123}{notation, readline}
\entry{command editing}{123}{command editing}
\entry{editing command lines}{123}{editing command lines}
\entry{killing text}{124}{killing text}
\entry{yanking text}{124}{yanking text}
\entry{kill ring}{124}{kill ring}
\entry{initialization file, readline}{125}{initialization file, readline}
\entry{variables, readline}{126}{variables, readline}
\entry{programmable completion}{150}{programmable completion}
\entry{completion builtins}{152}{completion builtins}
\entry{History, how to use}{158}{History, how to use}
\entry{command history}{159}{command history}
\entry{history list}{159}{history list}
\entry{history builtins}{159}{history builtins}
\entry{history expansion}{161}{history expansion}
\entry{event designators}{162}{event designators}
\entry{history events}{162}{history events}
\entry{installation}{165}{installation}
\entry{configuration}{165}{configuration}
\entry{Bash installation}{165}{Bash installation}
\entry{Bash configuration}{165}{Bash configuration}
\entry{brace expansion}{25}{brace expansion}
\entry{expansion, brace}{25}{expansion, brace}
\entry{tilde expansion}{26}{tilde expansion}
\entry{expansion, tilde}{26}{expansion, tilde}
\entry{parameter expansion}{27}{parameter expansion}
\entry{expansion, parameter}{27}{expansion, parameter}
\entry{command substitution}{35}{command substitution}
\entry{expansion, arithmetic}{36}{expansion, arithmetic}
\entry{arithmetic expansion}{36}{arithmetic expansion}
\entry{process substitution}{36}{process substitution}
\entry{word splitting}{37}{word splitting}
\entry{expansion, filename}{37}{expansion, filename}
\entry{expansion, pathname}{37}{expansion, pathname}
\entry{filename expansion}{37}{filename expansion}
\entry{pathname expansion}{37}{pathname expansion}
\entry{pattern matching}{38}{pattern matching}
\entry{matching, pattern}{38}{matching, pattern}
\entry{redirection}{40}{redirection}
\entry{command expansion}{44}{command expansion}
\entry{command execution}{44}{command execution}
\entry{command search}{44}{command search}
\entry{execution environment}{45}{execution environment}
\entry{environment}{46}{environment}
\entry{exit status}{47}{exit status}
\entry{signal handling}{47}{signal handling}
\entry{shell script}{48}{shell script}
\entry{special builtin}{82}{special builtin}
\entry{login shell}{100}{login shell}
\entry{interactive shell}{100}{interactive shell}
\entry{startup files}{100}{startup files}
\entry{interactive shell}{102}{interactive shell}
\entry{shell, interactive}{102}{shell, interactive}
\entry{expressions, conditional}{103}{expressions, conditional}
\entry{arithmetic, shell}{105}{arithmetic, shell}
\entry{shell arithmetic}{105}{shell arithmetic}
\entry{expressions, arithmetic}{105}{expressions, arithmetic}
\entry{evaluation, arithmetic}{105}{evaluation, arithmetic}
\entry{arithmetic evaluation}{105}{arithmetic evaluation}
\entry{arithmetic operators}{106}{arithmetic operators}
\entry{unary arithmetic operators}{106}{unary arithmetic operators}
\entry{binary arithmetic operators}{106}{binary arithmetic operators}
\entry{conditional arithmetic operator}{106}{conditional arithmetic operator}
\entry{bitwise arithmetic operators}{106}{bitwise arithmetic operators}
\entry{alias expansion}{107}{alias expansion}
\entry{arrays}{108}{arrays}
\entry{directory stack}{110}{directory stack}
\entry{prompting}{111}{prompting}
\entry{restricted shell}{113}{restricted shell}
\entry{POSIX description}{114}{POSIX description}
\entry{POSIX Mode}{114}{POSIX Mode}
\entry{Compatibility Level}{119}{Compatibility Level}
\entry{Compatibility Mode}{119}{Compatibility Mode}
\entry{job control}{123}{job control}
\entry{foreground}{123}{foreground}
\entry{background}{123}{background}
\entry{suspending jobs}{123}{suspending jobs}
\entry{Readline, how to use}{126}{Readline, how to use}
\entry{interaction, readline}{127}{interaction, readline}
\entry{notation, readline}{128}{notation, readline}
\entry{command editing}{128}{command editing}
\entry{editing command lines}{128}{editing command lines}
\entry{killing text}{129}{killing text}
\entry{yanking text}{129}{yanking text}
\entry{kill ring}{129}{kill ring}
\entry{initialization file, readline}{130}{initialization file, readline}
\entry{variables, readline}{131}{variables, readline}
\entry{programmable completion}{155}{programmable completion}
\entry{completion builtins}{157}{completion builtins}
\entry{History, how to use}{163}{History, how to use}
\entry{command history}{164}{command history}
\entry{history list}{164}{history list}
\entry{history builtins}{165}{history builtins}
\entry{history expansion}{167}{history expansion}
\entry{event designators}{168}{event designators}
\entry{history events}{168}{history events}
\entry{installation}{171}{installation}
\entry{configuration}{171}{configuration}
\entry{Bash installation}{171}{Bash installation}
\entry{Bash configuration}{171}{Bash configuration}
+86 -85
View File
@@ -1,148 +1,149 @@
\initial {A}
\entry{alias expansion}{103}
\entry{arithmetic evaluation}{101}
\entry{arithmetic expansion}{35}
\entry{arithmetic operators}{101}
\entry{arithmetic, shell}{101}
\entry{arrays}{103}
\entry{alias expansion}{107}
\entry{arithmetic evaluation}{105}
\entry{arithmetic expansion}{36}
\entry{arithmetic operators}{106}
\entry{arithmetic, shell}{105}
\entry{arrays}{108}
\initial {B}
\entry{background}{118}
\entry{Bash configuration}{165}
\entry{Bash installation}{165}
\entry{binary arithmetic operators}{101}
\entry{bitwise arithmetic operators}{101}
\entry{background}{123}
\entry{Bash configuration}{171}
\entry{Bash installation}{171}
\entry{binary arithmetic operators}{106}
\entry{bitwise arithmetic operators}{106}
\entry{Bourne shell}{5}
\entry{brace expansion}{24}
\entry{brace expansion}{25}
\entry{builtin}{3}
\initial {C}
\entry{command editing}{123}
\entry{command execution}{43}
\entry{command expansion}{43}
\entry{command history}{159}
\entry{command search}{43}
\entry{command substitution}{34}
\entry{command editing}{128}
\entry{command execution}{44}
\entry{command expansion}{44}
\entry{command history}{164}
\entry{command search}{44}
\entry{command substitution}{35}
\entry{command timing}{10}
\entry{commands, compound}{11}
\entry{commands, conditional}{12}
\entry{commands, grouping}{17}
\entry{commands, lists}{10}
\entry{commands, looping}{11}
\entry{commands, lists}{11}
\entry{commands, looping}{12}
\entry{commands, pipelines}{10}
\entry{commands, shell}{9}
\entry{commands, simple}{9}
\entry{comments, shell}{9}
\entry{Compatibility Level}{114}
\entry{Compatibility Mode}{114}
\entry{completion builtins}{152}
\entry{conditional arithmetic operator}{101}
\entry{configuration}{165}
\entry{Compatibility Level}{119}
\entry{Compatibility Mode}{119}
\entry{completion builtins}{157}
\entry{conditional arithmetic operator}{106}
\entry{configuration}{171}
\entry{control operator}{3}
\entry{coprocess}{18}
\initial {D}
\entry{directory stack}{105}
\entry{directory stack}{110}
\entry{dollar-single quote quoting}{6}
\initial {E}
\entry{editing command lines}{123}
\entry{environment}{45}
\entry{evaluation, arithmetic}{101}
\entry{event designators}{162}
\entry{execution environment}{44}
\entry{exit status}{3, 45}
\entry{editing command lines}{128}
\entry{environment}{46}
\entry{evaluation, arithmetic}{105}
\entry{event designators}{168}
\entry{execution environment}{45}
\entry{exit status}{3, 47}
\entry{expansion}{24}
\entry{expansion, arithmetic}{35}
\entry{expansion, brace}{24}
\entry{expansion, filename}{36}
\entry{expansion, parameter}{26}
\entry{expansion, pathname}{36}
\entry{expansion, tilde}{25}
\entry{expressions, arithmetic}{101}
\entry{expressions, conditional}{99}
\entry{expansion, arithmetic}{36}
\entry{expansion, brace}{25}
\entry{expansion, filename}{37}
\entry{expansion, parameter}{27}
\entry{expansion, pathname}{37}
\entry{expansion, tilde}{26}
\entry{expressions, arithmetic}{105}
\entry{expressions, conditional}{103}
\initial {F}
\entry{field}{3}
\entry{filename}{3}
\entry{filename expansion}{36}
\entry{foreground}{118}
\entry{filename expansion}{37}
\entry{foreground}{123}
\entry{functions, shell}{19}
\initial {H}
\entry{history builtins}{159}
\entry{history events}{162}
\entry{history expansion}{161}
\entry{history list}{159}
\entry{History, how to use}{158}
\entry{history builtins}{165}
\entry{history events}{168}
\entry{history expansion}{167}
\entry{history list}{164}
\entry{History, how to use}{163}
\initial {I}
\entry{identifier}{3}
\entry{initialization file, readline}{125}
\entry{installation}{165}
\entry{interaction, readline}{122}
\entry{interactive shell}{96, 98}
\entry{initialization file, readline}{130}
\entry{installation}{171}
\entry{interaction, readline}{127}
\entry{interactive shell}{100, 102}
\entry{internationalization}{7}
\entry{internationalized scripts}{7}
\entry{internationalized scripts}{8}
\initial {J}
\entry{job}{3}
\entry{job control}{3, 118}
\entry{job control}{3, 123}
\initial {K}
\entry{kill ring}{124}
\entry{killing text}{124}
\entry{kill ring}{129}
\entry{killing text}{129}
\initial {L}
\entry{localization}{7}
\entry{login shell}{96}
\entry{login shell}{100}
\initial {M}
\entry{matching, pattern}{37}
\entry{matching, pattern}{38}
\entry{metacharacter}{3}
\initial {N}
\entry{name}{3}
\entry{native languages}{7}
\entry{notation, readline}{123}
\entry{notation, readline}{128}
\initial {O}
\entry{operator, shell}{3}
\initial {P}
\entry{parameter expansion}{26}
\entry{parameters}{21}
\entry{parameter expansion}{27}
\entry{parameters}{22}
\entry{parameters, positional}{23}
\entry{parameters, special}{23}
\entry{pathname expansion}{36}
\entry{pattern matching}{37}
\entry{pathname expansion}{37}
\entry{pattern matching}{38}
\entry{pipeline}{10}
\entry{POSIX}{3}
\entry{POSIX description}{109}
\entry{POSIX Mode}{110}
\entry{POSIX description}{114}
\entry{POSIX Mode}{114}
\entry{process group}{3}
\entry{process group ID}{3}
\entry{process substitution}{35}
\entry{programmable completion}{150}
\entry{prompting}{107}
\entry{process substitution}{36}
\entry{programmable completion}{155}
\entry{prompting}{111}
\initial {Q}
\entry{quoting}{6}
\entry{quoting, ANSI}{6}
\initial {R}
\entry{Readline, how to use}{121}
\entry{redirection}{39}
\entry{Readline, how to use}{126}
\entry{redirection}{40}
\entry{reserved word}{3}
\entry{reserved words}{9}
\entry{restricted shell}{109}
\entry{restricted shell}{113}
\entry{return status}{4}
\initial {S}
\entry{shell arithmetic}{101}
\entry{shell arithmetic}{105}
\entry{shell function}{19}
\entry{shell script}{47}
\entry{shell variable}{21}
\entry{shell, interactive}{98}
\entry{shell script}{48}
\entry{shell variable}{22}
\entry{shell, interactive}{102}
\entry{signal}{4}
\entry{signal handling}{46}
\entry{special builtin}{4, 80}
\entry{startup files}{96}
\entry{string translations}{7}
\entry{suspending jobs}{118}
\entry{signal handling}{47}
\entry{special builtin}{4, 82}
\entry{startup files}{100}
\entry{string translations}{8}
\entry{suspending jobs}{123}
\initial {T}
\entry{tilde expansion}{25}
\entry{tilde expansion}{26}
\entry{token}{4}
\entry{translation, native languages}{7}
\initial {U}
\entry{unary arithmetic operators}{101}
\entry{unary arithmetic operators}{106}
\initial {V}
\entry{variable, shell}{21}
\entry{variables, readline}{126}
\entry{variable, shell}{22}
\entry{variables, readline}{131}
\initial {W}
\entry{word}{4}
\entry{word splitting}{36}
\entry{word splitting}{37}
\initial {Y}
\entry{yanking text}{124}
\entry{yanking text}{129}
+115 -115
View File
@@ -1,115 +1,115 @@
\entry{beginning-of-line (C-a)}{139}{\code {beginning-of-line (C-a)}}
\entry{end-of-line (C-e)}{139}{\code {end-of-line (C-e)}}
\entry{forward-char (C-f)}{139}{\code {forward-char (C-f)}}
\entry{backward-char (C-b)}{139}{\code {backward-char (C-b)}}
\entry{forward-word (M-f)}{139}{\code {forward-word (M-f)}}
\entry{backward-word (M-b)}{139}{\code {backward-word (M-b)}}
\entry{shell-forward-word (M-C-f)}{139}{\code {shell-forward-word (M-C-f)}}
\entry{shell-backward-word (M-C-b)}{139}{\code {shell-backward-word (M-C-b)}}
\entry{previous-screen-line ()}{139}{\code {previous-screen-line ()}}
\entry{next-screen-line ()}{140}{\code {next-screen-line ()}}
\entry{clear-display (M-C-l)}{140}{\code {clear-display (M-C-l)}}
\entry{clear-screen (C-l)}{140}{\code {clear-screen (C-l)}}
\entry{redraw-current-line ()}{140}{\code {redraw-current-line ()}}
\entry{accept-line (Newline or Return)}{140}{\code {accept-line (Newline or Return)}}
\entry{previous-history (C-p)}{140}{\code {previous-history (C-p)}}
\entry{next-history (C-n)}{140}{\code {next-history (C-n)}}
\entry{beginning-of-history (M-<)}{140}{\code {beginning-of-history (M-<)}}
\entry{end-of-history (M->)}{140}{\code {end-of-history (M->)}}
\entry{reverse-search-history (C-r)}{140}{\code {reverse-search-history (C-r)}}
\entry{forward-search-history (C-s)}{140}{\code {forward-search-history (C-s)}}
\entry{non-incremental-reverse-search-history (M-p)}{140}{\code {non-incremental-reverse-search-history (M-p)}}
\entry{non-incremental-forward-search-history (M-n)}{141}{\code {non-incremental-forward-search-history (M-n)}}
\entry{history-search-backward ()}{141}{\code {history-search-backward ()}}
\entry{history-search-forward ()}{141}{\code {history-search-forward ()}}
\entry{history-substring-search-backward ()}{141}{\code {history-substring-search-backward ()}}
\entry{history-substring-search-forward ()}{141}{\code {history-substring-search-forward ()}}
\entry{yank-nth-arg (M-C-y)}{141}{\code {yank-nth-arg (M-C-y)}}
\entry{yank-last-arg (M-. or M-_)}{141}{\code {yank-last-arg (M-. or M-_)}}
\entry{operate-and-get-next (C-o)}{142}{\code {operate-and-get-next (C-o)}}
\entry{fetch-history ()}{142}{\code {fetch-history ()}}
\entry{end-of-file (usually C-d)}{142}{\code {\i {end-of-file} (usually C-d)}}
\entry{delete-char (C-d)}{142}{\code {delete-char (C-d)}}
\entry{backward-delete-char (Rubout)}{142}{\code {backward-delete-char (Rubout)}}
\entry{forward-backward-delete-char ()}{142}{\code {forward-backward-delete-char ()}}
\entry{quoted-insert (C-q or C-v)}{142}{\code {quoted-insert (C-q or C-v)}}
\entry{self-insert (a, b, A, 1, !, ...{})}{142}{\code {self-insert (a, b, A, 1, !, \dots {})}}
\entry{bracketed-paste-begin ()}{142}{\code {bracketed-paste-begin ()}}
\entry{transpose-chars (C-t)}{142}{\code {transpose-chars (C-t)}}
\entry{transpose-words (M-t)}{143}{\code {transpose-words (M-t)}}
\entry{shell-transpose-words (M-C-t)}{143}{\code {shell-transpose-words (M-C-t)}}
\entry{upcase-word (M-u)}{143}{\code {upcase-word (M-u)}}
\entry{downcase-word (M-l)}{143}{\code {downcase-word (M-l)}}
\entry{capitalize-word (M-c)}{143}{\code {capitalize-word (M-c)}}
\entry{overwrite-mode ()}{143}{\code {overwrite-mode ()}}
\entry{kill-line (C-k)}{143}{\code {kill-line (C-k)}}
\entry{backward-kill-line (C-x Rubout)}{143}{\code {backward-kill-line (C-x Rubout)}}
\entry{unix-line-discard (C-u)}{143}{\code {unix-line-discard (C-u)}}
\entry{kill-whole-line ()}{144}{\code {kill-whole-line ()}}
\entry{kill-word (M-d)}{144}{\code {kill-word (M-d)}}
\entry{backward-kill-word (M-DEL)}{144}{\code {backward-kill-word (M-\key {DEL})}}
\entry{shell-kill-word (M-C-d)}{144}{\code {shell-kill-word (M-C-d)}}
\entry{shell-backward-kill-word ()}{144}{\code {shell-backward-kill-word ()}}
\entry{unix-word-rubout (C-w)}{144}{\code {unix-word-rubout (C-w)}}
\entry{unix-filename-rubout ()}{144}{\code {unix-filename-rubout ()}}
\entry{delete-horizontal-space ()}{144}{\code {delete-horizontal-space ()}}
\entry{kill-region ()}{144}{\code {kill-region ()}}
\entry{copy-region-as-kill ()}{144}{\code {copy-region-as-kill ()}}
\entry{copy-backward-word ()}{144}{\code {copy-backward-word ()}}
\entry{copy-forward-word ()}{144}{\code {copy-forward-word ()}}
\entry{yank (C-y)}{144}{\code {yank (C-y)}}
\entry{yank-pop (M-y)}{144}{\code {yank-pop (M-y)}}
\entry{digit-argument (M-0, M-1, ...{} M--)}{145}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}
\entry{universal-argument ()}{145}{\code {universal-argument ()}}
\entry{complete (TAB)}{145}{\code {complete (\key {TAB})}}
\entry{possible-completions (M-?)}{145}{\code {possible-completions (M-?)}}
\entry{insert-completions (M-*)}{145}{\code {insert-completions (M-*)}}
\entry{menu-complete ()}{145}{\code {menu-complete ()}}
\entry{menu-complete-backward ()}{145}{\code {menu-complete-backward ()}}
\entry{delete-char-or-list ()}{146}{\code {delete-char-or-list ()}}
\entry{complete-filename (M-/)}{146}{\code {complete-filename (M-/)}}
\entry{possible-filename-completions (C-x /)}{146}{\code {possible-filename-completions (C-x /)}}
\entry{complete-username (M-~)}{146}{\code {complete-username (M-~)}}
\entry{possible-username-completions (C-x ~)}{146}{\code {possible-username-completions (C-x ~)}}
\entry{complete-variable (M-$)}{146}{\code {complete-variable (M-$)}}
\entry{possible-variable-completions (C-x $)}{146}{\code {possible-variable-completions (C-x $)}}
\entry{complete-hostname (M-@)}{146}{\code {complete-hostname (M-@)}}
\entry{possible-hostname-completions (C-x @)}{146}{\code {possible-hostname-completions (C-x @)}}
\entry{complete-command (M-!)}{146}{\code {complete-command (M-!)}}
\entry{possible-command-completions (C-x !)}{146}{\code {possible-command-completions (C-x !)}}
\entry{dynamic-complete-history (M-TAB)}{146}{\code {dynamic-complete-history (M-\key {TAB})}}
\entry{dabbrev-expand ()}{146}{\code {dabbrev-expand ()}}
\entry{complete-into-braces (M-{\indexlbrace })}{146}{\code {complete-into-braces (M-{\tt \char 123})}}
\entry{start-kbd-macro (C-x ()}{147}{\code {start-kbd-macro (C-x ()}}
\entry{end-kbd-macro (C-x ))}{147}{\code {end-kbd-macro (C-x ))}}
\entry{call-last-kbd-macro (C-x e)}{147}{\code {call-last-kbd-macro (C-x e)}}
\entry{print-last-kbd-macro ()}{147}{\code {print-last-kbd-macro ()}}
\entry{re-read-init-file (C-x C-r)}{147}{\code {re-read-init-file (C-x C-r)}}
\entry{abort (C-g)}{147}{\code {abort (C-g)}}
\entry{do-lowercase-version (M-A, M-B, M-x, ...{})}{147}{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}
\entry{prefix-meta (ESC)}{147}{\code {prefix-meta (\key {ESC})}}
\entry{undo (C-_ or C-x C-u)}{147}{\code {undo (C-_ or C-x C-u)}}
\entry{revert-line (M-r)}{147}{\code {revert-line (M-r)}}
\entry{tilde-expand (M-&)}{147}{\code {tilde-expand (M-&)}}
\entry{set-mark (C-@)}{147}{\code {set-mark (C-@)}}
\entry{exchange-point-and-mark (C-x C-x)}{147}{\code {exchange-point-and-mark (C-x C-x)}}
\entry{character-search (C-])}{147}{\code {character-search (C-])}}
\entry{character-search-backward (M-C-])}{148}{\code {character-search-backward (M-C-])}}
\entry{skip-csi-sequence ()}{148}{\code {skip-csi-sequence ()}}
\entry{insert-comment (M-#)}{148}{\code {insert-comment (M-#)}}
\entry{dump-functions ()}{148}{\code {dump-functions ()}}
\entry{dump-variables ()}{148}{\code {dump-variables ()}}
\entry{dump-macros ()}{148}{\code {dump-macros ()}}
\entry{spell-correct-word (C-x s)}{148}{\code {spell-correct-word (C-x s)}}
\entry{glob-complete-word (M-g)}{148}{\code {glob-complete-word (M-g)}}
\entry{glob-expand-word (C-x *)}{149}{\code {glob-expand-word (C-x *)}}
\entry{glob-list-expansions (C-x g)}{149}{\code {glob-list-expansions (C-x g)}}
\entry{display-shell-version (C-x C-v)}{149}{\code {display-shell-version (C-x C-v)}}
\entry{shell-expand-line (M-C-e)}{149}{\code {shell-expand-line (M-C-e)}}
\entry{history-expand-line (M-^)}{149}{\code {history-expand-line (M-^)}}
\entry{magic-space ()}{149}{\code {magic-space ()}}
\entry{alias-expand-line ()}{149}{\code {alias-expand-line ()}}
\entry{history-and-alias-expand-line ()}{149}{\code {history-and-alias-expand-line ()}}
\entry{insert-last-argument (M-. or M-_)}{149}{\code {insert-last-argument (M-. or M-_)}}
\entry{edit-and-execute-command (C-x C-e)}{149}{\code {edit-and-execute-command (C-x C-e)}}
\entry{execute-named-command (M-x)}{149}{\code {execute-named-command (M-x)}}
\entry{beginning-of-line (C-a)}{144}{\code {beginning-of-line (C-a)}}
\entry{end-of-line (C-e)}{144}{\code {end-of-line (C-e)}}
\entry{forward-char (C-f)}{144}{\code {forward-char (C-f)}}
\entry{backward-char (C-b)}{144}{\code {backward-char (C-b)}}
\entry{forward-word (M-f)}{144}{\code {forward-word (M-f)}}
\entry{backward-word (M-b)}{144}{\code {backward-word (M-b)}}
\entry{shell-forward-word (M-C-f)}{144}{\code {shell-forward-word (M-C-f)}}
\entry{shell-backward-word (M-C-b)}{144}{\code {shell-backward-word (M-C-b)}}
\entry{previous-screen-line ()}{144}{\code {previous-screen-line ()}}
\entry{next-screen-line ()}{145}{\code {next-screen-line ()}}
\entry{clear-display (M-C-l)}{145}{\code {clear-display (M-C-l)}}
\entry{clear-screen (C-l)}{145}{\code {clear-screen (C-l)}}
\entry{redraw-current-line ()}{145}{\code {redraw-current-line ()}}
\entry{accept-line (Newline or Return)}{145}{\code {accept-line (Newline or Return)}}
\entry{previous-history (C-p)}{145}{\code {previous-history (C-p)}}
\entry{next-history (C-n)}{145}{\code {next-history (C-n)}}
\entry{beginning-of-history (M-<)}{145}{\code {beginning-of-history (M-<)}}
\entry{end-of-history (M->)}{145}{\code {end-of-history (M->)}}
\entry{reverse-search-history (C-r)}{145}{\code {reverse-search-history (C-r)}}
\entry{forward-search-history (C-s)}{145}{\code {forward-search-history (C-s)}}
\entry{non-incremental-reverse-search-history (M-p)}{145}{\code {non-incremental-reverse-search-history (M-p)}}
\entry{non-incremental-forward-search-history (M-n)}{146}{\code {non-incremental-forward-search-history (M-n)}}
\entry{history-search-backward ()}{146}{\code {history-search-backward ()}}
\entry{history-search-forward ()}{146}{\code {history-search-forward ()}}
\entry{history-substring-search-backward ()}{146}{\code {history-substring-search-backward ()}}
\entry{history-substring-search-forward ()}{146}{\code {history-substring-search-forward ()}}
\entry{yank-nth-arg (M-C-y)}{146}{\code {yank-nth-arg (M-C-y)}}
\entry{yank-last-arg (M-. or M-_)}{146}{\code {yank-last-arg (M-. or M-_)}}
\entry{operate-and-get-next (C-o)}{147}{\code {operate-and-get-next (C-o)}}
\entry{fetch-history ()}{147}{\code {fetch-history ()}}
\entry{end-of-file (usually C-d)}{147}{\code {\i {end-of-file} (usually C-d)}}
\entry{delete-char (C-d)}{147}{\code {delete-char (C-d)}}
\entry{backward-delete-char (Rubout)}{147}{\code {backward-delete-char (Rubout)}}
\entry{forward-backward-delete-char ()}{147}{\code {forward-backward-delete-char ()}}
\entry{quoted-insert (C-q or C-v)}{147}{\code {quoted-insert (C-q or C-v)}}
\entry{self-insert (a, b, A, 1, !, ...{})}{147}{\code {self-insert (a, b, A, 1, !, \dots {})}}
\entry{bracketed-paste-begin ()}{147}{\code {bracketed-paste-begin ()}}
\entry{transpose-chars (C-t)}{147}{\code {transpose-chars (C-t)}}
\entry{transpose-words (M-t)}{148}{\code {transpose-words (M-t)}}
\entry{shell-transpose-words (M-C-t)}{148}{\code {shell-transpose-words (M-C-t)}}
\entry{upcase-word (M-u)}{148}{\code {upcase-word (M-u)}}
\entry{downcase-word (M-l)}{148}{\code {downcase-word (M-l)}}
\entry{capitalize-word (M-c)}{148}{\code {capitalize-word (M-c)}}
\entry{overwrite-mode ()}{148}{\code {overwrite-mode ()}}
\entry{kill-line (C-k)}{148}{\code {kill-line (C-k)}}
\entry{backward-kill-line (C-x Rubout)}{148}{\code {backward-kill-line (C-x Rubout)}}
\entry{unix-line-discard (C-u)}{148}{\code {unix-line-discard (C-u)}}
\entry{kill-whole-line ()}{149}{\code {kill-whole-line ()}}
\entry{kill-word (M-d)}{149}{\code {kill-word (M-d)}}
\entry{backward-kill-word (M-DEL)}{149}{\code {backward-kill-word (M-\key {DEL})}}
\entry{shell-kill-word (M-C-d)}{149}{\code {shell-kill-word (M-C-d)}}
\entry{shell-backward-kill-word ()}{149}{\code {shell-backward-kill-word ()}}
\entry{unix-word-rubout (C-w)}{149}{\code {unix-word-rubout (C-w)}}
\entry{unix-filename-rubout ()}{149}{\code {unix-filename-rubout ()}}
\entry{delete-horizontal-space ()}{149}{\code {delete-horizontal-space ()}}
\entry{kill-region ()}{149}{\code {kill-region ()}}
\entry{copy-region-as-kill ()}{149}{\code {copy-region-as-kill ()}}
\entry{copy-backward-word ()}{149}{\code {copy-backward-word ()}}
\entry{copy-forward-word ()}{149}{\code {copy-forward-word ()}}
\entry{yank (C-y)}{149}{\code {yank (C-y)}}
\entry{yank-pop (M-y)}{149}{\code {yank-pop (M-y)}}
\entry{digit-argument (M-0, M-1, ...{} M--)}{150}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}
\entry{universal-argument ()}{150}{\code {universal-argument ()}}
\entry{complete (TAB)}{150}{\code {complete (\key {TAB})}}
\entry{possible-completions (M-?)}{150}{\code {possible-completions (M-?)}}
\entry{insert-completions (M-*)}{150}{\code {insert-completions (M-*)}}
\entry{menu-complete ()}{150}{\code {menu-complete ()}}
\entry{menu-complete-backward ()}{150}{\code {menu-complete-backward ()}}
\entry{delete-char-or-list ()}{151}{\code {delete-char-or-list ()}}
\entry{complete-filename (M-/)}{151}{\code {complete-filename (M-/)}}
\entry{possible-filename-completions (C-x /)}{151}{\code {possible-filename-completions (C-x /)}}
\entry{complete-username (M-~)}{151}{\code {complete-username (M-~)}}
\entry{possible-username-completions (C-x ~)}{151}{\code {possible-username-completions (C-x ~)}}
\entry{complete-variable (M-$)}{151}{\code {complete-variable (M-$)}}
\entry{possible-variable-completions (C-x $)}{151}{\code {possible-variable-completions (C-x $)}}
\entry{complete-hostname (M-@)}{151}{\code {complete-hostname (M-@)}}
\entry{possible-hostname-completions (C-x @)}{151}{\code {possible-hostname-completions (C-x @)}}
\entry{complete-command (M-!)}{151}{\code {complete-command (M-!)}}
\entry{possible-command-completions (C-x !)}{151}{\code {possible-command-completions (C-x !)}}
\entry{dynamic-complete-history (M-TAB)}{151}{\code {dynamic-complete-history (M-\key {TAB})}}
\entry{dabbrev-expand ()}{151}{\code {dabbrev-expand ()}}
\entry{complete-into-braces (M-{\indexlbrace })}{151}{\code {complete-into-braces (M-{\tt \char 123})}}
\entry{start-kbd-macro (C-x ()}{152}{\code {start-kbd-macro (C-x ()}}
\entry{end-kbd-macro (C-x ))}{152}{\code {end-kbd-macro (C-x ))}}
\entry{call-last-kbd-macro (C-x e)}{152}{\code {call-last-kbd-macro (C-x e)}}
\entry{print-last-kbd-macro ()}{152}{\code {print-last-kbd-macro ()}}
\entry{re-read-init-file (C-x C-r)}{152}{\code {re-read-init-file (C-x C-r)}}
\entry{abort (C-g)}{152}{\code {abort (C-g)}}
\entry{do-lowercase-version (M-A, M-B, M-x, ...{})}{152}{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}
\entry{prefix-meta (ESC)}{152}{\code {prefix-meta (\key {ESC})}}
\entry{undo (C-_ or C-x C-u)}{152}{\code {undo (C-_ or C-x C-u)}}
\entry{revert-line (M-r)}{152}{\code {revert-line (M-r)}}
\entry{tilde-expand (M-&)}{152}{\code {tilde-expand (M-&)}}
\entry{set-mark (C-@)}{152}{\code {set-mark (C-@)}}
\entry{exchange-point-and-mark (C-x C-x)}{152}{\code {exchange-point-and-mark (C-x C-x)}}
\entry{character-search (C-])}{152}{\code {character-search (C-])}}
\entry{character-search-backward (M-C-])}{153}{\code {character-search-backward (M-C-])}}
\entry{skip-csi-sequence ()}{153}{\code {skip-csi-sequence ()}}
\entry{insert-comment (M-#)}{153}{\code {insert-comment (M-#)}}
\entry{dump-functions ()}{153}{\code {dump-functions ()}}
\entry{dump-variables ()}{153}{\code {dump-variables ()}}
\entry{dump-macros ()}{153}{\code {dump-macros ()}}
\entry{spell-correct-word (C-x s)}{153}{\code {spell-correct-word (C-x s)}}
\entry{glob-complete-word (M-g)}{153}{\code {glob-complete-word (M-g)}}
\entry{glob-expand-word (C-x *)}{154}{\code {glob-expand-word (C-x *)}}
\entry{glob-list-expansions (C-x g)}{154}{\code {glob-list-expansions (C-x g)}}
\entry{display-shell-version (C-x C-v)}{154}{\code {display-shell-version (C-x C-v)}}
\entry{shell-expand-line (M-C-e)}{154}{\code {shell-expand-line (M-C-e)}}
\entry{history-expand-line (M-^)}{154}{\code {history-expand-line (M-^)}}
\entry{magic-space ()}{154}{\code {magic-space ()}}
\entry{alias-expand-line ()}{154}{\code {alias-expand-line ()}}
\entry{history-and-alias-expand-line ()}{154}{\code {history-and-alias-expand-line ()}}
\entry{insert-last-argument (M-. or M-_)}{154}{\code {insert-last-argument (M-. or M-_)}}
\entry{edit-and-execute-command (C-x C-e)}{154}{\code {edit-and-execute-command (C-x C-e)}}
\entry{execute-named-command (M-x)}{154}{\code {execute-named-command (M-x)}}
+115 -115
View File
@@ -1,135 +1,135 @@
\initial {A}
\entry{\code {abort (C-g)}}{147}
\entry{\code {accept-line (Newline or Return)}}{140}
\entry{\code {alias-expand-line ()}}{149}
\entry{\code {abort (C-g)}}{152}
\entry{\code {accept-line (Newline or Return)}}{145}
\entry{\code {alias-expand-line ()}}{154}
\initial {B}
\entry{\code {backward-char (C-b)}}{139}
\entry{\code {backward-delete-char (Rubout)}}{142}
\entry{\code {backward-kill-line (C-x Rubout)}}{143}
\entry{\code {backward-kill-word (M-\key {DEL})}}{144}
\entry{\code {backward-word (M-b)}}{139}
\entry{\code {beginning-of-history (M-<)}}{140}
\entry{\code {beginning-of-line (C-a)}}{139}
\entry{\code {bracketed-paste-begin ()}}{142}
\entry{\code {backward-char (C-b)}}{144}
\entry{\code {backward-delete-char (Rubout)}}{147}
\entry{\code {backward-kill-line (C-x Rubout)}}{148}
\entry{\code {backward-kill-word (M-\key {DEL})}}{149}
\entry{\code {backward-word (M-b)}}{144}
\entry{\code {beginning-of-history (M-<)}}{145}
\entry{\code {beginning-of-line (C-a)}}{144}
\entry{\code {bracketed-paste-begin ()}}{147}
\initial {C}
\entry{\code {call-last-kbd-macro (C-x e)}}{147}
\entry{\code {capitalize-word (M-c)}}{143}
\entry{\code {character-search (C-])}}{147}
\entry{\code {character-search-backward (M-C-])}}{148}
\entry{\code {clear-display (M-C-l)}}{140}
\entry{\code {clear-screen (C-l)}}{140}
\entry{\code {complete (\key {TAB})}}{145}
\entry{\code {complete-command (M-!)}}{146}
\entry{\code {complete-filename (M-/)}}{146}
\entry{\code {complete-hostname (M-@)}}{146}
\entry{\code {complete-into-braces (M-{\tt \char 123})}}{146}
\entry{\code {complete-username (M-~)}}{146}
\entry{\code {complete-variable (M-$)}}{146}
\entry{\code {copy-backward-word ()}}{144}
\entry{\code {copy-forward-word ()}}{144}
\entry{\code {copy-region-as-kill ()}}{144}
\entry{\code {call-last-kbd-macro (C-x e)}}{152}
\entry{\code {capitalize-word (M-c)}}{148}
\entry{\code {character-search (C-])}}{152}
\entry{\code {character-search-backward (M-C-])}}{153}
\entry{\code {clear-display (M-C-l)}}{145}
\entry{\code {clear-screen (C-l)}}{145}
\entry{\code {complete (\key {TAB})}}{150}
\entry{\code {complete-command (M-!)}}{151}
\entry{\code {complete-filename (M-/)}}{151}
\entry{\code {complete-hostname (M-@)}}{151}
\entry{\code {complete-into-braces (M-{\tt \char 123})}}{151}
\entry{\code {complete-username (M-~)}}{151}
\entry{\code {complete-variable (M-$)}}{151}
\entry{\code {copy-backward-word ()}}{149}
\entry{\code {copy-forward-word ()}}{149}
\entry{\code {copy-region-as-kill ()}}{149}
\initial {D}
\entry{\code {dabbrev-expand ()}}{146}
\entry{\code {delete-char (C-d)}}{142}
\entry{\code {delete-char-or-list ()}}{146}
\entry{\code {delete-horizontal-space ()}}{144}
\entry{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{145}
\entry{\code {display-shell-version (C-x C-v)}}{149}
\entry{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}{147}
\entry{\code {downcase-word (M-l)}}{143}
\entry{\code {dump-functions ()}}{148}
\entry{\code {dump-macros ()}}{148}
\entry{\code {dump-variables ()}}{148}
\entry{\code {dynamic-complete-history (M-\key {TAB})}}{146}
\entry{\code {dabbrev-expand ()}}{151}
\entry{\code {delete-char (C-d)}}{147}
\entry{\code {delete-char-or-list ()}}{151}
\entry{\code {delete-horizontal-space ()}}{149}
\entry{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{150}
\entry{\code {display-shell-version (C-x C-v)}}{154}
\entry{\code {do-lowercase-version (M-A, M-B, M-\var {x}, \dots {})}}{152}
\entry{\code {downcase-word (M-l)}}{148}
\entry{\code {dump-functions ()}}{153}
\entry{\code {dump-macros ()}}{153}
\entry{\code {dump-variables ()}}{153}
\entry{\code {dynamic-complete-history (M-\key {TAB})}}{151}
\initial {E}
\entry{\code {edit-and-execute-command (C-x C-e)}}{149}
\entry{\code {end-kbd-macro (C-x ))}}{147}
\entry{\code {\i {end-of-file} (usually C-d)}}{142}
\entry{\code {end-of-history (M->)}}{140}
\entry{\code {end-of-line (C-e)}}{139}
\entry{\code {exchange-point-and-mark (C-x C-x)}}{147}
\entry{\code {execute-named-command (M-x)}}{149}
\entry{\code {edit-and-execute-command (C-x C-e)}}{154}
\entry{\code {end-kbd-macro (C-x ))}}{152}
\entry{\code {\i {end-of-file} (usually C-d)}}{147}
\entry{\code {end-of-history (M->)}}{145}
\entry{\code {end-of-line (C-e)}}{144}
\entry{\code {exchange-point-and-mark (C-x C-x)}}{152}
\entry{\code {execute-named-command (M-x)}}{154}
\initial {F}
\entry{\code {fetch-history ()}}{142}
\entry{\code {forward-backward-delete-char ()}}{142}
\entry{\code {forward-char (C-f)}}{139}
\entry{\code {forward-search-history (C-s)}}{140}
\entry{\code {forward-word (M-f)}}{139}
\entry{\code {fetch-history ()}}{147}
\entry{\code {forward-backward-delete-char ()}}{147}
\entry{\code {forward-char (C-f)}}{144}
\entry{\code {forward-search-history (C-s)}}{145}
\entry{\code {forward-word (M-f)}}{144}
\initial {G}
\entry{\code {glob-complete-word (M-g)}}{148}
\entry{\code {glob-expand-word (C-x *)}}{149}
\entry{\code {glob-list-expansions (C-x g)}}{149}
\entry{\code {glob-complete-word (M-g)}}{153}
\entry{\code {glob-expand-word (C-x *)}}{154}
\entry{\code {glob-list-expansions (C-x g)}}{154}
\initial {H}
\entry{\code {history-and-alias-expand-line ()}}{149}
\entry{\code {history-expand-line (M-^)}}{149}
\entry{\code {history-search-backward ()}}{141}
\entry{\code {history-search-forward ()}}{141}
\entry{\code {history-substring-search-backward ()}}{141}
\entry{\code {history-substring-search-forward ()}}{141}
\entry{\code {history-and-alias-expand-line ()}}{154}
\entry{\code {history-expand-line (M-^)}}{154}
\entry{\code {history-search-backward ()}}{146}
\entry{\code {history-search-forward ()}}{146}
\entry{\code {history-substring-search-backward ()}}{146}
\entry{\code {history-substring-search-forward ()}}{146}
\initial {I}
\entry{\code {insert-comment (M-#)}}{148}
\entry{\code {insert-completions (M-*)}}{145}
\entry{\code {insert-last-argument (M-. or M-_)}}{149}
\entry{\code {insert-comment (M-#)}}{153}
\entry{\code {insert-completions (M-*)}}{150}
\entry{\code {insert-last-argument (M-. or M-_)}}{154}
\initial {K}
\entry{\code {kill-line (C-k)}}{143}
\entry{\code {kill-region ()}}{144}
\entry{\code {kill-whole-line ()}}{144}
\entry{\code {kill-word (M-d)}}{144}
\entry{\code {kill-line (C-k)}}{148}
\entry{\code {kill-region ()}}{149}
\entry{\code {kill-whole-line ()}}{149}
\entry{\code {kill-word (M-d)}}{149}
\initial {M}
\entry{\code {magic-space ()}}{149}
\entry{\code {menu-complete ()}}{145}
\entry{\code {menu-complete-backward ()}}{145}
\entry{\code {magic-space ()}}{154}
\entry{\code {menu-complete ()}}{150}
\entry{\code {menu-complete-backward ()}}{150}
\initial {N}
\entry{\code {next-history (C-n)}}{140}
\entry{\code {next-screen-line ()}}{140}
\entry{\code {non-incremental-forward-search-history (M-n)}}{141}
\entry{\code {non-incremental-reverse-search-history (M-p)}}{140}
\entry{\code {next-history (C-n)}}{145}
\entry{\code {next-screen-line ()}}{145}
\entry{\code {non-incremental-forward-search-history (M-n)}}{146}
\entry{\code {non-incremental-reverse-search-history (M-p)}}{145}
\initial {O}
\entry{\code {operate-and-get-next (C-o)}}{142}
\entry{\code {overwrite-mode ()}}{143}
\entry{\code {operate-and-get-next (C-o)}}{147}
\entry{\code {overwrite-mode ()}}{148}
\initial {P}
\entry{\code {possible-command-completions (C-x !)}}{146}
\entry{\code {possible-completions (M-?)}}{145}
\entry{\code {possible-filename-completions (C-x /)}}{146}
\entry{\code {possible-hostname-completions (C-x @)}}{146}
\entry{\code {possible-username-completions (C-x ~)}}{146}
\entry{\code {possible-variable-completions (C-x $)}}{146}
\entry{\code {prefix-meta (\key {ESC})}}{147}
\entry{\code {previous-history (C-p)}}{140}
\entry{\code {previous-screen-line ()}}{139}
\entry{\code {print-last-kbd-macro ()}}{147}
\entry{\code {possible-command-completions (C-x !)}}{151}
\entry{\code {possible-completions (M-?)}}{150}
\entry{\code {possible-filename-completions (C-x /)}}{151}
\entry{\code {possible-hostname-completions (C-x @)}}{151}
\entry{\code {possible-username-completions (C-x ~)}}{151}
\entry{\code {possible-variable-completions (C-x $)}}{151}
\entry{\code {prefix-meta (\key {ESC})}}{152}
\entry{\code {previous-history (C-p)}}{145}
\entry{\code {previous-screen-line ()}}{144}
\entry{\code {print-last-kbd-macro ()}}{152}
\initial {Q}
\entry{\code {quoted-insert (C-q or C-v)}}{142}
\entry{\code {quoted-insert (C-q or C-v)}}{147}
\initial {R}
\entry{\code {re-read-init-file (C-x C-r)}}{147}
\entry{\code {redraw-current-line ()}}{140}
\entry{\code {reverse-search-history (C-r)}}{140}
\entry{\code {revert-line (M-r)}}{147}
\entry{\code {re-read-init-file (C-x C-r)}}{152}
\entry{\code {redraw-current-line ()}}{145}
\entry{\code {reverse-search-history (C-r)}}{145}
\entry{\code {revert-line (M-r)}}{152}
\initial {S}
\entry{\code {self-insert (a, b, A, 1, !, \dots {})}}{142}
\entry{\code {set-mark (C-@)}}{147}
\entry{\code {shell-backward-kill-word ()}}{144}
\entry{\code {shell-backward-word (M-C-b)}}{139}
\entry{\code {shell-expand-line (M-C-e)}}{149}
\entry{\code {shell-forward-word (M-C-f)}}{139}
\entry{\code {shell-kill-word (M-C-d)}}{144}
\entry{\code {shell-transpose-words (M-C-t)}}{143}
\entry{\code {skip-csi-sequence ()}}{148}
\entry{\code {spell-correct-word (C-x s)}}{148}
\entry{\code {start-kbd-macro (C-x ()}}{147}
\entry{\code {self-insert (a, b, A, 1, !, \dots {})}}{147}
\entry{\code {set-mark (C-@)}}{152}
\entry{\code {shell-backward-kill-word ()}}{149}
\entry{\code {shell-backward-word (M-C-b)}}{144}
\entry{\code {shell-expand-line (M-C-e)}}{154}
\entry{\code {shell-forward-word (M-C-f)}}{144}
\entry{\code {shell-kill-word (M-C-d)}}{149}
\entry{\code {shell-transpose-words (M-C-t)}}{148}
\entry{\code {skip-csi-sequence ()}}{153}
\entry{\code {spell-correct-word (C-x s)}}{153}
\entry{\code {start-kbd-macro (C-x ()}}{152}
\initial {T}
\entry{\code {tilde-expand (M-&)}}{147}
\entry{\code {transpose-chars (C-t)}}{142}
\entry{\code {transpose-words (M-t)}}{143}
\entry{\code {tilde-expand (M-&)}}{152}
\entry{\code {transpose-chars (C-t)}}{147}
\entry{\code {transpose-words (M-t)}}{148}
\initial {U}
\entry{\code {undo (C-_ or C-x C-u)}}{147}
\entry{\code {universal-argument ()}}{145}
\entry{\code {unix-filename-rubout ()}}{144}
\entry{\code {unix-line-discard (C-u)}}{143}
\entry{\code {unix-word-rubout (C-w)}}{144}
\entry{\code {upcase-word (M-u)}}{143}
\entry{\code {undo (C-_ or C-x C-u)}}{152}
\entry{\code {universal-argument ()}}{150}
\entry{\code {unix-filename-rubout ()}}{149}
\entry{\code {unix-line-discard (C-u)}}{148}
\entry{\code {unix-word-rubout (C-w)}}{149}
\entry{\code {upcase-word (M-u)}}{148}
\initial {Y}
\entry{\code {yank (C-y)}}{144}
\entry{\code {yank-last-arg (M-. or M-_)}}{141}
\entry{\code {yank-nth-arg (M-C-y)}}{141}
\entry{\code {yank-pop (M-y)}}{144}
\entry{\code {yank (C-y)}}{149}
\entry{\code {yank-last-arg (M-. or M-_)}}{146}
\entry{\code {yank-nth-arg (M-C-y)}}{146}
\entry{\code {yank-pop (M-y)}}{149}
+1952 -1669
View File
File diff suppressed because it is too large Load Diff
+53 -52
View File
@@ -1,12 +1,12 @@
This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/MacPorts 2024.70613_0) (preloaded format=pdfetex 2024.4.9) 16 AUG 2024 17:10
This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/MacPorts 2024.70613_0) (preloaded format=pdfetex 2024.4.9) 7 OCT 2024 17:23
entering extended mode
restricted \write18 enabled.
file:line:error style messages enabled.
%&-line parsing enabled.
**\input /usr/local/src/bash/bash-20240812/doc/bashref.texi \input /usr/local/s
rc/bash/bash-20240812/doc/bashref.texi
(/usr/local/src/bash/bash-20240812/doc/bashref.texi
(/usr/local/src/bash/bash-20240812/doc/texinfo.tex
**\input /usr/local/src/bash/bash-20240927/doc/bashref.texi \input /usr/local/s
rc/bash/bash-20240927/doc/bashref.texi
(/usr/local/src/bash/bash-20240927/doc/bashref.texi
(/usr/local/src/bash/bash-20240927/doc/texinfo.tex
Loading texinfo [version 2015-11-22.14]:
\outerhsize=\dimen16
\outervsize=\dimen17
@@ -162,15 +162,15 @@ This is `epsf.tex' v2.7.4 <14 February 2011>
texinfo.tex: doing @include of version.texi
(/usr/local/src/bash/bash-20240812/doc/version.texi) [1{/opt/local/var/db/texmf
(/usr/local/src/bash/bash-20240927/doc/version.texi) [1{/opt/local/var/db/texmf
/fonts/map/pdftex/updmap/pdftex.map}] [2]
(/usr/local/build/bash/bash-20240812/doc/bashref.toc [-1] [-2] [-3]) [-4]
(/usr/local/build/bash/bash-20240812/doc/bashref.toc)
(/usr/local/build/bash/bash-20240812/doc/bashref.toc) Chapter 1
(/usr/local/build/bash/bash-20240927/doc/bashref.toc [-1] [-2] [-3]) [-4]
(/usr/local/build/bash/bash-20240927/doc/bashref.toc)
(/usr/local/build/bash/bash-20240927/doc/bashref.toc) Chapter 1
\openout0 = `bashref.toc'.
(/usr/local/build/bash/bash-20240812/doc/bashref.aux)
(/usr/local/build/bash/bash-20240927/doc/bashref.aux)
\openout1 = `bashref.aux'.
Chapter 2 [1] [2]
@@ -183,7 +183,7 @@ texinfo.tex: doing @include of version.texi
\openout3 = `bashref.vr'.
[8]
Overfull \hbox (3.12749pt too wide) in paragraph at lines 723--724
Overfull \hbox (3.12749pt too wide) in paragraph at lines 736--737
@texttt coproc[]|
@hbox(9.34993+3.85005)x43.36464
@@ -195,7 +195,7 @@ Overfull \hbox (3.12749pt too wide) in paragraph at lines 723--724
.etc.
Overfull \hbox (3.12749pt too wide) in paragraph at lines 724--724
Overfull \hbox (3.12749pt too wide) in paragraph at lines 737--737
@texttt select[]|
@hbox(9.34993+3.85005)x43.36464
@@ -207,7 +207,7 @@ Overfull \hbox (3.12749pt too wide) in paragraph at lines 724--724
.etc.
Overfull \hbox (5.95723pt too wide) in paragraph at lines 724--725
Overfull \hbox (5.95723pt too wide) in paragraph at lines 737--738
@texttt function[]|
@hbox(9.34993+3.85005)x52.03227
@@ -218,20 +218,21 @@ Overfull \hbox (5.95723pt too wide) in paragraph at lines 724--725
.@texttt c
.etc.
[9]
@rwindfile=@write4
\openout4 = `bashref.rw'.
[9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19{/opt/local/share/texmf-tex
live/fonts/enc/dvips/cm-super/cm-super-t1.enc}] [20] [21] [22] [23] [24]
[10] [11] [12] [13] [14] [15] [16] [17] [18] [19{/opt/local/share/texmf-texliv
e/fonts/enc/dvips/cm-super/cm-super-t1.enc}] [20] [21] [22] [23] [24]
[25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39]
[40] [41] [42] [43] [44] [45] [46] [47] Chapter 4 [48]
[40] [41] [42] [43] [44] [45] [46] [47] [48] Chapter 4 [49]
@btindfile=@write5
\openout5 = `bashref.bt'.
[49] [50] [51] [52]
[50] [51] [52]
[53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67]
[68]
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5447--5447
[68] [69] [70]
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5703--5703
[]@texttt set [-abefhkmnptuvxBCEHPT] [-o @textttsl option-name@texttt ] [--] [
-] [@textttsl ar-gu-ment []@texttt ][]
@@ -244,7 +245,7 @@ Overfull \hbox (38.26585pt too wide) in paragraph at lines 5447--5447
.etc.
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5448--5448
Overfull \hbox (38.26585pt too wide) in paragraph at lines 5704--5704
[]@texttt set [+abefhkmnptuvxBCEHPT] [+o @textttsl option-name@texttt ] [--] [
-] [@textttsl ar-gu-ment []@texttt ][]
@@ -256,17 +257,17 @@ Overfull \hbox (38.26585pt too wide) in paragraph at lines 5448--5448
.@texttt t
.etc.
[69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] Chapter 5 [80] [81]
[82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] Chapter 6 [93] [94]
[95] [96] [97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107]
[108] [109] [110] [111] [112] [113] [114] [115] [116] Chapter 7 [117] [118]
[119] [120]
[71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] Chapter 5 [83]
[84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94] [95] [96] Chapter 6
[97] [98] [99] [100] [101] [102] [103] [104] [105] [106] [107] [108] [109]
[110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120] [121]
Chapter 7 [122] [123] [124] [125]
texinfo.tex: doing @include of rluser.texi
(/usr/local/src/bash/bash-20240812/lib/readline/doc/rluser.texi
Chapter 8 [121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131]
[132]
Underfull \hbox (badness 7540) in paragraph at lines 882--888
(/usr/local/src/bash/bash-20240927/lib/readline/doc/rluser.texi Chapter 8
[126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137]
Underfull \hbox (badness 7540) in paragraph at lines 919--925
[]@textrm In the ex-am-ple above, @textttsl C-u[] @textrm is bound to the func
-tion
@@ -279,7 +280,7 @@ Underfull \hbox (badness 7540) in paragraph at lines 882--888
.etc.
Underfull \hbox (badness 10000) in paragraph at lines 882--888
Underfull \hbox (badness 10000) in paragraph at lines 919--925
@texttt universal-argument[]@textrm , @textttsl M-DEL[] @textrm is bound to th
e func-tion
@@ -291,8 +292,8 @@ e func-tion
.@texttt v
.etc.
[133] [134] [135] [136]
Overfull \hbox (26.43913pt too wide) in paragraph at lines 1116--1116
[138] [139] [140] [141]
Overfull \hbox (26.43913pt too wide) in paragraph at lines 1155--1155
[]@texttt Meta-Control-h: backward-kill-word Text after the function name is i
gnored[]
@@ -304,19 +305,19 @@ gnored[]
.@texttt t
.etc.
[137] [138]
[142] [143]
@fnindfile=@write6
\openout6 = `bashref.fn'.
[139] [140] [141] [142] [143] [144] [145] [146] [147] [148]
[149] [150] [151] [152] [153] [154] [155] [156] [157])
[144] [145] [146] [147] [148] [149] [150] [151] [152] [153]
[154] [155] [156] [157] [158] [159] [160] [161] [162])
texinfo.tex: doing @include of hsuser.texi
(/usr/local/src/bash/bash-20240812/lib/readline/doc/hsuser.texi Chapter 9
[158] [159] [160] [161] [162] [163]) Chapter 10 [164] [165] [166] [167]
[168]
Underfull \hbox (badness 10000) in paragraph at lines 9853--9862
(/usr/local/src/bash/bash-20240927/lib/readline/doc/hsuser.texi Chapter 9
[163] [164] [165] [166] [167] [168] [169]) Chapter 10 [170] [171] [172]
[173] [174]
Underfull \hbox (badness 10000) in paragraph at lines 10261--10270
[]@textrm All of the fol-low-ing op-tions ex-cept for `@texttt alt-array-implem
entation[]@textrm '[],
@@ -329,7 +330,7 @@ entation[]@textrm '[],
.etc.
Underfull \hbox (badness 10000) in paragraph at lines 9853--9862
Underfull \hbox (badness 10000) in paragraph at lines 10261--10270
@textrm `@texttt disabled-builtins[]@textrm '[], `@texttt direxpand-default[]@t
extrm '[], `@texttt strict-posix-default[]@textrm '[], and
@@ -341,17 +342,17 @@ extrm '[], `@texttt strict-posix-default[]@textrm '[], and
.@texttt a
.etc.
[169] [170] [171] [172] Appendix A [173] Appendix B [174] [175] [176] [177]
[178] [179] Appendix C [180]
[175] [176] [177] [178] Appendix A [179] Appendix B [180] [181] [182] [183]
[184] [185] Appendix C [186]
texinfo.tex: doing @include of fdl.texi
(/usr/local/src/bash/bash-20240812/doc/fdl.texi
[181] [182] [183] [184] [185] [186] [187]) Appendix D [188] [189] [190]
[191] [192] [193] [194] [195] [196] [197] )
(/usr/local/src/bash/bash-20240927/doc/fdl.texi
[187] [188] [189] [190] [191] [192] [193]) Appendix D [194] [195] [196]
[197] [198] [199] [200] [201] [202] [203] )
Here is how much of TeX's memory you used:
4105 strings out of 495840
47629 string characters out of 6171739
143211 words of memory out of 5000000
4111 strings out of 495840
47647 string characters out of 6171739
143369 words of memory out of 5000000
5048 multiletter control sequences out of 15000+600000
34315 words of font info for 116 fonts, out of 8000000 for 9000
701 hyphenation exceptions out of 8191
@@ -372,10 +373,10 @@ texmf-texlive/fonts/type1/public/amsfonts/cm/cmtt12.pfb></opt/local/share/texmf
-texlive/fonts/type1/public/amsfonts/cm/cmtt9.pfb></opt/local/share/texmf-texli
ve/fonts/type1/public/cm-super/sfrm1095.pfb></opt/local/share/texmf-texlive/fon
ts/type1/public/cm-super/sfrm1440.pfb>
Output written on bashref.pdf (203 pages, 821096 bytes).
Output written on bashref.pdf (209 pages, 838618 bytes).
PDF statistics:
2835 PDF objects out of 2984 (max. 8388607)
2585 compressed objects within 26 object streams
331 named destinations out of 1000 (max. 500000)
2885 PDF objects out of 2984 (max. 8388607)
2628 compressed objects within 27 object streams
337 named destinations out of 1000 (max. 500000)
1157 words of extra memory for PDF output out of 10000 (max. 10000000)
BIN
View File
Binary file not shown.
+6 -6
View File
@@ -1,8 +1,8 @@
\entry{time}{10}{\code {time}}
\entry{!}{10}{\code {!}}
\entry{until}{11}{\code {until}}
\entry{do}{11}{\code {do}}
\entry{done}{11}{\code {done}}
\entry{until}{12}{\code {until}}
\entry{do}{12}{\code {do}}
\entry{done}{12}{\code {done}}
\entry{while}{12}{\code {while}}
\entry{for}{12}{\code {for}}
\entry{if}{12}{\code {if}}
@@ -13,9 +13,9 @@
\entry{case}{13}{\code {case}}
\entry{in}{13}{\code {in}}
\entry{esac}{13}{\code {esac}}
\entry{select}{13}{\code {select}}
\entry{select}{14}{\code {select}}
\entry{[[}{14}{\code {[[}}
\entry{]]}{14}{\code {]]}}
\entry{{\indexlbrace }}{17}{\code {{\tt \char 123}}}
\entry{{\indexrbrace }}{17}{\code {{\tt \char 125}}}
\entry{{\indexlbrace }}{18}{\code {{\tt \char 123}}}
\entry{{\indexrbrace }}{18}{\code {{\tt \char 125}}}
\entry{function}{19}{\code {function}}
+6 -6
View File
@@ -5,14 +5,14 @@
\initial {]}
\entry{\code {]]}}{14}
\initial {{\indexlbrace }}
\entry{\code {{\tt \char 123}}}{17}
\entry{\code {{\tt \char 123}}}{18}
\initial {{\indexrbrace }}
\entry{\code {{\tt \char 125}}}{17}
\entry{\code {{\tt \char 125}}}{18}
\initial {C}
\entry{\code {case}}{13}
\initial {D}
\entry{\code {do}}{11}
\entry{\code {done}}{11}
\entry{\code {do}}{12}
\entry{\code {done}}{12}
\initial {E}
\entry{\code {elif}}{12}
\entry{\code {else}}{12}
@@ -25,11 +25,11 @@
\entry{\code {if}}{12}
\entry{\code {in}}{13}
\initial {S}
\entry{\code {select}}{13}
\entry{\code {select}}{14}
\initial {T}
\entry{\code {then}}{12}
\entry{\code {time}}{10}
\initial {U}
\entry{\code {until}}{11}
\entry{\code {until}}{12}
\initial {W}
\entry{\code {while}}{12}
+1445 -1057
View File
File diff suppressed because it is too large Load Diff
+116 -116
View File
@@ -16,128 +16,128 @@
@numsubsecentry{Reserved Words}{3.2.1}{Reserved Words}{9}
@numsubsecentry{Simple Commands}{3.2.2}{Simple Commands}{9}
@numsubsecentry{Pipelines}{3.2.3}{Pipelines}{10}
@numsubsecentry{Lists of Commands}{3.2.4}{Lists}{10}
@numsubsecentry{Lists of Commands}{3.2.4}{Lists}{11}
@numsubsecentry{Compound Commands}{3.2.5}{Compound Commands}{11}
@numsubsubsecentry{Looping Constructs}{3.2.5.1}{Looping Constructs}{11}
@numsubsubsecentry{Looping Constructs}{3.2.5.1}{Looping Constructs}{12}
@numsubsubsecentry{Conditional Constructs}{3.2.5.2}{Conditional Constructs}{12}
@numsubsubsecentry{Grouping Commands}{3.2.5.3}{Command Grouping}{17}
@numsubsecentry{Coprocesses}{3.2.6}{Coprocesses}{18}
@numsubsecentry{GNU Parallel}{3.2.7}{GNU Parallel}{19}
@numsecentry{Shell Functions}{3.3}{Shell Functions}{19}
@numsecentry{Shell Parameters}{3.4}{Shell Parameters}{21}
@numsecentry{Shell Parameters}{3.4}{Shell Parameters}{22}
@numsubsecentry{Positional Parameters}{3.4.1}{Positional Parameters}{23}
@numsubsecentry{Special Parameters}{3.4.2}{Special Parameters}{23}
@numsecentry{Shell Expansions}{3.5}{Shell Expansions}{24}
@numsubsecentry{Brace Expansion}{3.5.1}{Brace Expansion}{24}
@numsubsecentry{Tilde Expansion}{3.5.2}{Tilde Expansion}{25}
@numsubsecentry{Shell Parameter Expansion}{3.5.3}{Shell Parameter Expansion}{26}
@numsubsecentry{Command Substitution}{3.5.4}{Command Substitution}{34}
@numsubsecentry{Arithmetic Expansion}{3.5.5}{Arithmetic Expansion}{35}
@numsubsecentry{Process Substitution}{3.5.6}{Process Substitution}{35}
@numsubsecentry{Word Splitting}{3.5.7}{Word Splitting}{36}
@numsubsecentry{Filename Expansion}{3.5.8}{Filename Expansion}{36}
@numsubsubsecentry{Pattern Matching}{3.5.8.1}{Pattern Matching}{37}
@numsubsecentry{Quote Removal}{3.5.9}{Quote Removal}{39}
@numsecentry{Redirections}{3.6}{Redirections}{39}
@numsubsecentry{Redirecting Input}{3.6.1}{}{40}
@numsubsecentry{Redirecting Output}{3.6.2}{}{40}
@numsubsecentry{Appending Redirected Output}{3.6.3}{}{40}
@numsubsecentry{Redirecting Standard Output and Standard Error}{3.6.4}{}{41}
@numsubsecentry{Appending Standard Output and Standard Error}{3.6.5}{}{41}
@numsubsecentry{Here Documents}{3.6.6}{}{41}
@numsubsecentry{Here Strings}{3.6.7}{}{42}
@numsubsecentry{Duplicating File Descriptors}{3.6.8}{}{42}
@numsubsecentry{Moving File Descriptors}{3.6.9}{}{42}
@numsubsecentry{Opening File Descriptors for Reading and Writing}{3.6.10}{}{42}
@numsecentry{Executing Commands}{3.7}{Executing Commands}{43}
@numsubsecentry{Simple Command Expansion}{3.7.1}{Simple Command Expansion}{43}
@numsubsecentry{Command Search and Execution}{3.7.2}{Command Search and Execution}{43}
@numsubsecentry{Command Execution Environment}{3.7.3}{Command Execution Environment}{44}
@numsubsecentry{Environment}{3.7.4}{Environment}{45}
@numsubsecentry{Exit Status}{3.7.5}{Exit Status}{45}
@numsubsecentry{Signals}{3.7.6}{Signals}{46}
@numsecentry{Shell Scripts}{3.8}{Shell Scripts}{47}
@numchapentry{Shell Builtin Commands}{4}{Shell Builtin Commands}{49}
@numsecentry{Bourne Shell Builtins}{4.1}{Bourne Shell Builtins}{49}
@numsecentry{Bash Builtin Commands}{4.2}{Bash Builtins}{57}
@numsecentry{Modifying Shell Behavior}{4.3}{Modifying Shell Behavior}{69}
@numsubsecentry{The Set Builtin}{4.3.1}{The Set Builtin}{69}
@numsubsecentry{The Shopt Builtin}{4.3.2}{The Shopt Builtin}{74}
@numsecentry{Special Builtins}{4.4}{Special Builtins}{80}
@numchapentry{Shell Variables}{5}{Shell Variables}{81}
@numsecentry{Bourne Shell Variables}{5.1}{Bourne Shell Variables}{81}
@numsecentry{Bash Variables}{5.2}{Bash Variables}{81}
@numchapentry{Bash Features}{6}{Bash Features}{94}
@numsecentry{Invoking Bash}{6.1}{Invoking Bash}{94}
@numsecentry{Bash Startup Files}{6.2}{Bash Startup Files}{96}
@numsecentry{Interactive Shells}{6.3}{Interactive Shells}{98}
@numsubsecentry{What is an Interactive Shell?}{6.3.1}{What is an Interactive Shell?}{98}
@numsubsecentry{Is this Shell Interactive?}{6.3.2}{Is this Shell Interactive?}{98}
@numsubsecentry{Interactive Shell Behavior}{6.3.3}{Interactive Shell Behavior}{98}
@numsecentry{Bash Conditional Expressions}{6.4}{Bash Conditional Expressions}{99}
@numsecentry{Shell Arithmetic}{6.5}{Shell Arithmetic}{101}
@numsecentry{Aliases}{6.6}{Aliases}{103}
@numsecentry{Arrays}{6.7}{Arrays}{103}
@numsecentry{The Directory Stack}{6.8}{The Directory Stack}{105}
@numsubsecentry{Directory Stack Builtins}{6.8.1}{Directory Stack Builtins}{106}
@numsecentry{Controlling the Prompt}{6.9}{Controlling the Prompt}{107}
@numsecentry{The Restricted Shell}{6.10}{The Restricted Shell}{109}
@numsecentry{Bash and POSIX}{6.11}{Bash POSIX Mode}{109}
@numsubsecentry{What is POSIX?}{6.11.1}{}{109}
@numsubsecentry{Bash POSIX Mode}{6.11.2}{}{110}
@numsecentry{Shell Compatibility Mode}{6.12}{Shell Compatibility Mode}{114}
@numchapentry{Job Control}{7}{Job Control}{118}
@numsecentry{Job Control Basics}{7.1}{Job Control Basics}{118}
@numsecentry{Job Control Builtins}{7.2}{Job Control Builtins}{119}
@numsecentry{Job Control Variables}{7.3}{Job Control Variables}{121}
@numchapentry{Command Line Editing}{8}{Command Line Editing}{122}
@numsecentry{Introduction to Line Editing}{8.1}{Introduction and Notation}{122}
@numsecentry{Readline Interaction}{8.2}{Readline Interaction}{122}
@numsubsecentry{Readline Bare Essentials}{8.2.1}{Readline Bare Essentials}{123}
@numsubsecentry{Readline Movement Commands}{8.2.2}{Readline Movement Commands}{123}
@numsubsecentry{Readline Killing Commands}{8.2.3}{Readline Killing Commands}{124}
@numsubsecentry{Readline Arguments}{8.2.4}{Readline Arguments}{124}
@numsubsecentry{Searching for Commands in the History}{8.2.5}{Searching}{124}
@numsecentry{Readline Init File}{8.3}{Readline Init File}{125}
@numsubsecentry{Readline Init File Syntax}{8.3.1}{Readline Init File Syntax}{125}
@numsubsecentry{Conditional Init Constructs}{8.3.2}{Conditional Init Constructs}{134}
@numsubsecentry{Sample Init File}{8.3.3}{Sample Init File}{136}
@numsecentry{Bindable Readline Commands}{8.4}{Bindable Readline Commands}{139}
@numsubsecentry{Commands For Moving}{8.4.1}{Commands For Moving}{139}
@numsubsecentry{Commands For Manipulating The History}{8.4.2}{Commands For History}{140}
@numsubsecentry{Commands For Changing Text}{8.4.3}{Commands For Text}{142}
@numsubsecentry{Killing And Yanking}{8.4.4}{Commands For Killing}{143}
@numsubsecentry{Specifying Numeric Arguments}{8.4.5}{Numeric Arguments}{145}
@numsubsecentry{Letting Readline Type For You}{8.4.6}{Commands For Completion}{145}
@numsubsecentry{Keyboard Macros}{8.4.7}{Keyboard Macros}{147}
@numsubsecentry{Some Miscellaneous Commands}{8.4.8}{Miscellaneous Commands}{147}
@numsecentry{Readline vi Mode}{8.5}{Readline vi Mode}{149}
@numsecentry{Programmable Completion}{8.6}{Programmable Completion}{150}
@numsecentry{Programmable Completion Builtins}{8.7}{Programmable Completion Builtins}{152}
@numsecentry{A Programmable Completion Example}{8.8}{A Programmable Completion Example}{156}
@numchapentry{Using History Interactively}{9}{Using History Interactively}{159}
@numsecentry{Bash History Facilities}{9.1}{Bash History Facilities}{159}
@numsecentry{Bash History Builtins}{9.2}{Bash History Builtins}{159}
@numsecentry{History Expansion}{9.3}{History Interaction}{161}
@numsubsecentry{Event Designators}{9.3.1}{Event Designators}{162}
@numsubsecentry{Word Designators}{9.3.2}{Word Designators}{163}
@numsubsecentry{Modifiers}{9.3.3}{Modifiers}{164}
@numchapentry{Installing Bash}{10}{Installing Bash}{165}
@numsecentry{Basic Installation}{10.1}{Basic Installation}{165}
@numsecentry{Compilers and Options}{10.2}{Compilers and Options}{166}
@numsecentry{Compiling For Multiple Architectures}{10.3}{Compiling For Multiple Architectures}{166}
@numsecentry{Installation Names}{10.4}{Installation Names}{167}
@numsecentry{Specifying the System Type}{10.5}{Specifying the System Type}{167}
@numsecentry{Sharing Defaults}{10.6}{Sharing Defaults}{167}
@numsecentry{Operation Controls}{10.7}{Operation Controls}{168}
@numsecentry{Optional Features}{10.8}{Optional Features}{168}
@appentry{Reporting Bugs}{A}{Reporting Bugs}{174}
@appentry{Major Differences From The Bourne Shell}{B}{Major Differences From The Bourne Shell}{175}
@appsecentry{Implementation Differences From The SVR4.2 Shell}{B.1}{}{180}
@appentry{GNU Free Documentation License}{C}{GNU Free Documentation License}{181}
@appentry{Indexes}{D}{Indexes}{189}
@appsecentry{Index of Shell Builtin Commands}{D.1}{Builtin Index}{189}
@appsecentry{Index of Shell Reserved Words}{D.2}{Reserved Word Index}{190}
@appsecentry{Parameter and Variable Index}{D.3}{Variable Index}{191}
@appsecentry{Function Index}{D.4}{Function Index}{193}
@appsecentry{Concept Index}{D.5}{Concept Index}{195}
@numsubsecentry{Brace Expansion}{3.5.1}{Brace Expansion}{25}
@numsubsecentry{Tilde Expansion}{3.5.2}{Tilde Expansion}{26}
@numsubsecentry{Shell Parameter Expansion}{3.5.3}{Shell Parameter Expansion}{27}
@numsubsecentry{Command Substitution}{3.5.4}{Command Substitution}{35}
@numsubsecentry{Arithmetic Expansion}{3.5.5}{Arithmetic Expansion}{36}
@numsubsecentry{Process Substitution}{3.5.6}{Process Substitution}{36}
@numsubsecentry{Word Splitting}{3.5.7}{Word Splitting}{37}
@numsubsecentry{Filename Expansion}{3.5.8}{Filename Expansion}{37}
@numsubsubsecentry{Pattern Matching}{3.5.8.1}{Pattern Matching}{38}
@numsubsecentry{Quote Removal}{3.5.9}{Quote Removal}{40}
@numsecentry{Redirections}{3.6}{Redirections}{40}
@numsubsecentry{Redirecting Input}{3.6.1}{}{41}
@numsubsecentry{Redirecting Output}{3.6.2}{}{41}
@numsubsecentry{Appending Redirected Output}{3.6.3}{}{42}
@numsubsecentry{Redirecting Standard Output and Standard Error}{3.6.4}{}{42}
@numsubsecentry{Appending Standard Output and Standard Error}{3.6.5}{}{42}
@numsubsecentry{Here Documents}{3.6.6}{}{42}
@numsubsecentry{Here Strings}{3.6.7}{}{43}
@numsubsecentry{Duplicating File Descriptors}{3.6.8}{}{43}
@numsubsecentry{Moving File Descriptors}{3.6.9}{}{43}
@numsubsecentry{Opening File Descriptors for Reading and Writing}{3.6.10}{}{44}
@numsecentry{Executing Commands}{3.7}{Executing Commands}{44}
@numsubsecentry{Simple Command Expansion}{3.7.1}{Simple Command Expansion}{44}
@numsubsecentry{Command Search and Execution}{3.7.2}{Command Search and Execution}{44}
@numsubsecentry{Command Execution Environment}{3.7.3}{Command Execution Environment}{45}
@numsubsecentry{Environment}{3.7.4}{Environment}{46}
@numsubsecentry{Exit Status}{3.7.5}{Exit Status}{47}
@numsubsecentry{Signals}{3.7.6}{Signals}{47}
@numsecentry{Shell Scripts}{3.8}{Shell Scripts}{48}
@numchapentry{Shell Builtin Commands}{4}{Shell Builtin Commands}{50}
@numsecentry{Bourne Shell Builtins}{4.1}{Bourne Shell Builtins}{50}
@numsecentry{Bash Builtin Commands}{4.2}{Bash Builtins}{59}
@numsecentry{Modifying Shell Behavior}{4.3}{Modifying Shell Behavior}{71}
@numsubsecentry{The Set Builtin}{4.3.1}{The Set Builtin}{71}
@numsubsecentry{The Shopt Builtin}{4.3.2}{The Shopt Builtin}{76}
@numsecentry{Special Builtins}{4.4}{Special Builtins}{82}
@numchapentry{Shell Variables}{5}{Shell Variables}{84}
@numsecentry{Bourne Shell Variables}{5.1}{Bourne Shell Variables}{84}
@numsecentry{Bash Variables}{5.2}{Bash Variables}{85}
@numchapentry{Bash Features}{6}{Bash Features}{98}
@numsecentry{Invoking Bash}{6.1}{Invoking Bash}{98}
@numsecentry{Bash Startup Files}{6.2}{Bash Startup Files}{100}
@numsecentry{Interactive Shells}{6.3}{Interactive Shells}{102}
@numsubsecentry{What is an Interactive Shell?}{6.3.1}{What is an Interactive Shell?}{102}
@numsubsecentry{Is this Shell Interactive?}{6.3.2}{Is this Shell Interactive?}{102}
@numsubsecentry{Interactive Shell Behavior}{6.3.3}{Interactive Shell Behavior}{102}
@numsecentry{Bash Conditional Expressions}{6.4}{Bash Conditional Expressions}{103}
@numsecentry{Shell Arithmetic}{6.5}{Shell Arithmetic}{105}
@numsecentry{Aliases}{6.6}{Aliases}{107}
@numsecentry{Arrays}{6.7}{Arrays}{108}
@numsecentry{The Directory Stack}{6.8}{The Directory Stack}{110}
@numsubsecentry{Directory Stack Builtins}{6.8.1}{Directory Stack Builtins}{110}
@numsecentry{Controlling the Prompt}{6.9}{Controlling the Prompt}{111}
@numsecentry{The Restricted Shell}{6.10}{The Restricted Shell}{113}
@numsecentry{Bash and POSIX}{6.11}{Bash POSIX Mode}{114}
@numsubsecentry{What is POSIX?}{6.11.1}{}{114}
@numsubsecentry{Bash POSIX Mode}{6.11.2}{}{114}
@numsecentry{Shell Compatibility Mode}{6.12}{Shell Compatibility Mode}{119}
@numchapentry{Job Control}{7}{Job Control}{123}
@numsecentry{Job Control Basics}{7.1}{Job Control Basics}{123}
@numsecentry{Job Control Builtins}{7.2}{Job Control Builtins}{124}
@numsecentry{Job Control Variables}{7.3}{Job Control Variables}{126}
@numchapentry{Command Line Editing}{8}{Command Line Editing}{127}
@numsecentry{Introduction to Line Editing}{8.1}{Introduction and Notation}{127}
@numsecentry{Readline Interaction}{8.2}{Readline Interaction}{127}
@numsubsecentry{Readline Bare Essentials}{8.2.1}{Readline Bare Essentials}{128}
@numsubsecentry{Readline Movement Commands}{8.2.2}{Readline Movement Commands}{128}
@numsubsecentry{Readline Killing Commands}{8.2.3}{Readline Killing Commands}{129}
@numsubsecentry{Readline Arguments}{8.2.4}{Readline Arguments}{129}
@numsubsecentry{Searching for Commands in the History}{8.2.5}{Searching}{129}
@numsecentry{Readline Init File}{8.3}{Readline Init File}{130}
@numsubsecentry{Readline Init File Syntax}{8.3.1}{Readline Init File Syntax}{130}
@numsubsecentry{Conditional Init Constructs}{8.3.2}{Conditional Init Constructs}{140}
@numsubsecentry{Sample Init File}{8.3.3}{Sample Init File}{141}
@numsecentry{Bindable Readline Commands}{8.4}{Bindable Readline Commands}{144}
@numsubsecentry{Commands For Moving}{8.4.1}{Commands For Moving}{144}
@numsubsecentry{Commands For Manipulating The History}{8.4.2}{Commands For History}{145}
@numsubsecentry{Commands For Changing Text}{8.4.3}{Commands For Text}{147}
@numsubsecentry{Killing And Yanking}{8.4.4}{Commands For Killing}{148}
@numsubsecentry{Specifying Numeric Arguments}{8.4.5}{Numeric Arguments}{150}
@numsubsecentry{Letting Readline Type For You}{8.4.6}{Commands For Completion}{150}
@numsubsecentry{Keyboard Macros}{8.4.7}{Keyboard Macros}{152}
@numsubsecentry{Some Miscellaneous Commands}{8.4.8}{Miscellaneous Commands}{152}
@numsecentry{Readline vi Mode}{8.5}{Readline vi Mode}{154}
@numsecentry{Programmable Completion}{8.6}{Programmable Completion}{155}
@numsecentry{Programmable Completion Builtins}{8.7}{Programmable Completion Builtins}{157}
@numsecentry{A Programmable Completion Example}{8.8}{A Programmable Completion Example}{161}
@numchapentry{Using History Interactively}{9}{Using History Interactively}{164}
@numsecentry{Bash History Facilities}{9.1}{Bash History Facilities}{164}
@numsecentry{Bash History Builtins}{9.2}{Bash History Builtins}{165}
@numsecentry{History Expansion}{9.3}{History Interaction}{167}
@numsubsecentry{Event Designators}{9.3.1}{Event Designators}{168}
@numsubsecentry{Word Designators}{9.3.2}{Word Designators}{169}
@numsubsecentry{Modifiers}{9.3.3}{Modifiers}{169}
@numchapentry{Installing Bash}{10}{Installing Bash}{171}
@numsecentry{Basic Installation}{10.1}{Basic Installation}{171}
@numsecentry{Compilers and Options}{10.2}{Compilers and Options}{172}
@numsecentry{Compiling For Multiple Architectures}{10.3}{Compiling For Multiple Architectures}{172}
@numsecentry{Installation Names}{10.4}{Installation Names}{173}
@numsecentry{Specifying the System Type}{10.5}{Specifying the System Type}{173}
@numsecentry{Sharing Defaults}{10.6}{Sharing Defaults}{173}
@numsecentry{Operation Controls}{10.7}{Operation Controls}{174}
@numsecentry{Optional Features}{10.8}{Optional Features}{174}
@appentry{Reporting Bugs}{A}{Reporting Bugs}{180}
@appentry{Major Differences From The Bourne Shell}{B}{Major Differences From The Bourne Shell}{181}
@appsecentry{Implementation Differences From The SVR4.2 Shell}{B.1}{}{186}
@appentry{GNU Free Documentation License}{C}{GNU Free Documentation License}{187}
@appentry{Indexes}{D}{Indexes}{195}
@appsecentry{Index of Shell Builtin Commands}{D.1}{Builtin Index}{195}
@appsecentry{Index of Shell Reserved Words}{D.2}{Reserved Word Index}{196}
@appsecentry{Parameter and Variable Index}{D.3}{Variable Index}{197}
@appsecentry{Function Index}{D.4}{Function Index}{199}
@appsecentry{Concept Index}{D.5}{Concept Index}{201}
+168 -167
View File
@@ -4,174 +4,175 @@
\entry{TEXTDOMAINDIR}{8}{\code {TEXTDOMAINDIR}}
\entry{*}{23}{\code {*}}
\entry{$*}{23}{\code {$*}}
\entry{@}{23}{\code {@}}
\entry{$@}{23}{\code {$@}}
\entry{#}{23}{\code {#}}
\entry{$#}{23}{\code {$#}}
\entry{?}{23}{\code {?}}
\entry{$?}{23}{\code {$?}}
\entry{-}{23}{\code {-}}
\entry{$-}{23}{\code {$-}}
\entry{$}{23}{\code {$}}
\entry{$$}{23}{\code {$$}}
\entry{@}{24}{\code {@}}
\entry{$@}{24}{\code {$@}}
\entry{#}{24}{\code {#}}
\entry{$#}{24}{\code {$#}}
\entry{?}{24}{\code {?}}
\entry{$?}{24}{\code {$?}}
\entry{-}{24}{\code {-}}
\entry{$-}{24}{\code {$-}}
\entry{$}{24}{\code {$}}
\entry{$$}{24}{\code {$$}}
\entry{!}{24}{\code {!}}
\entry{$!}{24}{\code {$!}}
\entry{0}{24}{\code {0}}
\entry{$0}{24}{\code {$0}}
\entry{CDPATH}{81}{\code {CDPATH}}
\entry{HOME}{81}{\code {HOME}}
\entry{IFS}{81}{\code {IFS}}
\entry{MAIL}{81}{\code {MAIL}}
\entry{MAILPATH}{81}{\code {MAILPATH}}
\entry{OPTARG}{81}{\code {OPTARG}}
\entry{OPTIND}{81}{\code {OPTIND}}
\entry{PATH}{81}{\code {PATH}}
\entry{PS1}{81}{\code {PS1}}
\entry{PS2}{81}{\code {PS2}}
\entry{_}{81}{\code {_}}
\entry{$_}{81}{\code {$_}}
\entry{BASH}{82}{\code {BASH}}
\entry{BASHOPTS}{82}{\code {BASHOPTS}}
\entry{BASHPID}{82}{\code {BASHPID}}
\entry{BASH_ALIASES}{82}{\code {BASH_ALIASES}}
\entry{BASH_ARGC}{82}{\code {BASH_ARGC}}
\entry{BASH_ARGV}{82}{\code {BASH_ARGV}}
\entry{BASH_ARGV0}{83}{\code {BASH_ARGV0}}
\entry{BASH_CMDS}{83}{\code {BASH_CMDS}}
\entry{BASH_COMMAND}{83}{\code {BASH_COMMAND}}
\entry{BASH_COMPAT}{83}{\code {BASH_COMPAT}}
\entry{BASH_ENV}{83}{\code {BASH_ENV}}
\entry{BASH_EXECUTION_STRING}{83}{\code {BASH_EXECUTION_STRING}}
\entry{BASH_LINENO}{83}{\code {BASH_LINENO}}
\entry{BASH_LOADABLES_PATH}{84}{\code {BASH_LOADABLES_PATH}}
\entry{BASH_MONOSECONDS}{84}{\code {BASH_MONOSECONDS}}
\entry{BASH_REMATCH}{84}{\code {BASH_REMATCH}}
\entry{BASH_SOURCE}{84}{\code {BASH_SOURCE}}
\entry{BASH_SUBSHELL}{84}{\code {BASH_SUBSHELL}}
\entry{BASH_TRAPSIG}{84}{\code {BASH_TRAPSIG}}
\entry{BASH_VERSINFO}{84}{\code {BASH_VERSINFO}}
\entry{BASH_VERSION}{85}{\code {BASH_VERSION}}
\entry{BASH_XTRACEFD}{85}{\code {BASH_XTRACEFD}}
\entry{CHILD_MAX}{85}{\code {CHILD_MAX}}
\entry{COLUMNS}{85}{\code {COLUMNS}}
\entry{COMP_CWORD}{85}{\code {COMP_CWORD}}
\entry{COMP_LINE}{85}{\code {COMP_LINE}}
\entry{COMP_POINT}{85}{\code {COMP_POINT}}
\entry{COMP_TYPE}{85}{\code {COMP_TYPE}}
\entry{COMP_KEY}{86}{\code {COMP_KEY}}
\entry{COMP_WORDBREAKS}{86}{\code {COMP_WORDBREAKS}}
\entry{COMP_WORDS}{86}{\code {COMP_WORDS}}
\entry{COMPREPLY}{86}{\code {COMPREPLY}}
\entry{COPROC}{86}{\code {COPROC}}
\entry{DIRSTACK}{86}{\code {DIRSTACK}}
\entry{EMACS}{86}{\code {EMACS}}
\entry{ENV}{86}{\code {ENV}}
\entry{EPOCHREALTIME}{86}{\code {EPOCHREALTIME}}
\entry{EPOCHSECONDS}{86}{\code {EPOCHSECONDS}}
\entry{EUID}{87}{\code {EUID}}
\entry{EXECIGNORE}{87}{\code {EXECIGNORE}}
\entry{FCEDIT}{87}{\code {FCEDIT}}
\entry{FIGNORE}{87}{\code {FIGNORE}}
\entry{FUNCNAME}{87}{\code {FUNCNAME}}
\entry{FUNCNEST}{87}{\code {FUNCNEST}}
\entry{GLOBIGNORE}{87}{\code {GLOBIGNORE}}
\entry{GLOBSORT}{87}{\code {GLOBSORT}}
\entry{GROUPS}{88}{\code {GROUPS}}
\entry{histchars}{88}{\code {histchars}}
\entry{HISTCMD}{88}{\code {HISTCMD}}
\entry{HISTCONTROL}{88}{\code {HISTCONTROL}}
\entry{HISTFILE}{89}{\code {HISTFILE}}
\entry{HISTFILESIZE}{89}{\code {HISTFILESIZE}}
\entry{HISTIGNORE}{89}{\code {HISTIGNORE}}
\entry{HISTSIZE}{89}{\code {HISTSIZE}}
\entry{HISTTIMEFORMAT}{89}{\code {HISTTIMEFORMAT}}
\entry{HOSTFILE}{89}{\code {HOSTFILE}}
\entry{HOSTNAME}{90}{\code {HOSTNAME}}
\entry{HOSTTYPE}{90}{\code {HOSTTYPE}}
\entry{IGNOREEOF}{90}{\code {IGNOREEOF}}
\entry{INPUTRC}{90}{\code {INPUTRC}}
\entry{INSIDE_EMACS}{90}{\code {INSIDE_EMACS}}
\entry{LANG}{90}{\code {LANG}}
\entry{LC_ALL}{90}{\code {LC_ALL}}
\entry{LC_COLLATE}{90}{\code {LC_COLLATE}}
\entry{LC_CTYPE}{90}{\code {LC_CTYPE}}
\entry{LC_MESSAGES}{90}{\code {LC_MESSAGES}}
\entry{LC_NUMERIC}{90}{\code {LC_NUMERIC}}
\entry{LC_TIME}{90}{\code {LC_TIME}}
\entry{LINENO}{90}{\code {LINENO}}
\entry{LINES}{90}{\code {LINES}}
\entry{MACHTYPE}{91}{\code {MACHTYPE}}
\entry{MAILCHECK}{91}{\code {MAILCHECK}}
\entry{MAPFILE}{91}{\code {MAPFILE}}
\entry{OLDPWD}{91}{\code {OLDPWD}}
\entry{OPTERR}{91}{\code {OPTERR}}
\entry{OSTYPE}{91}{\code {OSTYPE}}
\entry{PIPESTATUS}{91}{\code {PIPESTATUS}}
\entry{POSIXLY_CORRECT}{91}{\code {POSIXLY_CORRECT}}
\entry{PPID}{91}{\code {PPID}}
\entry{PROMPT_COMMAND}{91}{\code {PROMPT_COMMAND}}
\entry{PROMPT_DIRTRIM}{91}{\code {PROMPT_DIRTRIM}}
\entry{PS0}{91}{\code {PS0}}
\entry{PS3}{91}{\code {PS3}}
\entry{PS4}{92}{\code {PS4}}
\entry{PWD}{92}{\code {PWD}}
\entry{RANDOM}{92}{\code {RANDOM}}
\entry{READLINE_ARGUMENT}{92}{\code {READLINE_ARGUMENT}}
\entry{READLINE_LINE}{92}{\code {READLINE_LINE}}
\entry{READLINE_MARK}{92}{\code {READLINE_MARK}}
\entry{READLINE_POINT}{92}{\code {READLINE_POINT}}
\entry{REPLY}{92}{\code {REPLY}}
\entry{SECONDS}{92}{\code {SECONDS}}
\entry{SHELL}{92}{\code {SHELL}}
\entry{SHELLOPTS}{92}{\code {SHELLOPTS}}
\entry{SHLVL}{92}{\code {SHLVL}}
\entry{SRANDOM}{93}{\code {SRANDOM}}
\entry{TIMEFORMAT}{93}{\code {TIMEFORMAT}}
\entry{TMOUT}{93}{\code {TMOUT}}
\entry{TMPDIR}{93}{\code {TMPDIR}}
\entry{UID}{93}{\code {UID}}
\entry{auto_resume}{121}{\code {auto_resume}}
\entry{active-region-start-color}{126}{\code {active-region-start-color}}
\entry{active-region-end-color}{126}{\code {active-region-end-color}}
\entry{bell-style}{126}{\code {bell-style}}
\entry{bind-tty-special-chars}{126}{\code {bind-tty-special-chars}}
\entry{blink-matching-paren}{127}{\code {blink-matching-paren}}
\entry{colored-completion-prefix}{127}{\code {colored-completion-prefix}}
\entry{colored-stats}{127}{\code {colored-stats}}
\entry{comment-begin}{127}{\code {comment-begin}}
\entry{completion-display-width}{127}{\code {completion-display-width}}
\entry{completion-ignore-case}{127}{\code {completion-ignore-case}}
\entry{completion-map-case}{127}{\code {completion-map-case}}
\entry{completion-prefix-display-length}{127}{\code {completion-prefix-display-length}}
\entry{completion-query-items}{127}{\code {completion-query-items}}
\entry{convert-meta}{128}{\code {convert-meta}}
\entry{disable-completion}{128}{\code {disable-completion}}
\entry{echo-control-characters}{128}{\code {echo-control-characters}}
\entry{editing-mode}{128}{\code {editing-mode}}
\entry{emacs-mode-string}{128}{\code {emacs-mode-string}}
\entry{enable-active-region}{128}{\code {enable-active-region}}
\entry{enable-bracketed-paste}{129}{\code {enable-bracketed-paste}}
\entry{enable-keypad}{129}{\code {enable-keypad}}
\entry{expand-tilde}{129}{\code {expand-tilde}}
\entry{history-preserve-point}{129}{\code {history-preserve-point}}
\entry{history-size}{129}{\code {history-size}}
\entry{horizontal-scroll-mode}{129}{\code {horizontal-scroll-mode}}
\entry{input-meta}{130}{\code {input-meta}}
\entry{meta-flag}{130}{\code {meta-flag}}
\entry{isearch-terminators}{130}{\code {isearch-terminators}}
\entry{keymap}{130}{\code {keymap}}
\entry{mark-modified-lines}{130}{\code {mark-modified-lines}}
\entry{mark-symlinked-directories}{130}{\code {mark-symlinked-directories}}
\entry{match-hidden-files}{131}{\code {match-hidden-files}}
\entry{menu-complete-display-prefix}{131}{\code {menu-complete-display-prefix}}
\entry{output-meta}{131}{\code {output-meta}}
\entry{page-completions}{131}{\code {page-completions}}
\entry{revert-all-at-newline}{131}{\code {revert-all-at-newline}}
\entry{search-ignore-case}{131}{\code {search-ignore-case}}
\entry{show-all-if-ambiguous}{131}{\code {show-all-if-ambiguous}}
\entry{show-all-if-unmodified}{131}{\code {show-all-if-unmodified}}
\entry{show-mode-in-prompt}{132}{\code {show-mode-in-prompt}}
\entry{skip-completed-text}{132}{\code {skip-completed-text}}
\entry{vi-cmd-mode-string}{132}{\code {vi-cmd-mode-string}}
\entry{vi-ins-mode-string}{132}{\code {vi-ins-mode-string}}
\entry{visible-stats}{132}{\code {visible-stats}}
\entry{CDPATH}{84}{\code {CDPATH}}
\entry{HOME}{84}{\code {HOME}}
\entry{IFS}{84}{\code {IFS}}
\entry{MAIL}{84}{\code {MAIL}}
\entry{MAILPATH}{84}{\code {MAILPATH}}
\entry{OPTARG}{84}{\code {OPTARG}}
\entry{OPTIND}{84}{\code {OPTIND}}
\entry{PATH}{84}{\code {PATH}}
\entry{PS1}{84}{\code {PS1}}
\entry{PS2}{84}{\code {PS2}}
\entry{_}{85}{\code {_}}
\entry{$_}{85}{\code {$_}}
\entry{BASH}{85}{\code {BASH}}
\entry{BASHOPTS}{85}{\code {BASHOPTS}}
\entry{BASHPID}{85}{\code {BASHPID}}
\entry{BASH_ALIASES}{85}{\code {BASH_ALIASES}}
\entry{BASH_ARGC}{85}{\code {BASH_ARGC}}
\entry{BASH_ARGV}{85}{\code {BASH_ARGV}}
\entry{BASH_ARGV0}{86}{\code {BASH_ARGV0}}
\entry{BASH_CMDS}{86}{\code {BASH_CMDS}}
\entry{BASH_COMMAND}{86}{\code {BASH_COMMAND}}
\entry{BASH_COMPAT}{86}{\code {BASH_COMPAT}}
\entry{BASH_ENV}{86}{\code {BASH_ENV}}
\entry{BASH_EXECUTION_STRING}{86}{\code {BASH_EXECUTION_STRING}}
\entry{BASH_LINENO}{87}{\code {BASH_LINENO}}
\entry{BASH_LOADABLES_PATH}{87}{\code {BASH_LOADABLES_PATH}}
\entry{BASH_MONOSECONDS}{87}{\code {BASH_MONOSECONDS}}
\entry{BASH_REMATCH}{87}{\code {BASH_REMATCH}}
\entry{BASH_SOURCE}{87}{\code {BASH_SOURCE}}
\entry{BASH_SUBSHELL}{87}{\code {BASH_SUBSHELL}}
\entry{BASH_TRAPSIG}{87}{\code {BASH_TRAPSIG}}
\entry{BASH_VERSINFO}{87}{\code {BASH_VERSINFO}}
\entry{BASH_VERSION}{88}{\code {BASH_VERSION}}
\entry{BASH_XTRACEFD}{88}{\code {BASH_XTRACEFD}}
\entry{CHILD_MAX}{88}{\code {CHILD_MAX}}
\entry{COLUMNS}{88}{\code {COLUMNS}}
\entry{COMP_CWORD}{88}{\code {COMP_CWORD}}
\entry{COMP_KEY}{88}{\code {COMP_KEY}}
\entry{COMP_LINE}{88}{\code {COMP_LINE}}
\entry{COMP_POINT}{89}{\code {COMP_POINT}}
\entry{COMP_TYPE}{89}{\code {COMP_TYPE}}
\entry{COMP_WORDBREAKS}{89}{\code {COMP_WORDBREAKS}}
\entry{COMP_WORDS}{89}{\code {COMP_WORDS}}
\entry{COMPREPLY}{89}{\code {COMPREPLY}}
\entry{COPROC}{89}{\code {COPROC}}
\entry{DIRSTACK}{89}{\code {DIRSTACK}}
\entry{EMACS}{89}{\code {EMACS}}
\entry{ENV}{89}{\code {ENV}}
\entry{EPOCHREALTIME}{90}{\code {EPOCHREALTIME}}
\entry{EPOCHSECONDS}{90}{\code {EPOCHSECONDS}}
\entry{EUID}{90}{\code {EUID}}
\entry{EXECIGNORE}{90}{\code {EXECIGNORE}}
\entry{FCEDIT}{90}{\code {FCEDIT}}
\entry{FIGNORE}{90}{\code {FIGNORE}}
\entry{FUNCNAME}{90}{\code {FUNCNAME}}
\entry{FUNCNEST}{90}{\code {FUNCNEST}}
\entry{GLOBIGNORE}{90}{\code {GLOBIGNORE}}
\entry{GLOBSORT}{91}{\code {GLOBSORT}}
\entry{GROUPS}{91}{\code {GROUPS}}
\entry{histchars}{91}{\code {histchars}}
\entry{HISTCMD}{91}{\code {HISTCMD}}
\entry{HISTCONTROL}{91}{\code {HISTCONTROL}}
\entry{HISTFILE}{92}{\code {HISTFILE}}
\entry{HISTFILESIZE}{92}{\code {HISTFILESIZE}}
\entry{HISTIGNORE}{92}{\code {HISTIGNORE}}
\entry{HISTSIZE}{92}{\code {HISTSIZE}}
\entry{HISTTIMEFORMAT}{93}{\code {HISTTIMEFORMAT}}
\entry{HOSTFILE}{93}{\code {HOSTFILE}}
\entry{HOSTNAME}{93}{\code {HOSTNAME}}
\entry{HOSTTYPE}{93}{\code {HOSTTYPE}}
\entry{IGNOREEOF}{93}{\code {IGNOREEOF}}
\entry{INPUTRC}{93}{\code {INPUTRC}}
\entry{INSIDE_EMACS}{93}{\code {INSIDE_EMACS}}
\entry{LANG}{93}{\code {LANG}}
\entry{LC_ALL}{93}{\code {LC_ALL}}
\entry{LC_COLLATE}{93}{\code {LC_COLLATE}}
\entry{LC_CTYPE}{93}{\code {LC_CTYPE}}
\entry{LC_MESSAGES}{94}{\code {LC_MESSAGES}}
\entry{LC_NUMERIC}{94}{\code {LC_NUMERIC}}
\entry{LC_TIME}{94}{\code {LC_TIME}}
\entry{LINENO}{94}{\code {LINENO}}
\entry{LINES}{94}{\code {LINES}}
\entry{MACHTYPE}{94}{\code {MACHTYPE}}
\entry{MAILCHECK}{94}{\code {MAILCHECK}}
\entry{MAPFILE}{94}{\code {MAPFILE}}
\entry{OLDPWD}{94}{\code {OLDPWD}}
\entry{OPTERR}{94}{\code {OPTERR}}
\entry{OSTYPE}{94}{\code {OSTYPE}}
\entry{PIPESTATUS}{94}{\code {PIPESTATUS}}
\entry{POSIXLY_CORRECT}{94}{\code {POSIXLY_CORRECT}}
\entry{PPID}{95}{\code {PPID}}
\entry{PROMPT_COMMAND}{95}{\code {PROMPT_COMMAND}}
\entry{PROMPT_DIRTRIM}{95}{\code {PROMPT_DIRTRIM}}
\entry{PS0}{95}{\code {PS0}}
\entry{PS3}{95}{\code {PS3}}
\entry{PS4}{95}{\code {PS4}}
\entry{PWD}{95}{\code {PWD}}
\entry{RANDOM}{95}{\code {RANDOM}}
\entry{READLINE_ARGUMENT}{95}{\code {READLINE_ARGUMENT}}
\entry{READLINE_LINE}{95}{\code {READLINE_LINE}}
\entry{READLINE_MARK}{95}{\code {READLINE_MARK}}
\entry{READLINE_POINT}{95}{\code {READLINE_POINT}}
\entry{REPLY}{95}{\code {REPLY}}
\entry{SECONDS}{95}{\code {SECONDS}}
\entry{SHELL}{96}{\code {SHELL}}
\entry{SHELLOPTS}{96}{\code {SHELLOPTS}}
\entry{SHLVL}{96}{\code {SHLVL}}
\entry{SRANDOM}{96}{\code {SRANDOM}}
\entry{TIMEFORMAT}{96}{\code {TIMEFORMAT}}
\entry{TMOUT}{97}{\code {TMOUT}}
\entry{TMPDIR}{97}{\code {TMPDIR}}
\entry{UID}{97}{\code {UID}}
\entry{auto_resume}{126}{\code {auto_resume}}
\entry{active-region-start-color}{131}{\code {active-region-start-color}}
\entry{active-region-end-color}{131}{\code {active-region-end-color}}
\entry{bell-style}{131}{\code {bell-style}}
\entry{bind-tty-special-chars}{131}{\code {bind-tty-special-chars}}
\entry{blink-matching-paren}{132}{\code {blink-matching-paren}}
\entry{colored-completion-prefix}{132}{\code {colored-completion-prefix}}
\entry{colored-stats}{132}{\code {colored-stats}}
\entry{comment-begin}{132}{\code {comment-begin}}
\entry{completion-display-width}{132}{\code {completion-display-width}}
\entry{completion-ignore-case}{132}{\code {completion-ignore-case}}
\entry{completion-map-case}{132}{\code {completion-map-case}}
\entry{completion-prefix-display-length}{132}{\code {completion-prefix-display-length}}
\entry{completion-query-items}{132}{\code {completion-query-items}}
\entry{convert-meta}{133}{\code {convert-meta}}
\entry{disable-completion}{133}{\code {disable-completion}}
\entry{echo-control-characters}{133}{\code {echo-control-characters}}
\entry{editing-mode}{133}{\code {editing-mode}}
\entry{emacs-mode-string}{133}{\code {emacs-mode-string}}
\entry{enable-active-region}{133}{\code {enable-active-region}}
\entry{enable-bracketed-paste}{134}{\code {enable-bracketed-paste}}
\entry{enable-keypad}{134}{\code {enable-keypad}}
\entry{expand-tilde}{134}{\code {expand-tilde}}
\entry{force-meta-prefix}{134}{\code {force-meta-prefix}}
\entry{history-preserve-point}{134}{\code {history-preserve-point}}
\entry{history-size}{135}{\code {history-size}}
\entry{horizontal-scroll-mode}{135}{\code {horizontal-scroll-mode}}
\entry{input-meta}{135}{\code {input-meta}}
\entry{meta-flag}{135}{\code {meta-flag}}
\entry{isearch-terminators}{135}{\code {isearch-terminators}}
\entry{keymap}{135}{\code {keymap}}
\entry{mark-modified-lines}{136}{\code {mark-modified-lines}}
\entry{mark-symlinked-directories}{136}{\code {mark-symlinked-directories}}
\entry{match-hidden-files}{136}{\code {match-hidden-files}}
\entry{menu-complete-display-prefix}{136}{\code {menu-complete-display-prefix}}
\entry{output-meta}{136}{\code {output-meta}}
\entry{page-completions}{136}{\code {page-completions}}
\entry{revert-all-at-newline}{137}{\code {revert-all-at-newline}}
\entry{search-ignore-case}{137}{\code {search-ignore-case}}
\entry{show-all-if-ambiguous}{137}{\code {show-all-if-ambiguous}}
\entry{show-all-if-unmodified}{137}{\code {show-all-if-unmodified}}
\entry{show-mode-in-prompt}{137}{\code {show-mode-in-prompt}}
\entry{skip-completed-text}{137}{\code {skip-completed-text}}
\entry{vi-cmd-mode-string}{137}{\code {vi-cmd-mode-string}}
\entry{vi-ins-mode-string}{138}{\code {vi-ins-mode-string}}
\entry{visible-stats}{138}{\code {visible-stats}}
+168 -167
View File
@@ -1,203 +1,204 @@
\initial {!}
\entry{\code {!}}{24}
\initial {#}
\entry{\code {#}}{23}
\entry{\code {#}}{24}
\initial {$}
\entry{\code {$}}{23}
\entry{\code {$}}{24}
\entry{\code {$!}}{24}
\entry{\code {$#}}{23}
\entry{\code {$$}}{23}
\entry{\code {$#}}{24}
\entry{\code {$$}}{24}
\entry{\code {$*}}{23}
\entry{\code {$-}}{23}
\entry{\code {$?}}{23}
\entry{\code {$@}}{23}
\entry{\code {$_}}{81}
\entry{\code {$-}}{24}
\entry{\code {$?}}{24}
\entry{\code {$@}}{24}
\entry{\code {$_}}{85}
\entry{\code {$0}}{24}
\initial {*}
\entry{\code {*}}{23}
\initial {-}
\entry{\code {-}}{23}
\entry{\code {-}}{24}
\initial {?}
\entry{\code {?}}{23}
\entry{\code {?}}{24}
\initial {@}
\entry{\code {@}}{23}
\entry{\code {@}}{24}
\initial {_}
\entry{\code {_}}{81}
\entry{\code {_}}{85}
\initial {0}
\entry{\code {0}}{24}
\initial {A}
\entry{\code {active-region-end-color}}{126}
\entry{\code {active-region-start-color}}{126}
\entry{\code {auto_resume}}{121}
\entry{\code {active-region-end-color}}{131}
\entry{\code {active-region-start-color}}{131}
\entry{\code {auto_resume}}{126}
\initial {B}
\entry{\code {BASH}}{82}
\entry{\code {BASH_ALIASES}}{82}
\entry{\code {BASH_ARGC}}{82}
\entry{\code {BASH_ARGV}}{82}
\entry{\code {BASH_ARGV0}}{83}
\entry{\code {BASH_CMDS}}{83}
\entry{\code {BASH_COMMAND}}{83}
\entry{\code {BASH_COMPAT}}{83}
\entry{\code {BASH_ENV}}{83}
\entry{\code {BASH_EXECUTION_STRING}}{83}
\entry{\code {BASH_LINENO}}{83}
\entry{\code {BASH_LOADABLES_PATH}}{84}
\entry{\code {BASH_MONOSECONDS}}{84}
\entry{\code {BASH_REMATCH}}{84}
\entry{\code {BASH_SOURCE}}{84}
\entry{\code {BASH_SUBSHELL}}{84}
\entry{\code {BASH_TRAPSIG}}{84}
\entry{\code {BASH_VERSINFO}}{84}
\entry{\code {BASH_VERSION}}{85}
\entry{\code {BASH_XTRACEFD}}{85}
\entry{\code {BASHOPTS}}{82}
\entry{\code {BASHPID}}{82}
\entry{\code {bell-style}}{126}
\entry{\code {bind-tty-special-chars}}{126}
\entry{\code {blink-matching-paren}}{127}
\entry{\code {BASH}}{85}
\entry{\code {BASH_ALIASES}}{85}
\entry{\code {BASH_ARGC}}{85}
\entry{\code {BASH_ARGV}}{85}
\entry{\code {BASH_ARGV0}}{86}
\entry{\code {BASH_CMDS}}{86}
\entry{\code {BASH_COMMAND}}{86}
\entry{\code {BASH_COMPAT}}{86}
\entry{\code {BASH_ENV}}{86}
\entry{\code {BASH_EXECUTION_STRING}}{86}
\entry{\code {BASH_LINENO}}{87}
\entry{\code {BASH_LOADABLES_PATH}}{87}
\entry{\code {BASH_MONOSECONDS}}{87}
\entry{\code {BASH_REMATCH}}{87}
\entry{\code {BASH_SOURCE}}{87}
\entry{\code {BASH_SUBSHELL}}{87}
\entry{\code {BASH_TRAPSIG}}{87}
\entry{\code {BASH_VERSINFO}}{87}
\entry{\code {BASH_VERSION}}{88}
\entry{\code {BASH_XTRACEFD}}{88}
\entry{\code {BASHOPTS}}{85}
\entry{\code {BASHPID}}{85}
\entry{\code {bell-style}}{131}
\entry{\code {bind-tty-special-chars}}{131}
\entry{\code {blink-matching-paren}}{132}
\initial {C}
\entry{\code {CDPATH}}{81}
\entry{\code {CHILD_MAX}}{85}
\entry{\code {colored-completion-prefix}}{127}
\entry{\code {colored-stats}}{127}
\entry{\code {COLUMNS}}{85}
\entry{\code {comment-begin}}{127}
\entry{\code {COMP_CWORD}}{85}
\entry{\code {COMP_KEY}}{86}
\entry{\code {COMP_LINE}}{85}
\entry{\code {COMP_POINT}}{85}
\entry{\code {COMP_TYPE}}{85}
\entry{\code {COMP_WORDBREAKS}}{86}
\entry{\code {COMP_WORDS}}{86}
\entry{\code {completion-display-width}}{127}
\entry{\code {completion-ignore-case}}{127}
\entry{\code {completion-map-case}}{127}
\entry{\code {completion-prefix-display-length}}{127}
\entry{\code {completion-query-items}}{127}
\entry{\code {COMPREPLY}}{86}
\entry{\code {convert-meta}}{128}
\entry{\code {COPROC}}{86}
\entry{\code {CDPATH}}{84}
\entry{\code {CHILD_MAX}}{88}
\entry{\code {colored-completion-prefix}}{132}
\entry{\code {colored-stats}}{132}
\entry{\code {COLUMNS}}{88}
\entry{\code {comment-begin}}{132}
\entry{\code {COMP_CWORD}}{88}
\entry{\code {COMP_KEY}}{88}
\entry{\code {COMP_LINE}}{88}
\entry{\code {COMP_POINT}}{89}
\entry{\code {COMP_TYPE}}{89}
\entry{\code {COMP_WORDBREAKS}}{89}
\entry{\code {COMP_WORDS}}{89}
\entry{\code {completion-display-width}}{132}
\entry{\code {completion-ignore-case}}{132}
\entry{\code {completion-map-case}}{132}
\entry{\code {completion-prefix-display-length}}{132}
\entry{\code {completion-query-items}}{132}
\entry{\code {COMPREPLY}}{89}
\entry{\code {convert-meta}}{133}
\entry{\code {COPROC}}{89}
\initial {D}
\entry{\code {DIRSTACK}}{86}
\entry{\code {disable-completion}}{128}
\entry{\code {DIRSTACK}}{89}
\entry{\code {disable-completion}}{133}
\initial {E}
\entry{\code {echo-control-characters}}{128}
\entry{\code {editing-mode}}{128}
\entry{\code {emacs-mode-string}}{128}
\entry{\code {EMACS}}{86}
\entry{\code {enable-active-region}}{128}
\entry{\code {enable-bracketed-paste}}{129}
\entry{\code {enable-keypad}}{129}
\entry{\code {ENV}}{86}
\entry{\code {EPOCHREALTIME}}{86}
\entry{\code {EPOCHSECONDS}}{86}
\entry{\code {EUID}}{87}
\entry{\code {EXECIGNORE}}{87}
\entry{\code {expand-tilde}}{129}
\entry{\code {echo-control-characters}}{133}
\entry{\code {editing-mode}}{133}
\entry{\code {emacs-mode-string}}{133}
\entry{\code {EMACS}}{89}
\entry{\code {enable-active-region}}{133}
\entry{\code {enable-bracketed-paste}}{134}
\entry{\code {enable-keypad}}{134}
\entry{\code {ENV}}{89}
\entry{\code {EPOCHREALTIME}}{90}
\entry{\code {EPOCHSECONDS}}{90}
\entry{\code {EUID}}{90}
\entry{\code {EXECIGNORE}}{90}
\entry{\code {expand-tilde}}{134}
\initial {F}
\entry{\code {FCEDIT}}{87}
\entry{\code {FIGNORE}}{87}
\entry{\code {FUNCNAME}}{87}
\entry{\code {FUNCNEST}}{87}
\entry{\code {FCEDIT}}{90}
\entry{\code {FIGNORE}}{90}
\entry{\code {force-meta-prefix}}{134}
\entry{\code {FUNCNAME}}{90}
\entry{\code {FUNCNEST}}{90}
\initial {G}
\entry{\code {GLOBIGNORE}}{87}
\entry{\code {GLOBSORT}}{87}
\entry{\code {GROUPS}}{88}
\entry{\code {GLOBIGNORE}}{90}
\entry{\code {GLOBSORT}}{91}
\entry{\code {GROUPS}}{91}
\initial {H}
\entry{\code {histchars}}{88}
\entry{\code {HISTCMD}}{88}
\entry{\code {HISTCONTROL}}{88}
\entry{\code {HISTFILE}}{89}
\entry{\code {HISTFILESIZE}}{89}
\entry{\code {HISTIGNORE}}{89}
\entry{\code {history-preserve-point}}{129}
\entry{\code {history-size}}{129}
\entry{\code {HISTSIZE}}{89}
\entry{\code {HISTTIMEFORMAT}}{89}
\entry{\code {HOME}}{81}
\entry{\code {horizontal-scroll-mode}}{129}
\entry{\code {HOSTFILE}}{89}
\entry{\code {HOSTNAME}}{90}
\entry{\code {HOSTTYPE}}{90}
\entry{\code {histchars}}{91}
\entry{\code {HISTCMD}}{91}
\entry{\code {HISTCONTROL}}{91}
\entry{\code {HISTFILE}}{92}
\entry{\code {HISTFILESIZE}}{92}
\entry{\code {HISTIGNORE}}{92}
\entry{\code {history-preserve-point}}{134}
\entry{\code {history-size}}{135}
\entry{\code {HISTSIZE}}{92}
\entry{\code {HISTTIMEFORMAT}}{93}
\entry{\code {HOME}}{84}
\entry{\code {horizontal-scroll-mode}}{135}
\entry{\code {HOSTFILE}}{93}
\entry{\code {HOSTNAME}}{93}
\entry{\code {HOSTTYPE}}{93}
\initial {I}
\entry{\code {IFS}}{81}
\entry{\code {IGNOREEOF}}{90}
\entry{\code {input-meta}}{130}
\entry{\code {INPUTRC}}{90}
\entry{\code {INSIDE_EMACS}}{90}
\entry{\code {isearch-terminators}}{130}
\entry{\code {IFS}}{84}
\entry{\code {IGNOREEOF}}{93}
\entry{\code {input-meta}}{135}
\entry{\code {INPUTRC}}{93}
\entry{\code {INSIDE_EMACS}}{93}
\entry{\code {isearch-terminators}}{135}
\initial {K}
\entry{\code {keymap}}{130}
\entry{\code {keymap}}{135}
\initial {L}
\entry{\code {LANG}}{8, 90}
\entry{\code {LC_ALL}}{90}
\entry{\code {LC_COLLATE}}{90}
\entry{\code {LC_CTYPE}}{90}
\entry{\code {LC_MESSAGES}}{8, 90}
\entry{\code {LC_NUMERIC}}{90}
\entry{\code {LC_TIME}}{90}
\entry{\code {LINENO}}{90}
\entry{\code {LINES}}{90}
\entry{\code {LANG}}{8, 93}
\entry{\code {LC_ALL}}{93}
\entry{\code {LC_COLLATE}}{93}
\entry{\code {LC_CTYPE}}{93}
\entry{\code {LC_MESSAGES}}{8, 94}
\entry{\code {LC_NUMERIC}}{94}
\entry{\code {LC_TIME}}{94}
\entry{\code {LINENO}}{94}
\entry{\code {LINES}}{94}
\initial {M}
\entry{\code {MACHTYPE}}{91}
\entry{\code {MAIL}}{81}
\entry{\code {MAILCHECK}}{91}
\entry{\code {MAILPATH}}{81}
\entry{\code {MAPFILE}}{91}
\entry{\code {mark-modified-lines}}{130}
\entry{\code {mark-symlinked-directories}}{130}
\entry{\code {match-hidden-files}}{131}
\entry{\code {menu-complete-display-prefix}}{131}
\entry{\code {meta-flag}}{130}
\entry{\code {MACHTYPE}}{94}
\entry{\code {MAIL}}{84}
\entry{\code {MAILCHECK}}{94}
\entry{\code {MAILPATH}}{84}
\entry{\code {MAPFILE}}{94}
\entry{\code {mark-modified-lines}}{136}
\entry{\code {mark-symlinked-directories}}{136}
\entry{\code {match-hidden-files}}{136}
\entry{\code {menu-complete-display-prefix}}{136}
\entry{\code {meta-flag}}{135}
\initial {O}
\entry{\code {OLDPWD}}{91}
\entry{\code {OPTARG}}{81}
\entry{\code {OPTERR}}{91}
\entry{\code {OPTIND}}{81}
\entry{\code {OSTYPE}}{91}
\entry{\code {output-meta}}{131}
\entry{\code {OLDPWD}}{94}
\entry{\code {OPTARG}}{84}
\entry{\code {OPTERR}}{94}
\entry{\code {OPTIND}}{84}
\entry{\code {OSTYPE}}{94}
\entry{\code {output-meta}}{136}
\initial {P}
\entry{\code {page-completions}}{131}
\entry{\code {PATH}}{81}
\entry{\code {PIPESTATUS}}{91}
\entry{\code {POSIXLY_CORRECT}}{91}
\entry{\code {PPID}}{91}
\entry{\code {PROMPT_COMMAND}}{91}
\entry{\code {PROMPT_DIRTRIM}}{91}
\entry{\code {PS0}}{91}
\entry{\code {PS1}}{81}
\entry{\code {PS2}}{81}
\entry{\code {PS3}}{91}
\entry{\code {PS4}}{92}
\entry{\code {PWD}}{92}
\entry{\code {page-completions}}{136}
\entry{\code {PATH}}{84}
\entry{\code {PIPESTATUS}}{94}
\entry{\code {POSIXLY_CORRECT}}{94}
\entry{\code {PPID}}{95}
\entry{\code {PROMPT_COMMAND}}{95}
\entry{\code {PROMPT_DIRTRIM}}{95}
\entry{\code {PS0}}{95}
\entry{\code {PS1}}{84}
\entry{\code {PS2}}{84}
\entry{\code {PS3}}{95}
\entry{\code {PS4}}{95}
\entry{\code {PWD}}{95}
\initial {R}
\entry{\code {RANDOM}}{92}
\entry{\code {READLINE_ARGUMENT}}{92}
\entry{\code {READLINE_LINE}}{92}
\entry{\code {READLINE_MARK}}{92}
\entry{\code {READLINE_POINT}}{92}
\entry{\code {REPLY}}{92}
\entry{\code {revert-all-at-newline}}{131}
\entry{\code {RANDOM}}{95}
\entry{\code {READLINE_ARGUMENT}}{95}
\entry{\code {READLINE_LINE}}{95}
\entry{\code {READLINE_MARK}}{95}
\entry{\code {READLINE_POINT}}{95}
\entry{\code {REPLY}}{95}
\entry{\code {revert-all-at-newline}}{137}
\initial {S}
\entry{\code {search-ignore-case}}{131}
\entry{\code {SECONDS}}{92}
\entry{\code {SHELL}}{92}
\entry{\code {SHELLOPTS}}{92}
\entry{\code {SHLVL}}{92}
\entry{\code {show-all-if-ambiguous}}{131}
\entry{\code {show-all-if-unmodified}}{131}
\entry{\code {show-mode-in-prompt}}{132}
\entry{\code {skip-completed-text}}{132}
\entry{\code {SRANDOM}}{93}
\entry{\code {search-ignore-case}}{137}
\entry{\code {SECONDS}}{95}
\entry{\code {SHELL}}{96}
\entry{\code {SHELLOPTS}}{96}
\entry{\code {SHLVL}}{96}
\entry{\code {show-all-if-ambiguous}}{137}
\entry{\code {show-all-if-unmodified}}{137}
\entry{\code {show-mode-in-prompt}}{137}
\entry{\code {skip-completed-text}}{137}
\entry{\code {SRANDOM}}{96}
\initial {T}
\entry{\code {TEXTDOMAIN}}{8}
\entry{\code {TEXTDOMAINDIR}}{8}
\entry{\code {TIMEFORMAT}}{93}
\entry{\code {TMOUT}}{93}
\entry{\code {TMPDIR}}{93}
\entry{\code {TIMEFORMAT}}{96}
\entry{\code {TMOUT}}{97}
\entry{\code {TMPDIR}}{97}
\initial {U}
\entry{\code {UID}}{93}
\entry{\code {UID}}{97}
\initial {V}
\entry{\code {vi-cmd-mode-string}}{132}
\entry{\code {vi-ins-mode-string}}{132}
\entry{\code {visible-stats}}{132}
\entry{\code {vi-cmd-mode-string}}{137}
\entry{\code {vi-ins-mode-string}}{138}
\entry{\code {visible-stats}}{138}
+1106 -972
View File
File diff suppressed because it is too large Load Diff
+29 -26
View File
@@ -5,53 +5,56 @@ NNAAMMEE
RREESSTTRRIICCTTEEDD SSHHEELLLL
If bbaasshh is started with the name rrbbaasshh, or the --rr option is supplied at
invocation, the shell becomes restricted. A restricted shell is used
invocation, the shell becomes _r_e_s_t_r_i_c_t_e_d. A restricted shell is used
to set up an environment more controlled than the standard shell. It
behaves identically to bbaasshh with the exception that the following are
disallowed or not performed:
+o changing directories with ccdd
+o Changing directories with ccdd.
+o setting or unsetting the values of SSHHEELLLL, PPAATTHH, HHIISSTTFFIILLEE, EENNVV,
or BBAASSHH__EENNVV
+o Setting or unsetting the values of SSHHEELLLL, PPAATTHH, HHIISSTTFFIILLEE, EENNVV,
or BBAASSHH__EENNVV.
+o specifying command names containing //
+o Specifying command names containing //.
+o specifying a filename containing a // as an argument to the ..
builtin command
+o Specifying a filename containing a // as an argument to the ..
builtin command.
+o specifying a filename containing a slash as an argument to the
hhiissttoorryy builtin command
+o Using the --pp option to the .. builtin command to specify a
search path.
+o specifying a filename containing a slash as an argument to the
--pp option to the hhaasshh builtin command
+o Specifying a filename containing a slash as an argument to the
hhiissttoorryy builtin command.
+o importing function definitions from the shell environment at
startup
+o Specifying a filename containing a slash as an argument to the
--pp option to the hhaasshh builtin command.
+o parsing the value of SSHHEELLLLOOPPTTSS from the shell environment at
startup
+o Importing function definitions from the shell environment at
startup.
+o redirecting output using the >, >|, <>, >&, &>, and >> redirec-
tion operators
+o Parsing the value of SSHHEELLLLOOPPTTSS from the shell environment at
startup.
+o using the eexxeecc builtin command to replace the shell with another
command
+o Redirecting output using the >, >|, <>, >&, &>, and >> redirec-
tion operators.
+o adding or deleting builtin commands with the --ff and --dd options
to the eennaabbllee builtin command
+o Using the eexxeecc builtin command to replace the shell with another
command.
+o using the eennaabbllee builtin command to enable disabled shell
builtins
+o Adding or deleting builtin commands with the --ff and --dd options
to the eennaabbllee builtin command.
+o specifying the --pp option to the ccoommmmaanndd builtin command
+o Using the eennaabbllee builtin command to enable disabled shell
builtins.
+o turning off restricted mode with sseett ++rr or sshhoopptt --uu rree--
+o Specifying the --pp option to the ccoommmmaanndd builtin command.
+o Turning off restricted mode with sseett ++rr or sshhoopptt --uu rree--
ssttrriicctteedd__sshheellll.
These restrictions are enforced after any startup files are read.
When a command that is found to be a shell script is executed, rrbbaasshh
When a command that is found to be a shell script is executed, rrbbaasshh
turns off any restrictions in the shell spawned to execute the script.
SSEEEE AALLSSOO
+2 -2
View File
@@ -2,10 +2,10 @@
Copyright (C) 1988-2024 Free Software Foundation, Inc.
@end ignore
@set LASTCHANGE Thu Sep 5 15:41:56 EDT 2024
@set LASTCHANGE Sun Sep 29 22:28:43 EDT 2024
@set EDITION 5.3
@set VERSION 5.3
@set UPDATED 5 September 2024
@set UPDATED 29 September 2024
@set UPDATED-MONTH September 2024
+1 -1
View File
@@ -26,8 +26,8 @@
order of decreasing precedence.
"id++", "id--" [post-increment and post-decrement]
"-", "+" [(unary operators)]
"++id", "--id" [pre-increment and pre-decrement]
"-", "+" [(unary operators)]
"!", "~"
"**" [(exponentiation)]
"*", "/", "%"
+170 -100
View File
@@ -1,7 +1,7 @@
@ignore
This file documents the user interface to the GNU History library.
Copyright (C) 1988--2022 Free Software Foundation, Inc.
Copyright (C) 1988--2024 Free Software Foundation, Inc.
Authored by Brian Fox and Chet Ramey.
Permission is granted to make and distribute verbatim copies of this manual
@@ -38,9 +38,10 @@ For information on using the @sc{gnu} History Library in other programs,
see the @sc{gnu} Readline Library Manual.
@end ifset
@ifclear BashFeatures
This chapter describes how to use the @sc{gnu} History Library interactively,
from a user's standpoint. It should be considered a user's guide. For
information on using the @sc{gnu} History Library in your own programs,
This chapter describes how to use the @sc{gnu} History Library
interactively, from a user's standpoint.
It should be considered a user's guide.
For information on using the @sc{gnu} History Library in your own programs,
@pxref{Programming with GNU History}.
@end ifclear
@@ -79,20 +80,33 @@ but after history expansion is performed, subject to the
values of the shell variables
@env{HISTIGNORE} and @env{HISTCONTROL}.
When the shell starts up, the history is initialized from the
When the shell starts up, Bash initializes the history list
by reading history entries from the
file named by the @env{HISTFILE} variable (default @file{~/.bash_history}).
The file named by the value of @env{HISTFILE} is truncated, if
necessary, to contain no more than the number of lines specified by
This is referred to as the @dfn{history file}.
That file is truncated, if necessary,
to contain no more than the number of history entries specified by
the value of the @env{HISTFILESIZE} variable.
When a shell with history enabled exits, the last
@env{$HISTSIZE} lines are copied from the history list to the file
If @env{HISTFILESIZE} is unset, or set to null, a non-numeric value,
or a numeric value less than zero, the history file is not truncated.
When the history file is read,
lines beginning with the history comment character followed immediately
by a digit are interpreted as timestamps for the following history entry.
These timestamps are optionally displayed depending on the value of the
@env{HISTTIMEFORMAT} variable (@pxref{Bash Variables}).
When present, history timestamps delimit history entries, making
multi-line entries possible.
When a shell with history enabled exits, Bash copies the last
@env{$HISTSIZE} entries from the history list to the file
named by @env{$HISTFILE}.
If the @code{histappend} shell option is set (@pxref{Bash Builtins}),
the lines are appended to the history file,
Bash appends the entries to the history file,
otherwise the history file is overwritten.
If @env{HISTFILE} is unset or null,
or if the history file is unwritable, the history is not saved.
After saving the history, the history file is truncated
After saving the history, Bash truncates the history file
to contain no more than @env{$HISTFILESIZE} lines.
If @env{HISTFILESIZE} is unset, or set to null, a non-numeric value, or
a numeric value less than zero, the history file is not truncated.
@@ -103,27 +117,27 @@ marked with the history comment character.
When the history file is read, lines beginning with the history
comment character followed immediately by a digit are interpreted
as timestamps for the following history entry.
As above, when using @env{HISTTIMEFORMAT},
the timestamps delimit multi-line history entries.
The @code{fc} builtin command may be used to list or edit and re-execute
The @code{fc} builtin command will list or edit and re-execute
a portion of the history list.
The @code{history} builtin may be used to display or modify the history
The @code{history} builtin can display or modify the history
list and manipulate the history file.
When using command-line editing, search commands
are available in each editing mode that provide access to the
history list (@pxref{Commands For History}).
The shell allows control over which commands are saved on the history
list.
The shell allows control over which commands are saved on the history list.
The @env{HISTCONTROL} and @env{HISTIGNORE}
variables are used to cause the shell to save only a subset of the
commands entered.
variables are used to save only a subset of the commands entered.
The @code{cmdhist}
shell option, if enabled, causes the shell to attempt to save each
line of a multi-line command in the same history entry, adding
semicolons where necessary to preserve syntactic correctness.
The @code{lithist}
shell option causes the shell to save the command with embedded newlines
instead of semicolons.
shell option modifies @code{cmdhist} by saving
the command with embedded newlines instead of semicolons.
The @code{shopt} builtin is used to set these options.
@xref{The Shopt Builtin}, for a description of @code{shopt}.
@@ -157,27 +171,44 @@ and -0 is equivalent to the current command (usually the @code{fc}
command);
otherwise 0 is equivalent to -1 and -0 is invalid.
If @var{last} is not specified, it is set to
@var{first}. If @var{first} is not specified, it is set to the previous
command for editing and @minus{}16 for listing. If the @option{-l} flag is
given, the commands are listed on standard output. The @option{-n} flag
suppresses the command numbers when listing. The @option{-r} flag
reverses the order of the listing. Otherwise, the editor given by
@var{ename} is invoked on a file containing those commands. If
@var{ename} is not given, the value of the following variable expansion
is used: @code{$@{FCEDIT:-$@{EDITOR:-vi@}@}}. This says to use the
If @var{last} is not specified, it is set to @var{first}.
If @var{first} is not specified, it is set to the previous
command for editing and @minus{}16 for listing.
If the @option{-l} flag is supplied,
the commands are listed on standard output.
The @option{-n} flag suppresses the command numbers when listing.
The @option{-r} flag reverses the order of the listing.
Otherwise, @code{fc} invokes the editor named by
@var{ename} on a file containing those commands.
If @var{ename} is not supplied, @code{fc} uses the value of the following
variable expansion: @code{$@{FCEDIT:-$@{EDITOR:-vi@}@}}.
This says to use the
value of the @env{FCEDIT} variable if set, or the value of the
@env{EDITOR} variable if that is set, or @code{vi} if neither is set.
When editing is complete, the edited commands are echoed and executed.
When editing is complete, @code{fc} reads the file of edited commands
and echoes and executes them.
In the second form, @var{command} is re-executed after each instance
of @var{pat} in the selected command is replaced by @var{rep}.
In the second form, @code{fc} re-executes @var{command} after
replacing each instance of @var{pat} in the selected command with @var{rep}.
@var{command} is interpreted the same as @var{first} above.
A useful alias to use with the @code{fc} command is @code{r='fc -s'}, so
that typing @samp{r cc} runs the last command beginning with @code{cc}
and typing @samp{r} re-executes the last command (@pxref{Aliases}).
If the first form is used, the return value is zero unless an invalid
option is encountered or @var{first} or @var{last}
specify history lines out of range.
When editing and re-executing a file of commands,
the return value is the value of the last command executed
or failure if an error occurs with the temporary file.
If the second form is used, the return status
is that of the re-executed command, unless
@var{command} does not specify a valid history entry, in which case
@code{fc} returns a non-zero status.
@item history
@btindex history
@example
@@ -189,21 +220,22 @@ history [-anrw] [@var{filename}]
history -ps @var{arg}
@end example
With no options, display the history list with line numbers.
Lines prefixed with a @samp{*} have been modified.
An argument of @var{n} lists only the last @var{n} lines.
With no options, display the history list with numbers.
Entries prefixed with a @samp{*} have been modified.
An argument of @var{n} lists only the last @var{n} entries.
If the shell variable @env{HISTTIMEFORMAT} is set and not null,
it is used as a format string for @code{strftime}(3) to display
the time stamp associated with each displayed history entry.
No intervening blank is printed between the formatted time stamp
and the history line.
If @code{history} uses @env{HISTTIMEFORMAT}, it does not print an
intervening space between the formatted time stamp and the history entry.
Options, if supplied, have the following meanings:
@table @code
@item -c
Clear the history list. This may be combined
with the other options to replace the history list completely.
Clear the history list.
This may be combined
with the other options to replace the history list.
@item -d @var{offset}
Delete the history entry at position @var{offset}.
@@ -221,38 +253,46 @@ Positive and negative values for @var{start} and @var{end}
are interpreted as described above.
@item -a
Append the new history lines to the history file.
Append the "new" history lines to the history file.
These are history lines entered since the beginning of the current
Bash session, but not already appended to the history file.
@item -n
Append the history lines not already read from the history file
to the current history list. These are lines appended to the history
to the current history list.
These are lines appended to the history
file since the beginning of the current Bash session.
@item -r
Read the history file and append its contents to
the history list.
Read the history file and append its contents to the history list.
@item -w
Write out the current history list to the history file.
Write the current history list to the history file, overwriting it.
@item -p
Perform history substitution on the @var{arg}s and display the result
on the standard output, without storing the results in the history list.
@item -s
The @var{arg}s are added to the end of
the history list as a single entry.
Add the @var{arg}s to the end of the history list as a single entry.
The last command in the history list is removed before adding the @var{arg}s.
@end table
If a @var{filename} argument is supplied
when any of the @option{-w}, @option{-r}, @option{-a}, or @option{-n} options
is used, Bash uses @var{filename} as the history file.
If not, then the value of the @env{HISTFILE} variable is used.
with any of the @option{-w}, @option{-r}, @option{-a}, or @option{-n}
options, Bash uses @var{filename} as the history file.
If not, it uses the value of the @env{HISTFILE} variable.
If @env{HISTFILE} is unset or null, these options have no effect.
If the @env{HISTTIMEFORMAT}
variable is set, @code{history} writes the time stamp information
associated with each history entry to the history file,
marked with the history comment character.
When the history file is read, lines beginning with the history
comment character followed immediately by a digit are interpreted
as timestamps for the following history entry.
The return value is 0 unless an invalid option is encountered, an
error occurs while reading or writing the history file, an invalid
@var{offset} or range is supplied as an argument to @option{-d}, or the
@@ -265,9 +305,25 @@ history expansion supplied as an argument to @option{-p} fails.
@section History Expansion
@cindex history expansion
The History library provides a history expansion feature that is similar
to the history expansion provided by @code{csh}. This section
describes the syntax used to manipulate the history information.
@ifset BashFeatures
The shell
@end ifset
@ifclear BashFeatures
The History library
@end ifclear
provides a history expansion feature that is similar
to the history expansion provided by @code{csh}
(also referred to as history substitution where appropriate).
This section describes the syntax used to manipulate the
history information.
@ifset BashFeatures
History expansion is enabled by default for interactive shells,
and can be disabled using the @option{+H} option to the @code{set}
builtin command (@pxref{The Set Builtin}).
Non-interactive shells do not perform history expansion by default,
but it can be enabled with @code{set -H}.
@end ifset
History expansions introduce words from the history list into
the input stream, making it easy to repeat commands, insert the
@@ -277,18 +333,20 @@ fix errors in previous commands quickly.
@ifset BashFeatures
History expansion is performed immediately after a complete line
is read, before the shell breaks it into words, and is performed
on each line individually. Bash attempts to inform the history
on each line individually.
Bash attempts to inform the history
expansion functions about quoting still in effect from previous lines.
@end ifset
History expansion takes place in two parts. The first is to determine
which line from the history list should be used during substitution.
The second is to select portions of that line for inclusion into the
History expansion takes place in two parts.
The first is to determine
which entry from the history list should be used during substitution.
The second is to select portions of that entry to include into the
current one.
The line selected from the history is called the @dfn{event},
and the portions of that line that are acted upon are called @dfn{words}.
The line is broken into words in the same fashion
The entry selected from the history is called the @dfn{event},
and the portions of that entry that are acted upon are called @dfn{words}.
The history entry is broken into words in the same fashion
that Bash does, so that several words
surrounded by quotes are considered one word.
The @dfn{event designator} selects the event, the optional
@@ -314,32 +372,38 @@ When using the shell, only @samp{\} and @samp{'} may be used to escape the
history expansion character, but the history expansion character is
also treated as quoted if it immediately precedes the closing double quote
in a double-quoted string.
Several characters inhibit history expansion if found immediately
following the history expansion character, even if it is unquoted:
space, tab, newline, carriage return, @samp{=},
and the other shell metacharacters.
@end ifset
There is a special abbreviation for substitution, active when the
@var{quick substitution} character (default @samp{^})
is the first character on the line.
It selects the previous history list entry, using an event designator
It selects the previous history entry, using an event designator
equivalent to @code{!!},
and substitutes one string for another in that line.
and substitutes one string for another in that entry.
It is described below (@pxref{Event Designators}).
This is the only history expansion that does not begin with the history
expansion character.
@ifset BashFeatures
Several shell options settable with the @code{shopt}
builtin (@pxref{The Shopt Builtin}) may be used to tailor
the behavior of history expansion. If the
@code{histverify} shell option is enabled, and Readline
builtin (@pxref{The Shopt Builtin})
will modify history expansion behavior
If the @code{histverify} shell option is enabled, and Readline
is being used, history substitutions are not immediately passed to
the shell parser.
Instead, the expanded line is reloaded into the Readline
editing buffer for further modification.
If Readline is being used, and the @code{histreedit}
shell option is enabled, a failed history expansion will be
shell option is enabled, a failed history expansion is
reloaded into the Readline editing buffer for correction.
The @option{-p} option to the @code{history} builtin command
may be used to see what a history expansion will do before using it.
shows what a history expansion will do before using it.
The @option{-s} option to the @code{history} builtin may be used to
add commands to the end of the history list without actually executing
them, so that they are available for subsequent recall.
@@ -347,9 +411,9 @@ This is most useful in conjunction with Readline.
The shell allows control of the various characters used by the
history expansion mechanism with the @code{histchars} variable,
as explained above (@pxref{Bash Variables}). The shell uses
the history comment character to mark history timestamps when
writing the history file.
as explained above (@pxref{Bash Variables}).
The shell uses the history comment character to mark history
timestamps when writing the history file.
@end ifset
@menu
@@ -362,8 +426,7 @@ writing the history file.
@subsection Event Designators
@cindex event designators
An event designator is a reference to a command line entry in the
history list.
An event designator is a reference to an entry in the history list.
Unless the reference is absolute, events are relative to the current
position in the history list.
The event designator consists of the portion of the word beginning
@@ -386,13 +449,14 @@ the end of the line, or @samp{=}.
@end ifclear
@item @code{!@var{n}}
Refer to command line @var{n}.
Refer to history list entry @var{n}.
@item @code{!-@var{n}}
Refer to the command @var{n} lines back.
Refer to the history entry @var{n} entries back.
@item @code{!!}
Refer to the previous command. This is a synonym for @samp{!-1}.
Refer to the previous command.
This is a synonym for @samp{!-1}.
@item @code{!@var{string}}
Refer to the most recent command
@@ -406,13 +470,14 @@ containing @var{string}.
The trailing
@samp{?} may be omitted if the @var{string} is followed immediately by
a newline.
If @var{string} is missing, the string from the most recent search is used;
If @var{string} is missing, this uses
the string from the most recent search;
it is an error if there is no previous search string.
@item @code{^@var{string1}^@var{string2}^}
Quick Substitution. Repeat the last command, replacing @var{string1}
with @var{string2}. Equivalent to
@code{!!:s^@var{string1}^@var{string2}^}.
Quick Substitution.
Repeat the last command, replacing @var{string1} with @var{string2}.
Equivalent to @code{!!:s^@var{string1}^@var{string2}^}.
@item @code{!#}
The entire command line typed so far.
@@ -425,23 +490,24 @@ The entire command line typed so far.
Word designators are used to select desired words from the event.
They are optional; if the word designator isn't supplied, the history
expansion uses the entire event.
A @samp{:} separates the event specification from the word designator. It
may be omitted if the word designator begins with a @samp{^}, @samp{$},
@samp{*}, @samp{-}, or @samp{%}. Words are numbered from the beginning
of the line, with the first word being denoted by 0 (zero). Words are
inserted into the current line separated by single spaces.
A @samp{:} separates the event specification from the word designator.
It may be omitted if the word designator begins with a @samp{^}, @samp{$},
@samp{*}, @samp{-}, or @samp{%}.
Words are numbered from the beginning of the line,
with the first word being denoted by 0 (zero).
Words are inserted into the current line separated by single spaces.
@need 0.75
For example,
@table @code
@item !!
designates the preceding command. When you type this, the preceding
command is repeated in toto.
designates the preceding command.
When you type this, the preceding command is repeated in toto.
@item !!:$
designates the last argument of the preceding command. This may be
shortened to @code{!$}.
designates the last argument of the preceding command.
This may be shortened to @code{!$}.
@item !fi:2
designates the second argument of the most recent command starting with
@@ -450,20 +516,23 @@ the letters @code{fi}.
@need 0.75
Here are the word designators:
@table @code
@item 0 (zero)
The @code{0}th word. For many applications, this is the command word.
The @code{0}th word.
For many applications, this is the command word.
@item @var{n}
The @var{n}th word.
@item ^
The first argument; that is, word 1.
The first argument: word 1.
@item $
The last argument.
This is usually the last argument, but will expand to the
zeroth word if there is only one word in the line.
@item %
The first word matched by the most recent @samp{?@var{string}?} search,
@@ -476,12 +545,13 @@ the line.
A range of words; @samp{-@var{y}} abbreviates @samp{0-@var{y}}.
@item *
All of the words, except the @code{0}th. This is a synonym for @samp{1-$}.
All of the words, except the @code{0}th.
This is a synonym for @samp{1-$}.
It is not an error to use @samp{*} if there is just one word in the event;
the empty string is returned in that case.
it expands to the empty string in this case.
@item @var{x}*
Abbreviates @samp{@var{x}-$}
Abbreviates @samp{@var{x}-$}.
@item @var{x}-
Abbreviates @samp{@var{x}-$} like @samp{@var{x}*}, but omits the last word.
@@ -490,7 +560,7 @@ If @samp{x} is missing, it defaults to 0.
@end table
If a word designator is supplied without an event specification, the
previous command is used as the event.
previous command is used as the event, equivalent to @code{!!}.
@node Modifiers
@subsection Modifiers
@@ -524,8 +594,8 @@ Quote the substituted words, escaping further substitutions.
@item x
Quote the substituted words as with @samp{q},
but break into words at spaces, tabs, and newlines.
The @samp{q} and @samp{x} modifiers are mutually exclusive; the last one
supplied is used.
The @samp{q} and @samp{x} modifiers are mutually exclusive;
expansion uses the last one supplied.
@end ifset
@item s/@var{old}/@var{new}/
@@ -533,9 +603,9 @@ Substitute @var{new} for the first occurrence of @var{old} in the
event line.
Any character may be used as the delimiter in place of @samp{/}.
The delimiter may be quoted in @var{old} and @var{new}
with a single backslash. If @samp{&} appears in @var{new},
it is replaced by @var{old}. A single backslash will quote
the @samp{&}.
with a single backslash.
If @samp{&} appears in @var{new}, it is replaced with @var{old}.
A single backslash will quote the @samp{&} in @var{old} and @var{new}.
If @var{old} is null, it is set to the last @var{old}
substituted, or, if no previous history substitutions took place,
the last @var{string}
@@ -550,8 +620,8 @@ Repeat the previous substitution.
@item g
@itemx a
Cause changes to be applied over the entire event line. Used in
conjunction with @samp{s}, as in @code{gs/@var{old}/@var{new}/},
Cause changes to be applied over the entire event line.
Used in conjunction with @samp{s}, as in @code{gs/@var{old}/@var{new}/},
or with @samp{&}.
@item G
+36 -31
View File
@@ -11,7 +11,7 @@ use these features. There is a document entitled "readline.texinfo"
which contains both end-user and programmer documentation for the
GNU Readline Library.
Copyright (C) 1988--2023 Free Software Foundation, Inc.
Copyright (C) 1988--2024 Free Software Foundation, Inc.
Authored by Brian Fox and Chet Ramey.
@@ -2003,10 +2003,10 @@ so forth.
@section Programmable Completion
@cindex programmable completion
When word completion is attempted for an argument to a command for
When the user attempts word completion for an argument to a command for
which a completion specification (a @var{compspec}) has been defined
using the @code{complete} builtin (@pxref{Programmable Completion Builtins}),
the programmable completion facilities are invoked.
\fBreadline\fP invokes the programmable completion facilities.
First, the command name is identified.
If a compspec has been defined for that command, the
@@ -2016,13 +2016,13 @@ beginning of an empty line), any compspec defined with
the @option{-E} option to @code{complete} is used.
If the 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
If no compspec is found for the full pathname, completion attempts 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 @option{-D} option to @code{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
for the command word from any successful expansion.
Once a compspec has been found, it is used to generate the list of
matching words.
@@ -2087,6 +2087,7 @@ in an environment equivalent to command substitution.
It should print a list of completions, one per line, to
the standard output.
Backslash may be used to escape a newline, if necessary.
These are added to the set of possible completions.
After all of the possible completions are generated, any filter
specified with the @option{-X} option is applied to the list.
@@ -2104,8 +2105,7 @@ of alphabetic characters.
Finally, any prefix and suffix specified with the @option{-P} and @option{-S}
options are added to each member of the completion list, and the result is
returned to the Readline completion code as the list of possible
completions.
returned to Readline as the list of possible completions.
If the previously-applied actions do not generate any matches, and the
@option{-o dirnames} option was supplied to @code{complete} when the
@@ -2117,11 +2117,11 @@ matches are added to the results of the other actions.
By default, if a compspec is found, whatever it generates is returned to
the completion code as the full set of possible completions.
The default Bash completions are not attempted, and the Readline default
of filename completion is disabled.
The default Bash completions and the Readline default
of filename completion are disabled.
If the @option{-o bashdefault} option was supplied to @code{complete} when
the compspec was defined, the default Bash completions are attempted
if the compspec generates no matches.
the compspec was defined, if the compspec generates no matches,
the default Bash completions are attempted.
If the @option{-o default} option was supplied to @code{complete} when the
compspec was defined, Readline's default completion will be performed
if the compspec (and, if attempted, the default Bash completions)
@@ -2133,17 +2133,19 @@ to completed names which are symbolic links to directories, subject to
the value of the @var{mark-directories} Readline variable, regardless
of the setting of the @var{mark-symlinked-directories} Readline variable.
There is some support for dynamically modifying completions. This is
most useful when used in combination with a default completion specified
with @option{-D}. It's possible for shell functions executed as completion
There is some support for dynamically modifying completions.
This is most useful when used in combination with a default completion
specified with @option{-D}.
It's possible for shell functions executed as completion
handlers to indicate that completion should be retried by returning an
exit status of 124. If a shell function returns 124, and changes
exit status of 124.
If a shell function returns 124, and changes
the compspec associated with the command on which completion is being
attempted (supplied as the first argument when the function is executed),
programmable completion restarts from the beginning, with an
attempt to find a new compspec for that command. This allows a set of
completions to be built dynamically as completion is attempted, rather than
being loaded all at once.
attempt to find a new compspec for that command.
This allows a set of completions to be built dynamically as completion
is attempted, rather than being loaded all at once.
For instance, assuming that there is a library of compspecs, each kept in a
file corresponding to the name of the command, the following default
@@ -2196,7 +2198,7 @@ The matches will be generated in the same way as if the programmable
completion code had generated them directly from a completion specification
with the same flags.
If @var{word} is specified, only those completions matching @var{word}
will be displayed.
will be displayed or stored.
The return value is true unless an invalid option is supplied, or no
matches were generated.
@@ -2243,7 +2245,6 @@ The arguments to the @option{-G}, @option{-W}, and @option{-X} options
should be quoted to protect them from expansion before the
@code{complete} builtin is invoked.
@table @code
@item -o @var{comp-option}
The @var{comp-option} controls several aspects of the compspec's behavior
@@ -2287,9 +2288,8 @@ the end of the line.
@item plusdirs
After any matches defined by the compspec are generated,
directory name completion is attempted and any
matches are added to the results of the other actions.
attempt directory name completion and add any
matches to the results of the other actions.
@end table
@item -A @var{action}
@@ -2385,25 +2385,30 @@ When it is executed, $1 is the name of the command whose arguments are
being completed, $2 is the word being completed, and $3 is the word
preceding the word being completed, as described above
(@pxref{Programmable Completion}).
When it finishes, the possible completions are retrieved from the value
When @code{function} finishes,
the possible completions are retrieved from the value
of the @env{COMPREPLY} array variable.
@item -G @var{globpat}
The filename expansion pattern @var{globpat} is expanded to generate
Expand the filename expansion pattern @var{globpat} to generate
the possible completions.
@item -P @var{prefix}
@var{prefix} is added at the beginning of each possible completion
Add @var{prefix} to the beginning of each possible completion
after all other options have been applied.
@item -S @var{suffix}
@var{suffix} is appended to each possible completion
Append @var{suffix} to each possible completion
after all other options have been applied.
@item -W @var{wordlist}
The @var{wordlist} is split using the characters in the
@env{IFS} special variable as delimiters, and each resultant word
@env{IFS} special variable as delimiters, and each resulting word
is expanded.
Shell quoting is honored within @var{wordlist}
in order to provide a
mechanism for the words to contain shell metacharacters or characters
in the value of @env{IFS}.
The possible completions are the members of the resultant list which
match the word being completed.
@@ -2458,7 +2463,6 @@ over @option{-E}, and both take precedence over @option{-I}
The return value is true unless an invalid option is supplied, an attempt
is made to modify the options for a @var{name} for which no completion
specification exists, or an output error occurs.
@end table
@node A Programmable Completion Example
@@ -2488,7 +2492,8 @@ a newline to accommodate file names containing spaces and tabs --
@code{compgen} prints the possible completions it generates one per line.
Possible completions go into the @var{COMPREPLY} array variable, one
completion per array element. The programmable completion system retrieves
completion per array element.
The programmable completion system retrieves
the completions from there when the function returns.
@example
@@ -2562,7 +2567,7 @@ extend @code{_comp_cd} to append a slash if we're using directories found
via @var{CDPATH}: Readline can't tell those completions are directories).
The @option{-o nospace} option tells Readline to not append a space
character to the directory name, in case we want to append to it.
The @option{-o bashdefault} option brings in the rest of the "Bash default"
The @option{-o bashdefault} option brings in the rest of the ``Bash default''
completions -- possible completions that Bash adds to the default Readline
set.
These include things like command name completion, variable completion