fixes for $LINENO in multi-line simple commands; printf out-of-range values now cause a non-zero return status

This commit is contained in:
Chet Ramey
2023-07-28 11:35:44 -04:00
parent 8418224f32
commit f6a78e24d8
24 changed files with 965 additions and 863 deletions
+115 -105
View File
@@ -2,9 +2,9 @@ This is bashref.info, produced by makeinfo version 6.8 from
bashref.texi.
This text is a brief description of the features that are present in the
Bash shell (version 5.3, 19 July 2023).
Bash shell (version 5.3, 26 July 2023).
This is Edition 5.3, last updated 19 July 2023, of 'The GNU Bash
This is Edition 5.3, last updated 26 July 2023, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.3.
Copyright (C) 1988-2023 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, 19 July 2023). The Bash home page is
Bash shell (version 5.3, 26 July 2023). The Bash home page is
<http://www.gnu.org/software/bash/>.
This is Edition 5.3, last updated 19 July 2023, of 'The GNU Bash
This is Edition 5.3, last updated 26 July 2023, of 'The GNU Bash
Reference Manual', for 'Bash', Version 5.3.
Bash contains features that appear in other popular shells, and some
@@ -1843,6 +1843,14 @@ omitted, the operator tests only for existence.
$ v=123
$ echo ${v-unset}
123
$ echo ${v:-unset-or-null}
123
$ unset v
$ echo ${v-unset}
unset
$ v=
$ echo ${v:-unset-or-null}
unset-or-null
'${PARAMETER:=WORD}'
If PARAMETER is unset or null, the expansion of WORD is assigned to
@@ -4009,9 +4017,9 @@ standard.
characters is enabled. The '-E' option disables the interpretation
of these escape characters, even on systems where they are
interpreted by default. The 'xpg_echo' shell option may be used to
dynamically determine whether or not 'echo' expands these escape
characters by default. 'echo' does not interpret '--' to mean the
end of options.
dynamically determine whether or not 'echo' interprets any options
and expands these escape characters by default. 'echo' does not
interpret '--' to mean the end of options.
'echo' interprets the following escape sequences:
'\a'
@@ -5190,7 +5198,9 @@ This builtin allows you to change additional shell optional behavior.
'xpg_echo'
If set, the 'echo' builtin expands backslash-escape sequences
by default.
by default. If the 'posix' shell option (*note The Set
Builtin::) is also enabled, 'echo' does not interpret any
options.

