experimental change to use groff instead of man2html for HTML man pages; man page updates for reserved words; fix for pattern matching bracket expression ranges; readline changes to disallow defining some recursive keyboard macros

This commit is contained in:
Chet Ramey
2025-09-18 17:26:51 -04:00
parent a451bfc3f5
commit b88cd1c366
24 changed files with 18920 additions and 19320 deletions
+249 -233
View File
@@ -2,9 +2,9 @@ This is bashref.info, produced by makeinfo version 7.2 from
bashref.texi.
This text is a brief description of the features that are present in the
Bash shell (version 5.3, 7 August 2025).
Bash shell (version 5.3, 6 September 2025).
This is Edition 5.3, last updated 7 August 2025, of The GNU Bash
This is Edition 5.3, last updated 6 September 2025, of The GNU Bash
Reference Manual, for Bash, Version 5.3.
Copyright © 1988-2025 Free Software Foundation, Inc.
@@ -27,10 +27,10 @@ Bash Features
*************
This text is a brief description of the features that are present in the
Bash shell (version 5.3, 7 August 2025). The Bash home page is
Bash shell (version 5.3, 6 September 2025). The Bash home page is
<http://www.gnu.org/software/bash/>.
This is Edition 5.3, last updated 7 August 2025, of The GNU Bash
This is Edition 5.3, last updated 6 September 2025, of The GNU Bash
Reference Manual, for Bash, Version 5.3.
Bash contains features that appear in other popular shells, and some
@@ -260,9 +260,9 @@ Bash is an acronym for Bourne-Again SHell. The Bourne shell is the
traditional Unix shell originally written by Stephen Bourne. All of the
Bourne shell builtin commands are available in Bash, and the rules for
evaluation and quoting are taken from the POSIX specification for the
'standard' Unix shell.
"standard" Unix shell.
This chapter briefly summarizes the shell's 'building blocks':
This chapter briefly summarizes the shell's "building blocks":
commands, control structures, shell functions, shell parameters, shell
expansions, redirections, which are a way to direct input and output
from and to named files, and how the shell executes commands.
@@ -643,18 +643,27 @@ File: bashref.info, Node: Reserved Words, Next: Simple Commands, Up: Shell Co
Reserved words are words that have special meaning to the shell. They
are used to begin and end the shell's compound commands.
The following words are recognized as reserved when unquoted and the
first word of a command (see below for exceptions):
Reserved words are recognized as reserved when unquoted and either
• the first word of a command;
• the first word following a reserved word other than case, for,
select, or in;
• the third word of a case command (only in is valid);
• the third word of a for or select command (only in and do
are valid);
• following a control operator.
The shell will also recognize reserved words where the syntax of a
command specifically requires the reserved word as the only correct
token.
The following are reserved words:
if then elif else fi time
for in until while do done
case esac coproc’‘select’‘function
‘{’ ‘}’ ‘[[’ ‘]]’ ‘!’
in is recognized as a reserved word if it is the third word of a
case or select command. in and do are recognized as reserved
words if they are the third word in a for command.

File: bashref.info, Node: Simple Commands, Next: Pipelines, Prev: Reserved Words, Up: Shell Commands
@@ -741,9 +750,30 @@ File: bashref.info, Node: Lists, Next: Compound Commands, Prev: Pipelines, U
3.2.4 Lists of Commands
-----------------------
A list is a sequence of one or more pipelines separated by one of the
operators ;, &, &&, or ||, and optionally terminated by one of
;, &, or a newline.
A list is a sequence of one or more AND or OR lists separated by one
of the operators ; or &, or a newline, and optionally terminated
by one of those three characters.
AND and OR lists are sequences of one or more pipelines separated by
the control operators && and ||, respectively. AND and OR lists are
executed with left associativity.
An AND list has the form
COMMAND1 && COMMAND2
COMMAND2 is executed if, and only if, COMMAND1 returns an exit status of
zero (success).
An OR list has the form
COMMAND1 || COMMAND2
COMMAND2 is executed if, and only if, COMMAND1 returns a non-zero exit
status.
The return status of AND and OR lists is the exit status of the last
command executed in the list.
Of these list operators, && and || have equal precedence,
followed by ; and &, which have equal precedence.
@@ -760,28 +790,12 @@ active (*note Job Control::), the standard input for asynchronous
commands, in the absence of any explicit redirections, is redirected
from /dev/null.
Commands separated by a ; are executed sequentially; the shell
waits for each command to terminate in turn. The return status is the
exit status of the last command executed.
Commands separated or terminated by ; (or equivalent newline) are
executed sequentially; the shell waits for each command to terminate in
turn.
AND and OR lists are sequences of one or more pipelines separated by
the control operators && and ||, respectively. AND and OR lists are
executed with left associativity.
An AND list has the form
COMMAND1 && COMMAND2
COMMAND2 is executed if, and only if, COMMAND1 returns an exit status of
zero (success).
An OR list has the form
COMMAND1 || COMMAND2
COMMAND2 is executed if, and only if, COMMAND1 returns a non-zero exit
status.
The return status of AND and OR lists is the exit status of the last
command executed in the list.
The return status of a list is the exit status of the last command
executed.

