From 5cc55f2f734cc27c927acc308749b6aaa49eb125 Mon Sep 17 00:00:00 2001 From: Chet Ramey Date: Tue, 8 Jan 2019 11:03:27 -0500 Subject: [PATCH] commit bash-20190104 snapshot --- CHANGES | 24 ++ CHANGES-5.0 | 24 ++ CWRU/CWRU.chlog | 30 ++ Makefile.in | 2 +- configure | 20 +- configure.ac | 4 +- doc/FAQ | 2 +- doc/bash.0 | 543 +++++++++++++++++----------------- doc/bash.1 | 5 +- doc/bash.html | 7 +- doc/bash.info | 153 +++++----- doc/bash.pdf | Bin 376826 -> 376866 bytes doc/bash.ps | 12 +- doc/bashref.dvi | Bin 767724 -> 767804 bytes doc/bashref.html | 5 +- doc/bashref.info | 153 +++++----- doc/bashref.log | 6 +- doc/bashref.pdf | Bin 753076 -> 753125 bytes doc/bashref.ps | 79 ++--- doc/bashref.texi | 5 +- doc/builtins.0 | 497 +++++++++++++++---------------- doc/builtins.ps | 12 +- doc/rbash.ps | 2 +- examples/loadables/basename.c | 1 + execute_cmd.c | 3 + hashlib.c | 2 + lib/malloc/malloc.c | 4 + lib/sh/unicode.c | 8 +- parse.y | 3 - tests/RUN-ONE-TEST | 2 +- version.c | 4 +- version2.c | 4 +- 32 files changed, 857 insertions(+), 759 deletions(-) diff --git a/CHANGES b/CHANGES index 16e48482..262fd656 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,27 @@ +This document details the changes between this version, bash-5.0-release, and +the previous version, bash-5.0-rc1. + +1. Changes to Bash + +a. Tilde expansion isn't performed on indexed array subscripts, even for + backwards compatibility. + +b. The shell doesn't exit in posix mode if the eval builtin gets a parse + error when run by the command builtin. + +c. Fixed a bug that caused a shell comment in an alias to not find the end + of the alias properly. + +d. Reverted a change from April, 2018 that caused strings containing + backslashes to be flagged as glob patterns. + +2. Changes to Readline + +3. New Features in Bash + +4. New Features in Readline + +------------------------------------------------------------------------------ This document details the changes between this version, bash-5.0-rc1, and the previous version, bash-5.0-beta2. diff --git a/CHANGES-5.0 b/CHANGES-5.0 index a4c3d227..add1f554 100644 --- a/CHANGES-5.0 +++ b/CHANGES-5.0 @@ -1,3 +1,27 @@ +This document details the changes between this version, bash-5.0-release, and +the previous version, bash-5.0-rc1. + +1. Changes to Bash + +a. Tilde expansion isn't performed on indexed array subscripts, even for + backwards compatibility. + +b. The shell doesn't exit in posix mode if the eval builtin gets a parse + error when run by the command builtin. + +c. Fixed a bug that caused a shell comment in an alias to not find the end + of the alias properly. + +d. Reverted a change from April, 2018 that caused strings containing + backslashes to be flagged as glob patterns. + +2. Changes to Readline + +3. New Features in Bash + +4. New Features in Readline + +------------------------------------------------------------------------------ This document details the changes between this version, bash-5.0-rc1, and the previous version, bash-5.0-beta2. diff --git a/CWRU/CWRU.chlog b/CWRU/CWRU.chlog index f05d6204..7367e0bf 100644 --- a/CWRU/CWRU.chlog +++ b/CWRU/CWRU.chlog @@ -4963,3 +4963,33 @@ lib/glob/glob_loop.c - INTERNAL_GLOB_PATTERN_P: revert change from 4/27 that makes this function return non-zero for a backslash in the string. Based on a report from Tom Ryder + +[bash-5.0 frozen] + +[bash-5.0 released] + + 1/6/2019 + -------- +execute_cmd.c + - execute_simple_command: catch all non-zero special builtin errors + (e.g. return not in a function) and make sure a non-interactive + posix-mode shell exits. Old code expected builtins to signal + internal fatal errors with code > 256. Fixes bug reported by + Robert Hailey + +examples/loadables/basename.c + - make sure to include bashgetopt.h. Reported by Angel + + +lib/malloc/malloc.c + - stdlib.h: include if botch isn't defined to provide a declaration + for abort() + +hashlib.c,Makefile.in + - fixes to make hash library testing work for others from + Eduardo Bustamante + +lib/readline/unicode.c + - u32toutf16: correct the second argument to be wchar_t *, and treat + it as such, even though it doesn't make a difference in practice. + Report and fix from Eduardo Bustamante diff --git a/Makefile.in b/Makefile.in index 5fcb44b0..a1f6c807 100644 --- a/Makefile.in +++ b/Makefile.in @@ -968,7 +968,7 @@ depends: force #### PRIVATE TARGETS #### hashtest: hashlib.c - $(CC) -DTEST_HASHING $(CCFLAGS) $(TEST_NBUCKETS) -o $@ $(srcdir)/hashlib.c xmalloc.o $(INTL_LIB) + $(CC) -DTEST_HASHING $(CCFLAGS) $(TEST_NBUCKETS) -o $@ $(srcdir)/hashlib.c xmalloc.o $(INTL_LIB) $(MALLOC_LIBRARY) ############################ DEPENDENCIES ############################### diff --git a/configure b/configure index dd4c4e02..79f88534 100755 --- a/configure +++ b/configure @@ -1,7 +1,7 @@ #! /bin/sh # From configure.ac for Bash 5.0, version 5.005. # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for bash 5.0-rc1. +# Generated by GNU Autoconf 2.69 for bash 5.0-maint. # # Report bugs to . # @@ -581,8 +581,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='bash' PACKAGE_TARNAME='bash' -PACKAGE_VERSION='5.0-rc1' -PACKAGE_STRING='bash 5.0-rc1' +PACKAGE_VERSION='5.0-maint' +PACKAGE_STRING='bash 5.0-maint' PACKAGE_BUGREPORT='bug-bash@gnu.org' PACKAGE_URL='' @@ -1394,7 +1394,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures bash 5.0-rc1 to adapt to many kinds of systems. +\`configure' configures bash 5.0-maint to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1459,7 +1459,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of bash 5.0-rc1:";; + short | recursive ) echo "Configuration of bash 5.0-maint:";; esac cat <<\_ACEOF @@ -1655,7 +1655,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -bash configure 5.0-rc1 +bash configure 5.0-maint generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2364,7 +2364,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by bash $as_me 5.0-rc1, which was +It was created by bash $as_me 5.0-maint, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2759,7 +2759,7 @@ ac_config_headers="$ac_config_headers config.h" BASHVERS=5.0 -RELSTATUS=rc1 +RELSTATUS=maint case "$RELSTATUS" in alp*|bet*|dev*|rc*|releng*|maint*) DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;; @@ -16968,7 +16968,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by bash $as_me 5.0-rc1, which was +This file was extended by bash $as_me 5.0-maint, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -17034,7 +17034,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -bash config.status 5.0-rc1 +bash config.status 5.0-maint configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 20f9111e..71ddc908 100644 --- a/configure.ac +++ b/configure.ac @@ -5,7 +5,7 @@ dnl report bugs to chet@po.cwru.edu dnl dnl Process this file with autoconf to produce a configure script. -# Copyright (C) 1987-2018 Free Software Foundation, Inc. +# Copyright (C) 1987-2019 Free Software Foundation, Inc. # # This program is free software: you can redistribute it and/or modify @@ -24,7 +24,7 @@ dnl Process this file with autoconf to produce a configure script. AC_REVISION([for Bash 5.0, version 5.005])dnl define(bashvers, 5.0) -define(relstatus, rc1) +define(relstatus, maint) AC_INIT([bash], bashvers-relstatus, [bug-bash@gnu.org]) diff --git a/doc/FAQ b/doc/FAQ index e330270a..104d0bc1 100644 --- a/doc/FAQ +++ b/doc/FAQ @@ -1,4 +1,4 @@ -This is the Bash FAQ, version 4.14, for Bash version 4.4. +This is the Bash FAQ, version 4.15, for Bash version 5.0. This document contains a set of frequently-asked questions concerning Bash, the GNU Bourne-Again Shell. Bash is a freely-available command diff --git a/doc/bash.0 b/doc/bash.0 index 3a4d3d64..a062b8ac 100644 --- a/doc/bash.0 +++ b/doc/bash.0 @@ -5504,321 +5504,322 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS aassssoocc__eexxppaanndd__oonnccee If set, the shell suppresses multiple evaluation of associative array subscripts during arithmetic expres- - sion evaluation and while executing builtins that can - perform variable assignments. - aauuttooccdd If set, a command name that is the name of a directory - is executed as if it were the argument to the ccdd com- + sion evaluation, while executing builtins that can per- + form variable assignments, and while executing builtins + that perform array dereferencing. + aauuttooccdd If set, a command name that is the name of a directory + is executed as if it were the argument to the ccdd com- mand. This option is only used by interactive shells. ccddaabbllee__vvaarrss - If set, an argument to the ccdd builtin command that is - not a directory is assumed to be the name of a variable + If set, an argument to the ccdd builtin command that is + not a directory is assumed to be the name of a variable whose value is the directory to change to. ccddssppeellll If set, minor errors in the spelling of a directory com- - ponent in a ccdd command will be corrected. The errors + ponent in a ccdd command will be corrected. The errors checked for are transposed characters, a missing charac- - ter, and one character too many. If a correction is - found, the corrected filename is printed, and the com- - mand proceeds. This option is only used by interactive + ter, and one character too many. If a correction is + found, the corrected filename is printed, and the com- + mand proceeds. This option is only used by interactive shells. cchheecckkhhaasshh If set, bbaasshh checks that a command found in the hash ta- - ble exists before trying to execute it. If a hashed - command no longer exists, a normal path search is per- + ble exists before trying to execute it. If a hashed + command no longer exists, a normal path search is per- formed. cchheecckkjjoobbss If set, bbaasshh lists the status of any stopped and running - jobs before exiting an interactive shell. If any jobs + jobs before exiting an interactive shell. If any jobs are running, this causes the exit to be deferred until a - second exit is attempted without an intervening command - (see JJOOBB CCOONNTTRROOLL above). The shell always postpones + second exit is attempted without an intervening command + (see JJOOBB CCOONNTTRROOLL above). The shell always postpones exiting if any jobs are stopped. cchheecckkwwiinnssiizzee - If set, bbaasshh checks the window size after each external - (non-builtin) command and, if necessary, updates the - values of LLIINNEESS and CCOOLLUUMMNNSS. This option is enabled by + If set, bbaasshh checks the window size after each external + (non-builtin) command and, if necessary, updates the + values of LLIINNEESS and CCOOLLUUMMNNSS. This option is enabled by default. - ccmmddhhiisstt If set, bbaasshh attempts to save all lines of a multiple- - line command in the same history entry. This allows - easy re-editing of multi-line commands. This option is - enabled by default, but only has an effect if command + ccmmddhhiisstt If set, bbaasshh attempts to save all lines of a multiple- + line command in the same history entry. This allows + easy re-editing of multi-line commands. This option is + enabled by default, but only has an effect if command history is enabled, as described above under HHIISSTTOORRYY. ccoommppaatt3311 If set, bbaasshh changes its behavior to that of version 3.1 - with respect to quoted arguments to the [[[[ conditional + with respect to quoted arguments to the [[[[ conditional command's ==~~ operator and locale-specific string compar- - ison when using the [[[[ conditional command's << and >> - operators. Bash versions prior to bash-4.1 use ASCII + ison when using the [[[[ conditional command's << and >> + operators. Bash versions prior to bash-4.1 use ASCII collation and _s_t_r_c_m_p(3); bash-4.1 and later use the cur- rent locale's collation sequence and _s_t_r_c_o_l_l(3). ccoommppaatt3322 If set, bbaasshh changes its behavior to that of version 3.2 - with respect to locale-specific string comparison when - using the [[[[ conditional command's << and >> operators - (see previous item) and the effect of interrupting a - command list. Bash versions 3.2 and earlier continue - with the next command in the list after one terminates + with respect to locale-specific string comparison when + using the [[[[ conditional command's << and >> operators + (see previous item) and the effect of interrupting a + command list. Bash versions 3.2 and earlier continue + with the next command in the list after one terminates due to an interrupt. ccoommppaatt4400 If set, bbaasshh changes its behavior to that of version 4.0 - with respect to locale-specific string comparison when - using the [[[[ conditional command's << and >> operators - (see description of ccoommppaatt3311) and the effect of inter- - rupting a command list. Bash versions 4.0 and later - interrupt the list as if the shell received the inter- - rupt; previous versions continue with the next command + with respect to locale-specific string comparison when + using the [[[[ conditional command's << and >> operators + (see description of ccoommppaatt3311) and the effect of inter- + rupting a command list. Bash versions 4.0 and later + interrupt the list as if the shell received the inter- + rupt; previous versions continue with the next command in the list. ccoommppaatt4411 - If set, bbaasshh, when in _p_o_s_i_x _m_o_d_e, treats a single quote - in a double-quoted parameter expansion as a special - character. The single quotes must match (an even num- - ber) and the characters between the single quotes are - considered quoted. This is the behavior of posix mode - through version 4.1. The default bash behavior remains + If set, bbaasshh, when in _p_o_s_i_x _m_o_d_e, treats a single quote + in a double-quoted parameter expansion as a special + character. The single quotes must match (an even num- + ber) and the characters between the single quotes are + considered quoted. This is the behavior of posix mode + through version 4.1. The default bash behavior remains as in previous versions. ccoommppaatt4422 - If set, bbaasshh does not process the replacement string in - the pattern substitution word expansion using quote + If set, bbaasshh does not process the replacement string in + the pattern substitution word expansion using quote removal. ccoommppaatt4433 - If set, bbaasshh does not print a warning message if an - attempt is made to use a quoted compound array assign- - ment as an argument to ddeeccllaarree, makes word expansion - errors non-fatal errors that cause the current command - to fail (the default behavior is to make them fatal + If set, bbaasshh does not print a warning message if an + attempt is made to use a quoted compound array assign- + ment as an argument to ddeeccllaarree, makes word expansion + errors non-fatal errors that cause the current command + to fail (the default behavior is to make them fatal errors that cause the shell to exit), and does not reset - the loop state when a shell function is executed (this - allows bbrreeaakk or ccoonnttiinnuuee in a shell function to affect + the loop state when a shell function is executed (this + allows bbrreeaakk or ccoonnttiinnuuee in a shell function to affect loops in the caller's context). ccoommppaatt4444 - If set, bbaasshh saves the positional parameters to + If set, bbaasshh saves the positional parameters to BASH_ARGV and BASH_ARGC before they are used, regardless of whether or not extended debugging mode is enabled. ccoommpplleettee__ffuullllqquuoottee - If set, bbaasshh quotes all shell metacharacters in file- - names and directory names when performing completion. + If set, bbaasshh quotes all shell metacharacters in file- + names and directory names when performing completion. If not set, bbaasshh removes metacharacters such as the dol- - lar sign from the set of characters that will be quoted - in completed filenames when these metacharacters appear - in shell variable references in words to be completed. - This means that dollar signs in variable names that - expand to directories will not be quoted; however, any - dollar signs appearing in filenames will not be quoted, - either. This is active only when bash is using back- - slashes to quote completed filenames. This variable is - set by default, which is the default bash behavior in + lar sign from the set of characters that will be quoted + in completed filenames when these metacharacters appear + in shell variable references in words to be completed. + This means that dollar signs in variable names that + expand to directories will not be quoted; however, any + dollar signs appearing in filenames will not be quoted, + either. This is active only when bash is using back- + slashes to quote completed filenames. This variable is + set by default, which is the default bash behavior in versions through 4.2. ddiirreexxppaanndd - If set, bbaasshh replaces directory names with the results - of word expansion when performing filename completion. - This changes the contents of the readline editing buf- - fer. If not set, bbaasshh attempts to preserve what the + If set, bbaasshh replaces directory names with the results + of word expansion when performing filename completion. + This changes the contents of the readline editing buf- + fer. If not set, bbaasshh attempts to preserve what the user typed. ddiirrssppeellll - If set, bbaasshh attempts spelling correction on directory - names during word completion if the directory name ini- + If set, bbaasshh attempts spelling correction on directory + names during word completion if the directory name ini- tially supplied does not exist. - ddoottgglloobb If set, bbaasshh includes filenames beginning with a `.' in - the results of pathname expansion. The filenames ````..'''' - and ````....'''' must always be matched explicitly, even if + ddoottgglloobb If set, bbaasshh includes filenames beginning with a `.' in + the results of pathname expansion. The filenames ````..'''' + and ````....'''' must always be matched explicitly, even if ddoottgglloobb is set. eexxeeccffaaiill If set, a non-interactive shell will not exit if it can- - not execute the file specified as an argument to the - eexxeecc builtin command. An interactive shell does not + not execute the file specified as an argument to the + eexxeecc builtin command. An interactive shell does not exit if eexxeecc fails. eexxppaanndd__aalliiaasseess - If set, aliases are expanded as described above under + If set, aliases are expanded as described above under AALLIIAASSEESS. This option is enabled by default for interac- tive shells. eexxttddeebbuugg - If set at shell invocation, arrange to execute the - debugger profile before the shell starts, identical to - the ----ddeebbuuggggeerr option. If set after invocation, behav- + If set at shell invocation, arrange to execute the + debugger profile before the shell starts, identical to + the ----ddeebbuuggggeerr option. If set after invocation, behav- ior intended for use by debuggers is enabled: 11.. The --FF option to the ddeeccllaarree builtin displays the source file name and line number corresponding to each function name supplied as an argument. - 22.. If the command run by the DDEEBBUUGG trap returns a - non-zero value, the next command is skipped and + 22.. If the command run by the DDEEBBUUGG trap returns a + non-zero value, the next command is skipped and not executed. - 33.. If the command run by the DDEEBBUUGG trap returns a - value of 2, and the shell is executing in a sub- - routine (a shell function or a shell script exe- - cuted by the .. or ssoouurrccee builtins), the shell + 33.. If the command run by the DDEEBBUUGG trap returns a + value of 2, and the shell is executing in a sub- + routine (a shell function or a shell script exe- + cuted by the .. or ssoouurrccee builtins), the shell simulates a call to rreettuurrnn. - 44.. BBAASSHH__AARRGGCC and BBAASSHH__AARRGGVV are updated as described + 44.. BBAASSHH__AARRGGCC and BBAASSHH__AARRGGVV are updated as described in their descriptions above. - 55.. Function tracing is enabled: command substitu- + 55.. Function tracing is enabled: command substitu- tion, shell functions, and subshells invoked with (( _c_o_m_m_a_n_d )) inherit the DDEEBBUUGG and RREETTUURRNN traps. - 66.. Error tracing is enabled: command substitution, - shell functions, and subshells invoked with (( + 66.. Error tracing is enabled: command substitution, + shell functions, and subshells invoked with (( _c_o_m_m_a_n_d )) inherit the EERRRR trap. eexxttgglloobb If set, the extended pattern matching features described above under PPaatthhnnaammee EExxppaannssiioonn are enabled. eexxttqquuoottee - If set, $$'_s_t_r_i_n_g' and $$"_s_t_r_i_n_g" quoting is performed - within $${{_p_a_r_a_m_e_t_e_r}} expansions enclosed in double + If set, $$'_s_t_r_i_n_g' and $$"_s_t_r_i_n_g" quoting is performed + within $${{_p_a_r_a_m_e_t_e_r}} expansions enclosed in double quotes. This option is enabled by default. ffaaiillgglloobb - If set, patterns which fail to match filenames during + If set, patterns which fail to match filenames during pathname expansion result in an expansion error. ffoorrccee__ffiiggnnoorree - If set, the suffixes specified by the FFIIGGNNOORREE shell - variable cause words to be ignored when performing word + If set, the suffixes specified by the FFIIGGNNOORREE shell + variable cause words to be ignored when performing word completion even if the ignored words are the only possi- ble completions. See SSHHEELLLL VVAARRIIAABBLLEESS above for a - description of FFIIGGNNOORREE. This option is enabled by + description of FFIIGGNNOORREE. This option is enabled by default. gglloobbaasscciiiirraannggeess - If set, range expressions used in pattern matching - bracket expressions (see PPaatttteerrnn MMaattcchhiinngg above) behave - as if in the traditional C locale when performing com- + If set, range expressions used in pattern matching + bracket expressions (see PPaatttteerrnn MMaattcchhiinngg above) behave + as if in the traditional C locale when performing com- parisons. That is, the current locale's collating - sequence is not taken into account, so bb will not col- - late between AA and BB, and upper-case and lower-case + sequence is not taken into account, so bb will not col- + late between AA and BB, and upper-case and lower-case ASCII characters will collate together. gglloobbssttaarr If set, the pattern **** used in a pathname expansion con- - text will match all files and zero or more directories - and subdirectories. If the pattern is followed by a //, + text will match all files and zero or more directories + and subdirectories. If the pattern is followed by a //, only directories and subdirectories match. ggnnuu__eerrrrffmmtt If set, shell error messages are written in the standard GNU error message format. hhiissttaappppeenndd - If set, the history list is appended to the file named - by the value of the HHIISSTTFFIILLEE variable when the shell + If set, the history list is appended to the file named + by the value of the HHIISSTTFFIILLEE variable when the shell exits, rather than overwriting the file. hhiissttrreeeeddiitt - If set, and rreeaaddlliinnee is being used, a user is given the + If set, and rreeaaddlliinnee is being used, a user is given the opportunity to re-edit a failed history substitution. hhiissttvveerriiffyy - If set, and rreeaaddlliinnee is being used, the results of his- - tory substitution are not immediately passed to the - shell parser. Instead, the resulting line is loaded + If set, and rreeaaddlliinnee is being used, the results of his- + tory substitution are not immediately passed to the + shell parser. Instead, the resulting line is loaded into the rreeaaddlliinnee editing buffer, allowing further modi- fication. hhoossttccoommpplleettee If set, and rreeaaddlliinnee is being used, bbaasshh will attempt to - perform hostname completion when a word containing a @@ - is being completed (see CCoommpplleettiinngg under RREEAADDLLIINNEE + perform hostname completion when a word containing a @@ + is being completed (see CCoommpplleettiinngg under RREEAADDLLIINNEE above). This is enabled by default. hhuuppoonneexxiitt If set, bbaasshh will send SSIIGGHHUUPP to all jobs when an inter- active login shell exits. iinnhheerriitt__eerrrreexxiitt - If set, command substitution inherits the value of the - eerrrreexxiitt option, instead of unsetting it in the subshell - environment. This option is enabled when _p_o_s_i_x _m_o_d_e is + If set, command substitution inherits the value of the + eerrrreexxiitt option, instead of unsetting it in the subshell + environment. This option is enabled when _p_o_s_i_x _m_o_d_e is enabled. iinntteerraaccttiivvee__ccoommmmeennttss If set, allow a word beginning with ## to cause that word - and all remaining characters on that line to be ignored - in an interactive shell (see CCOOMMMMEENNTTSS above). This + and all remaining characters on that line to be ignored + in an interactive shell (see CCOOMMMMEENNTTSS above). This option is enabled by default. llaassttppiippee - If set, and job control is not active, the shell runs + If set, and job control is not active, the shell runs the last command of a pipeline not executed in the back- ground in the current shell environment. - lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line + lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line commands are saved to the history with embedded newlines rather than using semicolon separators where possible. llooccaallvvaarr__iinnhheerriitt If set, local variables inherit the value and attributes of a variable of the same name that exists at a previous - scope before any new value is assigned. The nameref + scope before any new value is assigned. The nameref attribute is not inherited. llooccaallvvaarr__uunnsseett - If set, calling uunnsseett on local variables in previous - function scopes marks them so subsequent lookups find - them unset until that function returns. This is identi- - cal to the behavior of unsetting local variables at the + If set, calling uunnsseett on local variables in previous + function scopes marks them so subsequent lookups find + them unset until that function returns. This is identi- + cal to the behavior of unsetting local variables at the current function scope. llooggiinn__sshheellll - The shell sets this option if it is started as a login - shell (see IINNVVOOCCAATTIIOONN above). The value may not be + The shell sets this option if it is started as a login + shell (see IINNVVOOCCAATTIIOONN above). The value may not be changed. mmaaiillwwaarrnn - If set, and a file that bbaasshh is checking for mail has - been accessed since the last time it was checked, the - message ``The mail in _m_a_i_l_f_i_l_e has been read'' is dis- + If set, and a file that bbaasshh is checking for mail has + been accessed since the last time it was checked, the + message ``The mail in _m_a_i_l_f_i_l_e has been read'' is dis- played. nnoo__eemmppttyy__ccmmdd__ccoommpplleettiioonn - If set, and rreeaaddlliinnee is being used, bbaasshh will not + If set, and rreeaaddlliinnee is being used, bbaasshh will not attempt to search the PPAATTHH for possible completions when completion is attempted on an empty line. nnooccaasseegglloobb - If set, bbaasshh matches filenames in a case-insensitive + If set, bbaasshh matches filenames in a case-insensitive fashion when performing pathname expansion (see PPaatthhnnaammee EExxppaannssiioonn above). nnooccaasseemmaattcchh - If set, bbaasshh matches patterns in a case-insensitive + If set, bbaasshh matches patterns in a case-insensitive fashion when performing matching while executing ccaassee or [[[[ conditional commands, when performing pattern substi- - tution word expansions, or when filtering possible com- + tution word expansions, or when filtering possible com- pletions as part of programmable completion. nnuullllgglloobb - If set, bbaasshh allows patterns which match no files (see - PPaatthhnnaammee EExxppaannssiioonn above) to expand to a null string, + If set, bbaasshh allows patterns which match no files (see + PPaatthhnnaammee EExxppaannssiioonn above) to expand to a null string, rather than themselves. pprrooggccoommpp If set, the programmable completion facilities (see PPrroo-- ggrraammmmaabbllee CCoommpplleettiioonn above) are enabled. This option is enabled by default. pprrooggccoommpp__aalliiaass - If set, and programmable completion is enabled, bbaasshh - treats a command name that doesn't have any completions - as a possible alias and attempts alias expansion. If it - has an alias, bbaasshh attempts programmable completion - using the command word resulting from the expanded + If set, and programmable completion is enabled, bbaasshh + treats a command name that doesn't have any completions + as a possible alias and attempts alias expansion. If it + has an alias, bbaasshh attempts programmable completion + using the command word resulting from the expanded alias. pprroommppttvvaarrss If set, prompt strings undergo parameter expansion, com- - mand substitution, arithmetic expansion, and quote - removal after being expanded as described in PPRROOMMPPTTIINNGG + mand substitution, arithmetic expansion, and quote + removal after being expanded as described in PPRROOMMPPTTIINNGG above. This option is enabled by default. rreessttrriicctteedd__sshheellll - The shell sets this option if it is started in + The shell sets this option if it is started in restricted mode (see RREESSTTRRIICCTTEEDD SSHHEELLLL below). The value - may not be changed. This is not reset when the startup - files are executed, allowing the startup files to dis- + may not be changed. This is not reset when the startup + files are executed, allowing the startup files to dis- cover whether or not a shell is restricted. sshhiifftt__vveerrbboossee - If set, the sshhiifftt builtin prints an error message when + If set, the sshhiifftt builtin prints an error message when the shift count exceeds the number of positional parame- ters. ssoouurrcceeppaatthh If set, the ssoouurrccee (..) builtin uses the value of PPAATTHH to - find the directory containing the file supplied as an + find the directory containing the file supplied as an argument. This option is enabled by default. xxppgg__eecchhoo - If set, the eecchhoo builtin expands backslash-escape + If set, the eecchhoo builtin expands backslash-escape sequences by default. ssuussppeenndd [--ff] - Suspend the execution of this shell until it receives a SSIIGGCCOONNTT + Suspend the execution of this shell until it receives a SSIIGGCCOONNTT signal. A login shell cannot be suspended; the --ff option can be used to override this and force the suspension. The return sta- - tus is 0 unless the shell is a login shell and --ff is not sup- + tus is 0 unless the shell is a login shell and --ff is not sup- plied, or if job control is not enabled. tteesstt _e_x_p_r [[ _e_x_p_r ]] Return a status of 0 (true) or 1 (false) depending on the evalu- ation of the conditional expression _e_x_p_r. Each operator and op- - erand must be a separate argument. Expressions are composed of - the primaries described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS. - tteesstt does not accept any options, nor does it accept and ignore + erand must be a separate argument. Expressions are composed of + the primaries described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS. + tteesstt does not accept any options, nor does it accept and ignore an argument of ---- as signifying the end of options. - Expressions may be combined using the following operators, + Expressions may be combined using the following operators, listed in decreasing order of precedence. The evaluation - depends on the number of arguments; see below. Operator prece- + depends on the number of arguments; see below. Operator prece- dence is used when there are five or more arguments. !! _e_x_p_r True if _e_x_p_r is false. (( _e_x_p_r )) - Returns the value of _e_x_p_r. This may be used to override + Returns the value of _e_x_p_r. This may be used to override the normal precedence of operators. _e_x_p_r_1 -aa _e_x_p_r_2 True if both _e_x_p_r_1 and _e_x_p_r_2 are true. @@ -5835,120 +5836,120 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS null. 2 arguments If the first argument is !!, the expression is true if and - only if the second argument is null. If the first argu- - ment is one of the unary conditional operators listed - above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is + only if the second argument is null. If the first argu- + ment is one of the unary conditional operators listed + above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is true if the unary test is true. If the first argument is not a valid unary conditional operator, the expression is false. 3 arguments The following conditions are applied in the order listed. - If the second argument is one of the binary conditional + If the second argument is one of the binary conditional operators listed above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the result of the expression is the result of the binary test - using the first and third arguments as operands. The --aa - and --oo operators are considered binary operators when - there are three arguments. If the first argument is !!, - the value is the negation of the two-argument test using + using the first and third arguments as operands. The --aa + and --oo operators are considered binary operators when + there are three arguments. If the first argument is !!, + the value is the negation of the two-argument test using the second and third arguments. If the first argument is exactly (( and the third argument is exactly )), the result - is the one-argument test of the second argument. Other- + is the one-argument test of the second argument. Other- wise, the expression is false. 4 arguments If the first argument is !!, the result is the negation of - the three-argument expression composed of the remaining + the three-argument expression composed of the remaining arguments. Otherwise, the expression is parsed and eval- - uated according to precedence using the rules listed + uated according to precedence using the rules listed above. 5 or more arguments - The expression is parsed and evaluated according to + The expression is parsed and evaluated according to precedence using the rules listed above. - When used with tteesstt or [[, the << and >> operators sort lexico- + When used with tteesstt or [[, the << and >> operators sort lexico- graphically using ASCII ordering. - ttiimmeess Print the accumulated user and system times for the shell and + ttiimmeess Print the accumulated user and system times for the shell and for processes run from the shell. The return status is 0. ttrraapp [--llpp] [[_a_r_g] _s_i_g_s_p_e_c ...] - The command _a_r_g is to be read and executed when the shell - receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a - single _s_i_g_s_p_e_c) or --, each specified signal is reset to its - original disposition (the value it had upon entrance to the - shell). If _a_r_g is the null string the signal specified by each - _s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes. - If _a_r_g is not present and --pp has been supplied, then the trap - commands associated with each _s_i_g_s_p_e_c are displayed. If no - arguments are supplied or if only --pp is given, ttrraapp prints the - list of commands associated with each signal. The --ll option - causes the shell to print a list of signal names and their cor- - responding numbers. Each _s_i_g_s_p_e_c is either a signal name - defined in <_s_i_g_n_a_l_._h>, or a signal number. Signal names are + The command _a_r_g is to be read and executed when the shell + receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a + single _s_i_g_s_p_e_c) or --, each specified signal is reset to its + original disposition (the value it had upon entrance to the + shell). If _a_r_g is the null string the signal specified by each + _s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes. + If _a_r_g is not present and --pp has been supplied, then the trap + commands associated with each _s_i_g_s_p_e_c are displayed. If no + arguments are supplied or if only --pp is given, ttrraapp prints the + list of commands associated with each signal. The --ll option + causes the shell to print a list of signal names and their cor- + responding numbers. Each _s_i_g_s_p_e_c is either a signal name + defined in <_s_i_g_n_a_l_._h>, or a signal number. Signal names are case insensitive and the SSIIGG prefix is optional. - If a _s_i_g_s_p_e_c is EEXXIITT (0) the command _a_r_g is executed on exit - from the shell. If a _s_i_g_s_p_e_c is DDEEBBUUGG, the command _a_r_g is exe- - cuted before every _s_i_m_p_l_e _c_o_m_m_a_n_d, _f_o_r command, _c_a_s_e command, - _s_e_l_e_c_t command, every arithmetic _f_o_r command, and before the - first command executes in a shell function (see SSHHEELLLL GGRRAAMMMMAARR - above). Refer to the description of the eexxttddeebbuugg option to the + If a _s_i_g_s_p_e_c is EEXXIITT (0) the command _a_r_g is executed on exit + from the shell. If a _s_i_g_s_p_e_c is DDEEBBUUGG, the command _a_r_g is exe- + cuted before every _s_i_m_p_l_e _c_o_m_m_a_n_d, _f_o_r command, _c_a_s_e command, + _s_e_l_e_c_t command, every arithmetic _f_o_r command, and before the + first command executes in a shell function (see SSHHEELLLL GGRRAAMMMMAARR + above). Refer to the description of the eexxttddeebbuugg option to the sshhoopptt builtin for details of its effect on the DDEEBBUUGG trap. If a _s_i_g_s_p_e_c is RREETTUURRNN, the command _a_r_g is executed each time a shell function or a script executed with the .. or ssoouurrccee builtins fin- ishes executing. - If a _s_i_g_s_p_e_c is EERRRR, the command _a_r_g is executed whenever a + If a _s_i_g_s_p_e_c is EERRRR, the command _a_r_g is executed whenever a pipeline (which may consist of a single simple command), a list, or a compound command returns a non-zero exit status, subject to - the following conditions. The EERRRR trap is not executed if the + the following conditions. The EERRRR trap is not executed if the failed command is part of the command list immediately following - a wwhhiillee or uunnttiill keyword, part of the test in an _i_f statement, + a wwhhiillee or uunnttiill keyword, part of the test in an _i_f statement, part of a command executed in a &&&& or |||| list except the command - following the final &&&& or ||||, any command in a pipeline but the - last, or if the command's return value is being inverted using - !!. These are the same conditions obeyed by the eerrrreexxiitt (--ee) + following the final &&&& or ||||, any command in a pipeline but the + last, or if the command's return value is being inverted using + !!. These are the same conditions obeyed by the eerrrreexxiitt (--ee) option. - Signals ignored upon entry to the shell cannot be trapped or - reset. Trapped signals that are not being ignored are reset to + Signals ignored upon entry to the shell cannot be trapped or + reset. Trapped signals that are not being ignored are reset to their original values in a subshell or subshell environment when - one is created. The return status is false if any _s_i_g_s_p_e_c is + one is created. The return status is false if any _s_i_g_s_p_e_c is invalid; otherwise ttrraapp returns true. ttyyppee [--aaffttppPP] _n_a_m_e [_n_a_m_e ...] - With no options, indicate how each _n_a_m_e would be interpreted if + With no options, indicate how each _n_a_m_e would be interpreted if used as a command name. If the --tt option is used, ttyyppee prints a - string which is one of _a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or - _f_i_l_e if _n_a_m_e is an alias, shell reserved word, function, - builtin, or disk file, respectively. If the _n_a_m_e is not found, - then nothing is printed, and an exit status of false is - returned. If the --pp option is used, ttyyppee either returns the + string which is one of _a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or + _f_i_l_e if _n_a_m_e is an alias, shell reserved word, function, + builtin, or disk file, respectively. If the _n_a_m_e is not found, + then nothing is printed, and an exit status of false is + returned. If the --pp option is used, ttyyppee either returns the name of the disk file that would be executed if _n_a_m_e were speci- fied as a command name, or nothing if ``type -t name'' would not - return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e, + return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e, even if ``type -t name'' would not return _f_i_l_e. If a command is hashed, --pp and --PP print the hashed value, which is not necessar- - ily the file that appears first in PPAATTHH. If the --aa option is - used, ttyyppee prints all of the places that contain an executable + ily the file that appears first in PPAATTHH. If the --aa option is + used, ttyyppee prints all of the places that contain an executable named _n_a_m_e. This includes aliases and functions, if and only if the --pp option is not also used. The table of hashed commands is - not consulted when using --aa. The --ff option suppresses shell + not consulted when using --aa. The --ff option suppresses shell function lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true if all of the arguments are found, false if any are not found. uulliimmiitt [--HHSSaabbccddeeffiikkllmmnnppqqrrssttuuvvxxPPTT [_l_i_m_i_t]] - Provides control over the resources available to the shell and - to processes started by it, on systems that allow such control. + Provides control over the resources available to the shell and + to processes started by it, on systems that allow such control. The --HH and --SS options specify that the hard or soft limit is set - for the given resource. A hard limit cannot be increased by a - non-root user once it is set; a soft limit may be increased up - to the value of the hard limit. If neither --HH nor --SS is speci- + for the given resource. A hard limit cannot be increased by a + non-root user once it is set; a soft limit may be increased up + to the value of the hard limit. If neither --HH nor --SS is speci- fied, both the soft and hard limits are set. The value of _l_i_m_i_t can be a number in the unit specified for the resource or one of the special values hhaarrdd, ssoofftt, or uunnlliimmiitteedd, which stand for the - current hard limit, the current soft limit, and no limit, - respectively. If _l_i_m_i_t is omitted, the current value of the - soft limit of the resource is printed, unless the --HH option is + current hard limit, the current soft limit, and no limit, + respectively. If _l_i_m_i_t is omitted, the current value of the + soft limit of the resource is printed, unless the --HH option is given. When more than one resource is specified, the limit name and unit are printed before the value. Other options are inter- preted as follows: @@ -5957,12 +5958,12 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS --cc The maximum size of core files created --dd The maximum size of a process's data segment --ee The maximum scheduling priority ("nice") - --ff The maximum size of files written by the shell and its + --ff The maximum size of files written by the shell and its children --ii The maximum number of pending signals --kk The maximum number of kqueues that may be allocated --ll The maximum size that may be locked into memory - --mm The maximum resident set size (many systems do not honor + --mm The maximum resident set size (many systems do not honor this limit) --nn The maximum number of open file descriptors (most systems do not allow this value to be set) @@ -5971,53 +5972,53 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS --rr The maximum real-time scheduling priority --ss The maximum stack size --tt The maximum amount of cpu time in seconds - --uu The maximum number of processes available to a single + --uu The maximum number of processes available to a single user - --vv The maximum amount of virtual memory available to the + --vv The maximum amount of virtual memory available to the shell and, on some systems, to its children --xx The maximum number of file locks --PP The maximum number of pseudoterminals --TT The maximum number of threads - If _l_i_m_i_t is given, and the --aa option is not used, _l_i_m_i_t is the - new value of the specified resource. If no option is given, - then --ff is assumed. Values are in 1024-byte increments, except - for --tt, which is in seconds; --pp, which is in units of 512-byte - blocks; --PP, --TT, --bb, --kk, --nn, and --uu, which are unscaled values; + If _l_i_m_i_t is given, and the --aa option is not used, _l_i_m_i_t is the + new value of the specified resource. If no option is given, + then --ff is assumed. Values are in 1024-byte increments, except + for --tt, which is in seconds; --pp, which is in units of 512-byte + blocks; --PP, --TT, --bb, --kk, --nn, and --uu, which are unscaled values; and, when in posix mode, --cc and --ff, which are in 512-byte incre- ments. The return status is 0 unless an invalid option or argu- ment is supplied, or an error occurs while setting a new limit. uummaasskk [--pp] [--SS] [_m_o_d_e] The user file-creation mask is set to _m_o_d_e. If _m_o_d_e begins with - a digit, it is interpreted as an octal number; otherwise it is - interpreted as a symbolic mode mask similar to that accepted by - _c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is - printed. The --SS option causes the mask to be printed in sym- - bolic form; the default output is an octal number. If the --pp + a digit, it is interpreted as an octal number; otherwise it is + interpreted as a symbolic mode mask similar to that accepted by + _c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is + printed. The --SS option causes the mask to be printed in sym- + bolic form; the default output is an octal number. If the --pp option is supplied, and _m_o_d_e is omitted, the output is in a form that may be reused as input. The return status is 0 if the mode - was successfully changed or if no _m_o_d_e argument was supplied, + was successfully changed or if no _m_o_d_e argument was supplied, and false otherwise. uunnaalliiaass [-aa] [_n_a_m_e ...] - Remove each _n_a_m_e from the list of defined aliases. If --aa is - supplied, all alias definitions are removed. The return value + Remove each _n_a_m_e from the list of defined aliases. If --aa is + supplied, all alias definitions are removed. The return value is true unless a supplied _n_a_m_e is not a defined alias. uunnsseett [-ffvv] [-nn] [_n_a_m_e ...] - For each _n_a_m_e, remove the corresponding variable or function. + For each _n_a_m_e, remove the corresponding variable or function. If the --vv option is given, each _n_a_m_e refers to a shell variable, - and that variable is removed. Read-only variables may not be - unset. If --ff is specified, each _n_a_m_e refers to a shell func- - tion, and the function definition is removed. If the --nn option - is supplied, and _n_a_m_e is a variable with the _n_a_m_e_r_e_f attribute, - _n_a_m_e will be unset rather than the variable it references. --nn - has no effect if the --ff option is supplied. If no options are - supplied, each _n_a_m_e refers to a variable; if there is no vari- - able by that name, any function with that name is unset. Each - unset variable or function is removed from the environment - passed to subsequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANN-- + and that variable is removed. Read-only variables may not be + unset. If --ff is specified, each _n_a_m_e refers to a shell func- + tion, and the function definition is removed. If the --nn option + is supplied, and _n_a_m_e is a variable with the _n_a_m_e_r_e_f attribute, + _n_a_m_e will be unset rather than the variable it references. --nn + has no effect if the --ff option is supplied. If no options are + supplied, each _n_a_m_e refers to a variable; if there is no vari- + able by that name, any function with that name is unset. Each + unset variable or function is removed from the environment + passed to subsequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANN-- DDOOMM, SSEECCOONNDDSS, LLIINNEENNOO, HHIISSTTCCMMDD, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, or DDIIRRSSTTAACCKK are unset, they lose their special properties, even if they are sub- sequently reset. The exit status is true unless a _n_a_m_e is read- @@ -6025,23 +6026,23 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS wwaaiitt [--ffnn] [_i_d _._._.] Wait for each specified child process and return its termination - status. Each _i_d may be a process ID or a job specification; if - a job spec is given, all processes in that job's pipeline are + status. Each _i_d may be a process ID or a job specification; if + a job spec is given, all processes in that job's pipeline are waited for. If _i_d is not given, all currently active child pro- cesses are waited for, and the return status is zero. If the --nn - option is supplied, wwaaiitt waits for any job to terminate and - returns its exit status. If the --ff option is supplied, and job + option is supplied, wwaaiitt waits for any job to terminate and + returns its exit status. If the --ff option is supplied, and job control is enabled, wwaaiitt forces _i_d to terminate before returning - its status, instead of returning when it changes status. If _i_d - specifies a non-existent process or job, the return status is - 127. Otherwise, the return status is the exit status of the + its status, instead of returning when it changes status. If _i_d + specifies a non-existent process or job, the return status is + 127. Otherwise, the return status is the exit status of the last process or job waited for. RREESSTTRRIICCTTEEDD SSHHEELLLL If bbaasshh is started with the name rrbbaasshh, or the --rr option is supplied at - invocation, the shell becomes restricted. A restricted shell is used - to set up an environment more controlled than the standard shell. It - behaves identically to bbaasshh with the exception that the following are + invocation, the shell becomes restricted. A restricted shell is used + to set up an environment more controlled than the standard shell. It + behaves identically to bbaasshh with the exception that the following are disallowed or not performed: +o changing directories with ccdd @@ -6050,16 +6051,16 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL +o specifying command names containing // - +o specifying a filename containing a // as an argument to the .. + +o specifying a filename containing a // as an argument to the .. builtin command - +o specifying a filename containing a slash as an argument to the + +o specifying a filename containing a slash as an argument to the --pp option to the hhaasshh builtin command - +o importing function definitions from the shell environment at + +o importing function definitions from the shell environment at startup - +o parsing the value of SSHHEELLLLOOPPTTSS from the shell environment at + +o parsing the value of SSHHEELLLLOOPPTTSS from the shell environment at startup +o redirecting output using the >, >|, <>, >&, &>, and >> redirect- @@ -6068,10 +6069,10 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL +o using the eexxeecc builtin command to replace the shell with another command - +o adding or deleting builtin commands with the --ff and --dd options + +o adding or deleting builtin commands with the --ff and --dd options to the eennaabbllee builtin command - +o using the eennaabbllee builtin command to enable disabled shell + +o using the eennaabbllee builtin command to enable disabled shell builtins +o specifying the --pp option to the ccoommmmaanndd builtin command @@ -6081,14 +6082,14 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL These restrictions are enforced after any startup files are read. When a command that is found to be a shell script is executed (see CCOOMM-- - MMAANNDD EEXXEECCUUTTIIOONN above), rrbbaasshh turns off any restrictions in the shell + MMAANNDD EEXXEECCUUTTIIOONN above), rrbbaasshh turns off any restrictions in the shell spawned to execute the script. SSEEEE AALLSSOO _B_a_s_h _R_e_f_e_r_e_n_c_e _M_a_n_u_a_l, Brian Fox and Chet Ramey _T_h_e _G_n_u _R_e_a_d_l_i_n_e _L_i_b_r_a_r_y, Brian Fox and Chet Ramey _T_h_e _G_n_u _H_i_s_t_o_r_y _L_i_b_r_a_r_y, Brian Fox and Chet Ramey - _P_o_r_t_a_b_l_e _O_p_e_r_a_t_i_n_g _S_y_s_t_e_m _I_n_t_e_r_f_a_c_e _(_P_O_S_I_X_) _P_a_r_t _2_: _S_h_e_l_l _a_n_d _U_t_i_l_i_- + _P_o_r_t_a_b_l_e _O_p_e_r_a_t_i_n_g _S_y_s_t_e_m _I_n_t_e_r_f_a_c_e _(_P_O_S_I_X_) _P_a_r_t _2_: _S_h_e_l_l _a_n_d _U_t_i_l_i_- _t_i_e_s, IEEE -- http://pubs.opengroup.org/onlinepubs/9699919799/ http://tiswww.case.edu/~chet/bash/POSIX -- a description of posix mode @@ -6106,7 +6107,7 @@ FFIILLEESS _~_/_._b_a_s_h_r_c The individual per-interactive-shell startup file _~_/_._b_a_s_h___l_o_g_o_u_t - The individual login shell cleanup file, executed when a login + The individual login shell cleanup file, executed when a login shell exits _~_/_._i_n_p_u_t_r_c Individual _r_e_a_d_l_i_n_e initialization file @@ -6120,14 +6121,14 @@ AAUUTTHHOORRSS BBUUGG RREEPPOORRTTSS If you find a bug in bbaasshh,, you should report it. But first, you should - make sure that it really is a bug, and that it appears in the latest - version of bbaasshh. The latest version is always available from + make sure that it really is a bug, and that it appears in the latest + version of bbaasshh. The latest version is always available from _f_t_p_:_/_/_f_t_p_._g_n_u_._o_r_g_/_p_u_b_/_g_n_u_/_b_a_s_h_/. - Once you have determined that a bug actually exists, use the _b_a_s_h_b_u_g - command to submit a bug report. If you have a fix, you are encouraged - to mail that as well! Suggestions and `philosophical' bug reports may - be mailed to _b_u_g_-_b_a_s_h_@_g_n_u_._o_r_g or posted to the Usenet newsgroup + Once you have determined that a bug actually exists, use the _b_a_s_h_b_u_g + command to submit a bug report. If you have a fix, you are encouraged + to mail that as well! Suggestions and `philosophical' bug reports may + be mailed to _b_u_g_-_b_a_s_h_@_g_n_u_._o_r_g or posted to the Usenet newsgroup ggnnuu..bbaasshh..bbuugg. ALL bug reports should include: @@ -6138,7 +6139,7 @@ BBUUGG RREEPPOORRTTSS A description of the bug behaviour A short script or `recipe' which exercises the bug - _b_a_s_h_b_u_g inserts the first three items automatically into the template + _b_a_s_h_b_u_g inserts the first three items automatically into the template it provides for filing a bug report. Comments and bug reports concerning this manual page should be directed @@ -6155,10 +6156,10 @@ BBUUGGSS Shell builtin commands and functions are not stoppable/restartable. Compound commands and command sequences of the form `a ; b ; c' are not - handled gracefully when process suspension is attempted. When a - process is stopped, the shell immediately executes the next command in - the sequence. It suffices to place the sequence of commands between - parentheses to force it into a subshell, which may be stopped as a + handled gracefully when process suspension is attempted. When a + process is stopped, the shell immediately executes the next command in + the sequence. It suffices to place the sequence of commands between + parentheses to force it into a subshell, which may be stopped as a unit. Array variables may not (yet) be exported. diff --git a/doc/bash.1 b/doc/bash.1 index 8bcf7e91..e6cd08db 100644 --- a/doc/bash.1 +++ b/doc/bash.1 @@ -9769,8 +9769,9 @@ The list of \fBshopt\fP options is: .TP 8 .B assoc_expand_once If set, the shell suppresses multiple evaluation of associative array -subscripts during arithmetic expression evaluation and while executing -builtins that can perform variable assignments. +subscripts during arithmetic expression evaluation, while executing +builtins that can perform variable assignments, +and while executing builtins that perform array dereferencing. .TP 8 .B autocd If set, a command name that is the name of a directory is executed as if diff --git a/doc/bash.html b/doc/bash.html index f70844b3..3da23fb6 100644 --- a/doc/bash.html +++ b/doc/bash.html @@ -12388,8 +12388,9 @@ The list of shopt options is:
If set, the shell suppresses multiple evaluation of associative array -subscripts during arithmetic expression evaluation and while executing -builtins that can perform variable assignments. +subscripts during arithmetic expression evaluation, while executing +builtins that can perform variable assignments, +and while executing builtins that perform array dereferencing.
autocd
@@ -14037,6 +14038,6 @@ There may be only one active coprocess at a time.
This document was created by man2html from bash.1.
-Time: 21 December 2018 09:58:51 EST +Time: 02 January 2019 09:14:47 EST diff --git a/doc/bash.info b/doc/bash.info index c5ffb491..39f32125 100644 --- a/doc/bash.info +++ b/doc/bash.info @@ -4376,8 +4376,9 @@ This builtin allows you to change additional shell optional behavior. 'assoc_expand_once' If set, the shell suppresses multiple evaluation of associative array subscripts during arithmetic expression - evaluation and while executing builtins that can perform - variable assignments. + evaluation, while executing builtins that can perform variable + assignments, and while executing builtins that perform array + dereferencing. 'autocd' If set, a command name that is the name of a directory is @@ -11737,79 +11738,79 @@ Node: Bash Builtins145959 Node: Modifying Shell Behavior174884 Node: The Set Builtin175229 Node: The Shopt Builtin185642 -Node: Special Builtins203214 -Node: Shell Variables204193 -Node: Bourne Shell Variables204630 -Node: Bash Variables206734 -Node: Bash Features237194 -Node: Invoking Bash238093 -Node: Bash Startup Files244106 -Node: Interactive Shells249209 -Node: What is an Interactive Shell?249619 -Node: Is this Shell Interactive?250268 -Node: Interactive Shell Behavior251083 -Node: Bash Conditional Expressions254570 -Node: Shell Arithmetic259147 -Node: Aliases261964 -Node: Arrays264584 -Node: The Directory Stack269950 -Node: Directory Stack Builtins270734 -Node: Controlling the Prompt273702 -Node: The Restricted Shell276468 -Node: Bash POSIX Mode278293 -Node: Job Control289226 -Node: Job Control Basics289686 -Node: Job Control Builtins294654 -Node: Job Control Variables299381 -Node: Command Line Editing300537 -Node: Introduction and Notation302208 -Node: Readline Interaction303831 -Node: Readline Bare Essentials305022 -Node: Readline Movement Commands306805 -Node: Readline Killing Commands307765 -Node: Readline Arguments309683 -Node: Searching310727 -Node: Readline Init File312913 -Node: Readline Init File Syntax314060 -Node: Conditional Init Constructs334499 -Node: Sample Init File338695 -Node: Bindable Readline Commands341812 -Node: Commands For Moving343016 -Node: Commands For History344865 -Node: Commands For Text349160 -Node: Commands For Killing352548 -Node: Numeric Arguments355029 -Node: Commands For Completion356168 -Node: Keyboard Macros360359 -Node: Miscellaneous Commands361046 -Node: Readline vi Mode366999 -Node: Programmable Completion367906 -Node: Programmable Completion Builtins375686 -Node: A Programmable Completion Example386379 -Node: Using History Interactively391619 -Node: Bash History Facilities392303 -Node: Bash History Builtins395308 -Node: History Interaction399839 -Node: Event Designators403459 -Node: Word Designators404678 -Node: Modifiers406315 -Node: Installing Bash407717 -Node: Basic Installation408854 -Node: Compilers and Options412112 -Node: Compiling For Multiple Architectures412853 -Node: Installation Names414546 -Node: Specifying the System Type415364 -Node: Sharing Defaults416080 -Node: Operation Controls416753 -Node: Optional Features417711 -Node: Reporting Bugs428229 -Node: Major Differences From The Bourne Shell429423 -Node: GNU Free Documentation License446275 -Node: Indexes471452 -Node: Builtin Index471906 -Node: Reserved Word Index478733 -Node: Variable Index481181 -Node: Function Index496932 -Node: Concept Index510235 +Node: Special Builtins203284 +Node: Shell Variables204263 +Node: Bourne Shell Variables204700 +Node: Bash Variables206804 +Node: Bash Features237264 +Node: Invoking Bash238163 +Node: Bash Startup Files244176 +Node: Interactive Shells249279 +Node: What is an Interactive Shell?249689 +Node: Is this Shell Interactive?250338 +Node: Interactive Shell Behavior251153 +Node: Bash Conditional Expressions254640 +Node: Shell Arithmetic259217 +Node: Aliases262034 +Node: Arrays264654 +Node: The Directory Stack270020 +Node: Directory Stack Builtins270804 +Node: Controlling the Prompt273772 +Node: The Restricted Shell276538 +Node: Bash POSIX Mode278363 +Node: Job Control289296 +Node: Job Control Basics289756 +Node: Job Control Builtins294724 +Node: Job Control Variables299451 +Node: Command Line Editing300607 +Node: Introduction and Notation302278 +Node: Readline Interaction303901 +Node: Readline Bare Essentials305092 +Node: Readline Movement Commands306875 +Node: Readline Killing Commands307835 +Node: Readline Arguments309753 +Node: Searching310797 +Node: Readline Init File312983 +Node: Readline Init File Syntax314130 +Node: Conditional Init Constructs334569 +Node: Sample Init File338765 +Node: Bindable Readline Commands341882 +Node: Commands For Moving343086 +Node: Commands For History344935 +Node: Commands For Text349230 +Node: Commands For Killing352618 +Node: Numeric Arguments355099 +Node: Commands For Completion356238 +Node: Keyboard Macros360429 +Node: Miscellaneous Commands361116 +Node: Readline vi Mode367069 +Node: Programmable Completion367976 +Node: Programmable Completion Builtins375756 +Node: A Programmable Completion Example386449 +Node: Using History Interactively391689 +Node: Bash History Facilities392373 +Node: Bash History Builtins395378 +Node: History Interaction399909 +Node: Event Designators403529 +Node: Word Designators404748 +Node: Modifiers406385 +Node: Installing Bash407787 +Node: Basic Installation408924 +Node: Compilers and Options412182 +Node: Compiling For Multiple Architectures412923 +Node: Installation Names414616 +Node: Specifying the System Type415434 +Node: Sharing Defaults416150 +Node: Operation Controls416823 +Node: Optional Features417781 +Node: Reporting Bugs428299 +Node: Major Differences From The Bourne Shell429493 +Node: GNU Free Documentation License446345 +Node: Indexes471522 +Node: Builtin Index471976 +Node: Reserved Word Index478803 +Node: Variable Index481251 +Node: Function Index497002 +Node: Concept Index510305  End Tag Table diff --git a/doc/bash.pdf b/doc/bash.pdf index f892eb60e967eeac7d2fcaa3750d927704201a99..54c061ecee2e698f30bb94b92525293d6680f216 100644 GIT binary patch delta 8689 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 CXKM`r diff --git a/doc/bash.ps b/doc/bash.ps index 8c3c8dcb..8b3b7338 100644 --- a/doc/bash.ps +++ b/doc/bash.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.22.3 -%%CreationDate: Fri Dec 21 09:58:50 2018 +%%CreationDate: Wed Jan 2 09:14:38 2019 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic @@ -8783,10 +8783,12 @@ E F0(sho)3.124 E .624(ws only those options which are)-.25 F 2.233 (options is:)2.5 E F1(assoc_expand_once)144 574.8 Q F0 1.945 (If set, the shell suppresses multiple e)184 586.8 R -.25(va)-.25 G 1.944(luation of associati).25 F 2.244 -.15(ve a)-.25 H 1.944 -(rray subscripts during).15 F .857(arithmetic e)184 598.8 R .857 -(xpression e)-.15 F -.25(va)-.25 G .857(luation and while e).25 F -.15 -(xe)-.15 G .857(cuting b).15 F .857(uiltins that can perform v)-.2 F -(ariable)-.25 E(assignments.)184 610.8 Q F1(autocd)144 622.8 Q F0 .2 +(rray subscripts during).15 F 2.556(arithmetic e)184 598.8 R 2.556 +(xpression e)-.15 F -.25(va)-.25 G 2.556(luation, while e).25 F -.15(xe) +-.15 G 2.557(cuting b).15 F 2.557(uiltins that can perform v)-.2 F +(ariable)-.25 E(assignments, and while e)184 610.8 Q -.15(xe)-.15 G +(cuting b).15 E(uiltins that perform array dereferencing.)-.2 E F1 +(autocd)144 622.8 Q F0 .2 (If set, a command name that is the name of a directory is e)184 622.8 R -.15(xe)-.15 G .199(cuted as if it were the ar).15 F(gu-)-.18 E (ment to the)184 634.8 Q F1(cd)2.5 E F0 2.5(command. This)2.5 F diff --git a/doc/bashref.dvi b/doc/bashref.dvi index 024dadf7c401f3f34f1044c648b0ccde7d992146..ece4544e7eae18a0e9687c0856c65c70bf1573bf 100644 GIT binary patch delta 1829 zcmY+EeNa?Y7{-0i{ocEGKTr`86dkoPSRfEsC=v(MB1Bv#q# zrG3CsGr?@N#Kc-+o=lFh#>Q8T8Z`>)VrNZx)#kN<*M__{rp?9KcPF#cq{vz{wA^0isPhM>{1?pZEA|Jks>$jtaut`mR@T{F zE_;n{(#v&@B3Dtd`j!={L$Fj=zoAWj7H-%MQ_18M)}x@5OnkbYNg};-*$e}8QOM6_ zPwG+bbCm23wp524*_4EGc0h(36f7IrK^ZpU@9P;W&fUT0p&c2-w}U;RhoA5y6B<`P z%uXOpd)N#k)CYu!M%H6Mjpl%I*2iAfL1#et`w0890+$1Vu8Uo0gnt6Uo^x!83A_)5 ziDbrA)@OvPIE{yp&xf_i4I2aQR}yDX;DBEs7lJvv0)qi}{S?l~!*WtNoqJb?&u~sU z7fJx zDJ-ty?&(m~d`fTDb9oAErx4M|6&aurcZ4z_TDoxZwU2WL!9i*}zU5>EUZBwU0~aBy zh15ELBy2Ac#t=g<_lN{nXuwPT++79rXKN#k!Mk~$BegfU?@ZwFD@0YkF{(AwY_cVo zKWcyqk~)*_{Bg&7$r|QZfRm7StAJ^4wh1g zG79r}WDKL!I#&2lf{!RvPZUnb@Ct?9PYBHlY^JczDwOHf)%2$epDiddnysf)m?Nme z%)$13VhBFAmyaM-iv@KPZJ_p&5}{8*CH~1LlFe?RT7i|+O7{p^GV;Vx>f9wTLGUF7 z?gQak5U!0t4^mD)ETk&va42;fjtOJ+P(xv$OIReqFBCTS2*vt``NJ*=y$ZVIFJ~f& z8xm$qXlODG^xY9!IA~~dh`*a)CtdqLCyJ3|ms!j-z$&`Zsx(PE(icdX|_ zus=LERVajxiP;0meE6k8Q&#VsB&j;zfS8;#(kFwZGok&!b^qj*wYA*Lx{ zCn|Kx+VRoE=4!E9#He1?Te(sMxkgo9z?X%-VrupcjB zqy=j z8_0XFNttutxYqG_JUA?wNpQE+Zb989zeH52XFl8+;a|_vU9_opnbv{~Ht3c;{Xcu# wdEM-;HQ=_Y0>s+wTh1R(YEiT+=GlaAsSJUF~ zeKhbdePbMs0YjKtr!KPNwSkDvMKo5J9@L~uo%y#1Zz>V58 z0Ur|a%zcFwOFbov)hT`wI;+unjnsWmu z(f%zsU4f};lm&&UlTP6g)Z2io&FHJ6L27I>zGhT&TqK;8WFE!cGHlZ;sJ3XS0^bIe zU+cym3&g)L5w!LOZdTCWT|uh+F)ozRqr*YUWF(3Vxj`l;j7*hbXOL-+CKe7}rro2- zP6_6z{%s_IHYSk=GD_@cbS{moF#B@uhpU^D$Z%TYB5?|u)y2Z=3&{`}903?lon<7? z0&5xkvYNCQVK4*#MlxVT8=g?DZj%glW|uXPB5gFSjLgl%8v=O@=m{dpU|{f|i$qG= zQ1ypoULbKIY-ezwmpqZt)yDxEM=#zZT^5MbLDhiJUXJ@o(MA`DnK>8A{b+_)Y5i+l zkrk|L6qecCFgnV?6`0ws=-islO;AAAE2w5>@K8zf=5tih=F~Y6!qt3*kECxEbL}SZ zsZqOl2hFVHYzk~;(6pYLZh>0W-;JNuChXvnO|X*1d-ibkCe+Z!sI-ZD*M$6s7?D=) zwh6Krj6KD5NU)qi{CO_f3{?you5$fGbmbmLOe?+{HWT4>|lT z6Uu(dq6_cw+Bu40(DXikRRmAa06M*VoeV<*v6F6J!)HpU`VymvIv$0Yr)cbRm{rvI-ey7#?IwBZX`Q_5~TkIHAA{lY`9Oi9)f6QhIeo zwMKpeY^OaL!a*6_OnyICIHo`-Tcp8oy4xdMm(UVz;{$&ZntFvEuMkpYFb5gOM}jJ8 z-_rjzXtQuyQlm<>!=$evp9%XVm=#oU?Q3B&hD185QD`La9X)eEa9Cir`nxO*Q#%Zz zgDyBOv?{PE$dq>q`z-K9kSV(?Y_-DYFN~AU{YQ95fg0UVtxp?)c&duxN(+Rk?xkV| zT`*J}5&~No{2VKWhM+MI8O2NzLoG0$!N+flL#!z4D5G2XV!0Kfsn#M*M&&)s-d!aQ za1cZ9)QB0=pgi!@SnByrJZwW9M;N)Dh$ph)8wTlF#vT{!c$Vxo&PjQmoV{p#I2J}z ntwVRLcEa)lTrJV@XjKP|Z;=ehc<>K&kzM}*xcF@s diff --git a/doc/bashref.html b/doc/bashref.html index 1a846f2d..c913de67 100644 --- a/doc/bashref.html +++ b/doc/bashref.html @@ -5984,8 +5984,9 @@ option.

assoc_expand_once

If set, the shell suppresses multiple evaluation of associative array -subscripts during arithmetic expression evaluation and while executing -builtins that can perform variable assignments. +subscripts during arithmetic expression evaluation, while executing +builtins that can perform variable assignments, +and while executing builtins that perform array dereferencing.

autocd
diff --git a/doc/bashref.info b/doc/bashref.info index af31a79f..934c9feb 100644 --- a/doc/bashref.info +++ b/doc/bashref.info @@ -4376,8 +4376,9 @@ This builtin allows you to change additional shell optional behavior. 'assoc_expand_once' If set, the shell suppresses multiple evaluation of associative array subscripts during arithmetic expression - evaluation and while executing builtins that can perform - variable assignments. + evaluation, while executing builtins that can perform variable + assignments, and while executing builtins that perform array + dereferencing. 'autocd' If set, a command name that is the name of a directory is @@ -11737,79 +11738,79 @@ Node: Bash Builtins145959 Node: Modifying Shell Behavior174884 Node: The Set Builtin175229 Node: The Shopt Builtin185642 -Node: Special Builtins203214 -Node: Shell Variables204193 -Node: Bourne Shell Variables204630 -Node: Bash Variables206734 -Node: Bash Features237194 -Node: Invoking Bash238093 -Node: Bash Startup Files244106 -Node: Interactive Shells249209 -Node: What is an Interactive Shell?249619 -Node: Is this Shell Interactive?250268 -Node: Interactive Shell Behavior251083 -Node: Bash Conditional Expressions254570 -Node: Shell Arithmetic259147 -Node: Aliases261964 -Node: Arrays264584 -Node: The Directory Stack269950 -Node: Directory Stack Builtins270734 -Node: Controlling the Prompt273702 -Node: The Restricted Shell276468 -Node: Bash POSIX Mode278293 -Node: Job Control289226 -Node: Job Control Basics289686 -Node: Job Control Builtins294654 -Node: Job Control Variables299381 -Node: Command Line Editing300537 -Node: Introduction and Notation302208 -Node: Readline Interaction303831 -Node: Readline Bare Essentials305022 -Node: Readline Movement Commands306805 -Node: Readline Killing Commands307765 -Node: Readline Arguments309683 -Node: Searching310727 -Node: Readline Init File312913 -Node: Readline Init File Syntax314060 -Node: Conditional Init Constructs334499 -Node: Sample Init File338695 -Node: Bindable Readline Commands341812 -Node: Commands For Moving343016 -Node: Commands For History344865 -Node: Commands For Text349160 -Node: Commands For Killing352548 -Node: Numeric Arguments355029 -Node: Commands For Completion356168 -Node: Keyboard Macros360359 -Node: Miscellaneous Commands361046 -Node: Readline vi Mode366999 -Node: Programmable Completion367906 -Node: Programmable Completion Builtins375686 -Node: A Programmable Completion Example386379 -Node: Using History Interactively391619 -Node: Bash History Facilities392303 -Node: Bash History Builtins395308 -Node: History Interaction399839 -Node: Event Designators403459 -Node: Word Designators404678 -Node: Modifiers406315 -Node: Installing Bash407717 -Node: Basic Installation408854 -Node: Compilers and Options412112 -Node: Compiling For Multiple Architectures412853 -Node: Installation Names414546 -Node: Specifying the System Type415364 -Node: Sharing Defaults416080 -Node: Operation Controls416753 -Node: Optional Features417711 -Node: Reporting Bugs428229 -Node: Major Differences From The Bourne Shell429423 -Node: GNU Free Documentation License446275 -Node: Indexes471452 -Node: Builtin Index471906 -Node: Reserved Word Index478733 -Node: Variable Index481181 -Node: Function Index496932 -Node: Concept Index510235 +Node: Special Builtins203284 +Node: Shell Variables204263 +Node: Bourne Shell Variables204700 +Node: Bash Variables206804 +Node: Bash Features237264 +Node: Invoking Bash238163 +Node: Bash Startup Files244176 +Node: Interactive Shells249279 +Node: What is an Interactive Shell?249689 +Node: Is this Shell Interactive?250338 +Node: Interactive Shell Behavior251153 +Node: Bash Conditional Expressions254640 +Node: Shell Arithmetic259217 +Node: Aliases262034 +Node: Arrays264654 +Node: The Directory Stack270020 +Node: Directory Stack Builtins270804 +Node: Controlling the Prompt273772 +Node: The Restricted Shell276538 +Node: Bash POSIX Mode278363 +Node: Job Control289296 +Node: Job Control Basics289756 +Node: Job Control Builtins294724 +Node: Job Control Variables299451 +Node: Command Line Editing300607 +Node: Introduction and Notation302278 +Node: Readline Interaction303901 +Node: Readline Bare Essentials305092 +Node: Readline Movement Commands306875 +Node: Readline Killing Commands307835 +Node: Readline Arguments309753 +Node: Searching310797 +Node: Readline Init File312983 +Node: Readline Init File Syntax314130 +Node: Conditional Init Constructs334569 +Node: Sample Init File338765 +Node: Bindable Readline Commands341882 +Node: Commands For Moving343086 +Node: Commands For History344935 +Node: Commands For Text349230 +Node: Commands For Killing352618 +Node: Numeric Arguments355099 +Node: Commands For Completion356238 +Node: Keyboard Macros360429 +Node: Miscellaneous Commands361116 +Node: Readline vi Mode367069 +Node: Programmable Completion367976 +Node: Programmable Completion Builtins375756 +Node: A Programmable Completion Example386449 +Node: Using History Interactively391689 +Node: Bash History Facilities392373 +Node: Bash History Builtins395378 +Node: History Interaction399909 +Node: Event Designators403529 +Node: Word Designators404748 +Node: Modifiers406385 +Node: Installing Bash407787 +Node: Basic Installation408924 +Node: Compilers and Options412182 +Node: Compiling For Multiple Architectures412923 +Node: Installation Names414616 +Node: Specifying the System Type415434 +Node: Sharing Defaults416150 +Node: Operation Controls416823 +Node: Optional Features417781 +Node: Reporting Bugs428299 +Node: Major Differences From The Bourne Shell429493 +Node: GNU Free Documentation License446345 +Node: Indexes471522 +Node: Builtin Index471976 +Node: Reserved Word Index478803 +Node: Variable Index481251 +Node: Function Index497002 +Node: Concept Index510305  End Tag Table diff --git a/doc/bashref.log b/doc/bashref.log index 641c52ae..cc64bcd9 100644 --- a/doc/bashref.log +++ b/doc/bashref.log @@ -1,4 +1,4 @@ -This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018/MacPorts 2018.47642_1) (preloaded format=pdfetex 2018.9.7) 18 DEC 2018 11:43 +This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018/MacPorts 2018.47642_1) (preloaded format=pdfetex 2018.9.7) 2 JAN 2019 09:14 entering extended mode restricted \write18 enabled. file:line:error style messages enabled. @@ -273,7 +273,7 @@ texinfo.tex: doing @include of fdl.texi Here is how much of TeX's memory you used: 4066 strings out of 497100 47081 string characters out of 6206795 - 136581 words of memory out of 5000000 + 137581 words of memory out of 5000000 4846 multiletter control sequences out of 15000+600000 34315 words of font info for 116 fonts, out of 8000000 for 9000 51 hyphenation exceptions out of 8191 @@ -295,7 +295,7 @@ s/type1/public/amsfonts/cm/cmtt12.pfb> -Output written on bashref.pdf (184 pages, 753076 bytes). +Output written on bashref.pdf (184 pages, 753125 bytes). PDF statistics: 2624 PDF objects out of 2984 (max. 8388607) 2395 compressed objects within 24 object streams diff --git a/doc/bashref.pdf b/doc/bashref.pdf index b29a093ec790fcd9bd1365a8f49329d1a90e1ed6..0864d8bbd6600ea5339f96509148bbabe86b222b 100644 GIT binary patch delta 11305 zcmb7pbx>W;lP?!{cbDK0+}%SiPH?-p2D!MNOCS(}2bT~e1ef5h!QDMTaCZ-|e7E*j zzkOA&-tPOOyFSx1-F@ctnd#{{H4mIy51g=2P$+y2!VWn|Fonkh#0q>hFsj(7!wXt9 zGtUOG=B^{tj3XoHbP1&Uo(>75!U6ua6<3t$DgH$9Z@C;o5^OBd|R>X^@vF z-|J!htUyRgJce99|M(q|zv)5xsAm!r!5-5{blhTG6OUShX+n=Pnx~JRlmO$dGdda8 z7?D7+je7KTNBfRBdtTG~`|$TpwNYMM`8%Uq@lq$n+6F?N7ry{^;tP?aI$5%V0?y`w zp(2Mmw%9PqLIw}6fRmhjGRY5g7lmC<8Tv#Km5a_6MIUR#omRX3*v3r@W&?j{%N@ve zE(ES#U%`PpbvBmV7m^CluWLve>gfFf%JuU;dL|{pU&C}hKV#Z+mT?=#Mk4Ydqu|e` zyJf4_qrhL}9oYkT);m~n4)Nrs?N(qD(fWYAgu+M8U_B#Oa*D?bXA#1bJSNh8{|BsGXT5kEtpr#?vD z=PRLn7#Ya}!lO_?*;~7<07g?x|GRDfze&COZ;eIjF!TZKg#hy~ej)=NQHOvN%-8gO zQgR7WL8Q31Q?+mw~v*rz!Age8Llwys%+r3>z% zi=|k$x7t?FDNtN%z0b|UG(Fn?qJ3?5I3B9C9rV3Dl!-l5O=-2npFEzDhRK}_713p3 zBM~_TRM-p^Ih@u(MJnCWz$T#{i8Z7)<9^HPq<{Ub*ioX3x}>e3V#p?ngk%YBbL;0e ztpy;QhJ`f+V(H%vC?!j4f8s%4w~Nmf>tG`*OoAU`(^^91B=j*U_CX>$r+tN9zUQma zVTDH5R=^TF78Fdgvy5h^5IGdMp7PC&^~lMihaQjSHH`tq{O2Fw*AD%w%g+W$!S4AVM2y zlq&oA0Le#O8riyNM%b575n}4P5%WiNbtRPP!S06hEVm**Kc-CG-S$cxb&i$VPzMu# zaZ%~%#w^mDY8KR%qV*7%nfAFElDr&!FrJgf@QV(4xCw-K&=|2BnxeC1Eg75>b%?JOk&Ue4In9 zs0WsJXZ?Rj^a=9dRV;LVT0kr8(h+VN@>yWd@>zX8;Si`>h(8&%I1*<|Gk%5ZGx_5147%pCI#*aJ9Gm-Vc&&H@>_5eOBt9t!0Gsc1yMP zqGXK9N?Ger;*K75RiqRdk6|_(wziVBaX1_#3a8*p*?7vV4KCS5b?W$rLk9s0);Iz>2{k>>Q{h3qF54s<4@z-FYth6?t ziC`#b*}=FCi;U4u?F!uQd<6|)URgbSf=6%E07xR!dtsP0h$xP=`KlgPG+6=0aVzPv)<_8=i+ z#ZAU9MD7T8J|FR#l?X(QA*@#!gJ_Jl`8bz*Y_EgX6c!Rnoux&Tuz-YJvqQ?aqv(XY zA$RQEgLae=mbOV%*hlfz*w#wfB+O7Y59ML^)qr4QE2sUZS>+KNtZ$II=~_ktSpA65^7ivH#|8U?1k3Pycszv4oV zCx#Y1(+H^#&{ER%W&-YxAJ-xiG9r5 zYyI;&X<)t03ZC7`kYgWj;{Y#oB?fWy@9U4G-u$6e1bz=lT5ETt(=x@fh3{6YaWEK@ zKmN=Z)cILBrmea@bDNognov5ZJC;yhIrxd6#un`)haG98W%wPC^)wi;$Y7x2kNDnJ z&}XcN=q>hT6t5{B(Pm9K3>M5zvh2U3K)zfO5!i`ZlE@yZqF@#|dZBfr zGrv#~JJ%KJcDyg;&L%@T=fvRz7pxjs1{*t~qb%*0IDz6rET`N)f%OeX^xKmyui@|7 z?m6SbMhDi;U@?G-NtcsiaN{sma;ZXmMU4K!uKsT#16q^y0c9V>ve0+uf}UA3u946i zfghNeU>gc+BG*tOJ;Y^^tSjuZ&8;~0^r(7rl>|`AYHT=xd_n<63=YoI>1G6uZaLXc zRmkT*rbmG%6#Eq@UwJHkX#2Rwal-wUq5Oi$#vnH%a7qn`h{_3*HCH*PaJ|26c+;qY3H(?)VTkUwlJpY&iDn0D)*_hnb z&M^avYk|^{wP0rU!(5Fy^_^G9)up?eb^pd zEq15YtJ;BaHO%g6yh2UQpLrqTd!U? zpxajEHcs?JCg*~hYt*K;>L=Q&r;Lk>h!Ca`_LiqQuh63>m1~->{z7P}6{H#6-E1@6 zBd}P7h+Ppy!d>x)`$~ravltpFcYVp!Al_^vWX@)A2mGdkZ%u5)6lJ9iTThB-7Vr2P z+N%Z(wz+t>>j7CqHqZV`hsAmWgI!dVEk@p}p-%~ZpKYfmSmx!iPY@!C#6PK%+Gbsg zDsL6VNWHBL2>Cck?J~C(X=36xye?$YM`X8#UD6(K=xq|{Rmv95dowv9U>h@64!bFE zfP?cmf!ygkXlO={Jtfv{I!cQZuyDsXdM845C5yaLf?a;=nGSFuFxREO#pFmk3m!Gh zkrDc!qvR>@wja@Cq%Vm!r{wDHvGOfOQ)<_oDMg9tgkt#&T@7cNE_YltdLn}K+~~~O zx1zDO{bGc_0%D}bK6PhiB@gkC6gOWGL47kL0xe5QP7yLI>WJa03q>PdPzt6R0u6aG zrornk&uy!&wZUViVlld!=N7RI&6(?e|JEz0Avl77I~I|m6@k2}GYet6-NHZof*b1~ zRh|$zrh-h>o(2W?_br64S6+1@an4vN)v(kFvWe(anLrrIMxqQ%u<|7|P2RVGg#%Ra zUMrkl4;Gav=(&ptS>z;pIp6xs*ci$i=wM*Uj?XM+;X2XC5)A!eO#QZ|=7jf!>T8rE zL|KUoFr`!ta;?DY`*8a-qZ;&Z1JDw^BU?WA`sw3-x#E5FV`>JvVcO!Fpe^6xb(8fc zpqBZkr87TuYG#=p$xd~&{}Gd|RA$pa$-+bQL&IDN&K#d{>JyJxdO&QT?a)YcPk{fE z-TA?xjc0RP>WYWR_p;W^)(mxZ-IJ9A*hl;kK;sfQ>W8EF`$oHm(=%vemvcq)wAFdd zwAC+(r=!ulfxDw6)rZHSfVh*NmRtZXzrbu5Zdkk6A4oqI)kTm@pT( z0#YBlV|jTqFN5P5#i#nu$NLrh8Rj_Y#Ag>Heql_HX0~i4QT}574j0-In~6LF1W7cf zs*|*%U^CZW^w_jf+6Qf~#h+^~2Y~xfx5*{WFSs9u7IJx{Ovi*$^r}bxTGZUoIk#*v zzmogLnHPD>)`aoA{TaWn@ekEa^G?c}E+8l75=?bEbnY8;SI~W&sD47}aJweO!B=BHNzx9F3Z76^@k6-E6p$aE*MRY~Z z(u*KK1ru3|KpE#aBsf)h+mj%pGeEs-8TZ^?8G9zxZaOT4yA~UN7hde*s$ISF4yY$9 zl%|wG^dFLv{SDz;KV<^_B}z^i+xZQzb+?4xFRFoh@JY7N)2TAey|a&RP(`P^X91;S z0Kean>bmhnPfu^kdP>|YYvGw@bp++gtX<`L)#RBs`?;n0>A-G2n5olfWT4Sc;c@N5 zBo2ZV8jQhOcu)FT?SzK?RO4xn1JGz=#n5d3UbH$#| z{Js6xyJ!gPa_j4(ow-OuBnL7L^2^-BJ1NGz-(*c0Gh7ln<} zH?{$i?M(|a2XY)}Azwnt$=V5(Mi<|@ zjnz?|qa|w`UG3ME3_WO8e+9@u-&vawd*gH55}DWK(Bd$!Z8IS8B!qp)N_e_k@m)SB zX@75nyxf}8Dw2=-&Vh?72j7qH1PvKJ)ywAhq{-6ZJ-ZJ+;1&=?-=h8E_aN9jgAIOb z;nMRV+{+?&g%K}Udgg*4(r!2Vgi^Caa4VE&+o@KaU9ydg(tt755(RV zcwhf{55ClpjCQU}NQ=)qT*-~D@v4*d@e7@x)@1kRLyQ1x+jTBrmD6(el&vHPv!iZG<#iGulKz+!WvVd20qQ#-zq_ zAhA2iZOk_`Ie-~KO+42ND&@Z(bp6F%d^nnVM+N3_{Sn0bN&PxU`Hf^KLiRG;HH-Xg zppB2)9C|%jhaSvRqg06(r91ac>Vr^N65b zD_ty#_^|6-O^vqJ3suaHEOHYxBE6?fbqw-IZ8Y0v^@z?>%`6Utgo~!t%3chxOK^5d z6&&1M9$Bbc>RhstjrQ_*4Iq8Y7~Btu7=FDF*01*69Feb`m`h9Q z`IZwW3V6h{rNPDz7Wz2A-@pH3!%Oc zT0OTO`rgB95pEuCUTzT{etr>7ZUJU)Ze~_=E>#yRd2N{uny--*)ExA$hH#O3GLUv89rYLvELoG6*y{s>1Ly{aSF`D0W*I^uRX4;o%U z`uY|{!)O##oR?#3KOxP*j*D=EN4Zrg!A?F~O^;m5`lNAo~8uKo~) zWMNV^p?+4@xElG#Z|rj@_XF0_#GBGog(z6rc>KYt*<>{^-AXbikdX|pR37 zu#REPYt#)m#2pBgnAE{Ur?`~0@(&L)z(VBmrFa7damR)g{mK$*9ZX_PxbV?uQ3Bl| zB_l>KI33J;VALVwN*V>DfS^s^OKOjPP=zH7RZX)MJ{r=m8N&A}#UVz)Xt62-U|R?r zG>|*EAryVdj&o2l&i^a|{u$QL_M+k=-mw9q#yRzY^&yB;ubsigzKF)h^{eE^Vm*|a z8)q0GsF_G9oIEXYYj)VfA?X?me+4TMgx6?=G1XvGYvK*axAJsoO`V$Dm`rfk7^E(s z4NhT9QtM95j#CWMAW%0~#}UXGhug2R4?kqi<4P`IM#mMP*kyKfu9E zYe`Ip^trO>wzkoVz|!BHshzCI9PTDMR71GvVFMzY(;JvSAc@P8&@Ug%i82|zLo@j; zU`UpmqX`K@;c=*Qwlw^ zRLL`GilaT0S5!{CLEV`^BpMFc{}g7-CxR8Na2jVUCK8>-SgGPnB7((a69)O1d2f&x zSs+2bd}&jLW_q2vHLVh7d!I`pfX^K8$R7#Tn5p!`FQgQ#i&mr&u$~ z^GIIiH5Z##JEm-8?82@LSte}^5B&;ZZe-siMr(!xr1K4+IH=yiE1TSNz3}EZ^Kvmk z3qXVVJO(KZ#f>l&t{bxPTIrz^)Fno_)hW}pM0ph~7kWW?h43UPmRbuYIT^EQ^`=G6I&rZ!z zbp&30*dz_2utl?uMEMIYHkN@#U{5zQ=6$FcG8m1-P=wGj2%m`OFU>Aa2)l^qJYJVzW%RN$lmoMQsnZJz z^_Mb7nU_(cr=dSYyf zGL>IM5F79R##tx_k<_ZO1Lz2I2LCx5%Q|^Ar^>Rf9zXRf?{&Ppz9z6~@Y&_?6(uNd z(@NHJhpgiREf>KttvE_=zrAcc;RdWnIVg46tLtThYs7F1Ld8Y=t{z<6MS^0MN%I75XxIicx< zR!hFwSL1Hb4Ac`?GqCAFQ}tKE^&2G+Nf8~2Aw9&hk`XpU@AKxEx6!ZbWihD*O=$Qd z>h|vixrdg(hzw+c%u{t8LLM1hAeDMi$Z1S+{g8_9{VNQ8!WF1w(EUonoHj-!HO0xk zh7WHg8X2LA{WE&x259>3T&=Ll>T`PF+>v zcbw154oLCrOZxBrl>FhPLoRY+?i1#kR3#eLS&)gjE541xwbb>hB37uUH!<#vkJH@uspxWqsCdj7s}FTN;w= z)9vla>4$IAp-UP~R2EkoYAyY)#?_kiU5)X~Jz<~jYlA;uPiCzvWm)&rf4<*(t>Lm< z_siv3zdh$bTfKNGKip#~of}jWSAxJhm&<5MIynbUB&r5-c08#gn`@CfzBor;EgH_^ z(@5p(CObG9!C}&6wZoroPC^fID&tHew{&UFlzAM zBVa$V^*?j%8t%Mpgo}8I_B-<&@=7nlOQSz##MA$zUS^mY8M1)R^J9XjH7;gwHRKn* zlt17=9_WQ>jFUc$Ad38>;A#OlX6=(O8;oq`=q;04HlCvx+M zt3Xz)D(NBjvc6g$_4MfIUGdq!`8L@}jX?4Wmd#Yg^xL05zFXJNE_~8kL>jN3w(;^- z+o?rB_LBHZt<8=be}>O5u+OPYyt9g2P|2}xGq>VUn6;iF^mi<6Ht zTA?zM<4APgXh`5)BSZ5$b|lC9r(5^?RDQGC&4eQ~Lq1vzXf`%KoP&6)eYM$xXa#i* zYy?7KS7+s?TUG`Un+JJ)csVQqmvAUGMpXi{%%alFyYS7OL9V!m)tlusdoAL^aM;1! zFxht}aKgx8(%%?yJPrsRr2#5GQ4uUP!}DL9wfh5#Sl!8#{@Y z*|uMJz`rSUx_z^4NhDHtmE~ip6Osc~fZas)HT?05J{|7&1NHB9*~e&r*7V3RR}ZSw z(g}Z*;Sk5Aq6-XZ$Kg%I2177iV{0nf& zIqL3t&QR%4)Of-gj{ylOgaqWn%AIAb%p>Rdq1py^h%Cyz)-xVVL1O1;4mZA>bL1SK*yN00**9`wG)*fn9_v|iGpTep488CRFyQRmu*=n z;@>JxYCRrPE)B9$BgG>tFdmbC3j(>wSv_+oooF2xu&abMLSd}1P7!X%UX})p758SZtkfh&6C`sp4 zas6dRbE4b@l-;iCvigTH#k|wr&X|L_98Ka6@hSSHNOhDrBl2o8+2f51+K2vAUP}J!y6uL;fyd523h{vd&|Vs)tf?KlH{((s|DX(52as0QB!_@}E_;662c#kfVY%!OxqF0@)sE)LaJ-xHaO=dvl}3 zL>P&l5B>UzE$5~ALewQ!OwzsQSVQ0IS(J*Z3llUehrtc!fkQQ=MMRuKe$4ewXzz89ZfYb z!i;meOoFwuKv6KSOdF9C5@)gjrFJ**OQDJKKH2v%eEOxr)VFzLNB0hXJtXcgM|aYB z?%&}&)Us1Hcy+p=C%lM(4Kp43JK8+shq}pm(R`xQFIE%KZf#1b=|hRBzs<0!*S3F^CjO66?hj7&I@a(Iu7%Gd#)vahdz~WQZ<|+m7m#U zPd*H9+PcLmwN(V(D&V-N71|R|YACed+UcZn#nEsX zY>DXh>!H?w(pWJOA7Q2RdW|(#yNSr=YmGY&l@EN$t#@y*=5t{<=ys+Jb_@A}X~_8) zO_QucZBN!;qma;x4T^6Ii#JQHS1%Q6bA4r!dNPs&w^0U*^cx@xJ4{5pnQ}AF)CSif zz>no(YqKp79R+WY+&e7R$B(5}d{d9(5 zc4YLXpM2=fLqCyV!-d)RV_a0uReh5x=2Do!9qAUAe&KS80sX=_6TF*5{=!xZ75&q6 z&~ShOF20)&&c54xDA{y|74uJA$~m3R;fo3w7Ej4b6Z&Eo+V6^8BpQxN{u?o>H_nYL z#_0Nh^InVTGj2-gJpH>qQxwcI+;zDyp9a)qxNZ?E;qX}2T=F-;nEkOi0C*^gjfj^3hV zYcx-yd3|{O&y|Y5bhS0`B)__hU??Lrk3m^Uv)L&#j)EN=)S(ud#IVLf3fCtyg7>U9 zD@23v&;fFV#|%zb<0nOCSi=-X>FvzkO8<7f$jXgA`T+yd1vMEfx)N_dEr$WhLsxZ0 z=Ey1r$EO*D=lg{|(Rn41Stvus3^$51%rUw7R&}d9#MgBS+EP_WWzWzX=t{C&x7q({SHRg%=PiYVyd@8CM) z=)mK79dQPZGUVCs>*KiT@-+!N-Vl_2Bvtx#1BV=;Db5 z*3$rw^)!#tG>^-4+2x1U4$wnKkSpB3LhDLO2~z4r<3@Zb@&AeC{)+DqQEup#Bt@~i zVh4*b!srKg2xe3Wnk%(2T*4ZC1LErtb_lvk2pKoVc888DmNCkrjVHk}{KcAJ1H$nK z|20W{IGmU4gqqyJ>w~DlsuLx!r@e}JEQ_`lj* zDbqG<%m_{WfyBwlMSD%sQI2mU|7LhZ|Y7IxZpn{VAX4O=!ZNlO43bf{s6w+9qZp8~== z{P5S;!iO^M`p+VVo31Ra!Yy;2^9fs(3Ek#6k=0n0Xq^k#qHsE*;i{;kY8}7H!o9^} zLi=`unz!0+!6x5-Po4|!RMvRUQ*KuBbejM6oL4xiQIPINZ zS09a+an?U}9NW*R#cC#gnsY?=wFC}N9ahaPs*4oafWTKGb*z7F??y)6c?q}A>QUvuFLS+!Zo>}q>iF&qkS(?y zGvk(6ILR|MMIWW9r8AJ=#Nhsx^TAn{2)+6L2C;r$`;d`i#m?vb z_RW!T_Deup$M?zL>o0{-KS)?E-8DTm-xKD1i@Ygw+oq~@PG8M$E%B)@ zeqZZT|Jl1FKqu*`#NoMGP~0(`?|0ds6}JDA71wS4TV^o}u-TOH3hB7nCN&lnV>SP$ zi5Fw7P5L#T6-xe#6`M3Kij|E_{&(5GdtcC^dKuRA;$aEr`F18eD=C+}+)s5S+o?g2Utc zz5A}byVjFGs?I*Us;m2SuU@Ct-n`?izT<=k0t1n%LEDr_y!^2pXsoa_edVZ)UV_%+ zGIBapS^6%ayN*PkDl@cGQ;>V#iK*L~1M?_0@LSw#o4yp23{OE?t*BgN(GU)yrsCq( zqT8avW5Vm*CccKD5}n+aN43Gi7_aa0#agd#Xg^nnhnYf~$#0grQp#W|Q(|cad~BCX zT^o)?!AnbbJ9pcAkXhKni`rSmqZHKxBgz)9(km}gA2*x7W>aS)S4(ReHBF{ORI%GH z1}8`Qf-{!yPk5}ODV=^6LC&=1J{18I` z+He{nb7|TLJJNiN+E7$dox{CKfz*gDyvvtC)%EgdDZ|s55;}y%{?g}~6A;qr&Gr3V z1QVs+b2SUK0{e@0o=is3h`nDUBCiaw0mH~r_%sVuk3ZPOt640V!XKtHTSl}zM=T?+ zzWOt^tl*5G8+I6POqtE-22*;AvMw4@NQlp6PYgCH+M-C}$FEDt8tiL}*ygMHQv?td z3b;(kXOyWUZz;k4oWCeqrlPB2cdCSOCWu~E`+SToxQlN8i35KT@p#kE$D+UN^Ql!9}*+w232%*}ctJ&EOg@$&G`lZ?_Df+hxE^T{6 zt_dnKKBO+>k(!SN89qbg`9vCsJDhMw0NZT1#dM3DV?KZt+B}(m<#_8M0u*d@K?x1% zDAO==&UAOA9uOn-1W!e{QACg?`W<5gU685+6JqsiGbQ!aK@3wI#)d5mc<6TwDY_k0 z8ul!@JA>kT2Ca7eYZ((_)DrXd9~>s<+x>m9^MLo;(*9vUBAT5f=4=+sy8KqM>;3{y zqc*7xa(fsq3GPGXtRUcL-%;Q$y5@8>eXt0;8~oA)MFKSe33A6vV^t-|piG_LdNtsNMoKjW_&xYyy*+M<^ zT7*_S!qaY`bY{5Xj9u=mo;Ma%7~Ui8{CsDoyzDY`?k}VH zN$Fzafx~MBt-a=SHjy*#F}wHGGmj`6aUdo0r^36@?Rg&w?0eT4H3GQ_oWkY>VM4_i z4N}3#IWwg%!#l z?(kzYHZJ&MTZg*xU*zuWuEW;;F7EpHqiUf8(ywEBZxOjm_N7PlWl71WwJlT38{)CN zQo_cxfrgc(Y9Kp234QayZ)E42{Hxa17m_f^N6A#l+mun0Q_Lj&jiJKn28F`U!0?V$ z6&>CHO}0y3bHnjEZOU0axleE5!1VOLam5j1h+er3Z9MO>!Ua124gz(CCD+usTl=>B zI4dl%SXn+c^yZSauW*+QV)DfR6Srik=+ipw48Of$7ef0z#WxV%Mtl6zRtiP-jB}WK zpejMjqM1m*+3zU@0>LP88|-s2W6L*WPHV^hg(%W(j-)7rqoMe{FplcVRoNjM+%8KK zpM|h%l)p^hfTXWg8$MK(v4z5$^H_48lBCpucoXt|0j=2T>A?OowhU7mtYLe?_%RGu zTmy5wCE(DcA0{cLB$GAY^rgp!nG*~yF>d{lK8xk=oAV8&zOXev%R_IiBZs|`6(1Q9 z<*E6fM&?|bTvukbvtgs@`ySb_h3(70XQaB!oQ-G5RRTpLqHp++{GijRXxxi?>x!xEQcC+>K1Jg zPDR5kVT|_SUNs{l)q~r_SD4tTj%p@3GJ0k<0n#X%vDB$fuEuV~abfjkV});dZzq>H zwvc1-hgbhr?Bj93UG2?(FKUvv?D#@eOq8EMctw5|s#t>rA}ZN1454t?`wLbc)P3E^ zkqLp=?oo@_%EY3sO#<{@Kbf!5-Lh9BI2Q~wrPOox<8J^RNU8ctDk#G)Hc_h@#Ym^| zA59Y~6bs%drs(85mkRErvMZ+%v2(MrNgBU>JRT{ZeVktY)ut9B9saOF#i|@1fBOm4 zW+K565FH3%gc}Cj{FK6n-T2v}-qksMVczZDS@ZmGfyz&k%O*9EnuaYeN@p25at7ua z@;y=yk1i5;scZM`+zw-FIUNN7C}NC^4AF3v?$5}?rMZ$}u4aoLIN(gzW2-odvSzcf z)Xc~aGW&J;Rald2qS$$-a8jYwk^NIPdmmnH2k%<(UQQS8iWgR>s1 z2LkrXihfAiRedWU>!l0yyYz2do-e9vEsVtaa9ygqS_0R?vAvDO8yEESM9YFME0fg9 zBq_!S<$@=UP2{%?BxY+U4)eoTSnewlK|e`uwpGc2ibAxZ8WWY4GWR9v?BxA!m%;L4 zl3W3Ql)8EGF!(7mVJZv8ri1U|dw#zzCa3ml=EIBQ5SPLzvx=BhG|3+eQ?#EsZ|zO+ zbK3=%+jkgj3RVsWZ1n8l>%Ld_P>es_2-2{4HGG^;gqb&Z?iLw!^@zUtI#QQQ|4TBt zPF$VMv66}AllLUbOH#$JwD@N(KDorfDglNA8c{e1C3P$GIhfgANgmSFSM>;vUy>+q z>jn07!Zm6;hF{7vU)__IE^rZ>dtj=n`5MyH=HhOxt)3bu7v`j%h@^QK(e+Dnuab6! zJoO7Tx;`mTs$rVkmhnR} zC;Quosp7=X%5_8OP;y!;P?H4==cIp_*w8i7vn2?Y3&5mVDoNO&CE#^CF266hOCx2~ z!rlxls_wA_-Wsn?PS?FBc$);iN4@7+po+{R=*nuQ&{G^jYxJ8!`k+Hq83TgFAJxvg z{JuHmyDA~4_2yPc8gm1EO!p_`fqrk)9Zk>uTxZX-id zfsS>C#~Jo#Wlt(nr|GW5w(hdn+rq;A%?X>2hwQz1`eyELbK+)s%45dY^Wq_R8a8(zr&Apq7PSZ7-~fIS;?nT4yTRZ4t$#DNg6;EfgV{h7 zDuu6iFP>U!nA2H@4?D}?+~X5c+`$*M#4jE|qPk;d5FKkG12GmG`iQ~OXQ~DQSfaEV zh?ep@wmw(PQ)}Cr4Jf1KG31@**@vk5rqng>$2t!+kS!2a=$ATe1)eWhOb-kQiey(C zVU+&%R*x9$AS3d}+Q~UI;E&E%WtNR-3T=KswnFX#7o@-@mPlxlQstw*G0tRqL22(6 z9mHFe*AK0^#nHxgV#dgZ3`@sf0!Ul-rWd67u0|guqigFWOJ{(t$`O_bmGl$)!j_Zw z<_~B2$wU~8OevOj(YCvSt`+7IyYl!z`wB$|wXRv8V;SsoW!$vuT(ekD#=VFj-kv>L zew$kMm&tWFq8Aifb-B0hUHheM32_koR@g)EuKY{JU(d@^n;@(yDNCi;XWOlTY@40m64_y+I zRnilZ!|S`+mOKPR+B}-9+h9rDPhJ8d`XwtPv(zaky@3twy!G06Oa5QZFnoUy(0`rp zGIJRF@^-i(<-Xdp#&LYxByw(lw{O2Knagzx<7FJa_mIgqZ+Hqrs&~O@5=V;hn!Q)$ zK7#lNmhW(_sTdTy%wHM!ky8JNs=?|rqLDeU&p_*@jVSBb#a(1<;F4RCMlp!AgiO!Ih;f5r;;y?B}~LnV5@KcX6x+X6Mq}|p-%|a zE4V@b%*UY}hSt!d&bEf^?k}b8Lk~yS%rOoHFvbThwEIf$bd$&3a(T8g zKSYuBRsB>sj&OW>h=hzp)?I%SiUAw3MA1j(rv9((gaPl}`C3{RO^|Dmf6+J)NvruN zw4jEbN~@wlaoyK}0$6v*;;~w%<{CPcXt(5uC+-8Y`>`_8a~$MrGxNu+J*vg&1Cbd! z7%Dry5?;shSyZ&}yb7fGH30T?bMw5R4zB%Ji&TkA+$oxkZ$nM>Y0K#3G@S44jAz{e z=)?sBQG8xhmPw8jEyx)>$Mjz?7FRU+d@<<{TUC)ZsFOls>0KF?~ zY_7|q5>u;SsZaMQ1l+pEmTo$qtKbh=C#P1y>kkOC!>1~3bAQWeY+z$)VrYOk0(MF)xUR zXw=ltjF{VPfFinn-`mtmAA#}Sz4{^>C-MfshBW?R$?PH9$n?0Wt!ubl?3)Xr;XMl;7pdN-#G6Y?ydthZN^6$jB0uR5zAJCTH2wfk-6ecubj#WN||O7cFs{^%x~8jZa3F8;z&)$df&!n+k+ulsANPKobqb{ zp&bf_jiEePd!G||>L;R*8rtZM%VudK#M9mnPpFMvX`}${ni^>q`DHRbc`@0H>gpx+8iF2&UKN)!$&ki_0 z6fdAi`wui829$5py_z^o<7~J2)c3LXH2CdC3Gxa50gkEA-8di?hU1=$RG-a@R5^*( z_$Qy)>Pz(5oUg~L;j1pV^%c)54Y>mz2_#ZYzF>R=fiZ4;Hhcd{QPe2Q#Mm`9?f2HK z(MP;3H2XTTo53C90+QXBYYoC2^cAI-T|lFO<<_4O1b3^Q+h~p7SaPk@`gbWDZbns; z-h$Z0@XYKPS5DEzT7OVONUurmJm(v(avJ9xyfhz^9(I54J;SA7Y6S5B?%aR{EXS z$9%o*ERoS_d|+J~s>s~+8`8_w0FZE^2rBwGg>#~x!q$>%&&72$F7=1__cwuP=+@l2 z!rnG*+ooRyY=!>tXX9YI(d+di4{1*;R-dH9HpT2mTc*8MJ4&L*JkB_yT>Bix9bHI* zoO{*?5lK9WeKdLn9Rjn+R}|aLi#j=Top9!()qK!u%zOK^5&ASKR>pNmZ3dq|uIh&UK3v{?a@Ui;#k8MV3Ickj3$ynMV6US0uyK|W3%K^7h!7B)<7)z9Ygrp^|0tn#9KJkQ~OPpR{M zi-ks@B_kxv%g-;TpeQdZBqA&?#3LdsC@d?_BM*@ifXMO+OVWw|UsH@Rxm7IeKRR2{ z3GoZ?{!1QXPWEsBTYL0wr@am49H?a)sx%*R{6q8SjBTJ6*HDt_Pa}t6f}Q@X=>YJn zd4Lv%Hk~$Z>9i$!?3+of26Uy`(1ns{HOzS=$99#9_`o&vnL=ct6oXD)CTAIRzwAzx zeEznNPd7Sk$8$~>SK=#kCT$NrA1d_BEA*U(Kb&sEY+fye_Lxxx6P8C910<*v-X zKBq88ZV0dxZV2V2QT{|ZkGdc&3;~V?5ICSLqEZPG^Jk(s!=0eSi-0L;B#e#(wVe)v zHX48hMaK>x;KAhbSB7F6q3X8lIN*c_U^q}O0)#u5ejrUjQHT8vrC~cl^`NZ|<8r`} z-`y%u4;in6&>eZU-K-qBDhs=0Q7j_kX8g|D@eZJv;Zsz70v5tJC_ZJ|FR;jW4uO&(z$wUX9+Eu(QHl z!*nbZ-w0WlL#Uc~!-|vxo~*I^iE17M{%38VRit{%EkH(ppNudBC8(VQ-sRn!GUk4+ z4p2;jVe;I22W5<%oPTMG`r{LRL|d-+l=}EUXX1jj2m{>?Bpd9mG8827R7s-Rv?Y8~ zgC}pf?AMf)o!ihByYb|~(t$%px;lM)f%o)|xFVO3fB{;1w~*8vsNN0PKpGQE1UdAP zyrCGuL?bscH|!9Rs%)O=d8;1*fKVtzP60 zjKs#ma>?@^IU1S}2tm|eQc6ekB1zF%`z!Qy@@hxs_;+qe3F`=R!=Nfyl#zex{jWze zBl{Nv13TDXp6DA65dui$2ak-7st5srgbvIGS4T?zVrazTb9bjQjQuDoa#^KFu`vmg zJwj?&IH{Uh@Yz4BGXq;MQ|HnvkfUKZ5;DVHv*z>{5)lR7l3K2gupllfL^Z}zyV6Q+ z0&z0G8&QiqAcV@(j7l>0U#g?0Nb@(OA%xHk+i@Me`b&t8kem9`SgwAQlQ_(=zGtda zoX2&IZIZW-F9#ja3oF`xEhjo)c8gu)GbLL^)lQ|q3UQ#FSI2eINkI2%2RdFTZ_>j| zxuM?Lq#}-huFNy|&#qPUHJ`}JRn|3$$Vk79KrHYj&^{x+37m$UkG?G;iZhD8ytc!! z!_qu50U&2e-Pi#`#&V+g;td1I+VMpgg_R-Liv6aWgV<}V^{?!y8mv2&q2Y^Mj&B1K zJ4hT$5HB#w{B04Q14~R`G$O>bDohx?EPx8(jDhKL#?%0GeBOvGYe(#<(AGCF$Amxg z){b-NE`CmkX}Mdfy+koY-heT^w)*mBZ=Xi-4&n6GRlm!3D#kbiyndJ1sZHgTUOAUI^?DUbovd1~)FvWvN+s7;t$R^}1p$({h7gO1R%OUDf z-syF^7O$a;97&L*Wpi5$Xg4Yy(Pcf3e{sAT*xh&G{Z;e^ub-MuTPc;HPDKr-n&uv~ zh}rNENSK+iiF5@IHX8%Rp$@YNtx@Ka($S>APj-HoZFpS_1bde;DB@s+L zd~=IViNM5mauHS5m~}qrml$e>x|9?4dPVymspkKjSAB-=!oSYz8JPQ}Kx0z#=8Oa1 zLX%T(75*jxt2m77%ig)-pJ7jo@Ue5740zUcP&=L}^RJ25E33u&e`*3$(}*hDi>>*b zz*9@*5=@X`cmrPye+dwB0Xcs<+fi~2LBB5II9>)mU!&Cf?5w}!zhb8@EzyMmFDskx zJ9#+gQ1AH5EXorjP?KIL^h3E>`Z;6FQWL)ti@50dYplf3voP+O-3K^IH0U@g_P22h zR}xNB%SsKzC)UN9@sOnBPugx;I$|NN$1FUXhfA7a<)Z|$@op7yIe3^xHWc57>^Rs@ zbxb4h1LE9b%~HvB^7yvckLmlob@b@Fe{8n=QkW=_CQIaXX-LUs^D%Ij?}xMUM?jq4 z0zC$?^Y}ouMuzC>ZR+Z)zqGNiQ~9RkZbEuUO%6Yxen~3K9ro6dw5-T&vVl$~Q21_6 zk$RoMUT^-m9lRxdF;h9)6JA;QuFK$&@5f+xdgZ%@@TAJwUk{{Shl!Ua7fi!&PJYTE z1A1GGAvmk;+8__BZ9~x|TO_AR-8}bw z`lad@;XqEr9(=gwQ$;@76PiOb~Dl(gBk7=>W4T3T^ZHhV^~yq|846JWb4e$ zhS?2+=Dv~MAQu|j#}7o~gGNI~s8xlBFq>Sxx6_q|`=7dB9)WfYKM8vA6rV2u{Ykyr z-&aN870C=)lWKp(0%tj&!hg@g4Ky1=CVS*8KhOUJN3v#n5R8QBR|&TnWw*zz8?+zO^0PW!vH#=O6gd zL#8zCK(g~&0q=z;;l$6r`X1Pxl=Gmf1NF|$2I-H=>#;+Pmt(Xo$ze(&utpsB*_{?V z()QGzm3z6gVL7>DiLkaR%{7MAwQM&MjsWJcw!1zXALLnhV19C33#p;LN2)R#-w+W4P(o-()!~?PJjw>EWvTtJT@~Fa1~2#9)w!>+)d&H9 z#r#1r0HO}m=-r=Nq)p<&SOvBm-r{Z}9Mnp?)=hjA^P$mT#X-|(qr{%Jn`X)royc4B zBYX(DC&y#U$C(AJ=j1y?x%NL!Ju=jCwBkCd&xLPmkQxMGVcCWTEdtt&L{wtCm>YbR zyH|>%P9dpcXbyU~oKCm%A5MYrR1%*u)XSQitsD`g!pu z8b__nL9M0gzW~^Ye*p6=IrQN~rTQO?{$hOjXT7tWrxBr!dd%JI^op273GNPWaLC!r zWicw$VIhpNzX&ZkD*gh~{2OE!iPvMwdkCc-vMC+ZLS&vpd=`Na2Kj4zr9iuc>)$SE z;SI8(QYfC{-30W@=%+Fvc(NBbnxY34-Be?{X6}sL-1J1+Arzgl@Ec}xUyM^3_eH|b z4-!7vw9uSr57ur~dP#KNSI-GD%FTDJYP~QK`YF{A3R!GIhBqN6^qs-ibmq0_!5pW< z%D3e2FeThyDXKQ=Sjx@~#uJ=DtH>kl^V zud+hPRK&C1kk&JGGq3qGOE#%*7ux%oJkRhUIr{Yr^B4?T{q->J9dR&05g-fpK@R-t zVS(v<#$s>T@O9?TKxQ&jmz+IWYAb-XviB9UU_o~|jsUO-)i4gD)_r*;8^3(U>f6&z zv|8S1`Alc-`^}KPC(f449i%&Hyd9Lo1oXKJUYh+nQE8S;%JQC#rvwl#D1EuE625(2 z5|Ho2GoxFov$L1BPF(5EB|fIj7md!ZkaOo z$JZb;!&)r9*;kZS?`08$E;)on3BxhPZAGwmd#cPN-}X3f z8b7}b-pVB{ABkzZ@Ypoyz*TN7QNyCT&78*7-qEzkABj1(nHdPt)v`eIQBF&^Um_5s z^TudUw$c}c4qW-@;jsTHc;VC^GxiYc$ZD*mnull3d2=eI6=1{H2WRJC;m`-qw8_R1 zG9=#&P%pFR&f1hSh zA^kcrDxA6d<%nLTqgKf|fI``gBmP==lhuXPnGZ9;9YfdCs&K2yMqwysd7wn!=9prW zmBXB(JeMWG(f5U-9?^vu?X)IgH>corsB9?uZ-D|3n{otaksqu`CLu<;c3CSHR+yTA zTC^nKXP1!tL?)>5qQ4eyocUX82*+j~!xg@iIippkuhsQ_+_bP{MY|r)S$|K}7}EnU zK?3mCaF264et)g+v!gRU7}%0V^<%rp z_~*haAAOPd&QX}*-ft|vfFjMr_JUl=vpt<6K39r@JVDFCD4%yY>|b}wjO(UN+TM$} zOcDP8HhT_f`3`C&4yqaK^#IfI3CRRY4v^~cNP(Am2ZWiPak;2SYX-IQ z1|?Ccrk$qCZ3+{GUF3P$nnrt6^lv4!q@r#;s;2R9U&_O-n{8wS*NVFa*8-Yt6bmwx z7Q`L5CxoLCJmg1(^+cI#&O%aGP+4&{J+6|D0VN5`f8*3-9=yeNkP9-7k?uNZl_bMj?bzW{66 zoK#x%h3#@dY=!iDL1hwJo%qy>i~Z%ScLHO@m5}F-N4zXG^s91$uWglVkW=REikWiT z{&xJI@(W>)kpx`ww&!~s_lV?-g)g8XsJI*xvrIaW9~ya~lU}@MM;o ztRAD500xk%vE7rX>E6Tbfs6vsX;fBn9wrd#r}D1JF^Q6u9iSd_I{}as9bZx!0pJ8x zW8-s6Hv>G7y0O$iLDub9=b3Ypv=84}iFH5%c$I*EJozbbLtJ_Yu6xjtnfvrE4;L0K zMvfW+4oAwt3F0umaK;RPtmb-4lZZ*5uZlvM(1y`~2G4PxR8Y|<&>!_2K0(gI6)=?W z*pzsYt3nLq!YEhBjBLRnUk7%gVV^=Nejx=pwL9RZYsd>m1K6U0|41fC-@I2QpN5Cy z^%KL1^FVpw0AZAUfdWC?7`kW4lGCu>BFW^&rA8=#8p@(UQAeWDZ2TE5?$ewY;OoMr zS~;1spAS?D0!Zd~c;NJL!m|P{{iCj!Mx!Wo@H&7mfUXR`GLZAztsO|G!Kbj}3E>Q2 za617H0JTHJ0f_Bq`Ye?A4P~zIsh0g+@Zdq>^0!?LwP>`Q_9S`k|5Bifd}!}Ay99nz z4}SxGZ5Cx8{^E=^tY^7nAvo+W1|8)iI@UQ7(gU0)B;ENtE`*%oivzAWs;0|=?p6u( zs)udg#Tgj4eFES2?ti?{a-sb@y{GBSV(vOJhfO7yqLUMBZ> zD49TPlBB#7Z!xFj=NURh2=2@o4v36_Fn7jI?g>ac^LN*YMZh(4GV)tMn>;^2Nxq(` zlbgUsp@256VtDG$rLZ&g6<|*Z!eD?*&LsQr{5eBV6ljnY4xM-42|=fly1O4C2z8wf z7(<6LNe9}KmaqauK&j?&lco8sfMV@xfhzG(Qlo-?IkrPd85v!M$zAa3D-Y0zvUpLE9ZDJjl~cSP279KEr&lQ-9Hq zL{xrcC|iu|0>508lxep77=ddzl1lsvgPPHoXDQBH^Y)fS0i$RnlT?Y%3zo z*KYHWt&^fZYiui7t^4Hx-KJhy=jbO~D{Fa2C$-C_W0B|NC(!LrfN8ge_hgsG({7q8 z3O@fo0QO(9Yt8HX4;kvhp0%SU^vyH&<=m~U?AEYbuDzy$W$C~h5Jq7%y!ru^jKBUzM-TQtl$?wtdg2NNTdSS!KRF2k zXtaNk1bGfz29rD|vri6NOT)r7ct-FcvK8i$KO^Cr^V9fU;*%3~jlq(W$(&}&Ov`-f zPuJqRg_2x=FdvLGjJ2s0cD6g^Y*T4UT&9+urk7zl z&4x3z2F->&O**YbZ=Q5&p7g2GYq}_o-<{f%{8y)A==dKTuPsT{yQGw&`l`W2?U^9s ze^q#{_1>7npeI}B-`q^8@nPDmrS*U2{v-N~gb(v)QElx0&X8Ike#_f0ayE`HEuM7I zX)G;TnpnV%P$<@`4pk^Fo`pPpHOP>>Q9F174%xkPPHgtUqQw*t7Qkd?R!~>O{2vut Bm!tpy diff --git a/doc/bashref.ps b/doc/bashref.ps index 57bcfef2..d9817653 100644 --- a/doc/bashref.ps +++ b/doc/bashref.ps @@ -1,7 +1,7 @@ %!PS-Adobe-2.0 %%Creator: dvips(k) 5.998 Copyright 2018 Radical Eye Software %%Title: bashref.dvi -%%CreationDate: Tue Dec 18 16:43:47 2018 +%%CreationDate: Wed Jan 2 14:14:45 2019 %%Pages: 184 %%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 2018.12.18:1143 +%DVIPSSource: TeX output 2019.01.02:0914 %%BeginProcSet: tex.pro 0 0 %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S @@ -12877,70 +12877,71 @@ b(to)h(the)g(p)s(ositional)g(parameters.)49 b(The)33 b Ft(-x)g Fu(and)f Ft(-v)h Fu(options)h(are)1110 518 y(turned)k(o\013.)68 b(If)38 b(there)i(are)f(no)g(argumen)m(ts,)j(the)e (p)s(ositional)g(parameters)1110 628 y(remain)30 b(unc)m(hanged.)630 -784 y(Using)d(`)p Ft(+)p Fu(')h(rather)f(than)g(`)p Ft(-)p +775 y(Using)d(`)p Ft(+)p Fu(')h(rather)f(than)g(`)p Ft(-)p Fu(')g(causes)h(these)f(options)h(to)g(b)s(e)e(turned)g(o\013.)40 -b(The)27 b(options)h(can)630 893 y(also)36 b(b)s(e)f(used)f(up)s(on)g +b(The)27 b(options)h(can)630 884 y(also)36 b(b)s(e)f(used)f(up)s(on)g (in)m(v)m(o)s(cation)j(of)e(the)g(shell.)56 b(The)34 b(curren)m(t)h(set)h(of)f(options)h(ma)m(y)g(b)s(e)630 -1003 y(found)29 b(in)h Ft($-)p Fu(.)630 1136 y(The)43 +994 y(found)29 b(in)h Ft($-)p Fu(.)630 1122 y(The)43 b(remaining)h(N)f Fr(argumen)m(ts)48 b Fu(are)c(p)s(ositional)g -(parameters)g(and)f(are)h(assigned,)j(in)630 1245 y(order,)30 +(parameters)g(and)f(are)h(assigned,)j(in)630 1232 y(order,)30 b(to)h Ft($1)p Fu(,)f Ft($2)p Fu(,)36 b(.)22 b(.)g(.)42 b Ft($N)p Fu(.)e(The)30 b(sp)s(ecial)h(parameter)g Ft(#)f -Fu(is)g(set)h(to)g(N.)630 1378 y(The)f(return)f(status)i(is)f(alw)m(a)m +Fu(is)g(set)h(to)g(N.)630 1360 y(The)f(return)f(status)i(is)f(alw)m(a)m (ys)i(zero)f(unless)f(an)g(in)m(v)-5 b(alid)31 b(option)g(is)f -(supplied.)150 1574 y Fk(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150 -1721 y Fu(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h +(supplied.)150 1548 y Fk(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150 +1695 y Fu(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h (additional)f(shell)f(optional)i(b)s(eha)m(vior.)150 -1877 y Ft(shopt)870 2010 y(shopt)46 b([-pqsu])g([-o])h([)p -Fj(optname)e Ft(...])630 2142 y Fu(T)-8 b(oggle)37 b(the)e(v)-5 +1842 y Ft(shopt)870 1970 y(shopt)46 b([-pqsu])g([-o])h([)p +Fj(optname)e Ft(...])630 2099 y Fu(T)-8 b(oggle)37 b(the)e(v)-5 b(alues)35 b(of)g(settings)h(con)m(trolling)g(optional)g(shell)f(b)s -(eha)m(vior.)55 b(The)34 b(settings)630 2252 y(can)24 +(eha)m(vior.)55 b(The)34 b(settings)630 2208 y(can)24 b(b)s(e)g(either)h(those)f(listed)h(b)s(elo)m(w,)h(or,)f(if)g(the)f Ft(-o)f Fu(option)i(is)f(used,)h(those)g(a)m(v)-5 b(ailable)26 -b(with)630 2362 y(the)k Ft(-o)f Fu(option)i(to)f(the)g +b(with)630 2318 y(the)k Ft(-o)f Fu(option)i(to)f(the)g Ft(set)f Fu(builtin)h(command)f(\(see)i(Section)g(4.3.1)g([The)f(Set)g -(Builtin],)630 2471 y(page)i(61\).)45 b(With)32 b(no)f(options,)h(or)g +(Builtin],)630 2427 y(page)i(61\).)45 b(With)32 b(no)f(options,)h(or)g (with)f(the)g Ft(-p)g Fu(option,)h(a)g(list)g(of)f(all)i(settable)g -(options)630 2581 y(is)g(displa)m(y)m(ed,)i(with)e(an)g(indication)h +(options)630 2537 y(is)g(displa)m(y)m(ed,)i(with)e(an)g(indication)h (of)g(whether)e(or)h(not)h(eac)m(h)g(is)g(set;)h(if)e -Fr(optnames)38 b Fu(are)630 2690 y(supplied,)25 b(the)g(output)g(is)g +Fr(optnames)38 b Fu(are)630 2647 y(supplied,)25 b(the)g(output)g(is)g (restricted)g(to)h(those)g(options.)39 b(The)24 b Ft(-p)h -Fu(option)g(causes)g(output)630 2800 y(to)30 b(b)s(e)f(displa)m(y)m(ed) +Fu(option)g(causes)g(output)630 2756 y(to)30 b(b)s(e)f(displa)m(y)m(ed) g(in)g(a)h(form)f(that)g(ma)m(y)h(b)s(e)f(reused)f(as)i(input.)39 -b(Other)29 b(options)g(ha)m(v)m(e)i(the)630 2910 y(follo)m(wing)h -(meanings:)630 3066 y Ft(-s)384 b Fu(Enable)30 b(\(set\))i(eac)m(h)f -Fr(optname)p Fu(.)630 3222 y Ft(-u)384 b Fu(Disable)31 -b(\(unset\))g(eac)m(h)h Fr(optname)p Fu(.)630 3378 y +b(Other)29 b(options)g(ha)m(v)m(e)i(the)630 2866 y(follo)m(wing)h +(meanings:)630 3013 y Ft(-s)384 b Fu(Enable)30 b(\(set\))i(eac)m(h)f +Fr(optname)p Fu(.)630 3160 y Ft(-u)384 b Fu(Disable)31 +b(\(unset\))g(eac)m(h)h Fr(optname)p Fu(.)630 3307 y Ft(-q)384 b Fu(Suppresses)28 b(normal)h(output;)h(the)g(return)e -(status)i(indicates)h(whether)e(the)1110 3487 y Fr(optname)37 +(status)i(indicates)h(whether)e(the)1110 3417 y Fr(optname)37 b Fu(is)31 b(set)h(or)f(unset.)43 b(If)31 b(m)m(ultiple)h Fr(optname)37 b Fu(argumen)m(ts)31 b(are)h(giv)m(en)1110 -3597 y(with)d Ft(-q)p Fu(,)g(the)g(return)f(status)h(is)g(zero)h(if)f -(all)h Fr(optnames)j Fu(are)d(enabled;)f(non-)1110 3706 -y(zero)i(otherwise.)630 3862 y Ft(-o)384 b Fu(Restricts)22 +3527 y(with)d Ft(-q)p Fu(,)g(the)g(return)f(status)h(is)g(zero)h(if)f +(all)h Fr(optnames)j Fu(are)d(enabled;)f(non-)1110 3636 +y(zero)i(otherwise.)630 3784 y Ft(-o)384 b Fu(Restricts)22 b(the)f(v)-5 b(alues)22 b(of)f Fr(optname)27 b Fu(to)22 b(b)s(e)e(those)i(de\014ned)e(for)h(the)g Ft(-o)f Fu(option)1110 -3972 y(to)31 b(the)g Ft(set)e Fu(builtin)h(\(see)h(Section)h(4.3.1)g -([The)e(Set)g(Builtin],)i(page)f(61\).)630 4128 y(If)e(either)i +3893 y(to)31 b(the)g Ft(set)e Fu(builtin)h(\(see)h(Section)h(4.3.1)g +([The)e(Set)g(Builtin],)i(page)f(61\).)630 4040 y(If)e(either)i Ft(-s)e Fu(or)h Ft(-u)f Fu(is)h(used)f(with)g(no)h Fr(optname)35 b Fu(argumen)m(ts,)c Ft(shopt)d Fu(sho)m(ws)h(only)h(those)630 -4238 y(options)h(whic)m(h)f(are)h(set)f(or)h(unset,)f(resp)s(ectiv)m -(ely)-8 b(.)630 4370 y(Unless)30 b(otherwise)h(noted,)g(the)g +4150 y(options)h(whic)m(h)f(are)h(set)f(or)h(unset,)f(resp)s(ectiv)m +(ely)-8 b(.)630 4278 y(Unless)30 b(otherwise)h(noted,)g(the)g Ft(shopt)d Fu(options)j(are)g(disabled)f(\(o\013)7 b(\))32 -b(b)m(y)e(default.)630 4503 y(The)d(return)f(status)i(when)f(listing)h +b(b)m(y)e(default.)630 4407 y(The)d(return)f(status)i(when)f(listing)h (options)g(is)f(zero)i(if)e(all)i Fr(optnames)i Fu(are)d(enabled,)g -(non-)630 4613 y(zero)40 b(otherwise.)66 b(When)39 b(setting)h(or)f +(non-)630 4516 y(zero)40 b(otherwise.)66 b(When)39 b(setting)h(or)f (unsetting)g(options,)i(the)e(return)f(status)h(is)g(zero)630 -4722 y(unless)30 b(an)g Fr(optname)36 b Fu(is)30 b(not)h(a)g(v)-5 -b(alid)30 b(shell)h(option.)630 4855 y(The)f(list)h(of)f -Ft(shopt)f Fu(options)i(is:)630 5011 y Ft(assoc_expand_once)1110 -5121 y Fu(If)h(set,)i(the)e(shell)h(suppresses)e(m)m(ultiple)i(ev)-5 +4626 y(unless)30 b(an)g Fr(optname)36 b Fu(is)30 b(not)h(a)g(v)-5 +b(alid)30 b(shell)h(option.)630 4754 y(The)f(list)h(of)f +Ft(shopt)f Fu(options)i(is:)630 4902 y Ft(assoc_expand_once)1110 +5011 y Fu(If)h(set,)i(the)e(shell)h(suppresses)e(m)m(ultiple)i(ev)-5 b(aluation)34 b(of)e(asso)s(ciativ)m(e)j(arra)m(y)1110 -5230 y(subscripts)f(during)h(arithmetic)i(expression)f(ev)-5 -b(aluation)37 b(and)e(while)h(exe-)1110 5340 y(cuting)31 -b(builtins)f(that)h(can)f(p)s(erform)f(v)-5 b(ariable)31 -b(assignmen)m(ts.)p eop end +5121 y(subscripts)24 b(during)h(arithmetic)h(expression)g(ev)-5 +b(aluation,)28 b(while)e(executing)1110 5230 y(builtins)c(that)i(can)f +(p)s(erform)f(v)-5 b(ariable)24 b(assignmen)m(ts,)h(and)e(while)g +(executing)1110 5340 y(builtins)30 b(that)h(p)s(erform)e(arra)m(y)i +(dereferencing.)p eop end %%Page: 66 72 TeXDict begin 66 71 bop 150 -116 a Fu(Chapter)30 b(4:)41 b(Shell)30 b(Builtin)h(Commands)2069 b(66)630 299 y Ft(autocd)192 diff --git a/doc/bashref.texi b/doc/bashref.texi index ed633521..d33cd571 100644 --- a/doc/bashref.texi +++ b/doc/bashref.texi @@ -5141,8 +5141,9 @@ The list of @code{shopt} options is: @item assoc_expand_once If set, the shell suppresses multiple evaluation of associative array -subscripts during arithmetic expression evaluation and while executing -builtins that can perform variable assignments. +subscripts during arithmetic expression evaluation, while executing +builtins that can perform variable assignments, +and while executing builtins that perform array dereferencing. @item autocd If set, a command name that is the name of a directory is executed as if diff --git a/doc/builtins.0 b/doc/builtins.0 index 176d309f..76f08b77 100644 --- a/doc/builtins.0 +++ b/doc/builtins.0 @@ -1309,321 +1309,322 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS aassssoocc__eexxppaanndd__oonnccee If set, the shell suppresses multiple evaluation of associative array subscripts during arithmetic expres- - sion evaluation and while executing builtins that can - perform variable assignments. - aauuttooccdd If set, a command name that is the name of a directory - is executed as if it were the argument to the ccdd com- + sion evaluation, while executing builtins that can per- + form variable assignments, and while executing builtins + that perform array dereferencing. + aauuttooccdd If set, a command name that is the name of a directory + is executed as if it were the argument to the ccdd com- mand. This option is only used by interactive shells. ccddaabbllee__vvaarrss - If set, an argument to the ccdd builtin command that is - not a directory is assumed to be the name of a variable + If set, an argument to the ccdd builtin command that is + not a directory is assumed to be the name of a variable whose value is the directory to change to. ccddssppeellll If set, minor errors in the spelling of a directory com- - ponent in a ccdd command will be corrected. The errors + ponent in a ccdd command will be corrected. The errors checked for are transposed characters, a missing charac- - ter, and one character too many. If a correction is - found, the corrected filename is printed, and the com- - mand proceeds. This option is only used by interactive + ter, and one character too many. If a correction is + found, the corrected filename is printed, and the com- + mand proceeds. This option is only used by interactive shells. cchheecckkhhaasshh If set, bbaasshh checks that a command found in the hash ta- - ble exists before trying to execute it. If a hashed - command no longer exists, a normal path search is per- + ble exists before trying to execute it. If a hashed + command no longer exists, a normal path search is per- formed. cchheecckkjjoobbss If set, bbaasshh lists the status of any stopped and running - jobs before exiting an interactive shell. If any jobs + jobs before exiting an interactive shell. If any jobs are running, this causes the exit to be deferred until a - second exit is attempted without an intervening command - (see JJOOBB CCOONNTTRROOLL above). The shell always postpones + second exit is attempted without an intervening command + (see JJOOBB CCOONNTTRROOLL above). The shell always postpones exiting if any jobs are stopped. cchheecckkwwiinnssiizzee - If set, bbaasshh checks the window size after each external - (non-builtin) command and, if necessary, updates the - values of LLIINNEESS and CCOOLLUUMMNNSS. This option is enabled by + If set, bbaasshh checks the window size after each external + (non-builtin) command and, if necessary, updates the + values of LLIINNEESS and CCOOLLUUMMNNSS. This option is enabled by default. - ccmmddhhiisstt If set, bbaasshh attempts to save all lines of a multiple- - line command in the same history entry. This allows - easy re-editing of multi-line commands. This option is - enabled by default, but only has an effect if command + ccmmddhhiisstt If set, bbaasshh attempts to save all lines of a multiple- + line command in the same history entry. This allows + easy re-editing of multi-line commands. This option is + enabled by default, but only has an effect if command history is enabled, as described above under HHIISSTTOORRYY. ccoommppaatt3311 If set, bbaasshh changes its behavior to that of version 3.1 - with respect to quoted arguments to the [[[[ conditional + with respect to quoted arguments to the [[[[ conditional command's ==~~ operator and locale-specific string compar- - ison when using the [[[[ conditional command's << and >> - operators. Bash versions prior to bash-4.1 use ASCII + ison when using the [[[[ conditional command's << and >> + operators. Bash versions prior to bash-4.1 use ASCII collation and _s_t_r_c_m_p(3); bash-4.1 and later use the cur- rent locale's collation sequence and _s_t_r_c_o_l_l(3). ccoommppaatt3322 If set, bbaasshh changes its behavior to that of version 3.2 - with respect to locale-specific string comparison when - using the [[[[ conditional command's << and >> operators - (see previous item) and the effect of interrupting a - command list. Bash versions 3.2 and earlier continue - with the next command in the list after one terminates + with respect to locale-specific string comparison when + using the [[[[ conditional command's << and >> operators + (see previous item) and the effect of interrupting a + command list. Bash versions 3.2 and earlier continue + with the next command in the list after one terminates due to an interrupt. ccoommppaatt4400 If set, bbaasshh changes its behavior to that of version 4.0 - with respect to locale-specific string comparison when - using the [[[[ conditional command's << and >> operators - (see description of ccoommppaatt3311) and the effect of inter- - rupting a command list. Bash versions 4.0 and later - interrupt the list as if the shell received the inter- - rupt; previous versions continue with the next command + with respect to locale-specific string comparison when + using the [[[[ conditional command's << and >> operators + (see description of ccoommppaatt3311) and the effect of inter- + rupting a command list. Bash versions 4.0 and later + interrupt the list as if the shell received the inter- + rupt; previous versions continue with the next command in the list. ccoommppaatt4411 - If set, bbaasshh, when in _p_o_s_i_x _m_o_d_e, treats a single quote - in a double-quoted parameter expansion as a special - character. The single quotes must match (an even num- - ber) and the characters between the single quotes are - considered quoted. This is the behavior of posix mode - through version 4.1. The default bash behavior remains + If set, bbaasshh, when in _p_o_s_i_x _m_o_d_e, treats a single quote + in a double-quoted parameter expansion as a special + character. The single quotes must match (an even num- + ber) and the characters between the single quotes are + considered quoted. This is the behavior of posix mode + through version 4.1. The default bash behavior remains as in previous versions. ccoommppaatt4422 - If set, bbaasshh does not process the replacement string in - the pattern substitution word expansion using quote + If set, bbaasshh does not process the replacement string in + the pattern substitution word expansion using quote removal. ccoommppaatt4433 - If set, bbaasshh does not print a warning message if an - attempt is made to use a quoted compound array assign- - ment as an argument to ddeeccllaarree, makes word expansion - errors non-fatal errors that cause the current command - to fail (the default behavior is to make them fatal + If set, bbaasshh does not print a warning message if an + attempt is made to use a quoted compound array assign- + ment as an argument to ddeeccllaarree, makes word expansion + errors non-fatal errors that cause the current command + to fail (the default behavior is to make them fatal errors that cause the shell to exit), and does not reset - the loop state when a shell function is executed (this - allows bbrreeaakk or ccoonnttiinnuuee in a shell function to affect + the loop state when a shell function is executed (this + allows bbrreeaakk or ccoonnttiinnuuee in a shell function to affect loops in the caller's context). ccoommppaatt4444 - If set, bbaasshh saves the positional parameters to + If set, bbaasshh saves the positional parameters to BASH_ARGV and BASH_ARGC before they are used, regardless of whether or not extended debugging mode is enabled. ccoommpplleettee__ffuullllqquuoottee - If set, bbaasshh quotes all shell metacharacters in file- - names and directory names when performing completion. + If set, bbaasshh quotes all shell metacharacters in file- + names and directory names when performing completion. If not set, bbaasshh removes metacharacters such as the dol- - lar sign from the set of characters that will be quoted - in completed filenames when these metacharacters appear - in shell variable references in words to be completed. - This means that dollar signs in variable names that - expand to directories will not be quoted; however, any - dollar signs appearing in filenames will not be quoted, - either. This is active only when bash is using back- - slashes to quote completed filenames. This variable is - set by default, which is the default bash behavior in + lar sign from the set of characters that will be quoted + in completed filenames when these metacharacters appear + in shell variable references in words to be completed. + This means that dollar signs in variable names that + expand to directories will not be quoted; however, any + dollar signs appearing in filenames will not be quoted, + either. This is active only when bash is using back- + slashes to quote completed filenames. This variable is + set by default, which is the default bash behavior in versions through 4.2. ddiirreexxppaanndd - If set, bbaasshh replaces directory names with the results - of word expansion when performing filename completion. - This changes the contents of the readline editing buf- - fer. If not set, bbaasshh attempts to preserve what the + If set, bbaasshh replaces directory names with the results + of word expansion when performing filename completion. + This changes the contents of the readline editing buf- + fer. If not set, bbaasshh attempts to preserve what the user typed. ddiirrssppeellll - If set, bbaasshh attempts spelling correction on directory - names during word completion if the directory name ini- + If set, bbaasshh attempts spelling correction on directory + names during word completion if the directory name ini- tially supplied does not exist. - ddoottgglloobb If set, bbaasshh includes filenames beginning with a `.' in - the results of pathname expansion. The filenames ````..'''' - and ````....'''' must always be matched explicitly, even if + ddoottgglloobb If set, bbaasshh includes filenames beginning with a `.' in + the results of pathname expansion. The filenames ````..'''' + and ````....'''' must always be matched explicitly, even if ddoottgglloobb is set. eexxeeccffaaiill If set, a non-interactive shell will not exit if it can- - not execute the file specified as an argument to the - eexxeecc builtin command. An interactive shell does not + not execute the file specified as an argument to the + eexxeecc builtin command. An interactive shell does not exit if eexxeecc fails. eexxppaanndd__aalliiaasseess - If set, aliases are expanded as described above under + If set, aliases are expanded as described above under AALLIIAASSEESS. This option is enabled by default for interac- tive shells. eexxttddeebbuugg - If set at shell invocation, arrange to execute the - debugger profile before the shell starts, identical to - the ----ddeebbuuggggeerr option. If set after invocation, behav- + If set at shell invocation, arrange to execute the + debugger profile before the shell starts, identical to + the ----ddeebbuuggggeerr option. If set after invocation, behav- ior intended for use by debuggers is enabled: 11.. The --FF option to the ddeeccllaarree builtin displays the source file name and line number corresponding to each function name supplied as an argument. - 22.. If the command run by the DDEEBBUUGG trap returns a - non-zero value, the next command is skipped and + 22.. If the command run by the DDEEBBUUGG trap returns a + non-zero value, the next command is skipped and not executed. - 33.. If the command run by the DDEEBBUUGG trap returns a - value of 2, and the shell is executing in a sub- - routine (a shell function or a shell script exe- - cuted by the .. or ssoouurrccee builtins), the shell + 33.. If the command run by the DDEEBBUUGG trap returns a + value of 2, and the shell is executing in a sub- + routine (a shell function or a shell script exe- + cuted by the .. or ssoouurrccee builtins), the shell simulates a call to rreettuurrnn. - 44.. BBAASSHH__AARRGGCC and BBAASSHH__AARRGGVV are updated as described + 44.. BBAASSHH__AARRGGCC and BBAASSHH__AARRGGVV are updated as described in their descriptions above. - 55.. Function tracing is enabled: command substitu- + 55.. Function tracing is enabled: command substitu- tion, shell functions, and subshells invoked with (( _c_o_m_m_a_n_d )) inherit the DDEEBBUUGG and RREETTUURRNN traps. - 66.. Error tracing is enabled: command substitution, - shell functions, and subshells invoked with (( + 66.. Error tracing is enabled: command substitution, + shell functions, and subshells invoked with (( _c_o_m_m_a_n_d )) inherit the EERRRR trap. eexxttgglloobb If set, the extended pattern matching features described above under PPaatthhnnaammee EExxppaannssiioonn are enabled. eexxttqquuoottee - If set, $$'_s_t_r_i_n_g' and $$"_s_t_r_i_n_g" quoting is performed - within $${{_p_a_r_a_m_e_t_e_r}} expansions enclosed in double + If set, $$'_s_t_r_i_n_g' and $$"_s_t_r_i_n_g" quoting is performed + within $${{_p_a_r_a_m_e_t_e_r}} expansions enclosed in double quotes. This option is enabled by default. ffaaiillgglloobb - If set, patterns which fail to match filenames during + If set, patterns which fail to match filenames during pathname expansion result in an expansion error. ffoorrccee__ffiiggnnoorree - If set, the suffixes specified by the FFIIGGNNOORREE shell - variable cause words to be ignored when performing word + If set, the suffixes specified by the FFIIGGNNOORREE shell + variable cause words to be ignored when performing word completion even if the ignored words are the only possi- ble completions. See SSHHEELLLL VVAARRIIAABBLLEESS above for a - description of FFIIGGNNOORREE. This option is enabled by + description of FFIIGGNNOORREE. This option is enabled by default. gglloobbaasscciiiirraannggeess - If set, range expressions used in pattern matching - bracket expressions (see PPaatttteerrnn MMaattcchhiinngg above) behave - as if in the traditional C locale when performing com- + If set, range expressions used in pattern matching + bracket expressions (see PPaatttteerrnn MMaattcchhiinngg above) behave + as if in the traditional C locale when performing com- parisons. That is, the current locale's collating - sequence is not taken into account, so bb will not col- - late between AA and BB, and upper-case and lower-case + sequence is not taken into account, so bb will not col- + late between AA and BB, and upper-case and lower-case ASCII characters will collate together. gglloobbssttaarr If set, the pattern **** used in a pathname expansion con- - text will match all files and zero or more directories - and subdirectories. If the pattern is followed by a //, + text will match all files and zero or more directories + and subdirectories. If the pattern is followed by a //, only directories and subdirectories match. ggnnuu__eerrrrffmmtt If set, shell error messages are written in the standard GNU error message format. hhiissttaappppeenndd - If set, the history list is appended to the file named - by the value of the HHIISSTTFFIILLEE variable when the shell + If set, the history list is appended to the file named + by the value of the HHIISSTTFFIILLEE variable when the shell exits, rather than overwriting the file. hhiissttrreeeeddiitt - If set, and rreeaaddlliinnee is being used, a user is given the + If set, and rreeaaddlliinnee is being used, a user is given the opportunity to re-edit a failed history substitution. hhiissttvveerriiffyy - If set, and rreeaaddlliinnee is being used, the results of his- - tory substitution are not immediately passed to the - shell parser. Instead, the resulting line is loaded + If set, and rreeaaddlliinnee is being used, the results of his- + tory substitution are not immediately passed to the + shell parser. Instead, the resulting line is loaded into the rreeaaddlliinnee editing buffer, allowing further modi- fication. hhoossttccoommpplleettee If set, and rreeaaddlliinnee is being used, bbaasshh will attempt to - perform hostname completion when a word containing a @@ - is being completed (see CCoommpplleettiinngg under RREEAADDLLIINNEE + perform hostname completion when a word containing a @@ + is being completed (see CCoommpplleettiinngg under RREEAADDLLIINNEE above). This is enabled by default. hhuuppoonneexxiitt If set, bbaasshh will send SSIIGGHHUUPP to all jobs when an inter- active login shell exits. iinnhheerriitt__eerrrreexxiitt - If set, command substitution inherits the value of the - eerrrreexxiitt option, instead of unsetting it in the subshell - environment. This option is enabled when _p_o_s_i_x _m_o_d_e is + If set, command substitution inherits the value of the + eerrrreexxiitt option, instead of unsetting it in the subshell + environment. This option is enabled when _p_o_s_i_x _m_o_d_e is enabled. iinntteerraaccttiivvee__ccoommmmeennttss If set, allow a word beginning with ## to cause that word - and all remaining characters on that line to be ignored - in an interactive shell (see CCOOMMMMEENNTTSS above). This + and all remaining characters on that line to be ignored + in an interactive shell (see CCOOMMMMEENNTTSS above). This option is enabled by default. llaassttppiippee - If set, and job control is not active, the shell runs + If set, and job control is not active, the shell runs the last command of a pipeline not executed in the back- ground in the current shell environment. - lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line + lliitthhiisstt If set, and the ccmmddhhiisstt option is enabled, multi-line commands are saved to the history with embedded newlines rather than using semicolon separators where possible. llooccaallvvaarr__iinnhheerriitt If set, local variables inherit the value and attributes of a variable of the same name that exists at a previous - scope before any new value is assigned. The nameref + scope before any new value is assigned. The nameref attribute is not inherited. llooccaallvvaarr__uunnsseett - If set, calling uunnsseett on local variables in previous - function scopes marks them so subsequent lookups find - them unset until that function returns. This is identi- - cal to the behavior of unsetting local variables at the + If set, calling uunnsseett on local variables in previous + function scopes marks them so subsequent lookups find + them unset until that function returns. This is identi- + cal to the behavior of unsetting local variables at the current function scope. llooggiinn__sshheellll - The shell sets this option if it is started as a login - shell (see IINNVVOOCCAATTIIOONN above). The value may not be + The shell sets this option if it is started as a login + shell (see IINNVVOOCCAATTIIOONN above). The value may not be changed. mmaaiillwwaarrnn - If set, and a file that bbaasshh is checking for mail has - been accessed since the last time it was checked, the - message ``The mail in _m_a_i_l_f_i_l_e has been read'' is dis- + If set, and a file that bbaasshh is checking for mail has + been accessed since the last time it was checked, the + message ``The mail in _m_a_i_l_f_i_l_e has been read'' is dis- played. nnoo__eemmppttyy__ccmmdd__ccoommpplleettiioonn - If set, and rreeaaddlliinnee is being used, bbaasshh will not + If set, and rreeaaddlliinnee is being used, bbaasshh will not attempt to search the PPAATTHH for possible completions when completion is attempted on an empty line. nnooccaasseegglloobb - If set, bbaasshh matches filenames in a case-insensitive + If set, bbaasshh matches filenames in a case-insensitive fashion when performing pathname expansion (see PPaatthhnnaammee EExxppaannssiioonn above). nnooccaasseemmaattcchh - If set, bbaasshh matches patterns in a case-insensitive + If set, bbaasshh matches patterns in a case-insensitive fashion when performing matching while executing ccaassee or [[[[ conditional commands, when performing pattern substi- - tution word expansions, or when filtering possible com- + tution word expansions, or when filtering possible com- pletions as part of programmable completion. nnuullllgglloobb - If set, bbaasshh allows patterns which match no files (see - PPaatthhnnaammee EExxppaannssiioonn above) to expand to a null string, + If set, bbaasshh allows patterns which match no files (see + PPaatthhnnaammee EExxppaannssiioonn above) to expand to a null string, rather than themselves. pprrooggccoommpp If set, the programmable completion facilities (see PPrroo-- ggrraammmmaabbllee CCoommpplleettiioonn above) are enabled. This option is enabled by default. pprrooggccoommpp__aalliiaass - If set, and programmable completion is enabled, bbaasshh - treats a command name that doesn't have any completions - as a possible alias and attempts alias expansion. If it - has an alias, bbaasshh attempts programmable completion - using the command word resulting from the expanded + If set, and programmable completion is enabled, bbaasshh + treats a command name that doesn't have any completions + as a possible alias and attempts alias expansion. If it + has an alias, bbaasshh attempts programmable completion + using the command word resulting from the expanded alias. pprroommppttvvaarrss If set, prompt strings undergo parameter expansion, com- - mand substitution, arithmetic expansion, and quote - removal after being expanded as described in PPRROOMMPPTTIINNGG + mand substitution, arithmetic expansion, and quote + removal after being expanded as described in PPRROOMMPPTTIINNGG above. This option is enabled by default. rreessttrriicctteedd__sshheellll - The shell sets this option if it is started in + The shell sets this option if it is started in restricted mode (see RREESSTTRRIICCTTEEDD SSHHEELLLL below). The value - may not be changed. This is not reset when the startup - files are executed, allowing the startup files to dis- + may not be changed. This is not reset when the startup + files are executed, allowing the startup files to dis- cover whether or not a shell is restricted. sshhiifftt__vveerrbboossee - If set, the sshhiifftt builtin prints an error message when + If set, the sshhiifftt builtin prints an error message when the shift count exceeds the number of positional parame- ters. ssoouurrcceeppaatthh If set, the ssoouurrccee (..) builtin uses the value of PPAATTHH to - find the directory containing the file supplied as an + find the directory containing the file supplied as an argument. This option is enabled by default. xxppgg__eecchhoo - If set, the eecchhoo builtin expands backslash-escape + If set, the eecchhoo builtin expands backslash-escape sequences by default. ssuussppeenndd [--ff] - Suspend the execution of this shell until it receives a SSIIGGCCOONNTT + Suspend the execution of this shell until it receives a SSIIGGCCOONNTT signal. A login shell cannot be suspended; the --ff option can be used to override this and force the suspension. The return sta- - tus is 0 unless the shell is a login shell and --ff is not sup- + tus is 0 unless the shell is a login shell and --ff is not sup- plied, or if job control is not enabled. tteesstt _e_x_p_r [[ _e_x_p_r ]] Return a status of 0 (true) or 1 (false) depending on the evalu- ation of the conditional expression _e_x_p_r. Each operator and op- - erand must be a separate argument. Expressions are composed of - the primaries described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS. - tteesstt does not accept any options, nor does it accept and ignore + erand must be a separate argument. Expressions are composed of + the primaries described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS. + tteesstt does not accept any options, nor does it accept and ignore an argument of ---- as signifying the end of options. - Expressions may be combined using the following operators, + Expressions may be combined using the following operators, listed in decreasing order of precedence. The evaluation - depends on the number of arguments; see below. Operator prece- + depends on the number of arguments; see below. Operator prece- dence is used when there are five or more arguments. !! _e_x_p_r True if _e_x_p_r is false. (( _e_x_p_r )) - Returns the value of _e_x_p_r. This may be used to override + Returns the value of _e_x_p_r. This may be used to override the normal precedence of operators. _e_x_p_r_1 -aa _e_x_p_r_2 True if both _e_x_p_r_1 and _e_x_p_r_2 are true. @@ -1640,120 +1641,120 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS null. 2 arguments If the first argument is !!, the expression is true if and - only if the second argument is null. If the first argu- - ment is one of the unary conditional operators listed - above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is + only if the second argument is null. If the first argu- + ment is one of the unary conditional operators listed + above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the expression is true if the unary test is true. If the first argument is not a valid unary conditional operator, the expression is false. 3 arguments The following conditions are applied in the order listed. - If the second argument is one of the binary conditional + If the second argument is one of the binary conditional operators listed above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS, the result of the expression is the result of the binary test - using the first and third arguments as operands. The --aa - and --oo operators are considered binary operators when - there are three arguments. If the first argument is !!, - the value is the negation of the two-argument test using + using the first and third arguments as operands. The --aa + and --oo operators are considered binary operators when + there are three arguments. If the first argument is !!, + the value is the negation of the two-argument test using the second and third arguments. If the first argument is exactly (( and the third argument is exactly )), the result - is the one-argument test of the second argument. Other- + is the one-argument test of the second argument. Other- wise, the expression is false. 4 arguments If the first argument is !!, the result is the negation of - the three-argument expression composed of the remaining + the three-argument expression composed of the remaining arguments. Otherwise, the expression is parsed and eval- - uated according to precedence using the rules listed + uated according to precedence using the rules listed above. 5 or more arguments - The expression is parsed and evaluated according to + The expression is parsed and evaluated according to precedence using the rules listed above. - When used with tteesstt or [[, the << and >> operators sort lexico- + When used with tteesstt or [[, the << and >> operators sort lexico- graphically using ASCII ordering. - ttiimmeess Print the accumulated user and system times for the shell and + ttiimmeess Print the accumulated user and system times for the shell and for processes run from the shell. The return status is 0. ttrraapp [--llpp] [[_a_r_g] _s_i_g_s_p_e_c ...] - The command _a_r_g is to be read and executed when the shell - receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a - single _s_i_g_s_p_e_c) or --, each specified signal is reset to its - original disposition (the value it had upon entrance to the - shell). If _a_r_g is the null string the signal specified by each - _s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes. - If _a_r_g is not present and --pp has been supplied, then the trap - commands associated with each _s_i_g_s_p_e_c are displayed. If no - arguments are supplied or if only --pp is given, ttrraapp prints the - list of commands associated with each signal. The --ll option - causes the shell to print a list of signal names and their cor- - responding numbers. Each _s_i_g_s_p_e_c is either a signal name - defined in <_s_i_g_n_a_l_._h>, or a signal number. Signal names are + The command _a_r_g is to be read and executed when the shell + receives signal(s) _s_i_g_s_p_e_c. If _a_r_g is absent (and there is a + single _s_i_g_s_p_e_c) or --, each specified signal is reset to its + original disposition (the value it had upon entrance to the + shell). If _a_r_g is the null string the signal specified by each + _s_i_g_s_p_e_c is ignored by the shell and by the commands it invokes. + If _a_r_g is not present and --pp has been supplied, then the trap + commands associated with each _s_i_g_s_p_e_c are displayed. If no + arguments are supplied or if only --pp is given, ttrraapp prints the + list of commands associated with each signal. The --ll option + causes the shell to print a list of signal names and their cor- + responding numbers. Each _s_i_g_s_p_e_c is either a signal name + defined in <_s_i_g_n_a_l_._h>, or a signal number. Signal names are case insensitive and the SSIIGG prefix is optional. - If a _s_i_g_s_p_e_c is EEXXIITT (0) the command _a_r_g is executed on exit - from the shell. If a _s_i_g_s_p_e_c is DDEEBBUUGG, the command _a_r_g is exe- - cuted before every _s_i_m_p_l_e _c_o_m_m_a_n_d, _f_o_r command, _c_a_s_e command, - _s_e_l_e_c_t command, every arithmetic _f_o_r command, and before the - first command executes in a shell function (see SSHHEELLLL GGRRAAMMMMAARR - above). Refer to the description of the eexxttddeebbuugg option to the + If a _s_i_g_s_p_e_c is EEXXIITT (0) the command _a_r_g is executed on exit + from the shell. If a _s_i_g_s_p_e_c is DDEEBBUUGG, the command _a_r_g is exe- + cuted before every _s_i_m_p_l_e _c_o_m_m_a_n_d, _f_o_r command, _c_a_s_e command, + _s_e_l_e_c_t command, every arithmetic _f_o_r command, and before the + first command executes in a shell function (see SSHHEELLLL GGRRAAMMMMAARR + above). Refer to the description of the eexxttddeebbuugg option to the sshhoopptt builtin for details of its effect on the DDEEBBUUGG trap. If a _s_i_g_s_p_e_c is RREETTUURRNN, the command _a_r_g is executed each time a shell function or a script executed with the .. or ssoouurrccee builtins fin- ishes executing. - If a _s_i_g_s_p_e_c is EERRRR, the command _a_r_g is executed whenever a + If a _s_i_g_s_p_e_c is EERRRR, the command _a_r_g is executed whenever a pipeline (which may consist of a single simple command), a list, or a compound command returns a non-zero exit status, subject to - the following conditions. The EERRRR trap is not executed if the + the following conditions. The EERRRR trap is not executed if the failed command is part of the command list immediately following - a wwhhiillee or uunnttiill keyword, part of the test in an _i_f statement, + a wwhhiillee or uunnttiill keyword, part of the test in an _i_f statement, part of a command executed in a &&&& or |||| list except the command - following the final &&&& or ||||, any command in a pipeline but the - last, or if the command's return value is being inverted using - !!. These are the same conditions obeyed by the eerrrreexxiitt (--ee) + following the final &&&& or ||||, any command in a pipeline but the + last, or if the command's return value is being inverted using + !!. These are the same conditions obeyed by the eerrrreexxiitt (--ee) option. - Signals ignored upon entry to the shell cannot be trapped or - reset. Trapped signals that are not being ignored are reset to + Signals ignored upon entry to the shell cannot be trapped or + reset. Trapped signals that are not being ignored are reset to their original values in a subshell or subshell environment when - one is created. The return status is false if any _s_i_g_s_p_e_c is + one is created. The return status is false if any _s_i_g_s_p_e_c is invalid; otherwise ttrraapp returns true. ttyyppee [--aaffttppPP] _n_a_m_e [_n_a_m_e ...] - With no options, indicate how each _n_a_m_e would be interpreted if + With no options, indicate how each _n_a_m_e would be interpreted if used as a command name. If the --tt option is used, ttyyppee prints a - string which is one of _a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or - _f_i_l_e if _n_a_m_e is an alias, shell reserved word, function, - builtin, or disk file, respectively. If the _n_a_m_e is not found, - then nothing is printed, and an exit status of false is - returned. If the --pp option is used, ttyyppee either returns the + string which is one of _a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or + _f_i_l_e if _n_a_m_e is an alias, shell reserved word, function, + builtin, or disk file, respectively. If the _n_a_m_e is not found, + then nothing is printed, and an exit status of false is + returned. If the --pp option is used, ttyyppee either returns the name of the disk file that would be executed if _n_a_m_e were speci- fied as a command name, or nothing if ``type -t name'' would not - return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e, + return _f_i_l_e. The --PP option forces a PPAATTHH search for each _n_a_m_e, even if ``type -t name'' would not return _f_i_l_e. If a command is hashed, --pp and --PP print the hashed value, which is not necessar- - ily the file that appears first in PPAATTHH. If the --aa option is - used, ttyyppee prints all of the places that contain an executable + ily the file that appears first in PPAATTHH. If the --aa option is + used, ttyyppee prints all of the places that contain an executable named _n_a_m_e. This includes aliases and functions, if and only if the --pp option is not also used. The table of hashed commands is - not consulted when using --aa. The --ff option suppresses shell + not consulted when using --aa. The --ff option suppresses shell function lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true if all of the arguments are found, false if any are not found. uulliimmiitt [--HHSSaabbccddeeffiikkllmmnnppqqrrssttuuvvxxPPTT [_l_i_m_i_t]] - Provides control over the resources available to the shell and - to processes started by it, on systems that allow such control. + Provides control over the resources available to the shell and + to processes started by it, on systems that allow such control. The --HH and --SS options specify that the hard or soft limit is set - for the given resource. A hard limit cannot be increased by a - non-root user once it is set; a soft limit may be increased up - to the value of the hard limit. If neither --HH nor --SS is speci- + for the given resource. A hard limit cannot be increased by a + non-root user once it is set; a soft limit may be increased up + to the value of the hard limit. If neither --HH nor --SS is speci- fied, both the soft and hard limits are set. The value of _l_i_m_i_t can be a number in the unit specified for the resource or one of the special values hhaarrdd, ssoofftt, or uunnlliimmiitteedd, which stand for the - current hard limit, the current soft limit, and no limit, - respectively. If _l_i_m_i_t is omitted, the current value of the - soft limit of the resource is printed, unless the --HH option is + current hard limit, the current soft limit, and no limit, + respectively. If _l_i_m_i_t is omitted, the current value of the + soft limit of the resource is printed, unless the --HH option is given. When more than one resource is specified, the limit name and unit are printed before the value. Other options are inter- preted as follows: @@ -1762,12 +1763,12 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS --cc The maximum size of core files created --dd The maximum size of a process's data segment --ee The maximum scheduling priority ("nice") - --ff The maximum size of files written by the shell and its + --ff The maximum size of files written by the shell and its children --ii The maximum number of pending signals --kk The maximum number of kqueues that may be allocated --ll The maximum size that may be locked into memory - --mm The maximum resident set size (many systems do not honor + --mm The maximum resident set size (many systems do not honor this limit) --nn The maximum number of open file descriptors (most systems do not allow this value to be set) @@ -1776,53 +1777,53 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS --rr The maximum real-time scheduling priority --ss The maximum stack size --tt The maximum amount of cpu time in seconds - --uu The maximum number of processes available to a single + --uu The maximum number of processes available to a single user - --vv The maximum amount of virtual memory available to the + --vv The maximum amount of virtual memory available to the shell and, on some systems, to its children --xx The maximum number of file locks --PP The maximum number of pseudoterminals --TT The maximum number of threads - If _l_i_m_i_t is given, and the --aa option is not used, _l_i_m_i_t is the - new value of the specified resource. If no option is given, - then --ff is assumed. Values are in 1024-byte increments, except - for --tt, which is in seconds; --pp, which is in units of 512-byte - blocks; --PP, --TT, --bb, --kk, --nn, and --uu, which are unscaled values; + If _l_i_m_i_t is given, and the --aa option is not used, _l_i_m_i_t is the + new value of the specified resource. If no option is given, + then --ff is assumed. Values are in 1024-byte increments, except + for --tt, which is in seconds; --pp, which is in units of 512-byte + blocks; --PP, --TT, --bb, --kk, --nn, and --uu, which are unscaled values; and, when in posix mode, --cc and --ff, which are in 512-byte incre- ments. The return status is 0 unless an invalid option or argu- ment is supplied, or an error occurs while setting a new limit. uummaasskk [--pp] [--SS] [_m_o_d_e] The user file-creation mask is set to _m_o_d_e. If _m_o_d_e begins with - a digit, it is interpreted as an octal number; otherwise it is - interpreted as a symbolic mode mask similar to that accepted by - _c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is - printed. The --SS option causes the mask to be printed in sym- - bolic form; the default output is an octal number. If the --pp + a digit, it is interpreted as an octal number; otherwise it is + interpreted as a symbolic mode mask similar to that accepted by + _c_h_m_o_d(1). If _m_o_d_e is omitted, the current value of the mask is + printed. The --SS option causes the mask to be printed in sym- + bolic form; the default output is an octal number. If the --pp option is supplied, and _m_o_d_e is omitted, the output is in a form that may be reused as input. The return status is 0 if the mode - was successfully changed or if no _m_o_d_e argument was supplied, + was successfully changed or if no _m_o_d_e argument was supplied, and false otherwise. uunnaalliiaass [-aa] [_n_a_m_e ...] - Remove each _n_a_m_e from the list of defined aliases. If --aa is - supplied, all alias definitions are removed. The return value + Remove each _n_a_m_e from the list of defined aliases. If --aa is + supplied, all alias definitions are removed. The return value is true unless a supplied _n_a_m_e is not a defined alias. uunnsseett [-ffvv] [-nn] [_n_a_m_e ...] - For each _n_a_m_e, remove the corresponding variable or function. + For each _n_a_m_e, remove the corresponding variable or function. If the --vv option is given, each _n_a_m_e refers to a shell variable, - and that variable is removed. Read-only variables may not be - unset. If --ff is specified, each _n_a_m_e refers to a shell func- - tion, and the function definition is removed. If the --nn option - is supplied, and _n_a_m_e is a variable with the _n_a_m_e_r_e_f attribute, - _n_a_m_e will be unset rather than the variable it references. --nn - has no effect if the --ff option is supplied. If no options are - supplied, each _n_a_m_e refers to a variable; if there is no vari- - able by that name, any function with that name is unset. Each - unset variable or function is removed from the environment - passed to subsequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANN-- + and that variable is removed. Read-only variables may not be + unset. If --ff is specified, each _n_a_m_e refers to a shell func- + tion, and the function definition is removed. If the --nn option + is supplied, and _n_a_m_e is a variable with the _n_a_m_e_r_e_f attribute, + _n_a_m_e will be unset rather than the variable it references. --nn + has no effect if the --ff option is supplied. If no options are + supplied, each _n_a_m_e refers to a variable; if there is no vari- + able by that name, any function with that name is unset. Each + unset variable or function is removed from the environment + passed to subsequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANN-- DDOOMM, SSEECCOONNDDSS, LLIINNEENNOO, HHIISSTTCCMMDD, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, or DDIIRRSSTTAACCKK are unset, they lose their special properties, even if they are sub- sequently reset. The exit status is true unless a _n_a_m_e is read- @@ -1830,16 +1831,16 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS wwaaiitt [--ffnn] [_i_d _._._.] Wait for each specified child process and return its termination - status. Each _i_d may be a process ID or a job specification; if - a job spec is given, all processes in that job's pipeline are + status. Each _i_d may be a process ID or a job specification; if + a job spec is given, all processes in that job's pipeline are waited for. If _i_d is not given, all currently active child pro- cesses are waited for, and the return status is zero. If the --nn - option is supplied, wwaaiitt waits for any job to terminate and - returns its exit status. If the --ff option is supplied, and job + option is supplied, wwaaiitt waits for any job to terminate and + returns its exit status. If the --ff option is supplied, and job control is enabled, wwaaiitt forces _i_d to terminate before returning - its status, instead of returning when it changes status. If _i_d - specifies a non-existent process or job, the return status is - 127. Otherwise, the return status is the exit status of the + its status, instead of returning when it changes status. If _i_d + specifies a non-existent process or job, the return status is + 127. Otherwise, the return status is the exit status of the last process or job waited for. SSEEEE AALLSSOO diff --git a/doc/builtins.ps b/doc/builtins.ps index 95fd181e..c2f8de15 100644 --- a/doc/builtins.ps +++ b/doc/builtins.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.22.3 -%%CreationDate: Fri Dec 21 09:58:50 2018 +%%CreationDate: Wed Jan 2 09:14:38 2019 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic @@ -2327,10 +2327,12 @@ E(UIL)-.1 E(TINS\(1\))-.92 E(The list of)144 84 Q/F1 10/Times-Bold@0 SF (shopt)2.5 E F0(options is:)2.5 E F1(assoc_expand_once)144 102 Q F0 1.945(If set, the shell suppresses multiple e)184 114 R -.25(va)-.25 G 1.944(luation of associati).25 F 2.244 -.15(ve a)-.25 H 1.944 -(rray subscripts during).15 F .857(arithmetic e)184 126 R .857 -(xpression e)-.15 F -.25(va)-.25 G .857(luation and while e).25 F -.15 -(xe)-.15 G .857(cuting b).15 F .857(uiltins that can perform v)-.2 F -(ariable)-.25 E(assignments.)184 138 Q F1(autocd)144 150 Q F0 .2 +(rray subscripts during).15 F 2.556(arithmetic e)184 126 R 2.556 +(xpression e)-.15 F -.25(va)-.25 G 2.556(luation, while e).25 F -.15(xe) +-.15 G 2.557(cuting b).15 F 2.557(uiltins that can perform v)-.2 F +(ariable)-.25 E(assignments, and while e)184 138 Q -.15(xe)-.15 G +(cuting b).15 E(uiltins that perform array dereferencing.)-.2 E F1 +(autocd)144 150 Q F0 .2 (If set, a command name that is the name of a directory is e)184 150 R -.15(xe)-.15 G .199(cuted as if it were the ar).15 F(gu-)-.18 E (ment to the)184 162 Q F1(cd)2.5 E F0 2.5(command. This)2.5 F diff --git a/doc/rbash.ps b/doc/rbash.ps index cd648b57..885aef04 100644 --- a/doc/rbash.ps +++ b/doc/rbash.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.22.3 -%%CreationDate: Fri Dec 21 09:58:50 2018 +%%CreationDate: Wed Jan 2 09:14:38 2019 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%DocumentSuppliedResources: procset grops 1.22 3 diff --git a/examples/loadables/basename.c b/examples/loadables/basename.c index 8ebdff4f..0734322d 100644 --- a/examples/loadables/basename.c +++ b/examples/loadables/basename.c @@ -30,6 +30,7 @@ #include "builtins.h" #include "shell.h" #include "common.h" +#include "bashgetopt.h" int basename_builtin (list) diff --git a/execute_cmd.c b/execute_cmd.c index 8b3c83aa..75b9804b 100644 --- a/execute_cmd.c +++ b/execute_cmd.c @@ -4504,6 +4504,9 @@ run_builtin: if (builtin_is_special) special_builtin_failed = 1; /* XXX - take command builtin into account? */ } + else + special_builtin_failed = builtin_is_special && result != EXECUTION_SUCCESS; + /* In POSIX mode, if there are assignment statements preceding a special builtin, they persist after the builtin completes. */ diff --git a/hashlib.c b/hashlib.c index 8adbe221..f8e3b09a 100644 --- a/hashlib.c +++ b/hashlib.c @@ -392,6 +392,7 @@ hash_pstats (table, name) HASH_TABLE *table, *ntable; int interrupt_immediately = 0; +int running_trap = 0; int signal_is_trapped (s) @@ -417,6 +418,7 @@ internal_warning (const char *format, ...) { } +int main () { char string[256]; diff --git a/lib/malloc/malloc.c b/lib/malloc/malloc.c index 5621adf4..ae9a5557 100644 --- a/lib/malloc/malloc.c +++ b/lib/malloc/malloc.c @@ -84,6 +84,10 @@ #include #include +#if !defined (botch) +#include +#endif + #if defined (HAVE_MMAP) #include #endif diff --git a/lib/sh/unicode.c b/lib/sh/unicode.c index fe13c4a0..99c422ab 100644 --- a/lib/sh/unicode.c +++ b/lib/sh/unicode.c @@ -216,21 +216,21 @@ u32toutf8 (wc, s) int u32toutf16 (c, s) u_bits32_t c; - unsigned short *s; + wchar_t *s; { int l; l = 0; if (c < 0x0d800 || (c >= 0x0e000 && c <= 0x0ffff)) { - s[0] = (unsigned short) (c & 0xFFFF); + s[0] = (wchar_t) (c & 0xFFFF); l = 1; } else if (c >= 0x10000 && c <= 0x010ffff) { c -= 0x010000; - s[0] = (unsigned short)((c >> 10) + 0xd800); - s[1] = (unsigned short)((c & 0x3ff) + 0xdc00); + s[0] = (wchar_t)((c >> 10) + 0xd800); + s[1] = (wchar_t)((c & 0x3ff) + 0xdc00); l = 2; } s[l] = 0; diff --git a/parse.y b/parse.y index a431f260..3ff87bcc 100644 --- a/parse.y +++ b/parse.y @@ -419,10 +419,7 @@ inputunit: simple_list simple_list_terminator only interesting in non-interactive shells */ global_command = (COMMAND *)NULL; if (last_command_exit_value == 0) -{ -itrace("parser: forcing EX_BADUSAGE; executing_command_builtin = %d", executing_command_builtin); last_command_exit_value = EX_BADUSAGE; /* force error return */ -} handle_eof_input_unit (); if (interactive && parse_and_execute_level == 0) { diff --git a/tests/RUN-ONE-TEST b/tests/RUN-ONE-TEST index 554f3d6e..58c375b7 100755 --- a/tests/RUN-ONE-TEST +++ b/tests/RUN-ONE-TEST @@ -1,4 +1,4 @@ -BUILD_DIR=/usr/local/build/bash/bash-current +BUILD_DIR=/usr/local/build/chet/bash/bash-current THIS_SH=$BUILD_DIR/bash PATH=$PATH:$BUILD_DIR diff --git a/version.c b/version.c index 922c8d69..d9280f03 100644 --- a/version.c +++ b/version.c @@ -1,6 +1,6 @@ /* version.c -- distribution and version numbers. */ -/* Copyright (C) 1989-2018 Free Software Foundation, Inc. +/* Copyright (C) 1989-2019 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -43,7 +43,7 @@ const char * const release_status = (char *)0; #endif const char * const sccs_version = SCCSVERSION; -const char * const bash_copyright = N_("Copyright (C) 2018 Free Software Foundation, Inc."); +const char * const bash_copyright = N_("Copyright (C) 2019 Free Software Foundation, Inc."); const char * const bash_license = N_("License GPLv3+: GNU GPL version 3 or later \n"); /* If == 31, shell compatible with bash-3.1, == 32 with bash-3.2, and so on */ diff --git a/version2.c b/version2.c index 922c8d69..d9280f03 100644 --- a/version2.c +++ b/version2.c @@ -1,6 +1,6 @@ /* version.c -- distribution and version numbers. */ -/* Copyright (C) 1989-2018 Free Software Foundation, Inc. +/* Copyright (C) 1989-2019 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -43,7 +43,7 @@ const char * const release_status = (char *)0; #endif const char * const sccs_version = SCCSVERSION; -const char * const bash_copyright = N_("Copyright (C) 2018 Free Software Foundation, Inc."); +const char * const bash_copyright = N_("Copyright (C) 2019 Free Software Foundation, Inc."); const char * const bash_license = N_("License GPLv3+: GNU GPL version 3 or later \n"); /* If == 31, shell compatible with bash-3.1, == 32 with bash-3.2, and so on */