commit bash-20201001 snapshot

This commit is contained in:
Chet Ramey
2020-10-19 08:56:41 -04:00
parent c84a1ebb62
commit d514a08760
23 changed files with 4497 additions and 4435 deletions
+20
View File
@@ -9053,3 +9053,23 @@ examples/loadables/asort.c
----
[bash-5.1-beta frozen]
10/7
----
subst.c
- process_substitute: try it without setting the stdin for a process
substitution started from an interactive shell to /dev/null. We will
have to see if this causes problems like those reported back in
9/2019 by Grisha Levit. From a report by Hyunho Cho <mug896@gmail.com>
lib/readline/terminal.c
- _rl_init_terminal_io: if the terminal is unknown, disable bracketed
paste on the assumption it can't handle the enable/disable escape
sequences
10/8
----
lib/readline/terminal.c
- _rl_init_terminal_io: if the terminal name is "dumb", disable
bracketed paste mode. Suggested by
Andreas Schwab <schwab@linux-m68k.org>
+1 -1
View File
@@ -1191,7 +1191,7 @@ array_expand_index (var, s, len, flags)
exp = (char *)xmalloc (len);
strncpy (exp, s, len - 1);
exp[len - 1] = '\0';
#if 0 /* TAG: maybe bash-5.1 */
#if 0 /* TAG: maybe bash-5.2 */
if ((flags & AV_NOEXPAND) == 0)
t = expand_arith_string (exp, Q_DOUBLE_QUOTES|Q_ARITH|Q_ARRAYSUB); /* XXX - Q_ARRAYSUB for future use */
else
+1 -1
View File
@@ -268,7 +268,7 @@ static int bash_vi_complete PARAMS((int, int));
#endif
static int emacs_edit_and_execute_command PARAMS((int, int));
/* Non-zero once initalize_readline () has been called. */
/* Non-zero once initialize_readline () has been called. */
int bash_readline_initialized = 0;
/* If non-zero, we do hostname completion, breaking words at `@' and
+9
View File
@@ -88,6 +88,11 @@ int
should_suppress_fork (command)
COMMAND *command;
{
#if 0 /* TAG: bash-5.2 */
int subshell;
subshell = subshell_environment & SUBSHELL_PROCSUB; /* salt to taste */
#endif
return (startup_state == 2 && parse_and_execute_level == 1 &&
running_trap == 0 &&
*bash_input.location.string == '\0' &&
@@ -96,7 +101,11 @@ should_suppress_fork (command)
signal_is_trapped (EXIT_TRAP) == 0 &&
signal_is_trapped (ERROR_TRAP) == 0 &&
any_signals_trapped () < 0 &&
#if 0 /* TAG: bash-5.2 */
(subshell || (command->redirects == 0 && command->value.Simple->redirects == 0)) &&
#else
command->redirects == 0 && command->value.Simple->redirects == 0 &&
#endif
((command->flags & CMD_TIME_PIPELINE) == 0) &&
((command->flags & CMD_INVERT_RETURN) == 0));
}
+3 -3
View File
@@ -1131,8 +1131,8 @@ PPAARRAAMMEETTEERRSS
EEMMAACCSS If bbaasshh finds this variable in the environment when the shell
starts with value "t", it assumes that the shell is running in
an Emacs shell buffer and disables line editing.
EENNVV Similar to BBAASSHH__EENNVV; used when the shell is invoked in _p_o_s_i_x
_m_o_d_e.
EENNVV Expanded and executed similarly to BBAASSHH__EENNVV (see IINNVVOOCCAATTIIOONN
above) when an interactive shell is invoked in _p_o_s_i_x _m_o_d_e.
EEXXEECCIIGGNNOORREE
A colon-separated list of shell patterns (see PPaatttteerrnn MMaattcchhiinngg)
defining the list of filenames to be ignored by command search
@@ -6401,4 +6401,4 @@ BBUUGGSS
GNU Bash 5.1 2020 August 25 BASH(1)
GNU Bash 5.1 2020 September 23 BASH(1)
+7 -6
View File
@@ -3,7 +3,7 @@
</HEAD>
<BODY><TABLE WIDTH=100%>
<TR>
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2020 August 25<TH ALIGN=RIGHT width=33%>BASH(1)
<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2020 September 23<TH ALIGN=RIGHT width=33%>BASH(1)
</TR>
</TABLE>
<BR><A HREF="#index">Index</A>
@@ -2708,11 +2708,12 @@ line editing.
<DT><B>ENV</B>
<DD>
Similar to
<FONT SIZE=-1><B>BASH_ENV</B>;
Expanded and executed similarly to
<FONT SIZE=-1><B>BASH_ENV</B>
</FONT>
used when the shell is invoked in <I>posix mode</I>.
(see <B>INVOCATION</B> above)
when an interactive shell is invoked in <I>posix mode</I>.
<DT><B>EXECIGNORE</B>
<DD>
@@ -14252,7 +14253,7 @@ There may be only one active coprocess at a time.
<HR>
<TABLE WIDTH=100%>
<TR>
<TH ALIGN=LEFT width=33%>GNU Bash 5.1<TH ALIGN=CENTER width=33%>2020 August 25<TH ALIGN=RIGHT width=33%>BASH(1)
<TH ALIGN=LEFT width=33%>GNU Bash 5.1<TH ALIGN=CENTER width=33%>2020 September 23<TH ALIGN=RIGHT width=33%>BASH(1)
</TR>
</TABLE>
<HR>
@@ -14359,6 +14360,6 @@ There may be only one active coprocess at a time.
</DL>
<HR>
This document was created by man2html from bash.1.<BR>
Time: 07 September 2020 09:52:27 EDT
Time: 01 October 2020 14:49:34 EDT
</BODY>
</HTML>
+200 -199
View File
@@ -2,9 +2,9 @@ This is bash.info, produced by makeinfo version 6.7 from
bashref.texi.
This text is a brief description of the features that are present in the
Bash shell (version 5.1, 25 August 2020).
Bash shell (version 5.1, 23 September 2020).
This is Edition 5.1, last updated 25 August 2020, of 'The GNU Bash
This is Edition 5.1, last updated 23 September 2020, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.1.
Copyright (C) 1988-2018 Free Software Foundation, Inc.
@@ -27,10 +27,10 @@ Bash Features
*************
This text is a brief description of the features that are present in the
Bash shell (version 5.1, 25 August 2020). The Bash home page is
Bash shell (version 5.1, 23 September 2020). The Bash home page is
<http://www.gnu.org/software/bash/>.
This is Edition 5.1, last updated 25 August 2020, of 'The GNU Bash
This is Edition 5.1, last updated 23 September 2020, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.1.
Bash contains features that appear in other popular shells, and some
@@ -5130,8 +5130,9 @@ Variables::).
Emacs shell buffer and disables line editing.
'ENV'
Similar to 'BASH_ENV'; used when the shell is invoked in POSIX Mode
(*note Bash POSIX Mode::).
Expanded and executed similarlty to 'BASH_ENV' (*note Bash Startup
Files::) when an interactive shell is invoked in POSIX Mode (*note
Bash POSIX Mode::).
'EPOCHREALTIME'
Each time this parameter is referenced, it expands to the number of
@@ -11482,65 +11483,65 @@ D.3 Parameter and Variable Index
* enable-keypad: Readline Init File Syntax.
(line 150)
* ENV: Bash Variables. (line 279)
* EPOCHREALTIME: Bash Variables. (line 283)
* EPOCHSECONDS: Bash Variables. (line 291)
* EUID: Bash Variables. (line 298)
* EXECIGNORE: Bash Variables. (line 302)
* EPOCHREALTIME: Bash Variables. (line 284)
* EPOCHSECONDS: Bash Variables. (line 292)
* EUID: Bash Variables. (line 299)
* EXECIGNORE: Bash Variables. (line 303)
* expand-tilde: Readline Init File Syntax.
(line 161)
* FCEDIT: Bash Variables. (line 315)
* FIGNORE: Bash Variables. (line 319)
* FUNCNAME: Bash Variables. (line 325)
* FUNCNEST: Bash Variables. (line 342)
* GLOBIGNORE: Bash Variables. (line 347)
* GROUPS: Bash Variables. (line 354)
* histchars: Bash Variables. (line 360)
* HISTCMD: Bash Variables. (line 375)
* HISTCONTROL: Bash Variables. (line 381)
* HISTFILE: Bash Variables. (line 397)
* HISTFILESIZE: Bash Variables. (line 401)
* HISTIGNORE: Bash Variables. (line 412)
* FCEDIT: Bash Variables. (line 316)
* FIGNORE: Bash Variables. (line 320)
* FUNCNAME: Bash Variables. (line 326)
* FUNCNEST: Bash Variables. (line 343)
* GLOBIGNORE: Bash Variables. (line 348)
* GROUPS: Bash Variables. (line 355)
* histchars: Bash Variables. (line 361)
* HISTCMD: Bash Variables. (line 376)
* HISTCONTROL: Bash Variables. (line 382)
* HISTFILE: Bash Variables. (line 398)
* HISTFILESIZE: Bash Variables. (line 402)
* HISTIGNORE: Bash Variables. (line 413)
* history-preserve-point: Readline Init File Syntax.
(line 165)
* history-size: Readline Init File Syntax.
(line 171)
* HISTSIZE: Bash Variables. (line 432)
* HISTTIMEFORMAT: Bash Variables. (line 439)
* HISTSIZE: Bash Variables. (line 433)
* HISTTIMEFORMAT: Bash Variables. (line 440)
* HOME: Bourne Shell Variables.
(line 13)
* horizontal-scroll-mode: Readline Init File Syntax.
(line 180)
* HOSTFILE: Bash Variables. (line 447)
* HOSTNAME: Bash Variables. (line 458)
* HOSTTYPE: Bash Variables. (line 461)
* HOSTFILE: Bash Variables. (line 448)
* HOSTNAME: Bash Variables. (line 459)
* HOSTTYPE: Bash Variables. (line 462)
* IFS: Bourne Shell Variables.
(line 18)
* IGNOREEOF: Bash Variables. (line 464)
* IGNOREEOF: Bash Variables. (line 465)
* input-meta: Readline Init File Syntax.
(line 189)
* INPUTRC: Bash Variables. (line 474)
* INSIDE_EMACS: Bash Variables. (line 478)
* INPUTRC: Bash Variables. (line 475)
* INSIDE_EMACS: Bash Variables. (line 479)
* isearch-terminators: Readline Init File Syntax.
(line 197)
* keymap: Readline Init File Syntax.
(line 204)
* LANG: Bash Variables. (line 484)
* LC_ALL: Bash Variables. (line 488)
* LC_COLLATE: Bash Variables. (line 492)
* LC_CTYPE: Bash Variables. (line 499)
* LANG: Bash Variables. (line 485)
* LC_ALL: Bash Variables. (line 489)
* LC_COLLATE: Bash Variables. (line 493)
* LC_CTYPE: Bash Variables. (line 500)
* LC_MESSAGES: Locale Translation. (line 15)
* LC_MESSAGES <1>: Bash Variables. (line 504)
* LC_NUMERIC: Bash Variables. (line 508)
* LC_TIME: Bash Variables. (line 512)
* LINENO: Bash Variables. (line 516)
* LINES: Bash Variables. (line 521)
* MACHTYPE: Bash Variables. (line 527)
* LC_MESSAGES <1>: Bash Variables. (line 505)
* LC_NUMERIC: Bash Variables. (line 509)
* LC_TIME: Bash Variables. (line 513)
* LINENO: Bash Variables. (line 517)
* LINES: Bash Variables. (line 522)
* MACHTYPE: Bash Variables. (line 528)
* MAIL: Bourne Shell Variables.
(line 22)
* MAILCHECK: Bash Variables. (line 531)
* MAILCHECK: Bash Variables. (line 532)
* MAILPATH: Bourne Shell Variables.
(line 27)
* MAPFILE: Bash Variables. (line 539)
* MAPFILE: Bash Variables. (line 540)
* mark-modified-lines: Readline Init File Syntax.
(line 234)
* mark-symlinked-directories: Readline Init File Syntax.
@@ -11551,43 +11552,43 @@ D.3 Parameter and Variable Index
(line 251)
* meta-flag: Readline Init File Syntax.
(line 189)
* OLDPWD: Bash Variables. (line 543)
* OLDPWD: Bash Variables. (line 544)
* OPTARG: Bourne Shell Variables.
(line 34)
* OPTERR: Bash Variables. (line 546)
* OPTERR: Bash Variables. (line 547)
* OPTIND: Bourne Shell Variables.
(line 38)
* OSTYPE: Bash Variables. (line 550)
* OSTYPE: Bash Variables. (line 551)
* output-meta: Readline Init File Syntax.
(line 256)
* page-completions: Readline Init File Syntax.
(line 262)
* PATH: Bourne Shell Variables.
(line 42)
* PIPESTATUS: Bash Variables. (line 553)
* POSIXLY_CORRECT: Bash Variables. (line 558)
* PPID: Bash Variables. (line 568)
* PROMPT_COMMAND: Bash Variables. (line 572)
* PROMPT_DIRTRIM: Bash Variables. (line 578)
* PS0: Bash Variables. (line 584)
* PIPESTATUS: Bash Variables. (line 554)
* POSIXLY_CORRECT: Bash Variables. (line 559)
* PPID: Bash Variables. (line 569)
* PROMPT_COMMAND: Bash Variables. (line 573)
* PROMPT_DIRTRIM: Bash Variables. (line 579)
* PS0: Bash Variables. (line 585)
* PS1: Bourne Shell Variables.
(line 48)
* PS2: Bourne Shell Variables.
(line 53)
* PS3: Bash Variables. (line 589)
* PS4: Bash Variables. (line 594)
* PWD: Bash Variables. (line 602)
* RANDOM: Bash Variables. (line 605)
* READLINE_LINE: Bash Variables. (line 611)
* READLINE_MARK: Bash Variables. (line 615)
* READLINE_POINT: Bash Variables. (line 621)
* REPLY: Bash Variables. (line 625)
* PS3: Bash Variables. (line 590)
* PS4: Bash Variables. (line 595)
* PWD: Bash Variables. (line 603)
* RANDOM: Bash Variables. (line 606)
* READLINE_LINE: Bash Variables. (line 612)
* READLINE_MARK: Bash Variables. (line 616)
* READLINE_POINT: Bash Variables. (line 622)
* REPLY: Bash Variables. (line 626)
* revert-all-at-newline: Readline Init File Syntax.
(line 272)
* SECONDS: Bash Variables. (line 628)
* SHELL: Bash Variables. (line 637)
* SHELLOPTS: Bash Variables. (line 642)
* SHLVL: Bash Variables. (line 651)
* SECONDS: Bash Variables. (line 629)
* SHELL: Bash Variables. (line 638)
* SHELLOPTS: Bash Variables. (line 643)
* SHLVL: Bash Variables. (line 652)
* show-all-if-ambiguous: Readline Init File Syntax.
(line 278)
* show-all-if-unmodified: Readline Init File Syntax.
@@ -11596,13 +11597,13 @@ D.3 Parameter and Variable Index
(line 293)
* skip-completed-text: Readline Init File Syntax.
(line 299)
* SRANDOM: Bash Variables. (line 656)
* SRANDOM: Bash Variables. (line 657)
* TEXTDOMAIN: Locale Translation. (line 15)
* TEXTDOMAINDIR: Locale Translation. (line 15)
* TIMEFORMAT: Bash Variables. (line 665)
* TMOUT: Bash Variables. (line 703)
* TMPDIR: Bash Variables. (line 715)
* UID: Bash Variables. (line 719)
* TIMEFORMAT: Bash Variables. (line 666)
* TMOUT: Bash Variables. (line 704)
* TMPDIR: Bash Variables. (line 716)
* UID: Bash Variables. (line 720)
* vi-cmd-mode-string: Readline Init File Syntax.
(line 312)
* vi-ins-mode-string: Readline Init File Syntax.
@@ -11979,137 +11980,137 @@ D.5 Concept Index