File: bashref.info, Node: Compound Commands, Next: Coprocesses, Prev: Lists, Up: Shell Commands
@@ -910,27 +924,25 @@ File: bashref.info, Node: Conditional Constructs, Next: Command Grouping, Pre
case will selectively execute the COMMAND-LIST corresponding to
the first PATTERN that matches WORD, proceeding from the first
pattern to the last. The match is performed according to the rules
described below in *note Pattern Matching::. If the nocasematch
described below in *note Pattern Matching::. The WORD undergoes
tilde expansion, parameter expansion, command substitution, process
substitution, arithmetic expansion, and quote removal (*note Shell
Parameter Expansion::) before the shell attempts to match the
pattern. Each PATTERN examined undergoes tilde expansion,
parameter expansion, command substitution, arithmetic expansion,
process substitution, and quote removal. If the nocasematch
shell option (see the description of shopt in *note The Shopt
Builtin::) is enabled, the match is performed without regard to the
case of alphabetic characters. The | is used to separate
multiple patterns in a pattern list, and the ) operator
terminates the pattern list. A pattern list and an associated
COMMAND-LIST is known as a CLAUSE.
case of alphabetic characters.
Each clause must be terminated with ;;, ;&, or ;;&. The WORD
undergoes tilde expansion, parameter expansion, command
substitution, process substitution, arithmetic expansion, and quote
removal (*note Shell Parameter Expansion::) before the shell
attempts to match the pattern. Each PATTERN undergoes tilde
expansion, parameter expansion, command substitution, arithmetic
expansion, process substitution, and quote removal.
There may be an arbitrary number of case clauses, each terminated
by a ;;, ;&, or ;;&. The first pattern that matches
determines the command-list that is executed. It's a common idiom
to use * as the final pattern to define the default case, since
that pattern will always match.
A pattern list is a set of one or more patterns separated by |,
and terminated by the ) operator. A case CLAUSE is a pattern
list and an associated COMMAND-LIST, terminated by ;;, ;&, or
;;&. The terminator is optional for the last clause preceding
esac. There may be an arbitrary number of case clauses. The
first pattern that matches determines the command-list that is
executed. It's a common idiom to use * as the final pattern to
define the default case, since that pattern will always match.
Here is an example using case in a script that could be used to
describe one interesting feature of an animal:
@@ -945,13 +957,15 @@ File: bashref.info, Node: Conditional Constructs, Next: Command Grouping, Pre
esac
echo " legs."
If the ;; operator is used, the case command completes after
the first pattern match. Using ;& in place of ;; causes
execution to continue with the COMMAND-LIST associated with the
next clause, if any. Using ;;& in place of ;; causes the shell
to test the patterns in the next clause, if any, and execute any
associated COMMAND-LIST if the match succeeds, continuing the case
statement execution as if the pattern list had not matched.
When a match is found, case executes the corresponding
COMMAND-LIST. If the ;; operator terminates the case clause, the
case command completes after the first pattern match. Using the
;& terminator continues execution with the COMMAND-LIST
associated with the next clause, if any. Using the ;;&
terminator causes the shell to test the pattern list in the next
clause, if any, and execute any associated COMMAND-LIST if the
match succeeds, continuing the case statement execution as if the
pattern list had not matched.
The return status is zero if no PATTERN matches. Otherwise, the
return status is the exit status of the last COMMAND-LIST executed.
@@ -2891,12 +2905,12 @@ characters \, $, and `; however, double quote characters have
special meaning.
If the redirection operator is <<-, the shell strips leading tab
characters are stripped from input lines and the line containing
DELIMITER. This allows here-documents within shell scripts to be
indented in a natural fashion.
characters from input lines and the line containing DELIMITER. This
allows here-documents within shell scripts to be indented in a natural
fashion.
If the delimiter is not quoted, the \<newline> sequence is treated
as a line continuation: the two lines are joined and the
If the delimiter is not quoted, the shell treats the \<newline>
sequence as a line continuation: the two lines are joined and the
backslash-newline is removed. This happens while reading the
here-document, before the check for the ending delimiter, so joined
lines can form the end delimiter.
@@ -7771,10 +7785,10 @@ startup files.
result from a $PATH search.
22. The message printed by the job control code and builtins when a
job exits with a non-zero status is 'Done(status)'.
job exits with a non-zero status is "Done(status)".
23. The message printed by the job control code and builtins when a
job is stopped is 'Stopped(SIGNAME)', where SIGNAME is, for
job is stopped is "Stopped(SIGNAME)", where SIGNAME is, for
example, SIGTSTP.
24. If the shell is interactive, Bash does not perform job
@@ -8528,10 +8542,10 @@ File: bashref.info, Node: Introduction and Notation, Next: Readline Interactio
The following paragraphs use Emacs style to describe the notation used
to represent keystrokes.
The text C-k is read as 'Control-K' and describes the character
The text C-k is read as "Control-K" and describes the character
produced when the <k> key is pressed while the Control key is depressed.
The text M-k is read as 'Meta-K' and describes the character
The text M-k is read as "Meta-K" and describes the character
produced when the Meta key (if you have one) is depressed, and the <k>
key is pressed (a “meta character”), then both are released. The Meta
key is labeled <ALT> or <Option> on many keyboards. On keyboards with
@@ -8558,7 +8572,7 @@ you can make M-key key bindings you specify (see Key Bindings in
*note Readline Init File Syntax::) do the same thing by setting the
force-meta-prefix variable.
The text M-C-k is read as 'Meta-Control-k' and describes the
The text M-C-k is read as "Meta-Control-k" and describes the
character produced by metafying C-k.
In addition, several keys have their own names. Specifically, <DEL>,
@@ -8610,9 +8624,9 @@ you have typed several other characters. In that case, you can type
Afterwards, you can move the cursor to the right with C-f.
When you add text in the middle of a line, you will notice that
characters to the right of the cursor are 'pushed over' to make room for
characters to the right of the cursor are "pushed over" to make room for
the text that you have inserted. Likewise, when you delete text behind
the cursor, characters to the right of the cursor are 'pulled back' to
the cursor, characters to the right of the cursor are "pulled back" to
fill in the blank space created by the removal of the text. These are
the bare essentials for editing the text of an input line:
@@ -8670,9 +8684,9 @@ File: bashref.info, Node: Readline Killing Commands, Next: Readline Arguments,
“Killing” text means to delete the text from the line, but to save it
away for later use, usually by “yanking” (re-inserting) it back into the
line. ('Cut' and 'paste' are more recent jargon for 'kill' and 'yank'.)
line. ("Cut" and "paste" are more recent jargon for "kill" and "yank".)
If the description for a command says that it 'kills' text, then you
If the description for a command says that it "kills" text, then you
can be sure that you can get the text back in a different (or the same)
place later.
@@ -8727,13 +8741,14 @@ command which normally acts in a forward direction, that command will
act in a backward direction. For example, to kill text back to the
start of the line, you might type M-- C-k.
The general way to pass numeric arguments to a command is to type
meta digits before the command. If the first 'digit' typed is a minus
sign (-), then the sign of the argument will be negative. Once you
have typed one meta digit to get the argument started, you can type the
remainder of the digits, and then the command. For example, to give the
C-d command an argument of 10, you could type M-1 0 C-d, which will
delete the next ten characters on the input line.
The general way to pass numeric arguments to a command is to type the
Meta key and then digits ("meta digits") before the command. If the
first "digit" typed is a minus sign (-), then the sign of the argument
will be negative. Once you have typed one meta digit to get the
argument started, you can type the remainder of the digits, and then the
command. For example, to give the C-d command an argument of 10, you
could type M-1 0 C-d, which will delete the next ten characters on the
input line.

File: bashref.info, Node: Searching, Prev: Readline Arguments, Up: Readline Interaction
@@ -9651,12 +9666,12 @@ File: bashref.info, Node: Commands For History, Next: Commands For Text, Prev
original state.
previous-history (C-p)
Move 'back' through the history list, fetching the previous
Move "back" through the history list, fetching the previous
command. This may also be bound to the up arrow key on some
keyboards.
next-history (C-n)
Move 'forward' through the history list, fetching the next command.
Move "forward" through the history list, fetching the next command.
This may also be bound to the down arrow key on some keyboards.
beginning-of-history (M-<)
@@ -9667,25 +9682,26 @@ File: bashref.info, Node: Commands For History, Next: Commands For Text, Prev
being entered.
reverse-search-history (C-r)
Search backward starting at the current line and moving 'up'
Search backward starting at the current line and moving "up"
through the history as necessary. This is an incremental search.
This command sets the region to the matched text and activates the
region.
forward-search-history (C-s)
Search forward starting at the current line and moving 'down'
Search forward starting at the current line and moving "down"
through the history as necessary. This is an incremental search.
This command sets the region to the matched text and activates the
region.
non-incremental-reverse-search-history (M-p)
Search backward starting at the current line and moving 'up'
Search backward starting at the current line and moving "up"
through the history as necessary using a non-incremental search for
a string supplied by the user. The search string may match
anywhere in a history line.
non-incremental-forward-search-history (M-n)
Search forward starting at the current line and moving 'down'
Search forward starting at the current line and moving "down"
through the history as necessary using a non-incremental search for
a string supplied by the user. The search string may match
anywhere in a history line.
@@ -10261,8 +10277,8 @@ Set Builtin::) to switch interactively between emacs and vi editing
modes, The Readline default is emacs mode.
When you enter a line in vi mode, you are already placed in
'insertion' mode, as if you had typed an i. Pressing <ESC> switches
you into 'command' mode, where you can edit the text of the line with
"insertion" mode, as if you had typed an i. Pressing <ESC> switches
you into "command" mode, where you can edit the text of the line with
the standard vi movement keys, move to previous history lines with k
and subsequent lines with j, and so forth.
@@ -11902,7 +11918,7 @@ FTP from <ftp://ftp.gnu.org/pub/gnu/bash/> and from
bashbug command to submit a bug report or use the form at the Bash
project page (https://savannah.gnu.org/projects/bash/). If you have a
fix, you are encouraged to submit that as well! Suggestions and
'philosophical' bug reports may be mailed to <bug-bash@gnu.org> or
"philosophical" bug reports may be mailed to <bug-bash@gnu.org> or
<help-bash@gnu.org>.
All bug reports should include:
@@ -11910,7 +11926,7 @@ fix, you are encouraged to submit that as well! Suggestions and
• The hardware and operating system.
• The compiler used to compile Bash.
• A description of the bug behavior.
• A short script or 'recipe' which exercises the bug and may be used
• A short script or "recipe" which exercises the bug and may be used
to reproduce it.
bashbug inserts the first three items automatically into the template
@@ -13339,7 +13355,7 @@ D.4 Function Index
* export-completions (): Commands For Completion.
(line 44)
* fetch-history (): Commands For History.
(line 108)
(line 109)
* forward-backward-delete-char (): Commands For Text. (line 23)
* forward-char (C-f): Commands For Moving. (line 14)
* forward-search-history (C-s): Commands For History.
@@ -13356,13 +13372,13 @@ D.4 Function Index
* history-expand-line (M-^): Miscellaneous Commands.
(line 127)
* history-search-backward (): Commands For History.
(line 53)
(line 54)
* history-search-forward (): Commands For History.
(line 60)
(line 61)
* history-substring-search-backward (): Commands For History.
(line 67)
(line 68)
* history-substring-search-forward (): Commands For History.
(line 73)
(line 74)
* insert-comment (M-#): Miscellaneous Commands.
(line 59)
* insert-completions (M-*): Commands For Completion.
@@ -13387,11 +13403,11 @@ D.4 Function Index
(line 18)
* next-screen-line (): Commands For Moving. (line 45)
* non-incremental-forward-search-history (M-n): Commands For History.
(line 47)
(line 48)
* non-incremental-reverse-search-history (M-p): Commands For History.
(line 41)
* operate-and-get-next (C-o): Commands For History.
(line 101)
(line 102)
* overwrite-mode (): Commands For Text. (line 77)
* possible-command-completions (C-x !): Commands For Completion.
(line 111)
@@ -13453,9 +13469,9 @@ D.4 Function Index
* yank (C-y): Commands For Killing.
(line 72)
* yank-last-arg (M-. or M-_): Commands For History.
(line 89)
(line 90)
* yank-nth-arg (M-C-y): Commands For History.
(line 79)
(line 80)
* yank-pop (M-y): Commands For Killing.
(line 75)
@@ -13636,138 +13652,138 @@ D.5 Concept Index

Tag Table:
Node: Top898
Node: Introduction2836
Node: What is Bash?3052
Node: What is a shell?4188
Node: Definitions6801
Node: Basic Shell Features10131
Node: Shell Syntax11358
Node: Shell Operation12388
Node: Quoting13682
Node: Escape Character15023
Node: Single Quotes15561
Node: Double Quotes15913
Node: ANSI-C Quoting17261
Node: Locale Translation18658
Node: Creating Internationalized Scripts20064
Node: Comments24265
Node: Shell Commands25035
Node: Reserved Words25977
Node: Simple Commands26845
Node: Pipelines27510
Node: Lists30769
Node: Compound Commands32644
Node: Looping Constructs33656
Node: Conditional Constructs36208
Node: Command Grouping51281
Node: Coprocesses52776
Node: GNU Parallel55465
Node: Shell Functions56386
Node: Shell Parameters64837
Node: Positional Parameters69741
Node: Special Parameters70834
Node: Shell Expansions74298
Node: Brace Expansion76490
Node: Tilde Expansion79829
Node: Shell Parameter Expansion82787
Node: Command Substitution103433
Node: Arithmetic Expansion106965
Node: Process Substitution108144
Node: Word Splitting109255
Node: Filename Expansion111702
Node: Pattern Matching114929
Node: Quote Removal120655
Node: Redirections120962
Node: Executing Commands131228
Node: Simple Command Expansion131898
Node: Command Search and Execution134009
Node: Command Execution Environment136456
Node: Environment139907
Node: Exit Status141813
Node: Signals143875
Node: Shell Scripts148808
Node: Shell Builtin Commands152109
Node: Bourne Shell Builtins154223
Node: Bash Builtins180945
Node: Modifying Shell Behavior217872
Node: The Set Builtin218217
Node: The Shopt Builtin230214
Node: Special Builtins247270
Node: Shell Variables248262
Node: Bourne Shell Variables248699
Node: Bash Variables251210
Node: Bash Features290338
Node: Invoking Bash291355
Node: Bash Startup Files297942
Node: Interactive Shells303187
Node: What is an Interactive Shell?303598
Node: Is this Shell Interactive?304263
Node: Interactive Shell Behavior305090
Node: Bash Conditional Expressions308854
Node: Shell Arithmetic314274
Node: Aliases317604
Node: Arrays320741
Node: The Directory Stack328332
Node: Directory Stack Builtins329132
Node: Controlling the Prompt333580
Node: The Restricted Shell336468
Node: Bash POSIX Mode339353
Node: Shell Compatibility Mode358303
Node: Job Control367313
Node: Job Control Basics367773
Node: Job Control Builtins374144
Node: Job Control Variables380829
Node: Command Line Editing382063
Node: Introduction and Notation383769
Node: Readline Interaction386124
Node: Readline Bare Essentials387315
Node: Readline Movement Commands389126
Node: Readline Killing Commands390125
Node: Readline Arguments392151
Node: Searching393211
Node: Readline Init File395457
Node: Readline Init File Syntax396763
Node: Conditional Init Constructs423717
Node: Sample Init File428105
Node: Bindable Readline Commands431228
Node: Commands For Moving432769
Node: Commands For History435236
Node: Commands For Text440629
Node: Commands For Killing444757
Node: Numeric Arguments447548
Node: Commands For Completion448703
Node: Keyboard Macros454402
Node: Miscellaneous Commands455106
Node: Readline vi Mode461676
Node: Programmable Completion462656
Node: Programmable Completion Builtins472395
Node: A Programmable Completion Example484135
Node: Using History Interactively489483
Node: Bash History Facilities490167
Node: Bash History Builtins493905
Node: History Interaction500379
Node: Event Designators505332
Node: Word Designators506913
Node: Modifiers509308
Node: Installing Bash511248
Node: Basic Installation512367
Node: Compilers and Options516246
Node: Compiling For Multiple Architectures516999
Node: Installation Names518755
Node: Specifying the System Type520992
Node: Sharing Defaults521741
Node: Operation Controls522458
Node: Optional Features523480
Node: Reporting Bugs536206
Node: Major Differences From The Bourne Shell537566
Node: GNU Free Documentation License558996
Node: Indexes584176
Node: Builtin Index584630
Node: Reserved Word Index591731
Node: Variable Index594179
Node: Function Index611595
Node: Concept Index625593
Node: Top904
Node: Introduction2848
Node: What is Bash?3064
Node: What is a shell?4200
Node: Definitions6813
Node: Basic Shell Features10143
Node: Shell Syntax11370
Node: Shell Operation12400
Node: Quoting13694
Node: Escape Character15035
Node: Single Quotes15573
Node: Double Quotes15925
Node: ANSI-C Quoting17273
Node: Locale Translation18670
Node: Creating Internationalized Scripts20076
Node: Comments24277
Node: Shell Commands25047
Node: Reserved Words25989
Node: Simple Commands27135
Node: Pipelines27800
Node: Lists31059
Node: Compound Commands32982
Node: Looping Constructs33994
Node: Conditional Constructs36546
Node: Command Grouping51686
Node: Coprocesses53181
Node: GNU Parallel55870
Node: Shell Functions56791
Node: Shell Parameters65242
Node: Positional Parameters70146
Node: Special Parameters71239
Node: Shell Expansions74703
Node: Brace Expansion76895
Node: Tilde Expansion80234
Node: Shell Parameter Expansion83192
Node: Command Substitution103838
Node: Arithmetic Expansion107370
Node: Process Substitution108549
Node: Word Splitting109660
Node: Filename Expansion112107
Node: Pattern Matching115334
Node: Quote Removal121060
Node: Redirections121367
Node: Executing Commands131626
Node: Simple Command Expansion132296
Node: Command Search and Execution134407
Node: Command Execution Environment136854
Node: Environment140305
Node: Exit Status142211
Node: Signals144273
Node: Shell Scripts149206
Node: Shell Builtin Commands152507
Node: Bourne Shell Builtins154621
Node: Bash Builtins181343
Node: Modifying Shell Behavior218270
Node: The Set Builtin218615
Node: The Shopt Builtin230612
Node: Special Builtins247668
Node: Shell Variables248660
Node: Bourne Shell Variables249097
Node: Bash Variables251608
Node: Bash Features290736
Node: Invoking Bash291753
Node: Bash Startup Files298340
Node: Interactive Shells303585
Node: What is an Interactive Shell?303996
Node: Is this Shell Interactive?304661
Node: Interactive Shell Behavior305488
Node: Bash Conditional Expressions309252
Node: Shell Arithmetic314672
Node: Aliases318002
Node: Arrays321139
Node: The Directory Stack328730
Node: Directory Stack Builtins329530
Node: Controlling the Prompt333978
Node: The Restricted Shell336866
Node: Bash POSIX Mode339751
Node: Shell Compatibility Mode358701
Node: Job Control367711
Node: Job Control Basics368171
Node: Job Control Builtins374542
Node: Job Control Variables381227
Node: Command Line Editing382461
Node: Introduction and Notation384167
Node: Readline Interaction386522
Node: Readline Bare Essentials387713
Node: Readline Movement Commands389524
Node: Readline Killing Commands390523
Node: Readline Arguments392549
Node: Searching393642
Node: Readline Init File395888
Node: Readline Init File Syntax397194
Node: Conditional Init Constructs424148
Node: Sample Init File428536
Node: Bindable Readline Commands431659
Node: Commands For Moving433200
Node: Commands For History435667
Node: Commands For Text441061
Node: Commands For Killing445189
Node: Numeric Arguments447980
Node: Commands For Completion449135
Node: Keyboard Macros454834
Node: Miscellaneous Commands455538
Node: Readline vi Mode462108
Node: Programmable Completion463088
Node: Programmable Completion Builtins472827
Node: A Programmable Completion Example484567
Node: Using History Interactively489915
Node: Bash History Facilities490599
Node: Bash History Builtins494337
Node: History Interaction500811
Node: Event Designators505764
Node: Word Designators507345
Node: Modifiers509740
Node: Installing Bash511680
Node: Basic Installation512799
Node: Compilers and Options516678
Node: Compiling For Multiple Architectures517431
Node: Installation Names519187
Node: Specifying the System Type521424
Node: Sharing Defaults522173
Node: Operation Controls522890
Node: Optional Features523912
Node: Reporting Bugs536638
Node: Major Differences From The Bourne Shell537998
Node: GNU Free Documentation License559428
Node: Indexes584608
Node: Builtin Index585062
Node: Reserved Word Index592163
Node: Variable Index594611
Node: Function Index612027
Node: Concept Index626025

End Tag Table