File: bashref.info, Node: Special Builtins, Prev: Modifying Shell Behavior, Up: Shell Builtin Commands
@@ -12861,103 +12871,103 @@ Node: Shell Expansions70502
Node: Brace Expansion72590
Node: Tilde Expansion75324
Node: Shell Parameter Expansion77945
Node: Command Substitution96347
Node: Arithmetic Expansion99811
Node: Process Substitution100779
Node: Word Splitting101899
Node: Filename Expansion103947
Node: Pattern Matching106880
Node: Quote Removal111882
Node: Redirections112177
Node: Executing Commands121870
Node: Simple Command Expansion122540
Node: Command Search and Execution124650
Node: Command Execution Environment127037
Node: Environment130072
Node: Exit Status131735
Node: Signals133519
Node: Shell Scripts136968
Node: Shell Builtin Commands139995
Node: Bourne Shell Builtins142033
Node: Bash Builtins165169
Node: Modifying Shell Behavior197168
Node: The Set Builtin197513
Node: The Shopt Builtin208457
Node: Special Builtins224464
Node: Shell Variables225443
Node: Bourne Shell Variables225880
Node: Bash Variables227984
Node: Bash Features262941
Node: Invoking Bash263954
Node: Bash Startup Files269967
Node: Interactive Shells275098
Node: What is an Interactive Shell?275509
Node: Is this Shell Interactive?276158
Node: Interactive Shell Behavior276973
Node: Bash Conditional Expressions280602
Node: Shell Arithmetic285244
Node: Aliases288205
Node: Arrays291099
Node: The Directory Stack297662
Node: Directory Stack Builtins298446
Node: Controlling the Prompt302706
Node: The Restricted Shell305671
Node: Bash POSIX Mode308281
Node: Shell Compatibility Mode324424
Node: Job Control332668
Node: Job Control Basics333128
Node: Job Control Builtins338130
Node: Job Control Variables343925
Node: Command Line Editing345081
Node: Introduction and Notation346752
Node: Readline Interaction348375
Node: Readline Bare Essentials349566
Node: Readline Movement Commands351355
Node: Readline Killing Commands352315
Node: Readline Arguments354236
Node: Searching355280
Node: Readline Init File357466
Node: Readline Init File Syntax358727
Node: Conditional Init Constructs382752
Node: Sample Init File386948
Node: Bindable Readline Commands390072
Node: Commands For Moving391276
Node: Commands For History393327
Node: Commands For Text398321
Node: Commands For Killing402299
Node: Numeric Arguments405003
Node: Commands For Completion406142
Node: Keyboard Macros410333
Node: Miscellaneous Commands411021
Node: Readline vi Mode417059
Node: Programmable Completion417966
Node: Programmable Completion Builtins425746
Node: A Programmable Completion Example436866
Node: Using History Interactively442114
Node: Bash History Facilities442798
Node: Bash History Builtins445803
Node: History Interaction450827
Node: Event Designators454447
Node: Word Designators455801
Node: Modifiers457561
Node: Installing Bash459369
Node: Basic Installation460506
Node: Compilers and Options464228
Node: Compiling For Multiple Architectures464969
Node: Installation Names466661
Node: Specifying the System Type468770
Node: Sharing Defaults469487
Node: Operation Controls470160
Node: Optional Features471118
Node: Reporting Bugs482337
Node: Major Differences From The Bourne Shell483671
Node: GNU Free Documentation License500520
Node: Indexes525697
Node: Builtin Index526151
Node: Reserved Word Index533252
Node: Variable Index535700
Node: Function Index552834
Node: Concept Index566555
Node: Command Substitution96538
Node: Arithmetic Expansion100002
Node: Process Substitution100970
Node: Word Splitting102090
Node: Filename Expansion104138
Node: Pattern Matching107071
Node: Quote Removal112073
Node: Redirections112368
Node: Executing Commands122061
Node: Simple Command Expansion122731
Node: Command Search and Execution124841
Node: Command Execution Environment127228
Node: Environment130263
Node: Exit Status131926
Node: Signals133710
Node: Shell Scripts137159
Node: Shell Builtin Commands140186
Node: Bourne Shell Builtins142224
Node: Bash Builtins165360
Node: Modifying Shell Behavior197386
Node: The Set Builtin197731
Node: The Shopt Builtin208675
Node: Special Builtins224813
Node: Shell Variables225792
Node: Bourne Shell Variables226229
Node: Bash Variables228333
Node: Bash Features263290
Node: Invoking Bash264303
Node: Bash Startup Files270316
Node: Interactive Shells275447
Node: What is an Interactive Shell?275858
Node: Is this Shell Interactive?276507
Node: Interactive Shell Behavior277322
Node: Bash Conditional Expressions280951
Node: Shell Arithmetic285593
Node: Aliases288554
Node: Arrays291448
Node: The Directory Stack298011
Node: Directory Stack Builtins298795
Node: Controlling the Prompt303055
Node: The Restricted Shell306020
Node: Bash POSIX Mode308630
Node: Shell Compatibility Mode324773
Node: Job Control333017
Node: Job Control Basics333477
Node: Job Control Builtins338479
Node: Job Control Variables344274
Node: Command Line Editing345430
Node: Introduction and Notation347101
Node: Readline Interaction348724
Node: Readline Bare Essentials349915
Node: Readline Movement Commands351704
Node: Readline Killing Commands352664
Node: Readline Arguments354585
Node: Searching355629
Node: Readline Init File357815
Node: Readline Init File Syntax359076
Node: Conditional Init Constructs383101
Node: Sample Init File387297
Node: Bindable Readline Commands390421
Node: Commands For Moving391625
Node: Commands For History393676
Node: Commands For Text398670
Node: Commands For Killing402648
Node: Numeric Arguments405352
Node: Commands For Completion406491
Node: Keyboard Macros410682
Node: Miscellaneous Commands411370
Node: Readline vi Mode417408
Node: Programmable Completion418315
Node: Programmable Completion Builtins426095
Node: A Programmable Completion Example437215
Node: Using History Interactively442463
Node: Bash History Facilities443147
Node: Bash History Builtins446152
Node: History Interaction451176
Node: Event Designators454796
Node: Word Designators456150
Node: Modifiers457910
Node: Installing Bash459718
Node: Basic Installation460855
Node: Compilers and Options464577
Node: Compiling For Multiple Architectures465318
Node: Installation Names467010
Node: Specifying the System Type469119
Node: Sharing Defaults469836
Node: Operation Controls470509
Node: Optional Features471467
Node: Reporting Bugs482686
Node: Major Differences From The Bourne Shell484020
Node: GNU Free Documentation License500869
Node: Indexes526046
Node: Builtin Index526500
Node: Reserved Word Index533601
Node: Variable Index536049
Node: Function Index553183
Node: Concept Index566904

End Tag Table