Tag Table:
Node: Top893
Node: Introduction2809
Node: What is Bash?3025
Node: What is a shell?4139
Node: Definitions6677
Node: Basic Shell Features9628
Node: Shell Syntax10847
Node: Shell Operation11873
Node: Quoting13166
Node: Escape Character14466
Node: Single Quotes14951
Node: Double Quotes15299
Node: ANSI-C Quoting16577
Node: Locale Translation17836
Node: Comments18989
Node: Shell Commands19607
Node: Reserved Words20545
Node: Simple Commands21301
Node: Pipelines21955
Node: Lists24887
Node: Compound Commands26678
Node: Looping Constructs27690
Node: Conditional Constructs30185
Node: Command Grouping41756
Node: Coprocesses43235
Node: GNU Parallel45138
Node: Shell Functions49439
Node: Shell Parameters56646
Node: Positional Parameters61059
Node: Special Parameters61959
Node: Shell Expansions65183
Node: Brace Expansion67306
Node: Tilde Expansion70029
Node: Shell Parameter Expansion72646
Node: Command Substitution87775
Node: Arithmetic Expansion89130
Node: Process Substitution90062
Node: Word Splitting91182
Node: Filename Expansion93126
Node: Pattern Matching95675
Node: Quote Removal99661
Node: Redirections99956
Node: Executing Commands109526
Node: Simple Command Expansion110196
Node: Command Search and Execution112150
Node: Command Execution Environment114526
Node: Environment117510
Node: Exit Status119169
Node: Signals120839
Node: Shell Scripts122806
Node: Shell Builtin Commands125818
Node: Bourne Shell Builtins127856
Node: Bash Builtins148785
Node: Modifying Shell Behavior178720
Node: The Set Builtin179065
Node: The Shopt Builtin189478
Node: Special Builtins204388
Node: Shell Variables205367
Node: Bourne Shell Variables205804
Node: Bash Variables207908
Node: Bash Features240478
Node: Invoking Bash241491
Node: Bash Startup Files247504
Node: Interactive Shells252607
Node: What is an Interactive Shell?253017
Node: Is this Shell Interactive?253666
Node: Interactive Shell Behavior254481
Node: Bash Conditional Expressions257995
Node: Shell Arithmetic262572
Node: Aliases265512
Node: Arrays268132
Node: The Directory Stack274141
Node: Directory Stack Builtins274925
Node: Controlling the Prompt277893
Node: The Restricted Shell280843
Node: Bash POSIX Mode283437
Node: Shell Compatibility Mode294473
Node: Job Control301129
Node: Job Control Basics301589
Node: Job Control Builtins306585
Node: Job Control Variables311985
Node: Command Line Editing313141
Node: Introduction and Notation314812
Node: Readline Interaction316435
Node: Readline Bare Essentials317626
Node: Readline Movement Commands319409
Node: Readline Killing Commands320369
Node: Readline Arguments322287
Node: Searching323331
Node: Readline Init File325517
Node: Readline Init File Syntax326776
Node: Conditional Init Constructs347315
Node: Sample Init File351511
Node: Bindable Readline Commands354635
Node: Commands For Moving355839
Node: Commands For History357890
Node: Commands For Text362683
Node: Commands For Killing366332
Node: Numeric Arguments369365
Node: Commands For Completion370504
Node: Keyboard Macros374695
Node: Miscellaneous Commands375382
Node: Readline vi Mode381066
Node: Programmable Completion381973
Node: Programmable Completion Builtins389753
Node: A Programmable Completion Example400448
Node: Using History Interactively405695
Node: Bash History Facilities406379
Node: Bash History Builtins409384
Node: History Interaction414113
Node: Event Designators417733
Node: Word Designators419087
Node: Modifiers420847
Node: Installing Bash422658
Node: Basic Installation423795
Node: Compilers and Options427053
Node: Compiling For Multiple Architectures427794
Node: Installation Names429487
Node: Specifying the System Type430305
Node: Sharing Defaults431021
Node: Operation Controls431694
Node: Optional Features432652
Node: Reporting Bugs443170
Node: Major Differences From The Bourne Shell444364
Node: GNU Free Documentation License461216
Node: Indexes486393
Node: Builtin Index486847
Node: Reserved Word Index493674
Node: Variable Index496122
Node: Function Index512019
Node: Concept Index525529
Node: Top899
Node: Introduction2821
Node: What is Bash?3037
Node: What is a shell?4151
Node: Definitions6689
Node: Basic Shell Features9640
Node: Shell Syntax10859
Node: Shell Operation11885
Node: Quoting13178
Node: Escape Character14478
Node: Single Quotes14963
Node: Double Quotes15311
Node: ANSI-C Quoting16589
Node: Locale Translation17848
Node: Comments19001
Node: Shell Commands19619
Node: Reserved Words20557
Node: Simple Commands21313
Node: Pipelines21967
Node: Lists24899
Node: Compound Commands26690
Node: Looping Constructs27702
Node: Conditional Constructs30197
Node: Command Grouping41768
Node: Coprocesses43247
Node: GNU Parallel45150
Node: Shell Functions49451
Node: Shell Parameters56658
Node: Positional Parameters61071
Node: Special Parameters61971
Node: Shell Expansions65195
Node: Brace Expansion67318
Node: Tilde Expansion70041
Node: Shell Parameter Expansion72658
Node: Command Substitution87787
Node: Arithmetic Expansion89142
Node: Process Substitution90074
Node: Word Splitting91194
Node: Filename Expansion93138
Node: Pattern Matching95687
Node: Quote Removal99673
Node: Redirections99968
Node: Executing Commands109538
Node: Simple Command Expansion110208
Node: Command Search and Execution112162
Node: Command Execution Environment114538
Node: Environment117522
Node: Exit Status119181
Node: Signals120851
Node: Shell Scripts122818
Node: Shell Builtin Commands125830
Node: Bourne Shell Builtins127868
Node: Bash Builtins148797
Node: Modifying Shell Behavior178732
Node: The Set Builtin179077
Node: The Shopt Builtin189490
Node: Special Builtins204400
Node: Shell Variables205379
Node: Bourne Shell Variables205816
Node: Bash Variables207920
Node: Bash Features240554
Node: Invoking Bash241567
Node: Bash Startup Files247580
Node: Interactive Shells252683
Node: What is an Interactive Shell?253093
Node: Is this Shell Interactive?253742
Node: Interactive Shell Behavior254557
Node: Bash Conditional Expressions258071
Node: Shell Arithmetic262648
Node: Aliases265588
Node: Arrays268208
Node: The Directory Stack274217
Node: Directory Stack Builtins275001
Node: Controlling the Prompt277969
Node: The Restricted Shell280919
Node: Bash POSIX Mode283513
Node: Shell Compatibility Mode294549
Node: Job Control301205
Node: Job Control Basics301665
Node: Job Control Builtins306661
Node: Job Control Variables312061
Node: Command Line Editing313217
Node: Introduction and Notation314888
Node: Readline Interaction316511
Node: Readline Bare Essentials317702
Node: Readline Movement Commands319485
Node: Readline Killing Commands320445
Node: Readline Arguments322363
Node: Searching323407
Node: Readline Init File325593
Node: Readline Init File Syntax326852
Node: Conditional Init Constructs347391
Node: Sample Init File351587
Node: Bindable Readline Commands354711
Node: Commands For Moving355915
Node: Commands For History357966
Node: Commands For Text362759
Node: Commands For Killing366408
Node: Numeric Arguments369441
Node: Commands For Completion370580
Node: Keyboard Macros374771
Node: Miscellaneous Commands375458
Node: Readline vi Mode381142
Node: Programmable Completion382049
Node: Programmable Completion Builtins389829
Node: A Programmable Completion Example400524
Node: Using History Interactively405771
Node: Bash History Facilities406455
Node: Bash History Builtins409460
Node: History Interaction414189
Node: Event Designators417809
Node: Word Designators419163
Node: Modifiers420923
Node: Installing Bash422734
Node: Basic Installation423871
Node: Compilers and Options427129
Node: Compiling For Multiple Architectures427870
Node: Installation Names429563
Node: Specifying the System Type430381
Node: Sharing Defaults431097
Node: Operation Controls431770
Node: Optional Features432728
Node: Reporting Bugs443246
Node: Major Differences From The Bourne Shell444440
Node: GNU Free Documentation License461292
Node: Indexes486469
Node: Builtin Index486923
Node: Reserved Word Index493750
Node: Variable Index496198
Node: Function Index512095
Node: Concept Index525605

End Tag Table
BIN
View File
Binary file not shown.
+3912 -3912
View File
File diff suppressed because it is too large Load Diff
BIN
View File
Binary file not shown.
+7 -5
View File
@@ -1,9 +1,9 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This text is a brief description of the features that are present in
the Bash shell (version 5.1, 25 August 2020).
the Bash shell (version 5.1, 23 September 2020).
This is Edition 5.1, last updated 25 August 2020,
This is Edition 5.1, last updated 23 September 2020,
of The GNU Bash Reference Manual,
for Bash, Version 5.1.
@@ -275,10 +275,10 @@ Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Previou
<span id="Bash-Features-1"></span><h1 class="top">Bash Features</h1>
<p>This text is a brief description of the features that are present in
the Bash shell (version 5.1, 25 August 2020).
the Bash shell (version 5.1, 23 September 2020).
The Bash home page is <a href="http://www.gnu.org/software/bash/">http://www.gnu.org/software/bash/</a>.
</p>
<p>This is Edition 5.1, last updated 25 August 2020,
<p>This is Edition 5.1, last updated 23 September 2020,
of <cite>The GNU Bash Reference Manual</cite>,
for <code>Bash</code>, Version 5.1.
</p>
@@ -6872,7 +6872,9 @@ Emacs shell buffer and disables line editing.
<dt><code>ENV</code>
<span id="index-ENV"></span>
</dt>
<dd><p>Similar to <code>BASH_ENV</code>; used when the shell is invoked in
<dd><p>Expanded and executed similarlty to <code>BASH_ENV</code>
(see <a href="#Bash-Startup-Files">Bash Startup Files</a>)
when an interactive shell is invoked in
<small>POSIX</small> Mode (see <a href="#Bash-POSIX-Mode">Bash POSIX Mode</a>).
</p>
</dd>
+200 -199
View File
@@ -2,9 +2,9 @@ This is bashref.info, produced by makeinfo version 6.7 from
bashref.texi.
This text is a brief description of the features that are present in the
Bash shell (version 5.1, 25 August 2020).
Bash shell (version 5.1, 23 September 2020).
This is Edition 5.1, last updated 25 August 2020, of 'The GNU Bash
This is Edition 5.1, last updated 23 September 2020, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.1.
Copyright (C) 1988-2018 Free Software Foundation, Inc.
@@ -27,10 +27,10 @@ Bash Features
*************
This text is a brief description of the features that are present in the
Bash shell (version 5.1, 25 August 2020). The Bash home page is
Bash shell (version 5.1, 23 September 2020). The Bash home page is
<http://www.gnu.org/software/bash/>.
This is Edition 5.1, last updated 25 August 2020, of 'The GNU Bash
This is Edition 5.1, last updated 23 September 2020, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.1.
Bash contains features that appear in other popular shells, and some
@@ -5130,8 +5130,9 @@ Variables::).
Emacs shell buffer and disables line editing.
'ENV'
Similar to 'BASH_ENV'; used when the shell is invoked in POSIX Mode
(*note Bash POSIX Mode::).
Expanded and executed similarlty to 'BASH_ENV' (*note Bash Startup
Files::) when an interactive shell is invoked in POSIX Mode (*note
Bash POSIX Mode::).
'EPOCHREALTIME'
Each time this parameter is referenced, it expands to the number of
@@ -11482,65 +11483,65 @@ D.3 Parameter and Variable Index
* enable-keypad: Readline Init File Syntax.
(line 150)
* ENV: Bash Variables. (line 279)
* EPOCHREALTIME: Bash Variables. (line 283)
* EPOCHSECONDS: Bash Variables. (line 291)
* EUID: Bash Variables. (line 298)
* EXECIGNORE: Bash Variables. (line 302)
* EPOCHREALTIME: Bash Variables. (line 284)
* EPOCHSECONDS: Bash Variables. (line 292)
* EUID: Bash Variables. (line 299)
* EXECIGNORE: Bash Variables. (line 303)
* expand-tilde: Readline Init File Syntax.
(line 161)
* FCEDIT: Bash Variables. (line 315)
* FIGNORE: Bash Variables. (line 319)
* FUNCNAME: Bash Variables. (line 325)
* FUNCNEST: Bash Variables. (line 342)
* GLOBIGNORE: Bash Variables. (line 347)
* GROUPS: Bash Variables. (line 354)
* histchars: Bash Variables. (line 360)
* HISTCMD: Bash Variables. (line 375)
* HISTCONTROL: Bash Variables. (line 381)
* HISTFILE: Bash Variables. (line 397)
* HISTFILESIZE: Bash Variables. (line 401)
* HISTIGNORE: Bash Variables. (line 412)
* FCEDIT: Bash Variables. (line 316)
* FIGNORE: Bash Variables. (line 320)
* FUNCNAME: Bash Variables. (line 326)
* FUNCNEST: Bash Variables. (line 343)
* GLOBIGNORE: Bash Variables. (line 348)
* GROUPS: Bash Variables. (line 355)
* histchars: Bash Variables. (line 361)
* HISTCMD: Bash Variables. (line 376)
* HISTCONTROL: Bash Variables. (line 382)
* HISTFILE: Bash Variables. (line 398)
* HISTFILESIZE: Bash Variables. (line 402)
* HISTIGNORE: Bash Variables. (line 413)
* history-preserve-point: Readline Init File Syntax.
(line 165)
* history-size: Readline Init File Syntax.
(line 171)
* HISTSIZE: Bash Variables. (line 432)
* HISTTIMEFORMAT: Bash Variables. (line 439)
* HISTSIZE: Bash Variables. (line 433)
* HISTTIMEFORMAT: Bash Variables. (line 440)
* HOME: Bourne Shell Variables.
(line 13)
* horizontal-scroll-mode: Readline Init File Syntax.
(line 180)
* HOSTFILE: Bash Variables. (line 447)
* HOSTNAME: Bash Variables. (line 458)
* HOSTTYPE: Bash Variables. (line 461)
* HOSTFILE: Bash Variables. (line 448)
* HOSTNAME: Bash Variables. (line 459)
* HOSTTYPE: Bash Variables. (line 462)
* IFS: Bourne Shell Variables.
(line 18)
* IGNOREEOF: Bash Variables. (line 464)
* IGNOREEOF: Bash Variables. (line 465)
* input-meta: Readline Init File Syntax.
(line 189)
* INPUTRC: Bash Variables. (line 474)
* INSIDE_EMACS: Bash Variables. (line 478)
* INPUTRC: Bash Variables. (line 475)
* INSIDE_EMACS: Bash Variables. (line 479)
* isearch-terminators: Readline Init File Syntax.
(line 197)
* keymap: Readline Init File Syntax.
(line 204)
* LANG: Bash Variables. (line 484)
* LC_ALL: Bash Variables. (line 488)
* LC_COLLATE: Bash Variables. (line 492)
* LC_CTYPE: Bash Variables. (line 499)
* LANG: Bash Variables. (line 485)
* LC_ALL: Bash Variables. (line 489)
* LC_COLLATE: Bash Variables. (line 493)
* LC_CTYPE: Bash Variables. (line 500)
* LC_MESSAGES: Locale Translation. (line 15)
* LC_MESSAGES <1>: Bash Variables. (line 504)
* LC_NUMERIC: Bash Variables. (line 508)
* LC_TIME: Bash Variables. (line 512)
* LINENO: Bash Variables. (line 516)
* LINES: Bash Variables. (line 521)
* MACHTYPE: Bash Variables. (line 527)
* LC_MESSAGES <1>: Bash Variables. (line 505)
* LC_NUMERIC: Bash Variables. (line 509)
* LC_TIME: Bash Variables. (line 513)
* LINENO: Bash Variables. (line 517)
* LINES: Bash Variables. (line 522)
* MACHTYPE: Bash Variables. (line 528)
* MAIL: Bourne Shell Variables.
(line 22)
* MAILCHECK: Bash Variables. (line 531)
* MAILCHECK: Bash Variables. (line 532)
* MAILPATH: Bourne Shell Variables.
(line 27)
* MAPFILE: Bash Variables. (line 539)
* MAPFILE: Bash Variables. (line 540)
* mark-modified-lines: Readline Init File Syntax.
(line 234)
* mark-symlinked-directories: Readline Init File Syntax.
@@ -11551,43 +11552,43 @@ D.3 Parameter and Variable Index
(line 251)
* meta-flag: Readline Init File Syntax.
(line 189)
* OLDPWD: Bash Variables. (line 543)
* OLDPWD: Bash Variables. (line 544)
* OPTARG: Bourne Shell Variables.
(line 34)
* OPTERR: Bash Variables. (line 546)
* OPTERR: Bash Variables. (line 547)
* OPTIND: Bourne Shell Variables.
(line 38)
* OSTYPE: Bash Variables. (line 550)
* OSTYPE: Bash Variables. (line 551)
* output-meta: Readline Init File Syntax.
(line 256)
* page-completions: Readline Init File Syntax.
(line 262)
* PATH: Bourne Shell Variables.
(line 42)
* PIPESTATUS: Bash Variables. (line 553)
* POSIXLY_CORRECT: Bash Variables. (line 558)
* PPID: Bash Variables. (line 568)
* PROMPT_COMMAND: Bash Variables. (line 572)
* PROMPT_DIRTRIM: Bash Variables. (line 578)
* PS0: Bash Variables. (line 584)
* PIPESTATUS: Bash Variables. (line 554)
* POSIXLY_CORRECT: Bash Variables. (line 559)
* PPID: Bash Variables. (line 569)
* PROMPT_COMMAND: Bash Variables. (line 573)
* PROMPT_DIRTRIM: Bash Variables. (line 579)
* PS0: Bash Variables. (line 585)
* PS1: Bourne Shell Variables.
(line 48)
* PS2: Bourne Shell Variables.
(line 53)
* PS3: Bash Variables. (line 589)
* PS4: Bash Variables. (line 594)
* PWD: Bash Variables. (line 602)
* RANDOM: Bash Variables. (line 605)
* READLINE_LINE: Bash Variables. (line 611)
* READLINE_MARK: Bash Variables. (line 615)
* READLINE_POINT: Bash Variables. (line 621)
* REPLY: Bash Variables. (line 625)
* PS3: Bash Variables. (line 590)
* PS4: Bash Variables. (line 595)
* PWD: Bash Variables. (line 603)
* RANDOM: Bash Variables. (line 606)
* READLINE_LINE: Bash Variables. (line 612)
* READLINE_MARK: Bash Variables. (line 616)
* READLINE_POINT: Bash Variables. (line 622)
* REPLY: Bash Variables. (line 626)
* revert-all-at-newline: Readline Init File Syntax.
(line 272)
* SECONDS: Bash Variables. (line 628)
* SHELL: Bash Variables. (line 637)
* SHELLOPTS: Bash Variables. (line 642)
* SHLVL: Bash Variables. (line 651)
* SECONDS: Bash Variables. (line 629)
* SHELL: Bash Variables. (line 638)
* SHELLOPTS: Bash Variables. (line 643)
* SHLVL: Bash Variables. (line 652)
* show-all-if-ambiguous: Readline Init File Syntax.
(line 278)
* show-all-if-unmodified: Readline Init File Syntax.
@@ -11596,13 +11597,13 @@ D.3 Parameter and Variable Index
(line 293)
* skip-completed-text: Readline Init File Syntax.
(line 299)
* SRANDOM: Bash Variables. (line 656)
* SRANDOM: Bash Variables. (line 657)
* TEXTDOMAIN: Locale Translation. (line 15)
* TEXTDOMAINDIR: Locale Translation. (line 15)
* TIMEFORMAT: Bash Variables. (line 665)
* TMOUT: Bash Variables. (line 703)
* TMPDIR: Bash Variables. (line 715)
* UID: Bash Variables. (line 719)
* TIMEFORMAT: Bash Variables. (line 666)
* TMOUT: Bash Variables. (line 704)
* TMPDIR: Bash Variables. (line 716)
* UID: Bash Variables. (line 720)
* vi-cmd-mode-string: Readline Init File Syntax.
(line 312)
* vi-ins-mode-string: Readline Init File Syntax.
@@ -11979,137 +11980,137 @@ D.5 Concept Index

Tag Table:
Node: Top893
Node: Introduction2809
Node: What is Bash?3025
Node: What is a shell?4139
Node: Definitions6677
Node: Basic Shell Features9628
Node: Shell Syntax10847
Node: Shell Operation11873
Node: Quoting13166
Node: Escape Character14466
Node: Single Quotes14951
Node: Double Quotes15299
Node: ANSI-C Quoting16577
Node: Locale Translation17836
Node: Comments18989
Node: Shell Commands19607
Node: Reserved Words20545
Node: Simple Commands21301
Node: Pipelines21955
Node: Lists24887
Node: Compound Commands26678
Node: Looping Constructs27690
Node: Conditional Constructs30185
Node: Command Grouping41756
Node: Coprocesses43235
Node: GNU Parallel45138
Node: Shell Functions49439
Node: Shell Parameters56646
Node: Positional Parameters61059
Node: Special Parameters61959
Node: Shell Expansions65183
Node: Brace Expansion67306
Node: Tilde Expansion70029
Node: Shell Parameter Expansion72646
Node: Command Substitution87775
Node: Arithmetic Expansion89130
Node: Process Substitution90062
Node: Word Splitting91182
Node: Filename Expansion93126
Node: Pattern Matching95675
Node: Quote Removal99661
Node: Redirections99956
Node: Executing Commands109526
Node: Simple Command Expansion110196
Node: Command Search and Execution112150
Node: Command Execution Environment114526
Node: Environment117510
Node: Exit Status119169
Node: Signals120839
Node: Shell Scripts122806
Node: Shell Builtin Commands125818
Node: Bourne Shell Builtins127856
Node: Bash Builtins148785
Node: Modifying Shell Behavior178720
Node: The Set Builtin179065
Node: The Shopt Builtin189478
Node: Special Builtins204388
Node: Shell Variables205367
Node: Bourne Shell Variables205804
Node: Bash Variables207908
Node: Bash Features240478
Node: Invoking Bash241491
Node: Bash Startup Files247504
Node: Interactive Shells252607
Node: What is an Interactive Shell?253017
Node: Is this Shell Interactive?253666
Node: Interactive Shell Behavior254481
Node: Bash Conditional Expressions257995
Node: Shell Arithmetic262572
Node: Aliases265512
Node: Arrays268132
Node: The Directory Stack274141
Node: Directory Stack Builtins274925
Node: Controlling the Prompt277893
Node: The Restricted Shell280843
Node: Bash POSIX Mode283437
Node: Shell Compatibility Mode294473
Node: Job Control301129
Node: Job Control Basics301589
Node: Job Control Builtins306585
Node: Job Control Variables311985
Node: Command Line Editing313141
Node: Introduction and Notation314812
Node: Readline Interaction316435
Node: Readline Bare Essentials317626
Node: Readline Movement Commands319409
Node: Readline Killing Commands320369
Node: Readline Arguments322287
Node: Searching323331
Node: Readline Init File325517
Node: Readline Init File Syntax326776
Node: Conditional Init Constructs347315
Node: Sample Init File351511
Node: Bindable Readline Commands354635
Node: Commands For Moving355839
Node: Commands For History357890
Node: Commands For Text362683
Node: Commands For Killing366332
Node: Numeric Arguments369365
Node: Commands For Completion370504
Node: Keyboard Macros374695
Node: Miscellaneous Commands375382
Node: Readline vi Mode381066
Node: Programmable Completion381973
Node: Programmable Completion Builtins389753
Node: A Programmable Completion Example400448
Node: Using History Interactively405695
Node: Bash History Facilities406379
Node: Bash History Builtins409384
Node: History Interaction414113
Node: Event Designators417733
Node: Word Designators419087
Node: Modifiers420847
Node: Installing Bash422658
Node: Basic Installation423795
Node: Compilers and Options427053
Node: Compiling For Multiple Architectures427794
Node: Installation Names429487
Node: Specifying the System Type430305
Node: Sharing Defaults431021
Node: Operation Controls431694
Node: Optional Features432652
Node: Reporting Bugs443170
Node: Major Differences From The Bourne Shell444364
Node: GNU Free Documentation License461216
Node: Indexes486393
Node: Builtin Index486847
Node: Reserved Word Index493674
Node: Variable Index496122
Node: Function Index512019
Node: Concept Index525529
Node: Top899
Node: Introduction2821
Node: What is Bash?3037
Node: What is a shell?4151
Node: Definitions6689
Node: Basic Shell Features9640
Node: Shell Syntax10859
Node: Shell Operation11885
Node: Quoting13178
Node: Escape Character14478
Node: Single Quotes14963
Node: Double Quotes15311
Node: ANSI-C Quoting16589
Node: Locale Translation17848
Node: Comments19001
Node: Shell Commands19619
Node: Reserved Words20557
Node: Simple Commands21313
Node: Pipelines21967
Node: Lists24899
Node: Compound Commands26690
Node: Looping Constructs27702
Node: Conditional Constructs30197
Node: Command Grouping41768
Node: Coprocesses43247
Node: GNU Parallel45150
Node: Shell Functions49451
Node: Shell Parameters56658
Node: Positional Parameters61071
Node: Special Parameters61971
Node: Shell Expansions65195
Node: Brace Expansion67318
Node: Tilde Expansion70041
Node: Shell Parameter Expansion72658
Node: Command Substitution87787
Node: Arithmetic Expansion89142
Node: Process Substitution90074
Node: Word Splitting91194
Node: Filename Expansion93138
Node: Pattern Matching95687
Node: Quote Removal99673
Node: Redirections99968
Node: Executing Commands109538
Node: Simple Command Expansion110208
Node: Command Search and Execution112162
Node: Command Execution Environment114538
Node: Environment117522
Node: Exit Status119181
Node: Signals120851
Node: Shell Scripts122818
Node: Shell Builtin Commands125830
Node: Bourne Shell Builtins127868
Node: Bash Builtins148797
Node: Modifying Shell Behavior178732
Node: The Set Builtin179077
Node: The Shopt Builtin189490
Node: Special Builtins204400
Node: Shell Variables205379
Node: Bourne Shell Variables205816
Node: Bash Variables207920
Node: Bash Features240554
Node: Invoking Bash241567
Node: Bash Startup Files247580
Node: Interactive Shells252683
Node: What is an Interactive Shell?253093
Node: Is this Shell Interactive?253742
Node: Interactive Shell Behavior254557
Node: Bash Conditional Expressions258071
Node: Shell Arithmetic262648
Node: Aliases265588
Node: Arrays268208
Node: The Directory Stack274217
Node: Directory Stack Builtins275001
Node: Controlling the Prompt277969
Node: The Restricted Shell280919
Node: Bash POSIX Mode283513
Node: Shell Compatibility Mode294549
Node: Job Control301205
Node: Job Control Basics301665
Node: Job Control Builtins306661
Node: Job Control Variables312061
Node: Command Line Editing313217
Node: Introduction and Notation314888
Node: Readline Interaction316511
Node: Readline Bare Essentials317702
Node: Readline Movement Commands319485
Node: Readline Killing Commands320445
Node: Readline Arguments322363
Node: Searching323407
Node: Readline Init File325593
Node: Readline Init File Syntax326852
Node: Conditional Init Constructs347391
Node: Sample Init File351587
Node: Bindable Readline Commands354711
Node: Commands For Moving355915
Node: Commands For History357966
Node: Commands For Text362759
Node: Commands For Killing366408
Node: Numeric Arguments369441
Node: Commands For Completion370580
Node: Keyboard Macros374771
Node: Miscellaneous Commands375458
Node: Readline vi Mode381142
Node: Programmable Completion382049
Node: Programmable Completion Builtins389829
Node: A Programmable Completion Example400524
Node: Using History Interactively405771
Node: Bash History Facilities406455
Node: Bash History Builtins409460
Node: History Interaction414189
Node: Event Designators417809
Node: Word Designators419163
Node: Modifiers420923
Node: Installing Bash422734
Node: Basic Installation423871
Node: Compilers and Options427129
Node: Compiling For Multiple Architectures427870
Node: Installation Names429563
Node: Specifying the System Type430381
Node: Sharing Defaults431097
Node: Operation Controls431770
Node: Optional Features432728
Node: Reporting Bugs443246
Node: Major Differences From The Bourne Shell444440
Node: GNU Free Documentation License461292
Node: Indexes486469
Node: Builtin Index486923
Node: Reserved Word Index493750
Node: Variable Index496198
Node: Function Index512095
Node: Concept Index525605

End Tag Table
+5 -5
View File
@@ -1,4 +1,4 @@
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/MacPorts 2019.50896_2) (preloaded format=pdfetex 2019.11.6) 7 SEP 2020 09:52
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/MacPorts 2019.50896_2) (preloaded format=pdfetex 2019.11.6) 1 OCT 2020 14:49
entering extended mode
restricted \write18 enabled.
file:line:error style messages enabled.
@@ -308,7 +308,7 @@ texinfo.tex: doing @include of fdl.texi
Here is how much of TeX's memory you used:
4087 strings out of 497098
47293 string characters out of 6206772
139204 words of memory out of 5000000
139250 words of memory out of 5000000
4863 multiletter control sequences out of 15000+600000
34315 words of font info for 116 fonts, out of 8000000 for 9000
51 hyphenation exceptions out of 8191
@@ -330,10 +330,10 @@ fonts/type1/public/amsfonts/cm/cmti10.pfb></opt/local/share/texmf-texlive/fonts
lic/amsfonts/cm/cmtt9.pfb></opt/local/share/texmf-texlive/fonts/type1/public/cm
-super/sfrm1095.pfb></opt/local/share/texmf-texlive/fonts/type1/public/cm-super
/sfrm1440.pfb>
Output written on bashref.pdf (189 pages, 769148 bytes).
Output written on bashref.pdf (189 pages, 769319 bytes).
PDF statistics:
2680 PDF objects out of 2984 (max. 8388607)
2445 compressed objects within 25 object streams
2682 PDF objects out of 2984 (max. 8388607)
2447 compressed objects within 25 object streams
317 named destinations out of 1000 (max. 500000)
1141 words of extra memory for PDF output out of 10000 (max. 10000000)
BIN
View File
Binary file not shown.
+98 -95
View File
@@ -1,7 +1,7 @@
%!PS-Adobe-2.0
%%Creator: dvips(k) 5.999 Copyright 2019 Radical Eye Software
%%Title: bashref.dvi
%%CreationDate: Mon Sep 7 13:52:24 2020
%%CreationDate: Thu Oct 1 18:49:31 2020
%%Pages: 189
%%PageOrder: Ascend
%%BoundingBox: 0 0 612 792
@@ -12,7 +12,7 @@
%DVIPSWebPage: (www.radicaleye.com)
%DVIPSCommandLine: dvips -D 600 -t letter -o bashref.ps bashref.dvi
%DVIPSParameters: dpi=600
%DVIPSSource: TeX output 2020.09.07:0952
%DVIPSSource: TeX output 2020.10.01:1449
%%BeginProcSet: tex.pro 0 0
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -7614,23 +7614,24 @@ ifelse
TeXDict begin 1 0 bop 150 1318 a Fv(Bash)64 b(Reference)j(Man)-5
b(ual)p 150 1385 3600 34 v 2361 1481 a Fu(Reference)31
b(Do)s(cumen)m(tation)i(for)d(Bash)2428 1589 y(Edition)h(5.1,)g(for)f
Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.1.)3252 1697 y(August)f(2020)150
4927 y Fs(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11 b(estern)46
b(Reserv)l(e)g(Univ)l(ersit)l(y)150 5068 y(Brian)f(F)-11
b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)-11
Ft(Bash)g Fu(V)-8 b(ersion)31 b(5.1.)3118 1697 y(Septem)m(b)s(er)f
(2020)150 4927 y Fs(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11
b(estern)46 b(Reserv)l(e)g(Univ)l(ersit)l(y)150 5068
y(Brian)f(F)-11 b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)-11
b(oundation)p 150 5141 3600 17 v eop end
%%Page: 2 2
TeXDict begin 2 1 bop 150 4279 a Fu(This)35 b(text)h(is)g(a)g(brief)f
(description)h(of)f(the)h(features)g(that)g(are)g(presen)m(t)g(in)f
(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(5.1,)c(25)f(August)f
(2020\).)150 4523 y(This)e(is)g(Edition)h(5.1,)h(last)f(up)s(dated)e
(25)i(August)f(2020,)j(of)e Fr(The)f(GNU)h(Bash)f(Reference)h(Man)m
(ual)p Fu(,)h(for)150 4633 y Ft(Bash)p Fu(,)f(V)-8 b(ersion)31
b(5.1.)150 4767 y(Cop)m(yrigh)m(t)602 4764 y(c)577 4767
y Fq(\015)f Fu(1988{2018)35 b(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8
b(oundation,)31 b(Inc.)390 4902 y(P)m(ermission)21 b(is)f(gran)m(ted)h
(to)g(cop)m(y)-8 b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s
(cumen)m(t)f(under)f(the)390 5011 y(terms)25 b(of)h(the)f(GNU)h(F)-8
(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(5.1,)c(23)f(Septem)m(b)s
(er)f(2020\).)150 4523 y(This)e(is)h(Edition)f(5.1,)j(last)e(up)s
(dated)f(23)h(Septem)m(b)s(er)f(2020,)j(of)e Fr(The)f(GNU)i(Bash)e
(Reference)i(Man)m(ual)p Fu(,)150 4633 y(for)g Ft(Bash)p
Fu(,)g(V)-8 b(ersion)31 b(5.1.)150 4767 y(Cop)m(yrigh)m(t)602
4764 y(c)577 4767 y Fq(\015)f Fu(1988{2018)35 b(F)-8
b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390
4902 y(P)m(ermission)21 b(is)f(gran)m(ted)h(to)g(cop)m(y)-8
b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s(cumen)m(t)f
(under)f(the)390 5011 y(terms)25 b(of)h(the)f(GNU)h(F)-8
b(ree)27 b(Do)s(cumen)m(tation)g(License,)g(V)-8 b(ersion)26
b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)390 5121 y(published)43
b(b)m(y)h(the)h(F)-8 b(ree)46 b(Soft)m(w)m(are)g(F)-8
@@ -13762,124 +13763,126 @@ b(in)f(the)h(en)m(vironmen)m(t)g(when)e(the)i(shell)f(starts)h(with)f
(v)-5 b(alue)630 2466 y(`)p Ft(t)p Fu(',)36 b(it)f(assumes)f(that)h
(the)g(shell)f(is)h(running)e(in)h(an)g(Emacs)h(shell)g(bu\013er)e(and)
h(disables)630 2576 y(line)d(editing.)150 2734 y Ft(ENV)336
b Fu(Similar)35 b(to)g Ft(BASH_ENV)p Fu(;)h(used)e(when)g(the)h(shell)g
(is)g(in)m(v)m(ok)m(ed)h(in)e Fm(posix)h Fu(Mo)s(de)g(\(see)g(Sec-)630
2844 y(tion)c(6.11)h([Bash)f(POSIX)e(Mo)s(de],)i(page)g(101\).)150
3002 y Ft(EPOCHREALTIME)630 3112 y Fu(Eac)m(h)38 b(time)f(this)g
b Fu(Expanded)30 b(and)h(executed)h(similarlt)m(y)g(to)g
Ft(BASH_ENV)d Fu(\(see)k(Section)f(6.2)g([Bash)g(Startup)630
2844 y(Files],)39 b(page)e(88\))h(when)d(an)h(in)m(teractiv)m(e)j
(shell)d(is)h(in)m(v)m(ok)m(ed)g(in)f Fm(posix)g Fu(Mo)s(de)g(\(see)h
(Sec-)630 2953 y(tion)31 b(6.11)h([Bash)f(POSIX)e(Mo)s(de],)i(page)g
(101\).)150 3112 y Ft(EPOCHREALTIME)630 3221 y Fu(Eac)m(h)38
b(time)f(this)g(parameter)h(is)f(referenced,)i(it)f(expands)e(to)i(the)
f(n)m(um)m(b)s(er)f(of)h(seconds)630 3331 y(since)f(the)g(Unix)f(Ep)s
(o)s(c)m(h)g(as)h(a)g(\015oating)h(p)s(oin)m(t)f(v)-5
b(alue)36 b(with)f(micro-second)i(gran)m(ularit)m(y)630
3440 y(\(see)42 b(the)g(do)s(cumen)m(tation)g(for)f(the)g(C)g(library)g
(function)g Fr(time)47 b Fu(for)41 b(the)h(de\014nition)f(of)630
3550 y(Ep)s(o)s(c)m(h\).)82 b(Assignmen)m(ts)44 b(to)h
Ft(EPOCHREALTIME)c Fu(are)j(ignored.)83 b(If)43 b Ft(EPOCHREALTIME)e
Fu(is)630 3660 y(unset,)30 b(it)h(loses)g(its)g(sp)s(ecial)g(prop)s
(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)150
3818 y Ft(EPOCHSECONDS)630 3927 y Fu(Eac)m(h)38 b(time)f(this)g
(parameter)h(is)f(referenced,)i(it)f(expands)e(to)i(the)f(n)m(um)m(b)s
(er)f(of)h(seconds)630 3221 y(since)f(the)g(Unix)f(Ep)s(o)s(c)m(h)g(as)
h(a)g(\015oating)h(p)s(oin)m(t)f(v)-5 b(alue)36 b(with)f(micro-second)i
(gran)m(ularit)m(y)630 3331 y(\(see)42 b(the)g(do)s(cumen)m(tation)g
(for)f(the)g(C)g(library)g(function)g Fr(time)47 b Fu(for)41
b(the)h(de\014nition)f(of)630 3440 y(Ep)s(o)s(c)m(h\).)82
b(Assignmen)m(ts)44 b(to)h Ft(EPOCHREALTIME)c Fu(are)j(ignored.)83
b(If)43 b Ft(EPOCHREALTIME)e Fu(is)630 3550 y(unset,)30
b(it)h(loses)g(its)g(sp)s(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f(it)h
(is)g(subsequen)m(tly)f(reset.)150 3708 y Ft(EPOCHSECONDS)630
3818 y Fu(Eac)m(h)38 b(time)f(this)g(parameter)h(is)f(referenced,)i(it)
f(expands)e(to)i(the)f(n)m(um)m(b)s(er)f(of)h(seconds)630
3927 y(since)e(the)g(Unix)f(Ep)s(o)s(c)m(h)g(\(see)i(the)f(do)s(cumen)m
(tation)g(for)g(the)f(C)h(library)f(function)g Fr(time)630
4037 y Fu(for)41 b(the)g(de\014nition)g(of)h(Ep)s(o)s(c)m(h\).)73
b(Assignmen)m(ts)41 b(to)h Ft(EPOCHSECONDS)c Fu(are)k(ignored.)73
b(If)630 4147 y Ft(EPOCHSECONDS)27 b Fu(is)j(unset,)g(it)g(loses)h(its)
g(sp)s(ecial)f(prop)s(erties,)g(ev)m(en)h(if)f(it)g(is)g(subsequen)m
(tly)630 4256 y(reset.)150 4415 y Ft(EUID)288 b Fu(The)30
b(n)m(umeric)g(e\013ectiv)m(e)j(user)d(id)g(of)g(the)h(curren)m(t)f
(user.)40 b(This)30 b(v)-5 b(ariable)31 b(is)f(readonly)-8
b(.)150 4573 y Ft(EXECIGNORE)630 4682 y Fu(A)29 b(colon-separated)h
(list)f(of)g(shell)g(patterns)f(\(see)i(Section)f(3.5.8.1)i([P)m
(attern)f(Matc)m(hing],)630 4792 y(page)j(33\))g(de\014ning)e(the)h
(list)g(of)g(\014lenames)g(to)g(b)s(e)g(ignored)g(b)m(y)f(command)h
(searc)m(h)g(using)630 4902 y Ft(PATH)p Fu(.)k(Files)22
b(whose)f(full)g(pathnames)g(matc)m(h)h(one)f(of)g(these)h(patterns)e
(are)i(not)f(considered)630 5011 y(executable)j(\014les)e(for)g(the)h
(purp)s(oses)d(of)j(completion)h(and)d(command)i(execution)g(via)g
Ft(PATH)630 5121 y Fu(lo)s(okup.)56 b(This)35 b(do)s(es)g(not)h
(a\013ect)i(the)d(b)s(eha)m(vior)h(of)g(the)g Ft([)p
Fu(,)h Ft(test)p Fu(,)f(and)f Ft([[)g Fu(commands.)630
5230 y(F)-8 b(ull)42 b(pathnames)e(in)h(the)g(command)g(hash)f(table)i
(are)g(not)f(sub)5 b(ject)41 b(to)g Ft(EXECIGNORE)p Fu(.)630
5340 y(Use)30 b(this)f(v)-5 b(ariable)30 b(to)g(ignore)g(shared)f
(library)g(\014les)g(that)h(ha)m(v)m(e)h(the)f(executable)h(bit)e(set,)
p eop end
(er)f(of)h(seconds)630 4037 y(since)e(the)g(Unix)f(Ep)s(o)s(c)m(h)g
(\(see)i(the)f(do)s(cumen)m(tation)g(for)g(the)f(C)h(library)f
(function)g Fr(time)630 4147 y Fu(for)41 b(the)g(de\014nition)g(of)h
(Ep)s(o)s(c)m(h\).)73 b(Assignmen)m(ts)41 b(to)h Ft(EPOCHSECONDS)c
Fu(are)k(ignored.)73 b(If)630 4256 y Ft(EPOCHSECONDS)27
b Fu(is)j(unset,)g(it)g(loses)h(its)g(sp)s(ecial)f(prop)s(erties,)g(ev)
m(en)h(if)f(it)g(is)g(subsequen)m(tly)630 4366 y(reset.)150
4524 y Ft(EUID)288 b Fu(The)30 b(n)m(umeric)g(e\013ectiv)m(e)j(user)d
(id)g(of)g(the)h(curren)m(t)f(user.)40 b(This)30 b(v)-5
b(ariable)31 b(is)f(readonly)-8 b(.)150 4682 y Ft(EXECIGNORE)630
4792 y Fu(A)29 b(colon-separated)h(list)f(of)g(shell)g(patterns)f
(\(see)i(Section)f(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)630
4902 y(page)j(33\))g(de\014ning)e(the)h(list)g(of)g(\014lenames)g(to)g
(b)s(e)g(ignored)g(b)m(y)f(command)h(searc)m(h)g(using)630
5011 y Ft(PATH)p Fu(.)k(Files)22 b(whose)f(full)g(pathnames)g(matc)m(h)
h(one)f(of)g(these)h(patterns)e(are)i(not)f(considered)630
5121 y(executable)j(\014les)e(for)g(the)h(purp)s(oses)d(of)j
(completion)h(and)d(command)i(execution)g(via)g Ft(PATH)630
5230 y Fu(lo)s(okup.)56 b(This)35 b(do)s(es)g(not)h(a\013ect)i(the)d(b)
s(eha)m(vior)h(of)g(the)g Ft([)p Fu(,)h Ft(test)p Fu(,)f(and)f
Ft([[)g Fu(commands.)630 5340 y(F)-8 b(ull)42 b(pathnames)e(in)h(the)g
(command)g(hash)f(table)i(are)g(not)f(sub)5 b(ject)41
b(to)g Ft(EXECIGNORE)p Fu(.)p eop end
%%Page: 79 85
TeXDict begin 79 84 bop 150 -116 a Fu(Chapter)30 b(5:)41
b(Shell)30 b(V)-8 b(ariables)2459 b(79)630 299 y(but)36
b(are)h(not)g(executable)i(\014les.)60 b(The)36 b(pattern)h(matc)m
(hing)h(honors)e(the)h(setting)h(of)f(the)630 408 y Ft(extglob)28
b Fu(shell)j(option.)150 583 y Ft(FCEDIT)192 b Fu(The)30
b(editor)h(used)e(as)i(a)g(default)f(b)m(y)h(the)f Ft(-e)g
Fu(option)h(to)g(the)f Ft(fc)g Fu(builtin)g(command.)150
757 y Ft(FIGNORE)144 b Fu(A)35 b(colon-separated)i(list)f(of)g
b(Shell)30 b(V)-8 b(ariables)2459 b(79)630 299 y(Use)30
b(this)f(v)-5 b(ariable)30 b(to)g(ignore)g(shared)f(library)g(\014les)g
(that)h(ha)m(v)m(e)h(the)f(executable)h(bit)e(set,)630
408 y(but)36 b(are)h(not)g(executable)i(\014les.)60 b(The)36
b(pattern)h(matc)m(hing)h(honors)e(the)h(setting)h(of)f(the)630
518 y Ft(extglob)28 b Fu(shell)j(option.)150 679 y Ft(FCEDIT)192
b Fu(The)30 b(editor)h(used)e(as)i(a)g(default)f(b)m(y)h(the)f
Ft(-e)g Fu(option)h(to)g(the)f Ft(fc)g Fu(builtin)g(command.)150
840 y Ft(FIGNORE)144 b Fu(A)35 b(colon-separated)i(list)f(of)g
(su\016xes)e(to)i(ignore)g(when)e(p)s(erforming)g(\014lename)i(comple-)
630 866 y(tion.)k(A)27 b(\014lename)g(whose)f(su\016x)g(matc)m(hes)i
630 950 y(tion.)k(A)27 b(\014lename)g(whose)f(su\016x)g(matc)m(hes)i
(one)f(of)g(the)g(en)m(tries)g(in)g Ft(FIGNORE)d Fu(is)j(excluded)630
976 y(from)j(the)g(list)h(of)g(matc)m(hed)g(\014lenames.)41
1060 y(from)j(the)g(list)h(of)g(matc)m(hed)g(\014lenames.)41
b(A)30 b(sample)h(v)-5 b(alue)31 b(is)f(`)p Ft(.o:~)p
Fu(')150 1150 y Ft(FUNCNAME)96 b Fu(An)35 b(arra)m(y)i(v)-5
Fu(')150 1221 y Ft(FUNCNAME)96 b Fu(An)35 b(arra)m(y)i(v)-5
b(ariable)36 b(con)m(taining)h(the)f(names)g(of)g(all)g(shell)g
(functions)g(curren)m(tly)f(in)h(the)630 1259 y(execution)g(call)h
(functions)g(curren)m(tly)f(in)h(the)630 1330 y(execution)g(call)h
(stac)m(k.)57 b(The)34 b(elemen)m(t)j(with)e(index)g(0)h(is)f(the)g
(name)h(of)f(an)m(y)h(curren)m(tly-)630 1369 y(executing)f(shell)f
(name)h(of)f(an)m(y)h(curren)m(tly-)630 1440 y(executing)f(shell)f
(function.)51 b(The)34 b(b)s(ottom-most)h(elemen)m(t)g(\(the)g(one)f
(with)g(the)g(highest)630 1479 y(index\))e(is)h Ft("main")p
(with)g(the)g(highest)630 1549 y(index\))e(is)h Ft("main")p
Fu(.)44 b(This)32 b(v)-5 b(ariable)33 b(exists)g(only)g(when)e(a)i
(shell)f(function)g(is)g(executing.)630 1588 y(Assignmen)m(ts)23
(shell)f(function)g(is)g(executing.)630 1659 y(Assignmen)m(ts)23
b(to)f Ft(FUNCNAME)e Fu(ha)m(v)m(e)k(no)e(e\013ect.)39
b(If)22 b Ft(FUNCNAME)e Fu(is)i(unset,)h(it)g(loses)g(its)f(sp)s(ecial)
630 1698 y(prop)s(erties,)30 b(ev)m(en)h(if)f(it)h(is)g(subsequen)m
(tly)f(reset.)630 1840 y(This)h(v)-5 b(ariable)32 b(can)f(b)s(e)g(used)
630 1769 y(prop)s(erties,)30 b(ev)m(en)h(if)f(it)h(is)g(subsequen)m
(tly)f(reset.)630 1904 y(This)h(v)-5 b(ariable)32 b(can)f(b)s(e)g(used)
g(with)g Ft(BASH_LINENO)d Fu(and)j Ft(BASH_SOURCE)p Fu(.)40
b(Eac)m(h)32 b(elemen)m(t)630 1949 y(of)g Ft(FUNCNAME)d
b(Eac)m(h)32 b(elemen)m(t)630 2014 y(of)g Ft(FUNCNAME)d
Fu(has)j(corresp)s(onding)e(elemen)m(ts)j(in)f Ft(BASH_LINENO)c
Fu(and)k Ft(BASH_SOURCE)c Fu(to)630 2059 y(describ)s(e)39
Fu(and)k Ft(BASH_SOURCE)c Fu(to)630 2123 y(describ)s(e)39
b(the)h(call)h(stac)m(k.)70 b(F)-8 b(or)41 b(instance,)i
Ft(${FUNCNAME[$i]})35 b Fu(w)m(as)41 b(called)f(from)g(the)630
2168 y(\014le)27 b Ft(${BASH_SOURCE[$i+1]})21 b Fu(at)27
2233 y(\014le)27 b Ft(${BASH_SOURCE[$i+1]})21 b Fu(at)27
b(line)h(n)m(um)m(b)s(er)d Ft(${BASH_LINENO[$i]})p Fu(.)34
b(The)27 b Ft(caller)630 2278 y Fu(builtin)j(displa)m(ys)g(the)h
b(The)27 b Ft(caller)630 2342 y Fu(builtin)j(displa)m(ys)g(the)h
(curren)m(t)f(call)i(stac)m(k)g(using)d(this)i(information.)150
2452 y Ft(FUNCNEST)96 b Fu(If)34 b(set)i(to)f(a)h(n)m(umeric)e(v)-5
2504 y Ft(FUNCNEST)96 b Fu(If)34 b(set)i(to)f(a)h(n)m(umeric)e(v)-5
b(alue)36 b(greater)g(than)e(0,)j(de\014nes)d(a)h(maxim)m(um)g
(function)g(nesting)630 2562 y(lev)m(el.)42 b(F)-8 b(unction)29
(function)g(nesting)630 2613 y(lev)m(el.)42 b(F)-8 b(unction)29
b(in)m(v)m(o)s(cations)h(that)f(exceed)h(this)e(nesting)h(lev)m(el)h
(will)f(cause)g(the)f(curren)m(t)630 2671 y(command)i(to)h(ab)s(ort.)
150 2845 y Ft(GLOBIGNORE)630 2955 y Fu(A)k(colon-separated)i(list)f(of)
(will)f(cause)g(the)f(curren)m(t)630 2723 y(command)i(to)h(ab)s(ort.)
150 2884 y Ft(GLOBIGNORE)630 2993 y Fu(A)k(colon-separated)i(list)f(of)
f(patterns)g(de\014ning)f(the)i(set)f(of)g(\014le)h(names)f(to)g(b)s(e)
g(ignored)630 3064 y(b)m(y)28 b(\014lename)h(expansion.)40
g(ignored)630 3103 y(b)m(y)28 b(\014lename)h(expansion.)40
b(If)28 b(a)h(\014le)g(name)g(matc)m(hed)g(b)m(y)g(a)g(\014lename)f
(expansion)h(pattern)630 3174 y(also)k(matc)m(hes)g(one)f(of)g(the)g
(expansion)h(pattern)630 3213 y(also)k(matc)m(hes)g(one)f(of)g(the)g
(patterns)g(in)f Ft(GLOBIGNORE)p Fu(,)f(it)i(is)g(remo)m(v)m(ed)h(from)
e(the)h(list)h(of)630 3284 y(matc)m(hes.)41 b(The)27
e(the)h(list)h(of)630 3322 y(matc)m(hes.)41 b(The)27
b(pattern)g(matc)m(hing)h(honors)f(the)g(setting)i(of)e(the)h
Ft(extglob)d Fu(shell)i(option.)150 3458 y Ft(GROUPS)192
Ft(extglob)d Fu(shell)i(option.)150 3483 y Ft(GROUPS)192
b Fu(An)36 b(arra)m(y)g(v)-5 b(ariable)37 b(con)m(taining)g(the)f(list)
h(of)f(groups)g(of)g(whic)m(h)f(the)i(curren)m(t)e(user)h(is)g(a)630
3567 y(mem)m(b)s(er.)41 b(Assignmen)m(ts)30 b(to)i Ft(GROUPS)d
3593 y(mem)m(b)s(er.)41 b(Assignmen)m(ts)30 b(to)i Ft(GROUPS)d
Fu(ha)m(v)m(e)i(no)g(e\013ect.)42 b(If)30 b Ft(GROUPS)f
Fu(is)i(unset,)f(it)h(loses)h(its)630 3677 y(sp)s(ecial)f(prop)s
Fu(is)i(unset,)f(it)h(loses)h(its)630 3703 y(sp)s(ecial)f(prop)s
(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f(reset.)150
3851 y Ft(histchars)630 3960 y Fu(Up)c(to)g(three)g(c)m(haracters)i
3864 y Ft(histchars)630 3973 y Fu(Up)c(to)g(three)g(c)m(haracters)i
(whic)m(h)d(con)m(trol)j(history)d(expansion,)i(quic)m(k)g
(substitution,)g(and)630 4070 y(tok)m(enization)k(\(see)f(Section)f
(substitution,)g(and)630 4083 y(tok)m(enization)k(\(see)f(Section)f
(9.3)h([History)f(In)m(teraction],)i(page)f(148\).)41
b(The)29 b(\014rst)e(c)m(harac-)630 4180 y(ter)j(is)f(the)g
b(The)29 b(\014rst)e(c)m(harac-)630 4193 y(ter)j(is)f(the)g
Fr(history)g(expansion)g Fu(c)m(haracter,)j(that)e(is,)f(the)h(c)m
(haracter)h(whic)m(h)d(signi\014es)i(the)630 4289 y(start)25
(haracter)h(whic)m(h)d(signi\014es)i(the)630 4302 y(start)25
b(of)f(a)h(history)f(expansion,)i(normally)e(`)p Ft(!)p
Fu('.)39 b(The)24 b(second)g(c)m(haracter)i(is)e(the)g(c)m(haracter)630
4399 y(whic)m(h)36 b(signi\014es)g(`quic)m(k)h(substitution')f(when)f
4412 y(whic)m(h)36 b(signi\014es)g(`quic)m(k)h(substitution')f(when)f
(seen)h(as)g(the)g(\014rst)f(c)m(haracter)j(on)e(a)g(line,)630
4508 y(normally)27 b(`)p Ft(^)p Fu('.)39 b(The)26 b(optional)i(third)d
4521 y(normally)27 b(`)p Ft(^)p Fu('.)39 b(The)26 b(optional)i(third)d
(c)m(haracter)j(is)e(the)h(c)m(haracter)h(whic)m(h)e(indicates)h(that)
630 4618 y(the)34 b(remainder)f(of)h(the)g(line)g(is)f(a)h(commen)m(t)h
630 4631 y(the)34 b(remainder)f(of)h(the)g(line)g(is)f(a)h(commen)m(t)h
(when)e(found)f(as)i(the)g(\014rst)f(c)m(haracter)i(of)f(a)630
4728 y(w)m(ord,)i(usually)f(`)p Ft(#)p Fu('.)55 b(The)34
4740 y(w)m(ord,)i(usually)f(`)p Ft(#)p Fu('.)55 b(The)34
b(history)h(commen)m(t)h(c)m(haracter)h(causes)e(history)g
(substitution)630 4837 y(to)27 b(b)s(e)f(skipp)s(ed)f(for)i(the)f
(substitution)630 4850 y(to)27 b(b)s(e)f(skipp)s(ed)f(for)i(the)f
(remaining)h(w)m(ords)f(on)h(the)f(line.)40 b(It)27 b(do)s(es)f(not)h
(necessarily)g(cause)630 4947 y(the)k(shell)f(parser)g(to)h(treat)g
(necessarily)g(cause)630 4960 y(the)k(shell)f(parser)g(to)h(treat)g
(the)g(rest)g(of)f(the)h(line)f(as)h(a)g(commen)m(t.)150
5121 y Ft(HISTCMD)144 b Fu(The)44 b(history)h(n)m(um)m(b)s(er,)j(or)d
(index)g(in)f(the)h(history)g(list,)50 b(of)45 b(the)g(curren)m(t)g
+1 -1
View File
@@ -1,6 +1,6 @@
%!PS-Adobe-3.0
%%Creator: groff version 1.22.4
%%CreationDate: Mon Sep 7 09:52:16 2020
%%CreationDate: Thu Oct 1 14:49:24 2020
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
+1 -1
View File
@@ -1,6 +1,6 @@
%!PS-Adobe-3.0
%%Creator: groff version 1.22.4
%%CreationDate: Mon Sep 7 09:52:16 2020
%%CreationDate: Thu Oct 1 14:49:24 2020
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%DocumentSuppliedResources: procset grops 1.22 4
+5 -1
View File
@@ -1617,7 +1617,7 @@ execute_in_subshell (command, asynchronous, pipe_in, pipe_out, fds_to_close)
default_buffered_input = -1;
#endif
#if 0 /* XXX - TAG:bash-5.1 */
#if 0 /* TAG: bash-5.2 */
if (user_subshell && command->type == cm_subshell)
optimize_subshell_command (command->value.Subshell->command);
#endif
@@ -5484,7 +5484,11 @@ execute_disk_command (words, redirects, command_line, pipe_in, pipe_out,
{
/* If we're optimizing out the fork (implicit `exec'), decrement the
shell level like `exec' would do. */
#if 0 /* TAG: bash-5.2 psmith 10/11/2020 */
if (nofork && pipe_in == NO_PIPE && pipe_out == NO_PIPE && (subshell_environment & SUBSHELL_PIPE) == 0)
#else
if (nofork && pipe_in == NO_PIPE && pipe_out == NO_PIPE)
#endif
adjust_shell_level (-1);
maybe_make_export_env ();
+1 -1
View File
@@ -552,7 +552,7 @@ if the returned line should be displayed, but not executed,
as with the \fB:p\fP modifier.
.PD
.RE
If an error ocurred in expansion, then \fIoutput\fP contains a descriptive
If an error occurred in expansion, then \fIoutput\fP contains a descriptive
error message.
.Fn3 "char *" get_history_event "const char *string" "int *cindex" "int qchar"
+12 -1
View File
@@ -456,7 +456,7 @@ _rl_init_terminal_io (const char *terminal_name)
{
const char *term;
char *buffer;
int tty, tgetent_ret;
int tty, tgetent_ret, dumbterm;
term = terminal_name ? terminal_name : sh_get_env_value ("TERM");
_rl_term_clrpag = _rl_term_cr = _rl_term_clreol = _rl_term_clrscroll = (char *)NULL;
@@ -465,6 +465,8 @@ _rl_init_terminal_io (const char *terminal_name)
if (term == 0)
term = "dumb";
dumbterm = STREQ (term, "dumb");
#ifdef __MSDOS__
_rl_term_im = _rl_term_ei = _rl_term_ic = _rl_term_IC = (char *)NULL;
_rl_term_up = _rl_term_dc = _rl_term_DC = _rl_visible_bell = (char *)NULL;
@@ -544,6 +546,10 @@ _rl_init_terminal_io (const char *terminal_name)
_rl_term_so = _rl_term_se = (char *)NULL;
_rl_terminal_can_insert = term_has_meta = 0;
/* Assume generic unknown terminal can't handle the enable/disable
escape sequences */
_rl_enable_bracketed_paste = 0;
/* Reasonable defaults for tgoto(). Readline currently only uses
tgoto if _rl_term_IC or _rl_term_DC is defined, but just in case we
change that later... */
@@ -595,6 +601,11 @@ _rl_init_terminal_io (const char *terminal_name)
bind_termcap_arrow_keys (vi_insertion_keymap);
#endif /* VI_MODE */
/* There's no way to determine whether or not a given terminal supports
bracketed paste mode, so we assume a terminal named "dumb" does not. */
if (dumbterm)
_rl_enable_bracketed_paste = 0;
return 0;
}
+12 -2
View File
@@ -3605,7 +3605,7 @@ expand_arith_string (string, quoted)
/* This is expanded version of expand_string_internal as it's called by
expand_string_leave_quoted */
td.flags = W_NOPROCSUB|W_NOTILDE; /* don't want process substitution or tilde expansion */
#if 0 /* TAG:bash-5.1 */
#if 0 /* TAG: bash-5.2 */
if (quoted & Q_ARRAYSUB)
td.flags |= W_NOCOMSUB;
#endif
@@ -5939,9 +5939,11 @@ process_substitute (string, open_for_read_in_child)
pid = make_child ((char *)NULL, FORK_ASYNC);
if (pid == 0)
{
#if 0
int old_interactive;
old_interactive = interactive;
#endif
/* The currently-executing shell is not interactive */
interactive = 0;
@@ -5951,8 +5953,11 @@ process_substitute (string, open_for_read_in_child)
restore_original_signals (); /* XXX - what about special builtins? bash-4.2 */
QUIT; /* catch any interrupts we got post-fork */
setup_async_signals ();
#if 0
if (open_for_read_in_child == 0 && old_interactive && (bash_input.type == st_stdin || bash_input.type == st_stream))
async_redirect_stdin ();
#endif
subshell_environment |= SUBSHELL_COMSUB|SUBSHELL_PROCSUB|SUBSHELL_ASYNC;
/* We don't inherit the verbose option for command substitutions now, so
@@ -6109,6 +6114,11 @@ process_substitute (string, open_for_read_in_child)
remove_quoted_escapes (string);
#if 0 /* TAG: bash-5.2 */
startup_state = 2; /* see if we can avoid a fork */
parse_and_execute_level = 0;
#endif
/* Give process substitution a place to jump back to on failure,
so we don't go back up to main (). */
result = setjmp_nosigs (top_level);
@@ -7486,7 +7496,7 @@ verify_substring_values (v, value, substr, vtype, e1p, e2p)
from end of positional parameters? */
#if 1
if ((vtype == VT_ARRAYVAR || vtype == VT_POSPARMS) && *e2p < 0)
#else /* XXX - TAG: bash-5.1 */
#else /* TAG: bash-5.2 */
if (vtype == VT_ARRAYVAR && *e2p < 0)
#endif
{
+1 -1
View File
@@ -1,4 +1,4 @@
BUILD_DIR=/usr/local/build/chet/bash/bash-current
BUILD_DIR=/usr/local/build/bash/bash-current
THIS_SH=$BUILD_DIR/bash
PATH=$PATH:$BUILD_DIR
+1 -1
View File
@@ -50,7 +50,7 @@ unset before after
# EPOCHSECONDS
# not exact, but should work
# could also use python -c 'import time; ts = int(time.time()); print(ts)'
now1=$(perl -e 'print time')
now2=$EPOCHSECONDS