diff options
author | Chet Ramey <chet.ramey@case.edu> | 2011-12-12 22:00:38 -0500 |
---|---|---|
committer | Chet Ramey <chet.ramey@case.edu> | 2011-12-12 22:00:38 -0500 |
commit | 67362c60915419501419b047cc80d77ee9af2284 (patch) | |
tree | 0fa2e60b067969eac488c91c7f0c0d9a6c987eb8 | |
parent | 220537f23e7e18f09bb5560829d9ff77bbe28cbb (diff) | |
download | bash-67362c60915419501419b047cc80d77ee9af2284.tar.gz |
commit bash-20100609 snapshot
-rw-r--r-- | COMPAT | 7 | ||||
-rw-r--r-- | COMPAT~ | 3 | ||||
-rw-r--r-- | CWRU/CWRU.chlog | 35 | ||||
-rw-r--r-- | CWRU/CWRU.chlog~ | 34 | ||||
-rw-r--r-- | Makefile.in | 2 | ||||
-rw-r--r-- | Makefile.in~ | 3 | ||||
-rw-r--r-- | arrayfunc.c | 32 | ||||
-rw-r--r-- | arrayfunc.c~ | 33 | ||||
-rw-r--r-- | autom4te.cache/output.0 | 24 | ||||
-rw-r--r-- | autom4te.cache/requests | 22 | ||||
-rw-r--r-- | autom4te.cache/traces.0 | 2 | ||||
-rw-r--r-- | builtins/cd.def | 2 | ||||
-rwxr-xr-x | configure | 24 | ||||
-rw-r--r-- | configure.in | 8 | ||||
-rw-r--r-- | configure.in~ | 2 | ||||
-rw-r--r-- | doc/bash.0 | 1403 | ||||
-rw-r--r-- | doc/bash.1 | 30 | ||||
-rw-r--r-- | doc/bash.1~ | 41 | ||||
-rw-r--r-- | doc/bash.html | 16 | ||||
-rw-r--r-- | doc/bash.pdf | bin | 291690 -> 291872 bytes | |||
-rw-r--r-- | doc/bash.ps | 120 | ||||
-rw-r--r-- | doc/bashref.bt | 10 | ||||
-rw-r--r-- | doc/bashref.bts | 10 | ||||
-rw-r--r-- | doc/bashref.dvi | bin | 675816 -> 676044 bytes | |||
-rw-r--r-- | doc/bashref.html | 12 | ||||
-rw-r--r-- | doc/bashref.info | 299 | ||||
-rw-r--r-- | doc/bashref.log | 34 | ||||
-rw-r--r-- | doc/bashref.pdf | bin | 566500 -> 566572 bytes | |||
-rw-r--r-- | doc/bashref.ps | 2339 | ||||
-rw-r--r-- | doc/bashref.texi | 20 | ||||
-rw-r--r-- | doc/bashref.texi~ | 25 | ||||
-rw-r--r-- | doc/builtins.0 | 1357 | ||||
-rw-r--r-- | doc/builtins.ps | 2479 | ||||
-rw-r--r-- | doc/rbash.ps | 2 | ||||
-rw-r--r-- | doc/version.texi | 6 | ||||
-rw-r--r-- | doc/version.texi~ | 4 | ||||
-rw-r--r-- | examples/scripts/timeout3 | 83 | ||||
-rw-r--r-- | lib/readline/complete.c | 8 | ||||
-rw-r--r-- | lib/readline/complete.c~ | 2 | ||||
-rw-r--r-- | parse.y | 2 | ||||
-rw-r--r-- | parse.y~ | 3 | ||||
-rw-r--r-- | patchlevel.h | 2 | ||||
-rw-r--r-- | patchlevel.h~ | 2 | ||||
-rw-r--r-- | po/zh_CN.po | 542 | ||||
-rw-r--r-- | print_cmd.c~ | 4 | ||||
-rw-r--r-- | subst.c | 16 | ||||
-rw-r--r-- | subst.c~ | 16 | ||||
-rwxr-xr-x | tests/RUN-ONE-TEST | 2 | ||||
-rw-r--r-- | tests/history.right | 4 | ||||
-rw-r--r-- | tests/mapfile.right | 80 | ||||
-rw-r--r-- | tests/shopt.right | 3 | ||||
-rw-r--r-- | variables.c | 4 | ||||
-rw-r--r-- | variables.c~ | 7 | ||||
-rw-r--r-- | version.c | 4 | ||||
-rw-r--r-- | version.c~ | 94 |
55 files changed, 4909 insertions, 4409 deletions
@@ -360,6 +360,13 @@ compat40 set of the entire list to be aborted (in versions before bash-4.0, interrupting one command in a list caused the next to be executed) +compat41 set + - interrupting a command list such as "a ; b ; c" causes the execution + of the entire list to be aborted (in versions before bash-4.0, + interrupting one command in a list caused the next to be executed) + - when in posix mode, single quotes in the `word' portion of a + double-quoted parameter expansion define a new quoting context and + are treated specially ------------------------------------------------------------------------------- Copying and distribution of this file, with or without modification, @@ -357,7 +357,8 @@ compat40 set - the < and > operators to the [[ command do not consider the current locale when comparing strings - interrupting a command list such as "a ; b ; c" causes the execution - of the entire list to be aborted + of the entire list to be aborted (in versions before bash-4.0, + interrupting one command in a list caused the next to be executed) ------------------------------------------------------------------------------- diff --git a/CWRU/CWRU.chlog b/CWRU/CWRU.chlog index 781fb587..3790fca9 100644 --- a/CWRU/CWRU.chlog +++ b/CWRU/CWRU.chlog @@ -10046,6 +10046,9 @@ builtins/hash.def at all, even with the -p option. Inconsistency pointed out by Jan Schampera <jan.schampera@web.de> +builtins/shopt.def + - add `compat41' option in preparation for bash-4.2 + 6/6 --- lib/readline/vi_mode.c @@ -10075,3 +10078,35 @@ builtins/cd.def doc/{bash.1,bashref.texi} - document new `cd -e' option + 6/12 + ---- +arrayfunc.c + - change array_value_internal to treat negative subscripts to indexed + arrays, offset from array_max_index(x) + 1, so foo[-1] is the last + element of $foo + +subst.c + - Change verify_substring_values to allow negative length specifications + when using string variables or array members. Negative lengths + mean to return characters from OFFSET until (${#var} - N) for + {var:offset:-N}. Feature requested by Richard Neill + <rn214@hermes.cam.ac.uk> + +doc/{bash.1,bashref.texi} + - document new behavior of negative subscripts to indexed arrays + - document new behavior of negative LENGTH in substring expansion + +configure.in + - change version to bash-4.2-devel + +variables.c + - make sure initialize_shell_variables calls sv_xtracefd if + BASH_XTRACEFD is inherited in the shell environment. Fixes but + reported by <jsunx1@bellsouth.net> + + 6/13 + ---- +lib/readline/complete.c + - change get_y_or_n to always return 1 when in callback mode, so we + don't do a blocking read. Have to wait until readline-7.0 to add + a state, since that will change public interface diff --git a/CWRU/CWRU.chlog~ b/CWRU/CWRU.chlog~ index 8afb6f08..88d41469 100644 --- a/CWRU/CWRU.chlog~ +++ b/CWRU/CWRU.chlog~ @@ -10046,6 +10046,9 @@ builtins/hash.def at all, even with the -p option. Inconsistency pointed out by Jan Schampera <jan.schampera@web.de> +builtins/shopt.def + - add `compat41' option in preparation for bash-4.2 + 6/6 --- lib/readline/vi_mode.c @@ -10069,3 +10072,34 @@ execute_cmd.c display width of select list elements in presence of multibyte characters. Bug reported by Bernd Eggink <monoped@sudrala.de> +builtins/cd.def + - add posix-mandated -e option; currently ignored in most circumstances + +doc/{bash.1,bashref.texi} + - document new `cd -e' option + + 6/12 + ---- +arrayfunc.c + - change array_value_internal to treat negative subscripts to indexed + arrays, offset from array_max_index(x) + 1, so foo[-1] is the last + element of $foo + +subst.c + - Change verify_substring_values to allow negative length specifications + when using string variables or array members. Negative lengths + mean to return characters from OFFSET until (${#var} - N) for + {var:offset:-N}. Feature requested by Richard Neill + <rn214@hermes.cam.ac.uk> + +doc/{bash.1,bashref.texi} + - document new behavior of negative subscripts to indexed arrays + - document new behavior of negative LENGTH in substring expansion + +configure.in + - change version to bash-4.2-devel + +variables.c + - make sure initialize_shell_variables calls sv_xtracefd if + BASH_XTRACEFD is inherited in the shell environment. Fixes but + reported by <jsunx1@bellsouth.net> diff --git a/Makefile.in b/Makefile.in index 1444f47f..355d8ae9 100644 --- a/Makefile.in +++ b/Makefile.in @@ -565,7 +565,7 @@ strip: $(Program) .made lint: ${MAKE} ${MFLAGS} CFLAGS='${GCC_LINT_FLAGS}' .made -version.h: $(SOURCES) config.h Makefile +version.h: $(SOURCES) config.h Makefile patchlevel.h $(SHELL) $(SUPPORT_SRC)mkversion.sh -b -S ${topdir} -s $(RELSTATUS) -d $(Version) -o newversion.h \ && mv newversion.h version.h diff --git a/Makefile.in~ b/Makefile.in~ index b63f7fc7..1444f47f 100644 --- a/Makefile.in~ +++ b/Makefile.in~ @@ -214,7 +214,8 @@ SHLIB_SOURCE = ${SH_LIBSRC}/clktck.c ${SH_LIBSRC}/getcwd.c \ ${SH_LIBSRC}/casemod.c ${SH_LIBSRC}/uconvert.c \ ${SH_LIBSRC}/ufuncs.c ${SH_LIBSRC}/dprintf.c \ ${SH_LIBSRC}/input_avail.c ${SH_LIBSRC}/mbscasecmp.c \ - ${SH_LIBSRC}/fnxform.c ${SH_LIBSRC}/unicode.c + ${SH_LIBSRC}/fnxform.c ${SH_LIBSRC}/unicode.c \ + ${SH_LIBSRC}/wcswidth.c SHLIB_LIB = -lsh SHLIB_LIBNAME = libsh.a diff --git a/arrayfunc.c b/arrayfunc.c index f7c7fd9f..df4d2ce1 100644 --- a/arrayfunc.c +++ b/arrayfunc.c @@ -843,6 +843,21 @@ array_variable_part (s, subp, lenp) return (var == 0 || invisible_p (var)) ? (SHELL_VAR *)0 : var; } +#define INDEX_ERROR() \ + do \ + { \ + if (var) \ + err_badarraysub (var->name); \ + else \ + { \ + t[-1] = '\0'; \ + err_badarraysub (s); \ + t[-1] = '['; /* ] */\ + } \ + return ((char *)NULL); \ + } \ + while (0) + /* Return a string containing the elements in the array and subscript described by S. If the subscript is * or @, obeys quoting rules akin to the expansion of $* and $@ including double quoting. If RTYPE @@ -920,16 +935,11 @@ array_value_internal (s, quoted, allow_all, rtype, indp) ind = array_expand_index (t, len); if (ind < 0) { -index_error: - if (var) - err_badarraysub (var->name); - else - { - t[-1] = '\0'; - err_badarraysub (s); - t[-1] = '['; /* ] */ - } - return ((char *)NULL); + /* negative subscripts to indexed arrays count back from end */ + if (var && array_p (var)) + ind = array_max_index (array_cell (var)) + 1 + ind; + if (ind < 0) + INDEX_ERROR(); } if (indp) *indp = ind; @@ -940,7 +950,7 @@ index_error: akey = expand_assignment_string_to_string (t, 0); /* [ */ t[len - 1] = ']'; if (akey == 0 || *akey == 0) - goto index_error; + INDEX_ERROR(); } if (var == 0 || value_cell (var) == 0) /* XXX - check invisible_p(var) ? */ diff --git a/arrayfunc.c~ b/arrayfunc.c~ index ad5b2bdd..c0b7b542 100644 --- a/arrayfunc.c~ +++ b/arrayfunc.c~ @@ -1,6 +1,6 @@ /* arrayfunc.c -- High-level array functions used by other parts of the shell. */ -/* Copyright (C) 2001-2009 Free Software Foundation, Inc. +/* Copyright (C) 2001-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -843,6 +843,21 @@ array_variable_part (s, subp, lenp) return (var == 0 || invisible_p (var)) ? (SHELL_VAR *)0 : var; } +#define INDEX_ERROR() \ + do \ + { \ + if (var) \ + err_badarraysub (var->name); \ + else \ + { \ + t[-1] = '\0'; \ + err_badarraysub (s); \ + t[-1] = '['; /* ] */\ + } \ + return ((char *)NULL); \ + } \ + while (0) + /* Return a string containing the elements in the array and subscript described by S. If the subscript is * or @, obeys quoting rules akin to the expansion of $* and $@ including double quoting. If RTYPE @@ -920,16 +935,10 @@ array_value_internal (s, quoted, allow_all, rtype, indp) ind = array_expand_index (t, len); if (ind < 0) { -index_error: - if (var) - err_badarraysub (var->name); - else - { - t[-1] = '\0'; - err_badarraysub (s); - t[-1] = '['; /* ] */ - } - return ((char *)NULL); + if (var && array_p (var)) + ind = array_max_index (array_cell (var)) + 1 + ind; + if (ind < 0) + INDEX_ERROR(); } if (indp) *indp = ind; @@ -940,7 +949,7 @@ index_error: akey = expand_assignment_string_to_string (t, 0); /* [ */ t[len - 1] = ']'; if (akey == 0 || *akey == 0) - goto index_error; + INDEX_ERROR(); } if (var == 0 || value_cell (var) == 0) /* XXX - check invisible_p(var) ? */ diff --git a/autom4te.cache/output.0 b/autom4te.cache/output.0 index e4c5dec0..b171291b 100644 --- a/autom4te.cache/output.0 +++ b/autom4te.cache/output.0 @@ -1,7 +1,7 @@ @%:@! /bin/sh -@%:@ From configure.in for Bash 4.1, version 4.023. +@%:@ From configure.in for Bash 4.2, version 4.031. @%:@ Guess values for system-dependent variables and create Makefiles. -@%:@ Generated by GNU Autoconf 2.63 for bash 4.1-maint. +@%:@ Generated by GNU Autoconf 2.63 for bash 4.2-devel. @%:@ @%:@ Report bugs to <bug-bash@gnu.org>. @%:@ @@ -597,8 +597,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='bash' PACKAGE_TARNAME='bash' -PACKAGE_VERSION='4.1-maint' -PACKAGE_STRING='bash 4.1-maint' +PACKAGE_VERSION='4.2-devel' +PACKAGE_STRING='bash 4.2-devel' PACKAGE_BUGREPORT='bug-bash@gnu.org' ac_unique_file="shell.h" @@ -1411,7 +1411,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 4.1-maint to adapt to many kinds of systems. +\`configure' configures bash 4.2-devel to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1476,7 +1476,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of bash 4.1-maint:";; + short | recursive ) echo "Configuration of bash 4.2-devel:";; esac cat <<\_ACEOF @@ -1652,7 +1652,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -bash configure 4.1-maint +bash configure 4.2-devel generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1666,7 +1666,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 4.1-maint, which was +It was created by bash $as_me 4.2-devel, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2079,8 +2079,8 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. ac_config_headers="$ac_config_headers config.h" -BASHVERS=4.1 -RELSTATUS=maint +BASHVERS=4.2 +RELSTATUS=devel case "$RELSTATUS" in alp*|bet*|dev*|rc*|maint*) DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;; @@ -31484,7 +31484,7 @@ exec 6>&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 4.1-maint, which was +This file was extended by bash $as_me 4.2-devel, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -31547,7 +31547,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -bash config.status 4.1-maint +bash config.status 4.2-devel configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/autom4te.cache/requests b/autom4te.cache/requests index 014c1526..4a5e08c9 100644 --- a/autom4te.cache/requests +++ b/autom4te.cache/requests @@ -15,25 +15,25 @@ 'configure.in' ], { - 'AM_PROG_F77_C_O' => 1, '_LT_AC_TAGCONFIG' => 1, - 'm4_pattern_forbid' => 1, + 'AM_PROG_F77_C_O' => 1, 'AC_INIT' => 1, - 'AC_CANONICAL_TARGET' => 1, + 'm4_pattern_forbid' => 1, '_AM_COND_IF' => 1, - 'AC_CONFIG_LIBOBJ_DIR' => 1, + 'AC_CANONICAL_TARGET' => 1, 'AC_SUBST' => 1, - 'AC_CANONICAL_HOST' => 1, + 'AC_CONFIG_LIBOBJ_DIR' => 1, 'AC_FC_SRCEXT' => 1, + 'AC_CANONICAL_HOST' => 1, 'AC_PROG_LIBTOOL' => 1, 'AM_INIT_AUTOMAKE' => 1, 'AC_CONFIG_SUBDIRS' => 1, 'AM_AUTOMAKE_VERSION' => 1, 'LT_CONFIG_LTDL_DIR' => 1, - 'AC_CONFIG_LINKS' => 1, 'AC_REQUIRE_AUX_FILE' => 1, - 'LT_SUPPORTED_TAG' => 1, + 'AC_CONFIG_LINKS' => 1, 'm4_sinclude' => 1, + 'LT_SUPPORTED_TAG' => 1, 'AM_MAINTAINER_MODE' => 1, 'AM_GNU_GETTEXT_INTL_SUBDIR' => 1, '_m4_warn' => 1, @@ -49,13 +49,13 @@ 'AC_CANONICAL_BUILD' => 1, 'AC_FC_FREEFORM' => 1, 'AH_OUTPUT' => 1, - 'AC_CONFIG_AUX_DIR' => 1, '_AM_SUBST_NOTMAKE' => 1, - 'AM_PROG_CC_C_O' => 1, - 'm4_pattern_allow' => 1, + 'AC_CONFIG_AUX_DIR' => 1, 'sinclude' => 1, - 'AM_CONDITIONAL' => 1, + 'm4_pattern_allow' => 1, + 'AM_PROG_CC_C_O' => 1, 'AC_CANONICAL_SYSTEM' => 1, + 'AM_CONDITIONAL' => 1, 'AC_CONFIG_HEADERS' => 1, 'AC_DEFINE_TRACE_LITERAL' => 1, 'm4_include' => 1, diff --git a/autom4te.cache/traces.0 b/autom4te.cache/traces.0 index 89910b77..933497aa 100644 --- a/autom4te.cache/traces.0 +++ b/autom4te.cache/traces.0 @@ -1,4 +1,4 @@ -m4trace:configure.in:29: -1- AC_INIT([bash], [4.1-maint], [bug-bash@gnu.org]) +m4trace:configure.in:29: -1- AC_INIT([bash], [4.2-devel], [bug-bash@gnu.org]) m4trace:configure.in:29: -1- m4_pattern_forbid([^_?A[CHUM]_]) m4trace:configure.in:29: -1- m4_pattern_forbid([_AC_]) m4trace:configure.in:29: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS']) diff --git a/builtins/cd.def b/builtins/cd.def index 56a46fb2..5526c4df 100644 --- a/builtins/cd.def +++ b/builtins/cd.def @@ -215,6 +215,8 @@ cd_builtin (list) lflag = (cdable_vars ? LCD_DOVARS : 0) | ((interactive && cdspelling) ? LCD_DOSPELL : 0); + if (eflag && no_symlinks == 0) + eflag = 0; if (list == 0) { @@ -1,7 +1,7 @@ #! /bin/sh -# From configure.in for Bash 4.1, version 4.023. +# From configure.in for Bash 4.2, version 4.031. # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for bash 4.1-maint. +# Generated by GNU Autoconf 2.63 for bash 4.2-devel. # # Report bugs to <bug-bash@gnu.org>. # @@ -597,8 +597,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='bash' PACKAGE_TARNAME='bash' -PACKAGE_VERSION='4.1-maint' -PACKAGE_STRING='bash 4.1-maint' +PACKAGE_VERSION='4.2-devel' +PACKAGE_STRING='bash 4.2-devel' PACKAGE_BUGREPORT='bug-bash@gnu.org' ac_unique_file="shell.h" @@ -1411,7 +1411,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 4.1-maint to adapt to many kinds of systems. +\`configure' configures bash 4.2-devel to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1476,7 +1476,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of bash 4.1-maint:";; + short | recursive ) echo "Configuration of bash 4.2-devel:";; esac cat <<\_ACEOF @@ -1652,7 +1652,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -bash configure 4.1-maint +bash configure 4.2-devel generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1666,7 +1666,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 4.1-maint, which was +It was created by bash $as_me 4.2-devel, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2079,8 +2079,8 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. ac_config_headers="$ac_config_headers config.h" -BASHVERS=4.1 -RELSTATUS=maint +BASHVERS=4.2 +RELSTATUS=devel case "$RELSTATUS" in alp*|bet*|dev*|rc*|maint*) DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;; @@ -31484,7 +31484,7 @@ exec 6>&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 4.1-maint, which was +This file was extended by bash $as_me 4.2-devel, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -31547,7 +31547,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -bash config.status 4.1-maint +bash config.status 4.2-devel configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/configure.in b/configure.in index 6cecad51..0af9555d 100644 --- a/configure.in +++ b/configure.in @@ -1,5 +1,5 @@ dnl -dnl Configure script for bash-4.1 +dnl Configure script for bash-4.2 dnl dnl report bugs to chet@po.cwru.edu dnl @@ -21,10 +21,10 @@ dnl Process this file with autoconf to produce a configure script. # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. -AC_REVISION([for Bash 4.1, version 4.023])dnl +AC_REVISION([for Bash 4.2, version 4.031])dnl -define(bashvers, 4.1) -define(relstatus, maint) +define(bashvers, 4.2) +define(relstatus, devel) AC_INIT([bash], bashvers-relstatus, [bug-bash@gnu.org]) diff --git a/configure.in~ b/configure.in~ index 55de15f4..6cecad51 100644 --- a/configure.in~ +++ b/configure.in~ @@ -727,7 +727,7 @@ AC_CHECK_FUNCS(dup2 eaccess fcntl getdtablesize getgroups gethostname \ AC_REPLACE_FUNCS(rename) dnl checks for c library functions -AC_CHECK_FUNCS(bcopy bzero confstr fnmatch \ +AC_CHECK_FUNCS(bcopy bzero confstr faccessat fnmatch \ getaddrinfo gethostbyname getservbyname getservent inet_aton \ memmove pathconf putenv raise regcomp regexec \ setenv setlinebuf setlocale setvbuf siginterrupt strchr \ @@ -3834,7 +3834,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS routine call or _e_x_p_r does not correspond to a valid position in the call stack. - ccdd [--LL||--PP] [_d_i_r] + ccdd [--LL|[--PP [--ee]]] [_d_i_r] Change the current directory to _d_i_r. The variable HHOOMMEE is the default _d_i_r. The variable CCDDPPAATTHH defines the search path for the directory containing _d_i_r. Alternative directory names in @@ -3844,104 +3844,107 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS option says to use the physical directory structure instead of following symbolic links (see also the --PP option to the sseett builtin command); the --LL option forces symbolic links to be fol- - lowed. An argument of -- is equivalent to $$OOLLDDPPWWDD. If a non- - empty directory name from CCDDPPAATTHH is used, or if -- is the first - argument, and the directory change is successful, the absolute - pathname of the new working directory is written to the standard - output. The return value is true if the directory was success- + lowed. If the --ee option is supplied with --PP, and the current + working directory cannot be successfully determined after a suc- + cessful directory change, ccdd will return an unsuccessful status. + An argument of -- is equivalent to $$OOLLDDPPWWDD. If a non-empty + directory name from CCDDPPAATTHH is used, or if -- is the first argu- + ment, and the directory change is successful, the absolute path- + name of the new working directory is written to the standard + output. The return value is true if the directory was success- fully changed; false otherwise. ccoommmmaanndd [--ppVVvv] _c_o_m_m_a_n_d [_a_r_g ...] - Run _c_o_m_m_a_n_d with _a_r_g_s suppressing the normal shell function - lookup. Only builtin commands or commands found in the PPAATTHH are - executed. If the --pp option is given, the search for _c_o_m_m_a_n_d is - performed using a default value for PPAATTHH that is guaranteed to - find all of the standard utilities. If either the --VV or --vv + Run _c_o_m_m_a_n_d with _a_r_g_s suppressing the normal shell function + lookup. Only builtin commands or commands found in the PPAATTHH are + executed. If the --pp option is given, the search for _c_o_m_m_a_n_d is + performed using a default value for PPAATTHH that is guaranteed to + find all of the standard utilities. If either the --VV or --vv option is supplied, a description of _c_o_m_m_a_n_d is printed. The --vv - option causes a single word indicating the command or file name + option causes a single word indicating the command or file name used to invoke _c_o_m_m_a_n_d to be displayed; the --VV option produces a - more verbose description. If the --VV or --vv option is supplied, - the exit status is 0 if _c_o_m_m_a_n_d was found, and 1 if not. If + more verbose description. If the --VV or --vv option is supplied, + the exit status is 0 if _c_o_m_m_a_n_d was found, and 1 if not. If neither option is supplied and an error occurred or _c_o_m_m_a_n_d can- - not be found, the exit status is 127. Otherwise, the exit sta- + not be found, the exit status is 127. Otherwise, the exit sta- tus of the ccoommmmaanndd builtin is the exit status of _c_o_m_m_a_n_d. ccoommppggeenn [_o_p_t_i_o_n] [_w_o_r_d] - Generate possible completion matches for _w_o_r_d according to the - _o_p_t_i_o_ns, which may be any option accepted by the ccoommpplleettee - builtin with the exception of --pp and --rr, and write the matches - to the standard output. When using the --FF or --CC options, the - various shell variables set by the programmable completion + Generate possible completion matches for _w_o_r_d according to the + _o_p_t_i_o_ns, which may be any option accepted by the ccoommpplleettee + builtin with the exception of --pp and --rr, and write the matches + to the standard output. When using the --FF or --CC options, the + various shell variables set by the programmable completion facilities, while available, will not have useful values. - The matches will be generated in the same way as if the pro- - grammable completion code had generated them directly from a + The matches will be generated in the same way as if the pro- + grammable completion code had generated them directly from a completion specification with the same flags. If _w_o_r_d is speci- fied, only those completions matching _w_o_r_d will be displayed. - The return value is true unless an invalid option is supplied, + The return value is true unless an invalid option is supplied, or no matches were generated. - ccoommpplleettee [--aabbccddeeffggjjkkssuuvv] [--oo _c_o_m_p_-_o_p_t_i_o_n] [--DDEE] [--AA _a_c_t_i_o_n] [--GG _g_l_o_b_- + ccoommpplleettee [--aabbccddeeffggjjkkssuuvv] [--oo _c_o_m_p_-_o_p_t_i_o_n] [--DDEE] [--AA _a_c_t_i_o_n] [--GG _g_l_o_b_- _p_a_t] [--WW _w_o_r_d_l_i_s_t] [--FF _f_u_n_c_t_i_o_n] [--CC _c_o_m_m_a_n_d] [--XX _f_i_l_t_e_r_p_a_t] [--PP _p_r_e_f_i_x] [--SS _s_u_f_f_i_x] _n_a_m_e [_n_a_m_e _._._.] ccoommpplleettee --pprr [--DDEE] [_n_a_m_e ...] - Specify how arguments to each _n_a_m_e should be completed. If the - --pp option is supplied, or if no options are supplied, existing - completion specifications are printed in a way that allows them + Specify how arguments to each _n_a_m_e should be completed. If the + --pp option is supplied, or if no options are supplied, existing + completion specifications are printed in a way that allows them to be reused as input. The --rr option removes a completion spec- - ification for each _n_a_m_e, or, if no _n_a_m_es are supplied, all com- + ification for each _n_a_m_e, or, if no _n_a_m_es are supplied, all com- pletion specifications. The --DD option indicates that the - remaining options and actions should apply to the ``default'' - command completion; that is, completion attempted on a command - for which no completion has previously been defined. The --EE - option indicates that the remaining options and actions should - apply to ``empty'' command completion; that is, completion + remaining options and actions should apply to the ``default'' + command completion; that is, completion attempted on a command + for which no completion has previously been defined. The --EE + option indicates that the remaining options and actions should + apply to ``empty'' command completion; that is, completion attempted on a blank line. - The process of applying these completion specifications when - word completion is attempted is described above under PPrroo-- + The process of applying these completion specifications when + word completion is attempted is described above under PPrroo-- ggrraammmmaabbllee CCoommpplleettiioonn. - Other options, if specified, have the following meanings. The - arguments to the --GG, --WW, and --XX options (and, if necessary, the - --PP and --SS options) should be quoted to protect them from expan- + Other options, if specified, have the following meanings. The + arguments to the --GG, --WW, and --XX options (and, if necessary, the + --PP and --SS options) should be quoted to protect them from expan- sion before the ccoommpplleettee builtin is invoked. --oo _c_o_m_p_-_o_p_t_i_o_n - The _c_o_m_p_-_o_p_t_i_o_n controls several aspects of the comp- - spec's behavior beyond the simple generation of comple- + The _c_o_m_p_-_o_p_t_i_o_n controls several aspects of the comp- + spec's behavior beyond the simple generation of comple- tions. _c_o_m_p_-_o_p_t_i_o_n may be one of: bbaasshhddeeffaauulltt Perform the rest of the default bbaasshh completions if the compspec generates no matches. - ddeeffaauulltt Use readline's default filename completion if + ddeeffaauulltt Use readline's default filename completion if the compspec generates no matches. ddiirrnnaammeess - Perform directory name completion if the comp- + Perform directory name completion if the comp- spec generates no matches. ffiilleennaammeess - Tell readline that the compspec generates file- - names, so it can perform any filename-specific - processing (like adding a slash to directory - names, quoting special characters, or suppress- - ing trailing spaces). Intended to be used with + Tell readline that the compspec generates file- + names, so it can perform any filename-specific + processing (like adding a slash to directory + names, quoting special characters, or suppress- + ing trailing spaces). Intended to be used with shell functions. - nnoossppaaccee Tell readline not to append a space (the - default) to words completed at the end of the + nnoossppaaccee Tell readline not to append a space (the + default) to words completed at the end of the line. pplluussddiirrss - After any matches defined by the compspec are - generated, directory name completion is - attempted and any matches are added to the + After any matches defined by the compspec are + generated, directory name completion is + attempted and any matches are added to the results of the other actions. --AA _a_c_t_i_o_n - The _a_c_t_i_o_n may be one of the following to generate a + The _a_c_t_i_o_n may be one of the following to generate a list of possible completions: aalliiaass Alias names. May also be specified as --aa. aarrrraayyvvaarr Array variable names. bbiinnddiinngg RReeaaddlliinnee key binding names. - bbuuiillttiinn Names of shell builtin commands. May also be + bbuuiillttiinn Names of shell builtin commands. May also be specified as --bb. ccoommmmaanndd Command names. May also be specified as --cc. ddiirreeccttoorryy @@ -3949,7 +3952,7 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS ddiissaabblleedd Names of disabled shell builtins. eennaabblleedd Names of enabled shell builtins. - eexxppoorrtt Names of exported shell variables. May also be + eexxppoorrtt Names of exported shell variables. May also be specified as --ee. ffiillee File names. May also be specified as --ff. ffuunnccttiioonn @@ -3958,17 +3961,17 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS hheellppttooppiicc Help topics as accepted by the hheellpp builtin. hhoossttnnaammee - Hostnames, as taken from the file specified by + Hostnames, as taken from the file specified by the HHOOSSTTFFIILLEE shell variable. - jjoobb Job names, if job control is active. May also + jjoobb Job names, if job control is active. May also be specified as --jj. - kkeeyywwoorrdd Shell reserved words. May also be specified as + kkeeyywwoorrdd Shell reserved words. May also be specified as --kk. rruunnnniinngg Names of running jobs, if job control is active. sseerrvviiccee Service names. May also be specified as --ss. - sseettoopptt Valid arguments for the --oo option to the sseett + sseettoopptt Valid arguments for the --oo option to the sseett builtin. - sshhoopptt Shell option names as accepted by the sshhoopptt + sshhoopptt Shell option names as accepted by the sshhoopptt builtin. ssiiggnnaall Signal names. ssttooppppeedd Names of stopped jobs, if job control is active. @@ -3977,173 +3980,173 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS Names of all shell variables. May also be spec- ified as --vv. --CC _c_o_m_m_a_n_d - _c_o_m_m_a_n_d is executed in a subshell environment, and its + _c_o_m_m_a_n_d is executed in a subshell environment, and its output is used as the possible completions. --FF _f_u_n_c_t_i_o_n - The shell function _f_u_n_c_t_i_o_n is executed in the current - shell environment. When it finishes, the possible com- - pletions are retrieved from the value of the CCOOMMPPRREEPPLLYY + The shell function _f_u_n_c_t_i_o_n is executed in the current + shell environment. When it finishes, the possible com- + pletions are retrieved from the value of the CCOOMMPPRREEPPLLYY array variable. --GG _g_l_o_b_p_a_t - The pathname expansion pattern _g_l_o_b_p_a_t is expanded to + The pathname expansion pattern _g_l_o_b_p_a_t is expanded to generate the possible completions. --PP _p_r_e_f_i_x - _p_r_e_f_i_x is added at the beginning of each possible com- + _p_r_e_f_i_x is added at the beginning of each possible com- pletion after all other options have been applied. --SS _s_u_f_f_i_x _s_u_f_f_i_x is appended to each possible completion after all other options have been applied. --WW _w_o_r_d_l_i_s_t - The _w_o_r_d_l_i_s_t is split using the characters in the IIFFSS - special variable as delimiters, and each resultant word - is expanded. The possible completions are the members - of the resultant list which match the word being com- + The _w_o_r_d_l_i_s_t is split using the characters in the IIFFSS + special variable as delimiters, and each resultant word + is expanded. The possible completions are the members + of the resultant list which match the word being com- pleted. --XX _f_i_l_t_e_r_p_a_t - _f_i_l_t_e_r_p_a_t is a pattern as used for pathname expansion. + _f_i_l_t_e_r_p_a_t is a pattern as used for pathname expansion. It is applied to the list of possible completions gener- - ated by the preceding options and arguments, and each - completion matching _f_i_l_t_e_r_p_a_t is removed from the list. - A leading !! in _f_i_l_t_e_r_p_a_t negates the pattern; in this - case, any completion not matching _f_i_l_t_e_r_p_a_t is removed. - - The return value is true unless an invalid option is supplied, - an option other than --pp or --rr is supplied without a _n_a_m_e argu- - ment, an attempt is made to remove a completion specification + ated by the preceding options and arguments, and each + completion matching _f_i_l_t_e_r_p_a_t is removed from the list. + A leading !! in _f_i_l_t_e_r_p_a_t negates the pattern; in this + case, any completion not matching _f_i_l_t_e_r_p_a_t is removed. + + The return value is true unless an invalid option is supplied, + an option other than --pp or --rr is supplied without a _n_a_m_e argu- + ment, an attempt is made to remove a completion specification for a _n_a_m_e for which no specification exists, or an error occurs adding a completion specification. ccoommppoopptt [--oo _o_p_t_i_o_n] [--DDEE] [++oo _o_p_t_i_o_n] [_n_a_m_e] Modify completion options for each _n_a_m_e according to the - _o_p_t_i_o_ns, or for the currently-executing completion if no _n_a_m_es - are supplied. If no _o_p_t_i_o_ns are given, display the completion - options for each _n_a_m_e or the current completion. The possible - values of _o_p_t_i_o_n are those valid for the ccoommpplleettee builtin - described above. The --DD option indicates that the remaining + _o_p_t_i_o_ns, or for the currently-executing completion if no _n_a_m_es + are supplied. If no _o_p_t_i_o_ns are given, display the completion + options for each _n_a_m_e or the current completion. The possible + values of _o_p_t_i_o_n are those valid for the ccoommpplleettee builtin + described above. The --DD option indicates that the remaining options should apply to the ``default'' command completion; that - is, completion attempted on a command for which no completion - has previously been defined. The --EE option indicates that the - remaining options should apply to ``empty'' command completion; + is, completion attempted on a command for which no completion + has previously been defined. The --EE option indicates that the + remaining options should apply to ``empty'' command completion; that is, completion attempted on a blank line. - The return value is true unless an invalid option is supplied, + The return value is true unless an invalid option is supplied, an attempt is made to modify the options for a _n_a_m_e for which no completion specification exists, or an output error occurs. ccoonnttiinnuuee [_n] Resume the next iteration of the enclosing ffoorr, wwhhiillee, uunnttiill, or - sseelleecctt loop. If _n is specified, resume at the _nth enclosing - loop. _n must be >= 1. If _n is greater than the number of - enclosing loops, the last enclosing loop (the ``top-level'' + sseelleecctt loop. If _n is specified, resume at the _nth enclosing + loop. _n must be >= 1. If _n is greater than the number of + enclosing loops, the last enclosing loop (the ``top-level'' loop) is resumed. The return value is 0 unless _n is not greater than or equal to 1. ddeeccllaarree [--aaAAffFFggiillrrttuuxx] [--pp] [_n_a_m_e[=_v_a_l_u_e] ...] ttyyppeesseett [--aaAAffFFggiillrrttuuxx] [--pp] [_n_a_m_e[=_v_a_l_u_e] ...] - Declare variables and/or give them attributes. If no _n_a_m_es are - given then display the values of variables. The --pp option will + Declare variables and/or give them attributes. If no _n_a_m_es are + given then display the values of variables. The --pp option will display the attributes and values of each _n_a_m_e. When --pp is used with _n_a_m_e arguments, additional options are ignored. When --pp is - supplied without _n_a_m_e arguments, it will display the attributes - and values of all variables having the attributes specified by - the additional options. If no other options are supplied with - --pp, ddeeccllaarree will display the attributes and values of all shell - variables. The --ff option will restrict the display to shell + supplied without _n_a_m_e arguments, it will display the attributes + and values of all variables having the attributes specified by + the additional options. If no other options are supplied with + --pp, ddeeccllaarree will display the attributes and values of all shell + variables. The --ff option will restrict the display to shell functions. The --FF option inhibits the display of function defi- - nitions; only the function name and attributes are printed. If - the eexxttddeebbuugg shell option is enabled using sshhoopptt, the source + nitions; only the function name and attributes are printed. If + the eexxttddeebbuugg shell option is enabled using sshhoopptt, the source file name and line number where the function is defined are dis- played as well. The --FF option implies --ff. The --gg option forces - variables to be created or modified at the global scope, even - when ddeeccllaarree is executed in a shell function. It is ignored in - all other cases. The following options can be used to restrict - output to variables with the specified attribute or to give + variables to be created or modified at the global scope, even + when ddeeccllaarree is executed in a shell function. It is ignored in + all other cases. The following options can be used to restrict + output to variables with the specified attribute or to give variables attributes: - --aa Each _n_a_m_e is an indexed array variable (see AArrrraayyss + --aa Each _n_a_m_e is an indexed array variable (see AArrrraayyss above). - --AA Each _n_a_m_e is an associative array variable (see AArrrraayyss + --AA Each _n_a_m_e is an associative array variable (see AArrrraayyss above). --ff Use function names only. --ii The variable is treated as an integer; arithmetic evalua- - tion (see AARRIITTHHMMEETTIICC EEVVAALLUUAATTIIOONN above) is performed when + tion (see AARRIITTHHMMEETTIICC EEVVAALLUUAATTIIOONN above) is performed when the variable is assigned a value. - --ll When the variable is assigned a value, all upper-case - characters are converted to lower-case. The upper-case + --ll When the variable is assigned a value, all upper-case + characters are converted to lower-case. The upper-case attribute is disabled. --rr Make _n_a_m_es readonly. These names cannot then be assigned values by subsequent assignment statements or unset. - --tt Give each _n_a_m_e the _t_r_a_c_e attribute. Traced functions - inherit the DDEEBBUUGG and RREETTUURRNN traps from the calling - shell. The trace attribute has no special meaning for + --tt Give each _n_a_m_e the _t_r_a_c_e attribute. Traced functions + inherit the DDEEBBUUGG and RREETTUURRNN traps from the calling + shell. The trace attribute has no special meaning for variables. - --uu When the variable is assigned a value, all lower-case - characters are converted to upper-case. The lower-case + --uu When the variable is assigned a value, all lower-case + characters are converted to upper-case. The lower-case attribute is disabled. - --xx Mark _n_a_m_es for export to subsequent commands via the + --xx Mark _n_a_m_es for export to subsequent commands via the environment. - Using `+' instead of `-' turns off the attribute instead, with + Using `+' instead of `-' turns off the attribute instead, with the exceptions that ++aa may not be used to destroy an array vari- - able and ++rr will not remove the readonly attribute. When used + able and ++rr will not remove the readonly attribute. When used in a function, makes each _n_a_m_e local, as with the llooccaall command, - unless the --ggPP ooppttiioonn iiss ssuupppplliieedd,, IIff aa vvaarriiaabbllee nnaammee iiss ffooll-- + unless the --ggPP ooppttiioonn iiss ssuupppplliieedd,, IIff aa vvaarriiaabbllee nnaammee iiss ffooll-- lloowweedd bbyy ==_v_a_l_u_e,, tthhee vvaalluuee ooff tthhee vvaarriiaabbllee iiss sseett ttoo _v_a_l_u_e.. TThhee - rreettuurrnn vvaalluuee iiss 00 uunnlleessss aann iinnvvaalliidd ooppttiioonn iiss eennccoouunntteerreedd,, aann - aatttteemmpptt iiss mmaaddee ttoo ddeeffiinnee aa ffuunnccttiioonn uussiinngg ````--ff ffoooo==bbaarr'''',, aann - aatttteemmpptt iiss mmaaddee ttoo aassssiiggnn aa vvaalluuee ttoo aa rreeaaddoonnllyy vvaarriiaabbllee,, aann - aatttteemmpptt iiss mmaaddee ttoo aassssiiggnn aa vvaalluuee ttoo aann aarrrraayy vvaarriiaabbllee wwiitthhoouutt - uussiinngg tthhee ccoommppoouunndd aassssiiggnnmmeenntt ssyynnttaaxx ((sseeee AArrrraayyss above), one of + rreettuurrnn vvaalluuee iiss 00 uunnlleessss aann iinnvvaalliidd ooppttiioonn iiss eennccoouunntteerreedd,, aann + aatttteemmpptt iiss mmaaddee ttoo ddeeffiinnee aa ffuunnccttiioonn uussiinngg ````--ff ffoooo==bbaarr'''',, aann + aatttteemmpptt iiss mmaaddee ttoo aassssiiggnn aa vvaalluuee ttoo aa rreeaaddoonnllyy vvaarriiaabbllee,, aann + aatttteemmpptt iiss mmaaddee ttoo aassssiiggnn aa vvaalluuee ttoo aann aarrrraayy vvaarriiaabbllee wwiitthhoouutt + uussiinngg tthhee ccoommppoouunndd aassssiiggnnmmeenntt ssyynnttaaxx ((sseeee AArrrraayyss above), one of the _n_a_m_e_s is not a valid shell variable name, an attempt is made - to turn off readonly status for a readonly variable, an attempt - is made to turn off array status for an array variable, or an + to turn off readonly status for a readonly variable, an attempt + is made to turn off array status for an array variable, or an attempt is made to display a non-existent function with --ff. ddiirrss [[++_n]] [[--_n]] [[--ccllppvv]] - Without options, displays the list of currently remembered - directories. The default display is on a single line with - directory names separated by spaces. Directories are added to - the list with the ppuusshhdd command; the ppooppdd command removes + Without options, displays the list of currently remembered + directories. The default display is on a single line with + directory names separated by spaces. Directories are added to + the list with the ppuusshhdd command; the ppooppdd command removes entries from the list. ++_n Displays the _nth entry counting from the left of the list shown by ddiirrss when invoked without options, starting with zero. - --_n Displays the _nth entry counting from the right of the + --_n Displays the _nth entry counting from the right of the list shown by ddiirrss when invoked without options, starting with zero. --cc Clears the directory stack by deleting all of the entries. - --ll Produces a longer listing; the default listing format + --ll Produces a longer listing; the default listing format uses a tilde to denote the home directory. --pp Print the directory stack with one entry per line. - --vv Print the directory stack with one entry per line, pre- + --vv Print the directory stack with one entry per line, pre- fixing each entry with its index in the stack. - The return value is 0 unless an invalid option is supplied or _n + The return value is 0 unless an invalid option is supplied or _n indexes beyond the end of the directory stack. ddiissoowwnn [--aarr] [--hh] [_j_o_b_s_p_e_c ...] - Without options, each _j_o_b_s_p_e_c is removed from the table of - active jobs. If _j_o_b_s_p_e_c is not present, and neither --aa nor --rr - is supplied, the shell's notion of the _c_u_r_r_e_n_t _j_o_b is used. If + Without options, each _j_o_b_s_p_e_c is removed from the table of + active jobs. If _j_o_b_s_p_e_c is not present, and neither --aa nor --rr + is supplied, the shell's notion of the _c_u_r_r_e_n_t _j_o_b is used. If the --hh option is given, each _j_o_b_s_p_e_c is not removed from the ta- - ble, but is marked so that SSIIGGHHUUPP is not sent to the job if the - shell receives a SSIIGGHHUUPP. If no _j_o_b_s_p_e_c is present, and neither - the --aa nor the --rr option is supplied, the _c_u_r_r_e_n_t _j_o_b is used. + ble, but is marked so that SSIIGGHHUUPP is not sent to the job if the + shell receives a SSIIGGHHUUPP. If no _j_o_b_s_p_e_c is present, and neither + the --aa nor the --rr option is supplied, the _c_u_r_r_e_n_t _j_o_b is used. If no _j_o_b_s_p_e_c is supplied, the --aa option means to remove or mark - all jobs; the --rr option without a _j_o_b_s_p_e_c argument restricts - operation to running jobs. The return value is 0 unless a _j_o_b_- + all jobs; the --rr option without a _j_o_b_s_p_e_c argument restricts + operation to running jobs. The return value is 0 unless a _j_o_b_- _s_p_e_c does not specify a valid job. eecchhoo [--nneeEE] [_a_r_g ...] - Output the _a_r_gs, separated by spaces, followed by a newline. + Output the _a_r_gs, separated by spaces, followed by a newline. The return status is always 0. If --nn is specified, the trailing - newline is suppressed. If the --ee option is given, interpreta- - tion of the following backslash-escaped characters is enabled. - The --EE option disables the interpretation of these escape char- - acters, even on systems where they are interpreted by default. - The xxppgg__eecchhoo shell option may be used to dynamically determine - whether or not eecchhoo expands these escape characters by default. - eecchhoo does not interpret ---- to mean the end of options. eecchhoo + newline is suppressed. If the --ee option is given, interpreta- + tion of the following backslash-escaped characters is enabled. + The --EE option disables the interpretation of these escape char- + acters, even on systems where they are interpreted by default. + The xxppgg__eecchhoo shell option may be used to dynamically determine + whether or not eecchhoo expands these escape characters by default. + eecchhoo does not interpret ---- to mean the end of options. eecchhoo interprets the following escape sequences: \\aa alert (bell) \\bb backspace @@ -4155,190 +4158,190 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS \\tt horizontal tab \\vv vertical tab \\\\ backslash - \\00_n_n_n the eight-bit character whose value is the octal value + \\00_n_n_n the eight-bit character whose value is the octal value _n_n_n (zero to three octal digits) - \\xx_H_H the eight-bit character whose value is the hexadecimal + \\xx_H_H the eight-bit character whose value is the hexadecimal value _H_H (one or two hex digits) - \\uu_H_H_H_H the Unicode (ISO/IEC 10646) character whose value is the + \\uu_H_H_H_H the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value _H_H_H_H (one to four hex digits) \\UU_H_H_H_H_H_H_H_H - the Unicode (ISO/IEC 10646) character whose value is the + the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value _H_H_H_H_H_H_H_H (one to eight hex digits) eennaabbllee [--aa] [--ddnnppss] [--ff _f_i_l_e_n_a_m_e] [_n_a_m_e ...] - Enable and disable builtin shell commands. Disabling a builtin + Enable and disable builtin shell commands. Disabling a builtin allows a disk command which has the same name as a shell builtin - to be executed without specifying a full pathname, even though - the shell normally searches for builtins before disk commands. - If --nn is used, each _n_a_m_e is disabled; otherwise, _n_a_m_e_s are + to be executed without specifying a full pathname, even though + the shell normally searches for builtins before disk commands. + If --nn is used, each _n_a_m_e is disabled; otherwise, _n_a_m_e_s are enabled. For example, to use the tteesstt binary found via the PPAATTHH - instead of the shell builtin version, run ``enable -n test''. - The --ff option means to load the new builtin command _n_a_m_e from + instead of the shell builtin version, run ``enable -n test''. + The --ff option means to load the new builtin command _n_a_m_e from shared object _f_i_l_e_n_a_m_e, on systems that support dynamic loading. - The --dd option will delete a builtin previously loaded with --ff. + The --dd option will delete a builtin previously loaded with --ff. If no _n_a_m_e arguments are given, or if the --pp option is supplied, a list of shell builtins is printed. With no other option argu- - ments, the list consists of all enabled shell builtins. If --nn - is supplied, only disabled builtins are printed. If --aa is sup- - plied, the list printed includes all builtins, with an indica- - tion of whether or not each is enabled. If --ss is supplied, the - output is restricted to the POSIX _s_p_e_c_i_a_l builtins. The return - value is 0 unless a _n_a_m_e is not a shell builtin or there is an + ments, the list consists of all enabled shell builtins. If --nn + is supplied, only disabled builtins are printed. If --aa is sup- + plied, the list printed includes all builtins, with an indica- + tion of whether or not each is enabled. If --ss is supplied, the + output is restricted to the POSIX _s_p_e_c_i_a_l builtins. The return + value is 0 unless a _n_a_m_e is not a shell builtin or there is an error loading a new builtin from a shared object. eevvaall [_a_r_g ...] - The _a_r_gs are read and concatenated together into a single com- - mand. This command is then read and executed by the shell, and - its exit status is returned as the value of eevvaall. If there are + The _a_r_gs are read and concatenated together into a single com- + mand. This command is then read and executed by the shell, and + its exit status is returned as the value of eevvaall. If there are no _a_r_g_s, or only null arguments, eevvaall returns 0. eexxeecc [--ccll] [--aa _n_a_m_e] [_c_o_m_m_a_n_d [_a_r_g_u_m_e_n_t_s]] - If _c_o_m_m_a_n_d is specified, it replaces the shell. No new process - is created. The _a_r_g_u_m_e_n_t_s become the arguments to _c_o_m_m_a_n_d. If + If _c_o_m_m_a_n_d is specified, it replaces the shell. No new process + is created. The _a_r_g_u_m_e_n_t_s become the arguments to _c_o_m_m_a_n_d. If the --ll option is supplied, the shell places a dash at the begin- - ning of the zeroth argument passed to _c_o_m_m_a_n_d. This is what + ning of the zeroth argument passed to _c_o_m_m_a_n_d. This is what _l_o_g_i_n(1) does. The --cc option causes _c_o_m_m_a_n_d to be executed with - an empty environment. If --aa is supplied, the shell passes _n_a_m_e + an empty environment. If --aa is supplied, the shell passes _n_a_m_e as the zeroth argument to the executed command. If _c_o_m_m_a_n_d can- - not be executed for some reason, a non-interactive shell exits, - unless the shell option eexxeeccffaaiill is enabled, in which case it - returns failure. An interactive shell returns failure if the + not be executed for some reason, a non-interactive shell exits, + unless the shell option eexxeeccffaaiill is enabled, in which case it + returns failure. An interactive shell returns failure if the file cannot be executed. If _c_o_m_m_a_n_d is not specified, any redi- rections take effect in the current shell, and the return status - is 0. If there is a redirection error, the return status is 1. + is 0. If there is a redirection error, the return status is 1. eexxiitt [_n] - Cause the shell to exit with a status of _n. If _n is omitted, + Cause the shell to exit with a status of _n. If _n is omitted, the exit status is that of the last command executed. A trap on EEXXIITT is executed before the shell terminates. eexxppoorrtt [--ffnn] [_n_a_m_e[=_w_o_r_d]] ... eexxppoorrtt --pp - The supplied _n_a_m_e_s are marked for automatic export to the envi- - ronment of subsequently executed commands. If the --ff option is - given, the _n_a_m_e_s refer to functions. If no _n_a_m_e_s are given, or - if the --pp option is supplied, a list of all names that are - exported in this shell is printed. The --nn option causes the - export property to be removed from each _n_a_m_e. If a variable - name is followed by =_w_o_r_d, the value of the variable is set to - _w_o_r_d. eexxppoorrtt returns an exit status of 0 unless an invalid - option is encountered, one of the _n_a_m_e_s is not a valid shell + The supplied _n_a_m_e_s are marked for automatic export to the envi- + ronment of subsequently executed commands. If the --ff option is + given, the _n_a_m_e_s refer to functions. If no _n_a_m_e_s are given, or + if the --pp option is supplied, a list of all names that are + exported in this shell is printed. The --nn option causes the + export property to be removed from each _n_a_m_e. If a variable + name is followed by =_w_o_r_d, the value of the variable is set to + _w_o_r_d. eexxppoorrtt returns an exit status of 0 unless an invalid + option is encountered, one of the _n_a_m_e_s is not a valid shell variable name, or --ff is supplied with a _n_a_m_e that is not a func- tion. ffcc [--ee _e_n_a_m_e] [--llnnrr] [_f_i_r_s_t] [_l_a_s_t] ffcc --ss [_p_a_t=_r_e_p] [_c_m_d] - Fix Command. In the first form, a range of commands from _f_i_r_s_t - to _l_a_s_t is selected from the history list. _F_i_r_s_t and _l_a_s_t may - be specified as a string (to locate the last command beginning - with that string) or as a number (an index into the history + Fix Command. In the first form, a range of commands from _f_i_r_s_t + to _l_a_s_t is selected from the history list. _F_i_r_s_t and _l_a_s_t may + be specified as a string (to locate the last command beginning + with that string) or as a number (an index into the history list, where a negative number is used as an offset from the cur- rent command number). If _l_a_s_t is not specified it is set to the - current command for listing (so that ``fc -l -10'' prints the + current command for listing (so that ``fc -l -10'' prints the last 10 commands) and to _f_i_r_s_t otherwise. If _f_i_r_s_t is not spec- - ified it is set to the previous command for editing and -16 for + ified it is set to the previous command for editing and -16 for listing. - The --nn option suppresses the command numbers when listing. The - --rr option reverses the order of the commands. If the --ll option - is given, the commands are listed on standard output. Other- - wise, the editor given by _e_n_a_m_e is invoked on a file containing - those commands. If _e_n_a_m_e is not given, the value of the FFCCEEDDIITT - variable is used, and the value of EEDDIITTOORR if FFCCEEDDIITT is not set. - If neither variable is set, _v_i is used. When editing is com- + The --nn option suppresses the command numbers when listing. The + --rr option reverses the order of the commands. If the --ll option + is given, the commands are listed on standard output. Other- + wise, the editor given by _e_n_a_m_e is invoked on a file containing + those commands. If _e_n_a_m_e is not given, the value of the FFCCEEDDIITT + variable is used, and the value of EEDDIITTOORR if FFCCEEDDIITT is not set. + If neither variable is set, _v_i is used. When editing is com- plete, the edited commands are echoed and executed. - In the second form, _c_o_m_m_a_n_d is re-executed after each instance - of _p_a_t is replaced by _r_e_p. A useful alias to use with this is - ``r="fc -s"'', so that typing ``r cc'' runs the last command + In the second form, _c_o_m_m_a_n_d is re-executed after each instance + of _p_a_t is replaced by _r_e_p. A useful alias to use with this is + ``r="fc -s"'', so that typing ``r cc'' runs the last command beginning with ``cc'' and typing ``r'' re-executes the last com- mand. - If the first form is used, the return value is 0 unless an - invalid option is encountered or _f_i_r_s_t or _l_a_s_t specify history - lines out of range. If the --ee option is supplied, the return + If the first form is used, the return value is 0 unless an + invalid option is encountered or _f_i_r_s_t or _l_a_s_t specify history + lines out of range. If the --ee option is supplied, the return value is the value of the last command executed or failure if an error occurs with the temporary file of commands. If the second - form is used, the return status is that of the command re-exe- - cuted, unless _c_m_d does not specify a valid history line, in + form is used, the return status is that of the command re-exe- + cuted, unless _c_m_d does not specify a valid history line, in which case ffcc returns failure. ffgg [_j_o_b_s_p_e_c] - Resume _j_o_b_s_p_e_c in the foreground, and make it the current job. + Resume _j_o_b_s_p_e_c in the foreground, and make it the current job. If _j_o_b_s_p_e_c is not present, the shell's notion of the _c_u_r_r_e_n_t _j_o_b - is used. The return value is that of the command placed into - the foreground, or failure if run when job control is disabled + is used. The return value is that of the command placed into + the foreground, or failure if run when job control is disabled or, when run with job control enabled, if _j_o_b_s_p_e_c does not spec- - ify a valid job or _j_o_b_s_p_e_c specifies a job that was started + ify a valid job or _j_o_b_s_p_e_c specifies a job that was started without job control. ggeettooppttss _o_p_t_s_t_r_i_n_g _n_a_m_e [_a_r_g_s] - ggeettooppttss is used by shell procedures to parse positional parame- - ters. _o_p_t_s_t_r_i_n_g contains the option characters to be recog- - nized; if a character is followed by a colon, the option is - expected to have an argument, which should be separated from it - by white space. The colon and question mark characters may not - be used as option characters. Each time it is invoked, ggeettooppttss - places the next option in the shell variable _n_a_m_e, initializing + ggeettooppttss is used by shell procedures to parse positional parame- + ters. _o_p_t_s_t_r_i_n_g contains the option characters to be recog- + nized; if a character is followed by a colon, the option is + expected to have an argument, which should be separated from it + by white space. The colon and question mark characters may not + be used as option characters. Each time it is invoked, ggeettooppttss + places the next option in the shell variable _n_a_m_e, initializing _n_a_m_e if it does not exist, and the index of the next argument to be processed into the variable OOPPTTIINNDD. OOPPTTIINNDD is initialized to - 1 each time the shell or a shell script is invoked. When an - option requires an argument, ggeettooppttss places that argument into - the variable OOPPTTAARRGG. The shell does not reset OOPPTTIINNDD automati- - cally; it must be manually reset between multiple calls to + 1 each time the shell or a shell script is invoked. When an + option requires an argument, ggeettooppttss places that argument into + the variable OOPPTTAARRGG. The shell does not reset OOPPTTIINNDD automati- + cally; it must be manually reset between multiple calls to ggeettooppttss within the same shell invocation if a new set of parame- ters is to be used. - When the end of options is encountered, ggeettooppttss exits with a - return value greater than zero. OOPPTTIINNDD is set to the index of + When the end of options is encountered, ggeettooppttss exits with a + return value greater than zero. OOPPTTIINNDD is set to the index of the first non-option argument, and nnaammee is set to ?. - ggeettooppttss normally parses the positional parameters, but if more + ggeettooppttss normally parses the positional parameters, but if more arguments are given in _a_r_g_s, ggeettooppttss parses those instead. - ggeettooppttss can report errors in two ways. If the first character - of _o_p_t_s_t_r_i_n_g is a colon, _s_i_l_e_n_t error reporting is used. In - normal operation diagnostic messages are printed when invalid - options or missing option arguments are encountered. If the - variable OOPPTTEERRRR is set to 0, no error messages will be dis- + ggeettooppttss can report errors in two ways. If the first character + of _o_p_t_s_t_r_i_n_g is a colon, _s_i_l_e_n_t error reporting is used. In + normal operation diagnostic messages are printed when invalid + options or missing option arguments are encountered. If the + variable OOPPTTEERRRR is set to 0, no error messages will be dis- played, even if the first character of _o_p_t_s_t_r_i_n_g is not a colon. If an invalid option is seen, ggeettooppttss places ? into _n_a_m_e and, if - not silent, prints an error message and unsets OOPPTTAARRGG. If - ggeettooppttss is silent, the option character found is placed in + not silent, prints an error message and unsets OOPPTTAARRGG. If + ggeettooppttss is silent, the option character found is placed in OOPPTTAARRGG and no diagnostic message is printed. - If a required argument is not found, and ggeettooppttss is not silent, - a question mark (??) is placed in _n_a_m_e, OOPPTTAARRGG is unset, and a - diagnostic message is printed. If ggeettooppttss is silent, then a - colon (::) is placed in _n_a_m_e and OOPPTTAARRGG is set to the option + If a required argument is not found, and ggeettooppttss is not silent, + a question mark (??) is placed in _n_a_m_e, OOPPTTAARRGG is unset, and a + diagnostic message is printed. If ggeettooppttss is silent, then a + colon (::) is placed in _n_a_m_e and OOPPTTAARRGG is set to the option character found. - ggeettooppttss returns true if an option, specified or unspecified, is + ggeettooppttss returns true if an option, specified or unspecified, is found. It returns false if the end of options is encountered or an error occurs. hhaasshh [--llrr] [--pp _f_i_l_e_n_a_m_e] [--ddtt] [_n_a_m_e] Each time hhaasshh is invoked, the full pathname of the command _n_a_m_e - is determined by searching the directories in $$PPAATTHH and remem- + is determined by searching the directories in $$PPAATTHH and remem- bered. Any previously-remembered pathname is discarded. If the --pp option is supplied, no path search is performed, and _f_i_l_e_n_a_m_e - is used as the full file name of the command. The --rr option - causes the shell to forget all remembered locations. The --dd - option causes the shell to forget the remembered location of - each _n_a_m_e. If the --tt option is supplied, the full pathname to - which each _n_a_m_e corresponds is printed. If multiple _n_a_m_e argu- - ments are supplied with --tt, the _n_a_m_e is printed before the - hashed full pathname. The --ll option causes output to be dis- + is used as the full file name of the command. The --rr option + causes the shell to forget all remembered locations. The --dd + option causes the shell to forget the remembered location of + each _n_a_m_e. If the --tt option is supplied, the full pathname to + which each _n_a_m_e corresponds is printed. If multiple _n_a_m_e argu- + ments are supplied with --tt, the _n_a_m_e is printed before the + hashed full pathname. The --ll option causes output to be dis- played in a format that may be reused as input. If no arguments - are given, or if only --ll is supplied, information about remem- - bered commands is printed. The return status is true unless a + are given, or if only --ll is supplied, information about remem- + bered commands is printed. The return status is true unless a _n_a_m_e is not found or an invalid option is supplied. hheellpp [--ddmmss] [_p_a_t_t_e_r_n] - Display helpful information about builtin commands. If _p_a_t_t_e_r_n - is specified, hheellpp gives detailed help on all commands matching - _p_a_t_t_e_r_n; otherwise help for all the builtins and shell control + Display helpful information about builtin commands. If _p_a_t_t_e_r_n + is specified, hheellpp gives detailed help on all commands matching + _p_a_t_t_e_r_n; otherwise help for all the builtins and shell control structures is printed. --dd Display a short description of each _p_a_t_t_e_r_n --mm Display the description of each _p_a_t_t_e_r_n in a manpage-like @@ -4354,44 +4357,44 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS hhiissttoorryy --ss _a_r_g [_a_r_g _._._.] With no options, display the command history list with line num- bers. Lines listed with a ** have been modified. An argument of - _n lists only the last _n lines. If the shell variable HHIISSTTTTIIMMEE-- - FFOORRMMAATT is set and not null, it is used as a format string for - _s_t_r_f_t_i_m_e(3) to display the time stamp associated with each dis- - played history entry. No intervening blank is printed between - the formatted time stamp and the history line. If _f_i_l_e_n_a_m_e is - supplied, it is used as the name of the history file; if not, - the value of HHIISSTTFFIILLEE is used. Options, if supplied, have the + _n lists only the last _n lines. If the shell variable HHIISSTTTTIIMMEE-- + FFOORRMMAATT is set and not null, it is used as a format string for + _s_t_r_f_t_i_m_e(3) to display the time stamp associated with each dis- + played history entry. No intervening blank is printed between + the formatted time stamp and the history line. If _f_i_l_e_n_a_m_e is + supplied, it is used as the name of the history file; if not, + the value of HHIISSTTFFIILLEE is used. Options, if supplied, have the following meanings: --cc Clear the history list by deleting all the entries. --dd _o_f_f_s_e_t Delete the history entry at position _o_f_f_s_e_t. - --aa Append the ``new'' history lines (history lines entered - since the beginning of the current bbaasshh session) to the + --aa Append the ``new'' history lines (history lines entered + since the beginning of the current bbaasshh session) to the history file. - --nn Read the history lines not already read from the history - file into the current history list. These are lines - appended to the history file since the beginning of the + --nn Read the history lines not already read from the history + file into the current history list. These are lines + appended to the history file since the beginning of the current bbaasshh session. --rr Read the contents of the history file and use them as the current history. - --ww Write the current history to the history file, overwrit- + --ww Write the current history to the history file, overwrit- ing the history file's contents. - --pp Perform history substitution on the following _a_r_g_s and - display the result on the standard output. Does not - store the results in the history list. Each _a_r_g must be + --pp Perform history substitution on the following _a_r_g_s and + display the result on the standard output. Does not + store the results in the history list. Each _a_r_g must be quoted to disable normal history expansion. - --ss Store the _a_r_g_s in the history list as a single entry. - The last command in the history list is removed before + --ss Store the _a_r_g_s in the history list as a single entry. + The last command in the history list is removed before the _a_r_g_s are added. - If the HHIISSTTTTIIMMEEFFOORRMMAATT variable is set, the time stamp informa- - tion associated with each history entry is written to the his- - tory file, marked with the history comment character. When the - history file is read, lines beginning with the history comment - character followed immediately by a digit are interpreted as + If the HHIISSTTTTIIMMEEFFOORRMMAATT variable is set, the time stamp informa- + tion associated with each history entry is written to the his- + tory file, marked with the history comment character. When the + history file is read, lines beginning with the history comment + character followed immediately by a digit are interpreted as timestamps for the previous history line. The return value is 0 - unless an invalid option is encountered, an error occurs while - reading or writing the history file, an invalid _o_f_f_s_e_t is sup- + unless an invalid option is encountered, an error occurs while + reading or writing the history file, an invalid _o_f_f_s_e_t is sup- plied as an argument to --dd, or the history expansion supplied as an argument to --pp fails. @@ -4400,195 +4403,195 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS The first form lists the active jobs. The options have the fol- lowing meanings: --ll List process IDs in addition to the normal information. - --nn Display information only about jobs that have changed - status since the user was last notified of their status. - --pp List only the process ID of the job's process group + --nn Display information only about jobs that have changed + status since the user was last notified of their status. + --pp List only the process ID of the job's process group leader. --rr Restrict output to running jobs. --ss Restrict output to stopped jobs. - If _j_o_b_s_p_e_c is given, output is restricted to information about - that job. The return status is 0 unless an invalid option is + If _j_o_b_s_p_e_c is given, output is restricted to information about + that job. The return status is 0 unless an invalid option is encountered or an invalid _j_o_b_s_p_e_c is supplied. If the --xx option is supplied, jjoobbss replaces any _j_o_b_s_p_e_c found in - _c_o_m_m_a_n_d or _a_r_g_s with the corresponding process group ID, and + _c_o_m_m_a_n_d or _a_r_g_s with the corresponding process group ID, and executes _c_o_m_m_a_n_d passing it _a_r_g_s, returning its exit status. kkiillll [--ss _s_i_g_s_p_e_c | --nn _s_i_g_n_u_m | --_s_i_g_s_p_e_c] [_p_i_d | _j_o_b_s_p_e_c] ... kkiillll --ll [_s_i_g_s_p_e_c | _e_x_i_t___s_t_a_t_u_s] - Send the signal named by _s_i_g_s_p_e_c or _s_i_g_n_u_m to the processes - named by _p_i_d or _j_o_b_s_p_e_c. _s_i_g_s_p_e_c is either a case-insensitive - signal name such as SSIIGGKKIILLLL (with or without the SSIIGG prefix) or - a signal number; _s_i_g_n_u_m is a signal number. If _s_i_g_s_p_e_c is not - present, then SSIIGGTTEERRMM is assumed. An argument of --ll lists the - signal names. If any arguments are supplied when --ll is given, - the names of the signals corresponding to the arguments are + Send the signal named by _s_i_g_s_p_e_c or _s_i_g_n_u_m to the processes + named by _p_i_d or _j_o_b_s_p_e_c. _s_i_g_s_p_e_c is either a case-insensitive + signal name such as SSIIGGKKIILLLL (with or without the SSIIGG prefix) or + a signal number; _s_i_g_n_u_m is a signal number. If _s_i_g_s_p_e_c is not + present, then SSIIGGTTEERRMM is assumed. An argument of --ll lists the + signal names. If any arguments are supplied when --ll is given, + the names of the signals corresponding to the arguments are listed, and the return status is 0. The _e_x_i_t___s_t_a_t_u_s argument to - --ll is a number specifying either a signal number or the exit - status of a process terminated by a signal. kkiillll returns true - if at least one signal was successfully sent, or false if an + --ll is a number specifying either a signal number or the exit + status of a process terminated by a signal. kkiillll returns true + if at least one signal was successfully sent, or false if an error occurs or an invalid option is encountered. lleett _a_r_g [_a_r_g ...] Each _a_r_g is an arithmetic expression to be evaluated (see AARRIITTHH-- - MMEETTIICC EEVVAALLUUAATTIIOONN above). If the last _a_r_g evaluates to 0, lleett + MMEETTIICC EEVVAALLUUAATTIIOONN above). If the last _a_r_g evaluates to 0, lleett returns 1; 0 is returned otherwise. llooccaall [_o_p_t_i_o_n] [_n_a_m_e[=_v_a_l_u_e] ...] - For each argument, a local variable named _n_a_m_e is created, and - assigned _v_a_l_u_e. The _o_p_t_i_o_n can be any of the options accepted + For each argument, a local variable named _n_a_m_e is created, and + assigned _v_a_l_u_e. The _o_p_t_i_o_n can be any of the options accepted by ddeeccllaarree. When llooccaall is used within a function, it causes the - variable _n_a_m_e to have a visible scope restricted to that func- + variable _n_a_m_e to have a visible scope restricted to that func- tion and its children. With no operands, llooccaall writes a list of - local variables to the standard output. It is an error to use + local variables to the standard output. It is an error to use llooccaall when not within a function. The return status is 0 unless - llooccaall is used outside a function, an invalid _n_a_m_e is supplied, + llooccaall is used outside a function, an invalid _n_a_m_e is supplied, or _n_a_m_e is a readonly variable. llooggoouutt Exit a login shell. - mmaappffiillee [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u_n_t] [--tt] [--uu _f_d] [--CC _c_a_l_l_b_a_c_k] + mmaappffiillee [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u_n_t] [--tt] [--uu _f_d] [--CC _c_a_l_l_b_a_c_k] [--cc _q_u_a_n_t_u_m] [_a_r_r_a_y] - rreeaaddaarrrraayy [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u_n_t] [--tt] [--uu _f_d] [--CC _c_a_l_l_b_a_c_k] + rreeaaddaarrrraayy [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u_n_t] [--tt] [--uu _f_d] [--CC _c_a_l_l_b_a_c_k] [--cc _q_u_a_n_t_u_m] [_a_r_r_a_y] - Read lines from the standard input into the indexed array vari- - able _a_r_r_a_y, or from file descriptor _f_d if the --uu option is sup- - plied. The variable MMAAPPFFIILLEE is the default _a_r_r_a_y. Options, if + Read lines from the standard input into the indexed array vari- + able _a_r_r_a_y, or from file descriptor _f_d if the --uu option is sup- + plied. The variable MMAAPPFFIILLEE is the default _a_r_r_a_y. Options, if supplied, have the following meanings: - --nn Copy at most _c_o_u_n_t lines. If _c_o_u_n_t is 0, all lines are + --nn Copy at most _c_o_u_n_t lines. If _c_o_u_n_t is 0, all lines are copied. - --OO Begin assigning to _a_r_r_a_y at index _o_r_i_g_i_n. The default + --OO Begin assigning to _a_r_r_a_y at index _o_r_i_g_i_n. The default index is 0. --ss Discard the first _c_o_u_n_t lines read. --tt Remove a trailing newline from each line read. - --uu Read lines from file descriptor _f_d instead of the stan- + --uu Read lines from file descriptor _f_d instead of the stan- dard input. - --CC Evaluate _c_a_l_l_b_a_c_k each time _q_u_a_n_t_u_m lines are read. The + --CC Evaluate _c_a_l_l_b_a_c_k each time _q_u_a_n_t_u_m lines are read. The --cc option specifies _q_u_a_n_t_u_m. - --cc Specify the number of lines read between each call to + --cc Specify the number of lines read between each call to _c_a_l_l_b_a_c_k. - If --CC is specified without --cc, the default quantum is 5000. + If --CC is specified without --cc, the default quantum is 5000. When _c_a_l_l_b_a_c_k is evaluated, it is supplied the index of the next array element to be assigned and the line to be assigned to that - element as additional arguments. _c_a_l_l_b_a_c_k is evaluated after + element as additional arguments. _c_a_l_l_b_a_c_k is evaluated after the line is read but before the array element is assigned. - If not supplied with an explicit origin, mmaappffiillee will clear + If not supplied with an explicit origin, mmaappffiillee will clear _a_r_r_a_y before assigning to it. - mmaappffiillee returns successfully unless an invalid option or option - argument is supplied, _a_r_r_a_y is invalid or unassignable, or if + mmaappffiillee returns successfully unless an invalid option or option + argument is supplied, _a_r_r_a_y is invalid or unassignable, or if _a_r_r_a_y is not an indexed array. ppooppdd [-nn] [+_n] [-_n] - Removes entries from the directory stack. With no arguments, - removes the top directory from the stack, and performs a ccdd to + Removes entries from the directory stack. With no arguments, + removes the top directory from the stack, and performs a ccdd to the new top directory. Arguments, if supplied, have the follow- ing meanings: - --nn Suppresses the normal change of directory when removing - directories from the stack, so that only the stack is + --nn Suppresses the normal change of directory when removing + directories from the stack, so that only the stack is manipulated. - ++_n Removes the _nth entry counting from the left of the list - shown by ddiirrss, starting with zero. For example: ``popd + ++_n Removes the _nth entry counting from the left of the list + shown by ddiirrss, starting with zero. For example: ``popd +0'' removes the first directory, ``popd +1'' the second. --_n Removes the _nth entry counting from the right of the list - shown by ddiirrss, starting with zero. For example: ``popd - -0'' removes the last directory, ``popd -1'' the next to + shown by ddiirrss, starting with zero. For example: ``popd + -0'' removes the last directory, ``popd -1'' the next to last. - If the ppooppdd command is successful, a ddiirrss is performed as well, - and the return status is 0. ppooppdd returns false if an invalid + If the ppooppdd command is successful, a ddiirrss is performed as well, + and the return status is 0. ppooppdd returns false if an invalid option is encountered, the directory stack is empty, a non-exis- tent directory stack entry is specified, or the directory change fails. pprriinnttff [--vv _v_a_r] _f_o_r_m_a_t [_a_r_g_u_m_e_n_t_s] - Write the formatted _a_r_g_u_m_e_n_t_s to the standard output under the - control of the _f_o_r_m_a_t. The --vv option causes the output to be - assigned to the variable _v_a_r rather than being printed to the + Write the formatted _a_r_g_u_m_e_n_t_s to the standard output under the + control of the _f_o_r_m_a_t. The --vv option causes the output to be + assigned to the variable _v_a_r rather than being printed to the standard output. - The _f_o_r_m_a_t is a character string which contains three types of - objects: plain characters, which are simply copied to standard - output, character escape sequences, which are converted and - copied to the standard output, and format specifications, each - of which causes printing of the next successive _a_r_g_u_m_e_n_t. In + The _f_o_r_m_a_t is a character string which contains three types of + objects: plain characters, which are simply copied to standard + output, character escape sequences, which are converted and + copied to the standard output, and format specifications, each + of which causes printing of the next successive _a_r_g_u_m_e_n_t. In addition to the standard _p_r_i_n_t_f(1) format specifications, pprriinnttff interprets the following extensions: %%bb causes pprriinnttff to expand backslash escape sequences in the corresponding _a_r_g_u_m_e_n_t (except that \\cc terminates output, - backslashes in \\'', \\"", and \\?? are not removed, and octal + backslashes in \\'', \\"", and \\?? are not removed, and octal escapes beginning with \\00 may contain up to four digits). - %%qq causes pprriinnttff to output the corresponding _a_r_g_u_m_e_n_t in a + %%qq causes pprriinnttff to output the corresponding _a_r_g_u_m_e_n_t in a format that can be reused as shell input. %%((_d_a_t_e_f_m_t))TT - causes pprriinnttff to output the date-time string resulting - from using _d_a_t_e_f_m_t as a format string for _s_t_r_f_t_i_m_e(3). + causes pprriinnttff to output the date-time string resulting + from using _d_a_t_e_f_m_t as a format string for _s_t_r_f_t_i_m_e(3). The corresponding _a_r_g_u_m_e_n_t is an integer representing the - number of seconds since the epoch. Two special argument - values may be used: -1 represents the current time, and + number of seconds since the epoch. Two special argument + values may be used: -1 represents the current time, and -2 represents the time the shell was invoked. - Arguments to non-string format specifiers are treated as C con- + Arguments to non-string format specifiers are treated as C con- stants, except that a leading plus or minus sign is allowed, and - if the leading character is a single or double quote, the value + if the leading character is a single or double quote, the value is the ASCII value of the following character. - The _f_o_r_m_a_t is reused as necessary to consume all of the _a_r_g_u_- + The _f_o_r_m_a_t is reused as necessary to consume all of the _a_r_g_u_- _m_e_n_t_s. If the _f_o_r_m_a_t requires more _a_r_g_u_m_e_n_t_s than are supplied, - the extra format specifications behave as if a zero value or - null string, as appropriate, had been supplied. The return + the extra format specifications behave as if a zero value or + null string, as appropriate, had been supplied. The return value is zero on success, non-zero on failure. ppuusshhdd [--nn] [+_n] [-_n] ppuusshhdd [--nn] [_d_i_r] - Adds a directory to the top of the directory stack, or rotates - the stack, making the new top of the stack the current working + Adds a directory to the top of the directory stack, or rotates + the stack, making the new top of the stack the current working directory. With no arguments, exchanges the top two directories - and returns 0, unless the directory stack is empty. Arguments, + and returns 0, unless the directory stack is empty. Arguments, if supplied, have the following meanings: - --nn Suppresses the normal change of directory when adding - directories to the stack, so that only the stack is + --nn Suppresses the normal change of directory when adding + directories to the stack, so that only the stack is manipulated. - ++_n Rotates the stack so that the _nth directory (counting - from the left of the list shown by ddiirrss, starting with + ++_n Rotates the stack so that the _nth directory (counting + from the left of the list shown by ddiirrss, starting with zero) is at the top. - --_n Rotates the stack so that the _nth directory (counting - from the right of the list shown by ddiirrss, starting with + --_n Rotates the stack so that the _nth directory (counting + from the right of the list shown by ddiirrss, starting with zero) is at the top. _d_i_r Adds _d_i_r to the directory stack at the top, making it the new current working directory. If the ppuusshhdd command is successful, a ddiirrss is performed as well. - If the first form is used, ppuusshhdd returns 0 unless the cd to _d_i_r - fails. With the second form, ppuusshhdd returns 0 unless the direc- - tory stack is empty, a non-existent directory stack element is - specified, or the directory change to the specified new current + If the first form is used, ppuusshhdd returns 0 unless the cd to _d_i_r + fails. With the second form, ppuusshhdd returns 0 unless the direc- + tory stack is empty, a non-existent directory stack element is + specified, or the directory change to the specified new current directory fails. ppwwdd [--LLPP] - Print the absolute pathname of the current working directory. + Print the absolute pathname of the current working directory. The pathname printed contains no symbolic links if the --PP option is supplied or the --oo pphhyyssiiccaall option to the sseett builtin command - is enabled. If the --LL option is used, the pathname printed may - contain symbolic links. The return status is 0 unless an error - occurs while reading the name of the current directory or an + is enabled. If the --LL option is used, the pathname printed may + contain symbolic links. The return status is 0 unless an error + occurs while reading the name of the current directory or an invalid option is supplied. rreeaadd [--eerrss] [--aa _a_n_a_m_e] [--dd _d_e_l_i_m] [--ii _t_e_x_t] [--nn _n_c_h_a_r_s] [--NN _n_c_h_a_r_s] [--pp _p_r_o_m_p_t] [--tt _t_i_m_e_o_u_t] [--uu _f_d] [_n_a_m_e ...] - One line is read from the standard input, or from the file - descriptor _f_d supplied as an argument to the --uu option, and the + One line is read from the standard input, or from the file + descriptor _f_d supplied as an argument to the --uu option, and the first word is assigned to the first _n_a_m_e, the second word to the - second _n_a_m_e, and so on, with leftover words and their interven- - ing separators assigned to the last _n_a_m_e. If there are fewer + second _n_a_m_e, and so on, with leftover words and their interven- + ing separators assigned to the last _n_a_m_e. If there are fewer words read from the input stream than names, the remaining names - are assigned empty values. The characters in IIFFSS are used to - split the line into words. The backslash character (\\) may be - used to remove any special meaning for the next character read - and for line continuation. Options, if supplied, have the fol- + are assigned empty values. The characters in IIFFSS are used to + split the line into words. The backslash character (\\) may be + used to remove any special meaning for the next character read + and for line continuation. Options, if supplied, have the fol- lowing meanings: --aa _a_n_a_m_e The words are assigned to sequential indices of the array @@ -4596,132 +4599,132 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS new values are assigned. Other _n_a_m_e arguments are ignored. --dd _d_e_l_i_m - The first character of _d_e_l_i_m is used to terminate the + The first character of _d_e_l_i_m is used to terminate the input line, rather than newline. --ee If the standard input is coming from a terminal, rreeaaddlliinnee - (see RREEAADDLLIINNEE above) is used to obtain the line. Read- - line uses the current (or default, if line editing was + (see RREEAADDLLIINNEE above) is used to obtain the line. Read- + line uses the current (or default, if line editing was not previously active) editing settings. --ii _t_e_x_t - If rreeaaddlliinnee is being used to read the line, _t_e_x_t is + If rreeaaddlliinnee is being used to read the line, _t_e_x_t is placed into the editing buffer before editing begins. --nn _n_c_h_a_r_s - rreeaadd returns after reading _n_c_h_a_r_s characters rather than - waiting for a complete line of input, but honor a delim- - iter if fewer than _n_c_h_a_r_s characters are read before the + rreeaadd returns after reading _n_c_h_a_r_s characters rather than + waiting for a complete line of input, but honor a delim- + iter if fewer than _n_c_h_a_r_s characters are read before the delimiter. --NN _n_c_h_a_r_s - rreeaadd returns after reading exactly _n_c_h_a_r_s characters - rather than waiting for a complete line of input, unless - EOF is encountered or rreeaadd times out. Delimiter charac- - ters encountered in the input are not treated specially - and do not cause rreeaadd to return until _n_c_h_a_r_s characters + rreeaadd returns after reading exactly _n_c_h_a_r_s characters + rather than waiting for a complete line of input, unless + EOF is encountered or rreeaadd times out. Delimiter charac- + ters encountered in the input are not treated specially + and do not cause rreeaadd to return until _n_c_h_a_r_s characters are read. --pp _p_r_o_m_p_t Display _p_r_o_m_p_t on standard error, without a trailing new- line, before attempting to read any input. The prompt is displayed only if input is coming from a terminal. --rr Backslash does not act as an escape character. The back- - slash is considered to be part of the line. In particu- - lar, a backslash-newline pair may not be used as a line + slash is considered to be part of the line. In particu- + lar, a backslash-newline pair may not be used as a line continuation. --ss Silent mode. If input is coming from a terminal, charac- ters are not echoed. --tt _t_i_m_e_o_u_t - Cause rreeaadd to time out and return failure if a complete - line of input is not read within _t_i_m_e_o_u_t seconds. _t_i_m_e_- - _o_u_t may be a decimal number with a fractional portion - following the decimal point. This option is only effec- - tive if rreeaadd is reading input from a terminal, pipe, or - other special file; it has no effect when reading from - regular files. If _t_i_m_e_o_u_t is 0, rreeaadd returns success if - input is available on the specified file descriptor, - failure otherwise. The exit status is greater than 128 + Cause rreeaadd to time out and return failure if a complete + line of input is not read within _t_i_m_e_o_u_t seconds. _t_i_m_e_- + _o_u_t may be a decimal number with a fractional portion + following the decimal point. This option is only effec- + tive if rreeaadd is reading input from a terminal, pipe, or + other special file; it has no effect when reading from + regular files. If _t_i_m_e_o_u_t is 0, rreeaadd returns success if + input is available on the specified file descriptor, + failure otherwise. The exit status is greater than 128 if the timeout is exceeded. --uu _f_d Read input from file descriptor _f_d. If no _n_a_m_e_s are supplied, the line read is assigned to the vari- - able RREEPPLLYY. The return code is zero, unless end-of-file is - encountered, rreeaadd times out (in which case the return code is - greater than 128), or an invalid file descriptor is supplied as + able RREEPPLLYY. The return code is zero, unless end-of-file is + encountered, rreeaadd times out (in which case the return code is + greater than 128), or an invalid file descriptor is supplied as the argument to --uu. rreeaaddoonnllyy [--aaAAppff] [_n_a_m_e[=_w_o_r_d] ...] - The given _n_a_m_e_s are marked readonly; the values of these _n_a_m_e_s - may not be changed by subsequent assignment. If the --ff option - is supplied, the functions corresponding to the _n_a_m_e_s are so - marked. The --aa option restricts the variables to indexed - arrays; the --AA option restricts the variables to associative - arrays. If no _n_a_m_e arguments are given, or if the --pp option is - supplied, a list of all readonly names is printed. The --pp - option causes output to be displayed in a format that may be - reused as input. If a variable name is followed by =_w_o_r_d, the - value of the variable is set to _w_o_r_d. The return status is 0 + The given _n_a_m_e_s are marked readonly; the values of these _n_a_m_e_s + may not be changed by subsequent assignment. If the --ff option + is supplied, the functions corresponding to the _n_a_m_e_s are so + marked. The --aa option restricts the variables to indexed + arrays; the --AA option restricts the variables to associative + arrays. If no _n_a_m_e arguments are given, or if the --pp option is + supplied, a list of all readonly names is printed. The --pp + option causes output to be displayed in a format that may be + reused as input. If a variable name is followed by =_w_o_r_d, the + value of the variable is set to _w_o_r_d. The return status is 0 unless an invalid option is encountered, one of the _n_a_m_e_s is not - a valid shell variable name, or --ff is supplied with a _n_a_m_e that + a valid shell variable name, or --ff is supplied with a _n_a_m_e that is not a function. rreettuurrnn [_n] - Causes a function to exit with the return value specified by _n. - If _n is omitted, the return status is that of the last command - executed in the function body. If used outside a function, but - during execution of a script by the .. (ssoouurrccee) command, it + Causes a function to exit with the return value specified by _n. + If _n is omitted, the return status is that of the last command + executed in the function body. If used outside a function, but + during execution of a script by the .. (ssoouurrccee) command, it causes the shell to stop executing that script and return either - _n or the exit status of the last command executed within the - script as the exit status of the script. If used outside a - function and not during execution of a script by .., the return + _n or the exit status of the last command executed within the + script as the exit status of the script. If used outside a + function and not during execution of a script by .., the return status is false. Any command associated with the RREETTUURRNN trap is - executed before execution resumes after the function or script. + executed before execution resumes after the function or script. sseett [----aabbeeffhhkkmmnnppttuuvvxxBBCCEEHHPPTT] [--oo _o_p_t_i_o_n] [_a_r_g ...] sseett [++aabbeeffhhkkmmnnppttuuvvxxBBCCEEHHPPTT] [++oo _o_p_t_i_o_n] [_a_r_g ...] - Without options, the name and value of each shell variable are + Without options, the name and value of each shell variable are displayed in a format that can be reused as input for setting or resetting the currently-set variables. Read-only variables can- - not be reset. In _p_o_s_i_x _m_o_d_e, only shell variables are listed. - The output is sorted according to the current locale. When - options are specified, they set or unset shell attributes. Any - arguments remaining after option processing are treated as val- + not be reset. In _p_o_s_i_x _m_o_d_e, only shell variables are listed. + The output is sorted according to the current locale. When + options are specified, they set or unset shell attributes. Any + arguments remaining after option processing are treated as val- ues for the positional parameters and are assigned, in order, to - $$11, $$22, ...... $$_n. Options, if specified, have the following + $$11, $$22, ...... $$_n. Options, if specified, have the following meanings: - --aa Automatically mark variables and functions which are - modified or created for export to the environment of + --aa Automatically mark variables and functions which are + modified or created for export to the environment of subsequent commands. - --bb Report the status of terminated background jobs immedi- + --bb Report the status of terminated background jobs immedi- ately, rather than before the next primary prompt. This is effective only when job control is enabled. - --ee Exit immediately if a _p_i_p_e_l_i_n_e (which may consist of a - single _s_i_m_p_l_e _c_o_m_m_a_n_d), a _s_u_b_s_h_e_l_l command enclosed in - parentheses, or one of the commands executed as part of - a command list enclosed by braces (see SSHHEELLLL GGRRAAMMMMAARR + --ee Exit immediately if a _p_i_p_e_l_i_n_e (which may consist of a + single _s_i_m_p_l_e _c_o_m_m_a_n_d), a _s_u_b_s_h_e_l_l command enclosed in + parentheses, or one of the commands executed as part of + a command list enclosed by braces (see SSHHEELLLL GGRRAAMMMMAARR above) exits with a non-zero status. The shell does not - exit if the command that fails is part of the command - list immediately following a wwhhiillee or uunnttiill keyword, - part of the test following the iiff or eelliiff reserved - words, part of any 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 with !!. A trap on EERRRR, + exit if the command that fails is part of the command + list immediately following a wwhhiillee or uunnttiill keyword, + part of the test following the iiff or eelliiff reserved + words, part of any 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 with !!. A trap on EERRRR, if set, is executed before the shell exits. This option applies to the shell environment and each subshell envi- - ronment separately (see CCOOMMMMAANNDD EEXXEECCUUTTIIOONN EENNVVIIRROONNMMEENNTT + ronment separately (see CCOOMMMMAANNDD EEXXEECCUUTTIIOONN EENNVVIIRROONNMMEENNTT above), and may cause subshells to exit before executing all the commands in the subshell. --ff Disable pathname expansion. - --hh Remember the location of commands as they are looked up + --hh Remember the location of commands as they are looked up for execution. This is enabled by default. - --kk All arguments in the form of assignment statements are - placed in the environment for a command, not just those + --kk All arguments in the form of assignment statements are + placed in the environment for a command, not just those that precede the command name. - --mm Monitor mode. Job control is enabled. This option is - on by default for interactive shells on systems that - support it (see JJOOBB CCOONNTTRROOLL above). Background pro- - cesses run in a separate process group and a line con- - taining their exit status is printed upon their comple- + --mm Monitor mode. Job control is enabled. This option is + on by default for interactive shells on systems that + support it (see JJOOBB CCOONNTTRROOLL above). Background pro- + cesses run in a separate process group and a line con- + taining their exit status is printed upon their comple- tion. --nn Read commands but do not execute them. This may be used - to check a shell script for syntax errors. This is + to check a shell script for syntax errors. This is ignored by interactive shells. --oo _o_p_t_i_o_n_-_n_a_m_e The _o_p_t_i_o_n_-_n_a_m_e can be one of the following: @@ -4729,10 +4732,10 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS Same as --aa. bbrraacceeeexxppaanndd Same as --BB. - eemmaaccss Use an emacs-style command line editing inter- + eemmaaccss Use an emacs-style command line editing inter- face. This is enabled by default when the shell is interactive, unless the shell is started with - the ----nnooeeddiittiinngg option. This also affects the + the ----nnooeeddiittiinngg option. This also affects the editing interface used for rreeaadd --ee. eerrrreexxiitt Same as --ee. eerrrrttrraaccee @@ -4746,8 +4749,8 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS HHIISSTTOORRYY. This option is on by default in inter- active shells. iiggnnoorreeeeooff - The effect is as if the shell command - ``IGNOREEOF=10'' had been executed (see SShheellll + The effect is as if the shell command + ``IGNOREEOF=10'' had been executed (see SShheellll VVaarriiaabblleess above). kkeeyywwoorrdd Same as --kk. mmoonniittoorr Same as --mm. @@ -4762,158 +4765,158 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS pphhyyssiiccaall Same as --PP. ppiippeeffaaiill - If set, the return value of a pipeline is the - value of the last (rightmost) command to exit - with a non-zero status, or zero if all commands - in the pipeline exit successfully. This option + If set, the return value of a pipeline is the + value of the last (rightmost) command to exit + with a non-zero status, or zero if all commands + in the pipeline exit successfully. This option is disabled by default. - ppoossiixx Change the behavior of bbaasshh where the default - operation differs from the POSIX standard to + ppoossiixx Change the behavior of bbaasshh where the default + operation differs from the POSIX standard to match the standard (_p_o_s_i_x _m_o_d_e). pprriivviilleeggeedd Same as --pp. vveerrbboossee Same as --vv. - vvii Use a vi-style command line editing interface. + vvii Use a vi-style command line editing interface. This also affects the editing interface used for rreeaadd --ee. xxttrraaccee Same as --xx. If --oo is supplied with no _o_p_t_i_o_n_-_n_a_m_e, the values of the - current options are printed. If ++oo is supplied with no - _o_p_t_i_o_n_-_n_a_m_e, a series of sseett commands to recreate the - current option settings is displayed on the standard + current options are printed. If ++oo is supplied with no + _o_p_t_i_o_n_-_n_a_m_e, a series of sseett commands to recreate the + current option settings is displayed on the standard output. - --pp Turn on _p_r_i_v_i_l_e_g_e_d mode. In this mode, the $$EENNVV and - $$BBAASSHH__EENNVV files are not processed, shell functions are - not inherited from the environment, and the SSHHEELLLLOOPPTTSS, - BBAASSHHOOPPTTSS, CCDDPPAATTHH, and GGLLOOBBIIGGNNOORREE variables, if they + --pp Turn on _p_r_i_v_i_l_e_g_e_d mode. In this mode, the $$EENNVV and + $$BBAASSHH__EENNVV files are not processed, shell functions are + not inherited from the environment, and the SSHHEELLLLOOPPTTSS, + BBAASSHHOOPPTTSS, CCDDPPAATTHH, and GGLLOOBBIIGGNNOORREE variables, if they appear in the environment, are ignored. If the shell is - started with the effective user (group) id not equal to - the real user (group) id, and the --pp option is not sup- + started with the effective user (group) id not equal to + the real user (group) id, and the --pp option is not sup- plied, these actions are taken and the effective user id - is set to the real user id. If the --pp option is sup- - plied at startup, the effective user id is not reset. - Turning this option off causes the effective user and + is set to the real user id. If the --pp option is sup- + plied at startup, the effective user id is not reset. + Turning this option off causes the effective user and group ids to be set to the real user and group ids. --tt Exit after reading and executing one command. --uu Treat unset variables and parameters other than the spe- - cial parameters "@" and "*" as an error when performing - parameter expansion. If expansion is attempted on an - unset variable or parameter, the shell prints an error - message, and, if not interactive, exits with a non-zero + cial parameters "@" and "*" as an error when performing + parameter expansion. If expansion is attempted on an + unset variable or parameter, the shell prints an error + message, and, if not interactive, exits with a non-zero status. --vv Print shell input lines as they are read. - --xx After expanding each _s_i_m_p_l_e _c_o_m_m_a_n_d, ffoorr command, ccaassee + --xx After expanding each _s_i_m_p_l_e _c_o_m_m_a_n_d, ffoorr command, ccaassee command, sseelleecctt command, or arithmetic ffoorr command, dis- - play the expanded value of PPSS44, followed by the command + play the expanded value of PPSS44, followed by the command and its expanded arguments or associated word list. - --BB The shell performs brace expansion (see BBrraaccee EExxppaannssiioonn + --BB The shell performs brace expansion (see BBrraaccee EExxppaannssiioonn above). This is on by default. - --CC If set, bbaasshh does not overwrite an existing file with - the >>, >>&&, and <<>> redirection operators. This may be + --CC If set, bbaasshh does not overwrite an existing file with + the >>, >>&&, and <<>> redirection operators. This may be overridden when creating output files by using the redi- rection operator >>|| instead of >>. --EE If set, any trap on EERRRR is inherited by shell functions, - command substitutions, and commands executed in a sub- - shell environment. The EERRRR trap is normally not inher- + command substitutions, and commands executed in a sub- + shell environment. The EERRRR trap is normally not inher- ited in such cases. --HH Enable !! style history substitution. This option is on by default when the shell is interactive. - --PP If set, the shell does not follow symbolic links when - executing commands such as ccdd that change the current + --PP If set, the shell does not follow symbolic links when + executing commands such as ccdd that change the current working directory. It uses the physical directory structure instead. By default, bbaasshh follows the logical - chain of directories when performing commands which + chain of directories when performing commands which change the current directory. - --TT If set, any traps on DDEEBBUUGG and RREETTUURRNN are inherited by - shell functions, command substitutions, and commands - executed in a subshell environment. The DDEEBBUUGG and + --TT If set, any traps on DDEEBBUUGG and RREETTUURRNN are inherited by + shell functions, command substitutions, and commands + executed in a subshell environment. The DDEEBBUUGG and RREETTUURRNN traps are normally not inherited in such cases. - ---- If no arguments follow this option, then the positional + ---- If no arguments follow this option, then the positional parameters are unset. Otherwise, the positional parame- - ters are set to the _a_r_gs, even if some of them begin + ters are set to the _a_r_gs, even if some of them begin with a --. - -- Signal the end of options, cause all remaining _a_r_gs to + -- Signal the end of options, cause all remaining _a_r_gs to be assigned to the positional parameters. The --xx and --vv options are turned off. If there are no _a_r_gs, the posi- tional parameters remain unchanged. - The options are off by default unless otherwise noted. Using + - rather than - causes these options to be turned off. The - options can also be specified as arguments to an invocation of - the shell. The current set of options may be found in $$--. The + The options are off by default unless otherwise noted. Using + + rather than - causes these options to be turned off. The + options can also be specified as arguments to an invocation of + the shell. The current set of options may be found in $$--. The return status is always true unless an invalid option is encoun- tered. sshhiifftt [_n] - The positional parameters from _n+1 ... are renamed to $$11 ........ - Parameters represented by the numbers $$## down to $$##-_n+1 are - unset. _n must be a non-negative number less than or equal to - $$##. If _n is 0, no parameters are changed. If _n is not given, - it is assumed to be 1. If _n is greater than $$##, the positional - parameters are not changed. The return status is greater than + The positional parameters from _n+1 ... are renamed to $$11 ........ + Parameters represented by the numbers $$## down to $$##-_n+1 are + unset. _n must be a non-negative number less than or equal to + $$##. If _n is 0, no parameters are changed. If _n is not given, + it is assumed to be 1. If _n is greater than $$##, the positional + parameters are not changed. The return status is greater than zero if _n is greater than $$## or less than zero; otherwise 0. sshhoopptt [--ppqqssuu] [--oo] [_o_p_t_n_a_m_e ...] Toggle the values of variables controlling optional shell behav- ior. With no options, or with the --pp option, a list of all set- table options is displayed, with an indication of whether or not - each is set. The --pp option causes output to be displayed in a - form that may be reused as input. Other options have the fol- + each is set. The --pp option causes output to be displayed in a + form that may be reused as input. Other options have the fol- lowing meanings: --ss Enable (set) each _o_p_t_n_a_m_e. --uu Disable (unset) each _o_p_t_n_a_m_e. - --qq Suppresses normal output (quiet mode); the return status + --qq Suppresses normal output (quiet mode); the return status indicates whether the _o_p_t_n_a_m_e is set or unset. If multi- - ple _o_p_t_n_a_m_e arguments are given with --qq, the return sta- - tus is zero if all _o_p_t_n_a_m_e_s are enabled; non-zero other- + ple _o_p_t_n_a_m_e arguments are given with --qq, the return sta- + tus is zero if all _o_p_t_n_a_m_e_s are enabled; non-zero other- wise. - --oo Restricts the values of _o_p_t_n_a_m_e to be those defined for + --oo Restricts the values of _o_p_t_n_a_m_e to be those defined for the --oo option to the sseett builtin. - If either --ss or --uu is used with no _o_p_t_n_a_m_e arguments, the dis- + If either --ss or --uu is used with no _o_p_t_n_a_m_e arguments, the dis- play is limited to those options which are set or unset, respec- - tively. Unless otherwise noted, the sshhoopptt options are disabled + tively. Unless otherwise noted, the sshhoopptt options are disabled (unset) by default. - The return status when listing options is zero if all _o_p_t_n_a_m_e_s - are enabled, non-zero otherwise. When setting or unsetting - options, the return status is zero unless an _o_p_t_n_a_m_e is not a + The return status when listing options is zero if all _o_p_t_n_a_m_e_s + are enabled, non-zero otherwise. When setting or unsetting + options, the return status is zero unless an _o_p_t_n_a_m_e is not a valid shell option. The list of sshhoopptt options is: - 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- + 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 file name 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 file name 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 command - and, if necessary, updates the values of LLIINNEESS and CCOOLL-- + If set, bbaasshh checks the window size after each command + and, if necessary, updates the values of LLIINNEESS and CCOOLL-- UUMMNNSS. - ccmmddhhiisstt If set, bbaasshh attempts to save all lines of a multiple- - line command in the same history entry. This allows + 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. ccoommppaatt3311 If set, bbaasshh changes its behavior to that of version 3.1 @@ -4921,65 +4924,65 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS mand's =~ operator. ccoommppaatt3322 If set, bbaasshh changes its behavior to that of version 3.2 - with respect to locale-specific string comparison when + with respect to locale-specific string comparison when using the conditional command's < and > operators. 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 and + with respect to locale-specific string comparison when + using the conditional command's < and > operators and the effect of interrupting a command list. 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 + ddoottgglloobb If set, bbaasshh includes filenames beginning with a `.' in the results of pathname expansion. 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, behavior intended for use by debuggers is + If set, behavior 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), a call to + 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), a call to rreettuurrnn is simulated. - 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. gglloobbssttaarr If set, the pattern **** used in a pathname expansion con- @@ -4990,58 +4993,58 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS 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. 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. - 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. 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. 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-- @@ -5049,47 +5052,47 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS enabled by default. 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 or 1 depending on the evaluation of the - conditional expression _e_x_p_r. Each operator and operand must be - a separate argument. Expressions are composed of the primaries - described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS. tteesstt does not + Return a status of 0 or 1 depending on the evaluation of the + conditional expression _e_x_p_r. Each operator and operand 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. !! _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. @@ -5106,59 +5109,59 @@ 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 - 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. - 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- @@ -5166,53 +5169,53 @@ SSHHEELLLL BBUUIILLTTIINN CCOOMMMMAANNDDSS If a _s_i_g_s_p_e_c is EERRRR, the command _a_r_g is executed whenever a sim- ple command has a non-zero exit status, subject to 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, part of a - command executed in a &&&& or |||| list, or if the command's return - value is being inverted via !!. These are the same conditions + 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, part of a + command executed in a &&&& or |||| list, or if the command's return + value is being inverted via !!. These are the same conditions obeyed by the eerrrreexxiitt 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, not necessarily the + hashed, --pp and --PP print the hashed value, not necessarily 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 func- - tion lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true if + 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 func- + tion lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true if all of the arguments are found, false if any are not found. uulliimmiitt [--HHSSTTaabbccddeeffiillmmnnppqqrrssttuuvvxx [_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: @@ -5221,11 +5224,11 @@ 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 --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) @@ -5234,65 +5237,65 @@ 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 --TT The maximum number of threads If _l_i_m_i_t is given, it is the new value of the specified resource (the --aa option is display only). 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, - and --TT, --bb, --nn, and --uu, which are unscaled values. The return + is assumed. Values are in 1024-byte increments, except for --tt, + which is in seconds, --pp, which is in units of 512-byte blocks, + and --TT, --bb, --nn, and --uu, which are unscaled values. The return status is 0 unless an invalid option or argument 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] [_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 no options are supplied, or the --vv option is given, each _n_a_m_e - refers to a shell variable. 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. Each unset vari- - able or function is removed from the environment passed to sub- - sequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANNDDOOMM, SSEECCOONNDDSS, - LLIINNEENNOO, HHIISSTTCCMMDD, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, or DDIIRRSSTTAACCKK are unset, they - lose their special properties, even if they are subsequently + refers to a shell variable. 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. Each unset vari- + able or function is removed from the environment passed to sub- + sequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANNDDOOMM, SSEECCOONNDDSS, + LLIINNEENNOO, HHIISSTTCCMMDD, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, or DDIIRRSSTTAACCKK are unset, they + lose their special properties, even if they are subsequently reset. The exit status is true unless a _n_a_m_e is readonly. wwaaiitt [_n _._._.] - Wait for each specified process and return its termination sta- - tus. Each _n 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 _n is not given, all currently active child pro- - cesses are waited for, and the return status is zero. If _n - specifies a non-existent process or job, the return status is - 127. Otherwise, the return status is the exit status of the + Wait for each specified process and return its termination sta- + tus. Each _n 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 _n is not given, all currently active child pro- + cesses are waited for, and the return status is zero. If _n + 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 @@ -5301,16 +5304,16 @@ RREESSTTRRIICCTTEEDD SSHHEELLLL +o specifying command names containing // - +o specifying a file name containing a // as an argument to the .. + +o specifying a file name 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- @@ -5319,10 +5322,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 @@ -5332,14 +5335,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 _s_h(1), _k_s_h(1), _c_s_h(1) _e_m_a_c_s(1), _v_i(1) @@ -5355,7 +5358,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 @@ -5369,14 +5372,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: @@ -5387,7 +5390,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 @@ -5404,10 +5407,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. @@ -5,12 +5,12 @@ .\" Case Western Reserve University .\" chet@po.cwru.edu .\" -.\" Last Change: Sun May 30 17:03:08 EDT 2010 +.\" Last Change: Sat Jun 12 15:34:58 EDT 2010 .\" .\" bash_builtins, strip all but Built-Ins section .if \n(zZ=1 .ig zZ .if \n(zY=1 .ig zY -.TH BASH 1 "2010 May 30" "GNU Bash-4.1" +.TH BASH 1 "2010 June 12" "GNU Bash-4.1" .\" .\" There's some problem with having a `@' .\" in a tagged paragraph with the BSD man macros. @@ -2343,9 +2343,13 @@ using arbitrary strings. An indexed array is created automatically if any variable is assigned to using the syntax \fIname\fP[\fIsubscript\fP]=\fIvalue\fP. The .I subscript -is treated as an arithmetic expression that must evaluate to a number -greater than or equal to zero. To explicitly declare an indexed array, -use +is treated as an arithmetic expression that must evaluate to a number. +If +.I subscript +evaluates to a number less than zero, it is used as +an offset from one greater than the array's maximum index (so a subcript +of -1 refers to the last element of the array). +To explicitly declare an indexed array, use .B declare \-a \fIname\fP (see .SM @@ -2724,9 +2728,13 @@ If \fIlength\fP is omitted, expands to the substring of .B ARITHMETIC EVALUATION below). -\fIlength\fP must evaluate to a number greater than or equal to zero. If \fIoffset\fP evaluates to a number less than zero, the value is used as an offset from the end of the value of \fIparameter\fP. +If \fIlength\fP evaluates to a number less than zero, and \fIparameter\fP +is not \fB@\fP and not an indexed or associative array, it is interpreted +as an offset from the end of the value of \fIparameter\fP rather than +a number of characters, and the expansion is the characters between the +two offsets. If \fIparameter\fP is \fB@\fP, the result is \fIlength\fP positional parameters beginning at \fIoffset\fP. If \fIparameter\fP is an indexed array name subscripted by @ or *, @@ -8881,6 +8889,16 @@ changes its behavior to that of version 4.0 with respect to locale-specific string comparison when using the conditional command's < and > operators and the effect of interrupting a command list. .TP 8 +.B compat41 +@item compat41 +If set, +.BR bash , +when in posix mode, treats a single quote in a double-quoted +parameter expansion as a special character. The single quotes must match +(an even number) 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. +.TP 8 .B dirspell If set, .B bash diff --git a/doc/bash.1~ b/doc/bash.1~ index 28edf4a9..bd683a5c 100644 --- a/doc/bash.1~ +++ b/doc/bash.1~ @@ -5,12 +5,12 @@ .\" Case Western Reserve University .\" chet@po.cwru.edu .\" -.\" Last Change: Sun May 30 17:03:08 EDT 2010 +.\" Last Change: Sat Jun 12 15:34:58 EDT 2010 .\" .\" bash_builtins, strip all but Built-Ins section .if \n(zZ=1 .ig zZ .if \n(zY=1 .ig zY -.TH BASH 1 "2010 May 30" "GNU Bash-4.1" +.TH BASH 1 "2010 June 12" "GNU Bash-4.1" .\" .\" There's some problem with having a `@' .\" in a tagged paragraph with the BSD man macros. @@ -2343,9 +2343,13 @@ using arbitrary strings. An indexed array is created automatically if any variable is assigned to using the syntax \fIname\fP[\fIsubscript\fP]=\fIvalue\fP. The .I subscript -is treated as an arithmetic expression that must evaluate to a number -greater than or equal to zero. To explicitly declare an indexed array, -use +is treated as an arithmetic expression that must evaluate to a number. +If +.I subscript +evaluates to a number less than zero, it is used as +an offset from one greater than the array's maximum index (so a subcript +of -1 refers to the last element of the array). +To explicitly declare an indexed array, use .B declare \-a \fIname\fP (see .SM @@ -2724,9 +2728,13 @@ If \fIlength\fP is omitted, expands to the substring of .B ARITHMETIC EVALUATION below). -\fIlength\fP must evaluate to a number greater than or equal to zero. If \fIoffset\fP evaluates to a number less than zero, the value is used as an offset from the end of the value of \fIparameter\fP. +If \fIlength\fP evaluates to a number less than zero, and \fIparameter\fP +is not \fB@\fP and not an indexed or associative array, it is interpreted +as an offset from the end of the value of \fIparameter\fP rather than +a number of characters, and the expansion is the characters between the +two offsets. If \fIparameter\fP is \fB@\fP, the result is \fIlength\fP positional parameters beginning at \fIoffset\fP. If \fIparameter\fP is an indexed array name subscripted by @ or *, @@ -6737,7 +6745,7 @@ The return value is 0 unless the shell is not executing a subroutine call or \fIexpr\fP does not correspond to a valid position in the call stack. .TP -\fBcd\fP [\fB\-L|-P\fP] [\fIdir\fP] +\fBcd\fP [\fB\-L\fP|[\fB\-P\fP [\fB\-e\fP]]] [\fIdir\fP] Change the current directory to \fIdir\fP. The variable .SM .B HOME @@ -6770,7 +6778,15 @@ option to the .B set builtin command); the .B \-L -option forces symbolic links to be followed. An argument of +option forces symbolic links to be followed. +If the +.B \-e +option is supplied with +.BR \-P , +and the current working directory cannot be successfully determined +after a successful directory change, \fBcd\fP will return an unsuccessful +status. +An argument of .B \- is equivalent to .SM @@ -8873,6 +8889,15 @@ changes its behavior to that of version 4.0 with respect to locale-specific string comparison when using the conditional command's < and > operators and the effect of interrupting a command list. .TP 8 +.B compat41 +@item compat41 +If set, +.BR bash , +when in posix mode, treats a single quote in a double-quoted +parameter expansion as a special character. The single quotes must match +(an even number) and the characters between the single quotes are considered +quoted. This is the behavior of posix mode through version 4.1. +.TP 8 .B dirspell If set, .B bash diff --git a/doc/bash.html b/doc/bash.html index c5962717..bea57bc4 100644 --- a/doc/bash.html +++ b/doc/bash.html @@ -8695,7 +8695,7 @@ current frame is frame 0. The return value is 0 unless the shell is not executing a subroutine call or <I>expr</I> does not correspond to a valid position in the call stack. -<DT><B>cd</B> [<B>-L|-P</B>] [<I>dir</I>]<DD> +<DT><B>cd</B> [<B>-L</B>|[<B>-P</B> [<B>-e</B>]]] [<I>dir</I>]<DD> Change the current directory to <I>dir</I>. The variable <FONT SIZE=-1><B>HOME</B> @@ -8740,7 +8740,17 @@ option to the builtin command); the <B>-L</B> -option forces symbolic links to be followed. An argument of +option forces symbolic links to be followed. +If the +<B>-e</B> + +option is supplied with +<B>-P</B>, + +and the current working directory cannot be successfully determined +after a successful directory change, <B>cd</B> will return an unsuccessful +status. +An argument of <B>-</B> is equivalent to @@ -12704,6 +12714,6 @@ There may be only one active coprocess at a time. </DL> <HR> This document was created by man2html from bash.1.<BR> -Time: 01 June 2010 11:58:46 EDT +Time: 07 June 2010 16:19:05 EDT </BODY> </HTML> diff --git a/doc/bash.pdf b/doc/bash.pdf Binary files differindex 4e7e4858..6f3db020 100644 --- a/doc/bash.pdf +++ b/doc/bash.pdf diff --git a/doc/bash.ps b/doc/bash.ps index bf25c00d..32fcae44 100644 --- a/doc/bash.ps +++ b/doc/bash.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.19.2 -%%CreationDate: Tue Jun 1 11:58:35 2010 +%%CreationDate: Mon Jun 7 16:18:58 2010 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic @@ -5951,13 +5951,13 @@ ent e)144 679.2 R -.15(xe)-.15 G 1.328(cution call stack.).15 F .001 BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\)) --.35 E/F1 10/Times-Bold@0 SF(cd)108 84 Q F0([)2.5 E F1(\255L|-P)A F0 2.5 -(][)C/F2 10/Times-Italic@0 SF(dir)-2.5 E F0(])A .21 -(Change the current directory to)144 96 R F2(dir)2.71 E F0 5.21(.T)C .21 -(he v)-5.21 F(ariable)-.25 E/F3 9/Times-Bold@0 SF(HOME)2.71 E F0 .21 -(is the def)2.46 F(ault)-.1 E F2(dir)2.71 E F0 5.21(.T).73 G .21(he v) --5.21 F(ariable)-.25 E F3(CDP)2.71 E -.855(AT)-.666 G(H).855 E F0 .776 -(de\214nes the search path for the directory containing)144 108 R F2 +-.35 E/F1 10/Times-Bold@0 SF(cd)108 84 Q F0([)2.5 E F1<ad4c>A F0(|[)A F1 +<ad50>A F0([)2.5 E F1<ad65>A F0(]]] [)A/F2 10/Times-Italic@0 SF(dir)A F0 +(])A .21(Change the current directory to)144 96 R F2(dir)2.71 E F0 5.21 +(.T)C .21(he v)-5.21 F(ariable)-.25 E/F3 9/Times-Bold@0 SF(HOME)2.71 E +F0 .21(is the def)2.46 F(ault)-.1 E F2(dir)2.71 E F0 5.21(.T).73 G .21 +(he v)-5.21 F(ariable)-.25 E F3(CDP)2.71 E -.855(AT)-.666 G(H).855 E F0 +.776(de\214nes the search path for the directory containing)144 108 R F2 (dir)3.276 E F0 5.777(.A).73 G(lternati)-5.777 E 1.077 -.15(ve d)-.25 H .777(irectory names in).15 F F3(CDP)3.277 E -.855(AT)-.666 G(H).855 E F0 .764(are separated by a colon \(:\).)144 120 R 3.264(An)5.764 G .764 @@ -5970,110 +5970,116 @@ F0 .764(is the same as the current direc-)3.014 F(tory)144 132 Q 2.973 (option says to use)2.974 F .58(the ph)144 144 R .58 (ysical directory structure instead of follo)-.05 F .579 (wing symbolic links \(see also the)-.25 F F1<ad50>3.079 E F0 .579 -(option to the)3.079 F F1(set)144 156 Q F0 -.2(bu)3.383 G .883 -(iltin command\); the).2 F F1<ad4c>3.383 E F0 .884 -(option forces symbolic links to be follo)3.384 F 3.384(wed. An)-.25 F -(ar)3.384 E .884(gument of)-.18 F F1<ad>3.384 E F0(is)3.384 E(equi)144 -168 Q -.25(va)-.25 G .316(lent to).25 F F3($OLDPWD)2.816 E/F4 9 -/Times-Roman@0 SF(.)A F0 .316(If a non-empty directory name from)4.816 F -F3(CDP)2.815 E -.855(AT)-.666 G(H).855 E F0 .315(is used, or if)2.565 F -F1<ad>2.815 E F0 .315(is the \214rst)2.815 F(ar)144 180 Q .116(gument, \ -and the directory change is successful, the absolute pathname of the ne) --.18 F 2.616(ww)-.25 G .116(orking direc-)-2.716 F 1.165 -(tory is written to the standard output.)144 192 R 1.164(The return v) -6.164 F 1.164(alue is true if the directory w)-.25 F 1.164 -(as successfully)-.1 F(changed; f)144 204 Q(alse otherwise.)-.1 E F1 -(command)108 220.8 Q F0([)2.5 E F1(\255pVv)A F0(])A F2(command)2.5 E F0 -([)2.5 E F2(ar)A(g)-.37 E F0(...])2.5 E(Run)144 232.8 Q F2(command)2.956 -E F0(with)3.527 E F2(ar)3.087 E(gs)-.37 E F0 .257 +(option to the)3.079 F F1(set)144 156 Q F0 -.2(bu)2.716 G .216 +(iltin command\); the).2 F F1<ad4c>2.716 E F0 .216 +(option forces symbolic links to be follo)2.716 F 2.717(wed. If)-.25 F +(the)2.717 E F1<ad65>2.717 E F0 .217(option is sup-)2.717 F 1.087 +(plied with)144 168 R F1<ad50>3.587 E F0 3.587(,a)C 1.087 +(nd the current w)-3.587 F 1.086 +(orking directory cannot be successfully determined after a suc-)-.1 F +.44(cessful directory change,)144 180 R F1(cd)2.94 E F0 .44 +(will return an unsuccessful status.)2.94 F .44(An ar)5.44 F .44 +(gument of)-.18 F F1<ad>2.94 E F0 .44(is equi)2.94 F -.25(va)-.25 G .44 +(lent to).25 F F3($OLDPWD)144 192 Q/F4 9/Times-Roman@0 SF(.)A F0 1.045 +(If a non-empty directory name from)5.545 F F3(CDP)3.545 E -.855(AT) +-.666 G(H).855 E F0 1.044(is used, or if)3.295 F F1<ad>3.544 E F0 1.044 +(is the \214rst ar)3.544 F(gument,)-.18 E .021(and the directory change\ + is successful, the absolute pathname of the ne)144 204 R 2.522(ww)-.25 +G .022(orking directory is writ-)-2.622 F .165 +(ten to the standard output.)144 216 R .165(The return v)5.165 F .165 +(alue is true if the directory w)-.25 F .165(as successfully changed; f) +-.1 F(alse)-.1 E(otherwise.)144 228 Q F1(command)108 244.8 Q F0([)2.5 E +F1(\255pVv)A F0(])A F2(command)2.5 E F0([)2.5 E F2(ar)A(g)-.37 E F0 +(...])2.5 E(Run)144 256.8 Q F2(command)2.956 E F0(with)3.527 E F2(ar) +3.087 E(gs)-.37 E F0 .257 (suppressing the normal shell function lookup. Only b)3.027 F .257 -(uiltin commands or)-.2 F .502(commands found in the)144 244.8 R F3 +(uiltin commands or)-.2 F .502(commands found in the)144 268.8 R F3 -.666(PA)3.002 G(TH)-.189 E F0 .502(are e)2.752 F -.15(xe)-.15 G 3.002 (cuted. If).15 F(the)3.002 E F1<ad70>3.002 E F0 .502(option is gi)3.002 F -.15(ve)-.25 G .501(n, the search for).15 F F2(command)3.201 E F0(is) -3.771 E .399(performed using a def)144 256.8 R .399(ault v)-.1 F .399 +3.771 E .399(performed using a def)144 280.8 R .399(ault v)-.1 F .399 (alue for)-.25 F F3 -.666(PA)2.899 G(TH)-.189 E F0 .4 (that is guaranteed to \214nd all of the standard utilities.)2.649 F(If) -5.4 E .175(either the)144 268.8 R F1<ad56>2.675 E F0(or)2.675 E F1<ad76> +5.4 E .175(either the)144 292.8 R F1<ad56>2.675 E F0(or)2.675 E F1<ad76> 2.675 E F0 .175(option is supplied, a description of)2.675 F F2(command) 2.875 E F0 .174(is printed.)3.445 F(The)5.174 E F1<ad76>2.674 E F0 .174 -(option causes)2.674 F 3.11(as)144 280.8 S .61(ingle w)-3.11 F .61 +(option causes)2.674 F 3.11(as)144 304.8 S .61(ingle w)-3.11 F .61 (ord indicating the command or \214le name used to in)-.1 F -.2(vo)-.4 G -.1(ke).2 G F2(command)3.41 E F0 .61(to be displayed; the)3.88 F F1 -<ad56>144 292.8 Q F0 .25(option produces a more v)2.75 F .25 +<ad56>144 316.8 Q F0 .25(option produces a more v)2.75 F .25 (erbose description.)-.15 F .249(If the)5.25 F F1<ad56>2.749 E F0(or) 2.749 E F1<ad76>2.749 E F0 .249(option is supplied, the e)2.749 F .249 -(xit status)-.15 F 1.004(is 0 if)144 304.8 R F2(command)3.704 E F0 -.1 +(xit status)-.15 F 1.004(is 0 if)144 328.8 R F2(command)3.704 E F0 -.1 (wa)4.274 G 3.504(sf).1 G 1.005(ound, and 1 if not.)-3.504 F 1.005 (If neither option is supplied and an error occurred or)6.005 F F2 -(command)144.2 316.8 Q F0 1.599(cannot be found, the e)4.869 F 1.599 +(command)144.2 340.8 Q F0 1.599(cannot be found, the e)4.869 F 1.599 (xit status is 127.)-.15 F 1.599(Otherwise, the e)6.599 F 1.598 -(xit status of the)-.15 F F1(command)4.098 E F0 -.2(bu)144 328.8 S +(xit status of the)-.15 F F1(command)4.098 E F0 -.2(bu)144 352.8 S (iltin is the e).2 E(xit status of)-.15 E F2(command)2.5 E F0(.).77 E F1 -(compgen)108 345.6 Q F0([)2.5 E F2(option)A F0 2.5(][)C F2(wor)-2.5 E(d) --.37 E F0(])A .012(Generate possible completion matches for)144 357.6 R +(compgen)108 369.6 Q F0([)2.5 E F2(option)A F0 2.5(][)C F2(wor)-2.5 E(d) +-.37 E F0(])A .012(Generate possible completion matches for)144 381.6 R F2(wor)2.513 E(d)-.37 E F0 .013(according to the)2.513 F F2(option)2.513 E F0 .013(s, which may be an)B 2.513(yo)-.15 G(ption)-2.513 E .982 -(accepted by the)144 369.6 R F1(complete)3.482 E F0 -.2(bu)3.481 G .981 +(accepted by the)144 393.6 R F1(complete)3.482 E F0 -.2(bu)3.481 G .981 (iltin with the e).2 F .981(xception of)-.15 F F1<ad70>3.481 E F0(and) 3.481 E F1<ad72>3.481 E F0 3.481(,a)C .981(nd write the matches to the) --3.481 F 1.415(standard output.)144 381.6 R 1.415(When using the)6.415 F +-3.481 F 1.415(standard output.)144 405.6 R 1.415(When using the)6.415 F F1<ad46>3.915 E F0(or)3.915 E F1<ad43>3.915 E F0 1.415(options, the v) 3.915 F 1.415(arious shell v)-.25 F 1.415(ariables set by the pro-)-.25 -F(grammable completion f)144 393.6 Q(acilities, while a)-.1 E -.25(va) +F(grammable completion f)144 417.6 Q(acilities, while a)-.1 E -.25(va) -.2 G(ilable, will not ha).25 E .3 -.15(ve u)-.2 H(seful v).15 E(alues.) --.25 E .352(The matches will be generated in the same w)144 417.6 R .352 +-.25 E .352(The matches will be generated in the same w)144 441.6 R .352 (ay as if the programmable completion code had gen-)-.1 F .02(erated th\ em directly from a completion speci\214cation with the same \215ags.)144 -429.6 R(If)5.02 E F2(wor)2.52 E(d)-.37 E F0 .02(is speci\214ed, only) -2.52 F(those completions matching)144 441.6 Q F2(wor)2.5 E(d)-.37 E F0 -(will be displayed.)2.5 E(The return v)144 465.6 Q +453.6 R(If)5.02 E F2(wor)2.52 E(d)-.37 E F0 .02(is speci\214ed, only) +2.52 F(those completions matching)144 465.6 Q F2(wor)2.5 E(d)-.37 E F0 +(will be displayed.)2.5 E(The return v)144 489.6 Q (alue is true unless an in)-.25 E -.25(va)-.4 G (lid option is supplied, or no matches were generated.).25 E F1 -(complete)108 482.4 Q F0([)3.729 E F1(\255abcdefgjksuv)A F0 3.729(][)C +(complete)108 506.4 Q F0([)3.729 E F1(\255abcdefgjksuv)A F0 3.729(][)C F1<ad6f>-3.729 E F2(comp-option)3.729 E F0 3.729(][)C F1(\255DE)-3.729 E F0 3.728(][)C F1<ad41>-3.728 E F2(action)3.728 E F0 3.728(][)C F1<ad47> -3.728 E F2(globpat)3.728 E F0 3.728(][)C F1<ad57>-3.728 E F2(wor)3.728 E(dlist)-.37 E F0 3.728(][)C F1<ad46>-3.728 E F2(func-)3.728 E(tion)108 -494.4 Q F0 2.5(][)C F1<ad43>-2.5 E F2(command)2.5 E F0(])A([)144 506.4 Q +518.4 Q F0 2.5(][)C F1<ad43>-2.5 E F2(command)2.5 E F0(])A([)144 530.4 Q F1<ad58>A F2(\214lterpat)2.5 E F0 2.5(][)C F1<ad50>-2.5 E F2(pr)2.5 E (e\214x)-.37 E F0 2.5(][)C F1<ad53>-2.5 E F2(suf)2.5 E<8c78>-.18 E F0(]) A F2(name)2.5 E F0([)2.5 E F2(name ...)A F0(])A F1(complete \255pr)108 -518.4 Q F0([)2.5 E F1(\255DE)A F0 2.5(][)C F2(name)-2.5 E F0(...])2.5 E -.634(Specify ho)144 530.4 R 3.134(wa)-.25 G -.18(rg)-3.134 G .634 +542.4 Q F0([)2.5 E F1(\255DE)A F0 2.5(][)C F2(name)-2.5 E F0(...])2.5 E +.634(Specify ho)144 554.4 R 3.134(wa)-.25 G -.18(rg)-3.134 G .634 (uments to each).18 F F2(name)3.134 E F0 .634(should be completed.)3.134 F .633(If the)5.634 F F1<ad70>3.133 E F0 .633 (option is supplied, or if no)3.133 F .139(options are supplied, e)144 -542.4 R .139(xisting completion speci\214cations are printed in a w)-.15 +566.4 R .139(xisting completion speci\214cations are printed in a w)-.15 F .14(ay that allo)-.1 F .14(ws them to be)-.25 F .31(reused as input.) -144 554.4 R(The)5.31 E F1<ad72>2.81 E F0 .31(option remo)2.81 F -.15(ve) +144 578.4 R(The)5.31 E F1<ad72>2.81 E F0 .31(option remo)2.81 F -.15(ve) -.15 G 2.81(sac).15 G .31(ompletion speci\214cation for each)-2.81 F F2 (name)2.81 E F0 2.81(,o)C 1.11 -.4(r, i)-2.81 H 2.81(fn).4 G(o)-2.81 E F2(name)2.81 E F0(s)A 1.346 -(are supplied, all completion speci\214cations.)144 566.4 R(The)6.347 E +(are supplied, all completion speci\214cations.)144 590.4 R(The)6.347 E F1<ad44>3.847 E F0 1.347(option indicates that the remaining options) -3.847 F .5(and actions should apply to the `)144 578.4 R(`def)-.74 E +3.847 F .5(and actions should apply to the `)144 602.4 R(`def)-.74 E (ault')-.1 E 3('c)-.74 G .5 (ommand completion; that is, completion attempted on)-3 F 3.455(ac)144 -590.4 S .955(ommand for which no completion has pre)-3.455 F .955 +614.4 S .955(ommand for which no completion has pre)-3.455 F .955 (viously been de\214ned.)-.25 F(The)5.955 E F1<ad45>3.455 E F0 .955 (option indicates that)3.455 F .065 -(the remaining options and actions should apply to `)144 602.4 R +(the remaining options and actions should apply to `)144 626.4 R (`empty')-.74 E 2.564('c)-.74 G .064 (ommand completion; that is, comple-)-2.564 F -(tion attempted on a blank line.)144 614.4 Q 1.437 +(tion attempted on a blank line.)144 638.4 Q 1.437 (The process of applying these completion speci\214cations when w)144 -638.4 R 1.438(ord completion is attempted is)-.1 F(described abo)144 -650.4 Q .3 -.15(ve u)-.15 H(nder).15 E F1(Pr)2.5 E +662.4 R 1.438(ord completion is attempted is)-.1 F(described abo)144 +674.4 Q .3 -.15(ve u)-.15 H(nder).15 E F1(Pr)2.5 E (ogrammable Completion)-.18 E F0(.)A .556 -(Other options, if speci\214ed, ha)144 674.4 R .856 -.15(ve t)-.2 H .555 +(Other options, if speci\214ed, ha)144 698.4 R .856 -.15(ve t)-.2 H .555 (he follo).15 F .555(wing meanings.)-.25 F .555(The ar)5.555 F .555 (guments to the)-.18 F F1<ad47>3.055 E F0(,)A F1<ad57>3.055 E F0 3.055 (,a)C(nd)-3.055 E F1<ad58>3.055 E F0 .722(options \(and, if necessary) -144 686.4 R 3.222(,t)-.65 G(he)-3.222 E F1<ad50>3.222 E F0(and)3.222 E +144 710.4 R 3.222(,t)-.65 G(he)-3.222 E F1<ad50>3.222 E F0(and)3.222 E F1<ad53>3.222 E F0 .723 (options\) should be quoted to protect them from e)3.222 F(xpan-)-.15 E -(sion before the)144 698.4 Q F1(complete)2.5 E F0 -.2(bu)2.5 G +(sion before the)144 722.4 Q F1(complete)2.5 E F0 -.2(bu)2.5 G (iltin is in).2 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E(GNU Bash-4.1)72 768 Q (2010 May 30)147.345 E(51)197.335 E 0 Cg EP %%Page: 52 52 diff --git a/doc/bashref.bt b/doc/bashref.bt index 99dbf88a..db5c784f 100644 --- a/doc/bashref.bt +++ b/doc/bashref.bt @@ -6,13 +6,13 @@ \entry{eval}{38}{\code {eval}} \entry{exec}{38}{\code {exec}} \entry{exit}{38}{\code {exit}} -\entry{export}{38}{\code {export}} +\entry{export}{39}{\code {export}} \entry{getopts}{39}{\code {getopts}} -\entry{hash}{39}{\code {hash}} +\entry{hash}{40}{\code {hash}} \entry{pwd}{40}{\code {pwd}} \entry{readonly}{40}{\code {readonly}} \entry{return}{40}{\code {return}} -\entry{shift}{40}{\code {shift}} +\entry{shift}{41}{\code {shift}} \entry{test}{41}{\code {test}} \entry{[}{41}{\code {[}} \entry{times}{42}{\code {times}} @@ -26,11 +26,11 @@ \entry{command}{45}{\code {command}} \entry{declare}{45}{\code {declare}} \entry{echo}{47}{\code {echo}} -\entry{enable}{47}{\code {enable}} +\entry{enable}{48}{\code {enable}} \entry{help}{48}{\code {help}} \entry{let}{48}{\code {let}} \entry{local}{48}{\code {local}} -\entry{logout}{48}{\code {logout}} +\entry{logout}{49}{\code {logout}} \entry{mapfile}{49}{\code {mapfile}} \entry{printf}{49}{\code {printf}} \entry{read}{50}{\code {read}} diff --git a/doc/bashref.bts b/doc/bashref.bts index 81befbb4..d86d44fa 100644 --- a/doc/bashref.bts +++ b/doc/bashref.bts @@ -25,18 +25,18 @@ \entry {\code {disown}}{93} \initial {E} \entry {\code {echo}}{47} -\entry {\code {enable}}{47} +\entry {\code {enable}}{48} \entry {\code {eval}}{38} \entry {\code {exec}}{38} \entry {\code {exit}}{38} -\entry {\code {export}}{38} +\entry {\code {export}}{39} \initial {F} \entry {\code {fc}}{123} \entry {\code {fg}}{92} \initial {G} \entry {\code {getopts}}{39} \initial {H} -\entry {\code {hash}}{39} +\entry {\code {hash}}{40} \entry {\code {help}}{48} \entry {\code {history}}{124} \initial {J} @@ -46,7 +46,7 @@ \initial {L} \entry {\code {let}}{48} \entry {\code {local}}{48} -\entry {\code {logout}}{48} +\entry {\code {logout}}{49} \initial {M} \entry {\code {mapfile}}{49} \initial {P} @@ -61,7 +61,7 @@ \entry {\code {return}}{40} \initial {S} \entry {\code {set}}{53} -\entry {\code {shift}}{40} +\entry {\code {shift}}{41} \entry {\code {shopt}}{57} \entry {\code {source}}{51} \entry {\code {suspend}}{93} diff --git a/doc/bashref.dvi b/doc/bashref.dvi Binary files differindex b5b2d8e4..943b1a07 100644 --- a/doc/bashref.dvi +++ b/doc/bashref.dvi diff --git a/doc/bashref.html b/doc/bashref.html index eb98bd8f..a9d26a23 100644 --- a/doc/bashref.html +++ b/doc/bashref.html @@ -1,6 +1,6 @@ <HTML> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<!-- Created on June, 1 2010 by texi2html 1.64 --> +<!-- Created on June, 7 2010 by texi2html 1.64 --> <!-- Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) Karl Berry <karl@freefriends.org> @@ -3971,7 +3971,7 @@ The return status is zero unless <VAR>n</VAR> is not greater than or equal to 1. <DT><CODE>cd</CODE> <DD><A NAME="IDX71"></A> -<TABLE><tr><td> </td><td class=example><pre>cd [-L|-P] [<VAR>directory</VAR>] +<TABLE><tr><td> </td><td class=example><pre>cd [-L|[-P [-e]]] [<VAR>directory</VAR>] </pre></td></tr></table>Change the current working directory to <VAR>directory</VAR>. If <VAR>directory</VAR> is not given, the value of the <CODE>HOME</CODE> shell variable is used. @@ -3981,6 +3981,10 @@ If <VAR>directory</VAR> begins with a slash, <CODE>CDPATH</CODE> is not used. The <SAMP>`-P'</SAMP> option means to not follow symbolic links; symbolic links are followed by default or with the <SAMP>`-L'</SAMP> option. +If the <SAMP>`-e'</SAMP> option is supplied with <SAMP>`-P'</SAMP> +and the current working directory cannot be successfully determined +after a successful directory change, <CODE>cd</CODE> will return an unsuccessful +status. If <VAR>directory</VAR> is <SAMP>`-'</SAMP>, it is equivalent to <CODE>$OLDPWD</CODE>. </P><P> @@ -16308,7 +16312,7 @@ to permit their use in free software. <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="bashref.html#SEC_About"> ? </A>]</TD> </TR></TABLE> <H1>About this document</H1> -This document was generated by <I>Chet Ramey</I> on <I>June, 1 2010</I> +This document was generated by <I>Chet Ramey</I> on <I>June, 7 2010</I> using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html "><I>texi2html</I></A> <P></P> @@ -16470,7 +16474,7 @@ the following structure: <BR> <FONT SIZE="-1"> This document was generated -by <I>Chet Ramey</I> on <I>June, 1 2010</I> +by <I>Chet Ramey</I> on <I>June, 7 2010</I> using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html "><I>texi2html</I></A> diff --git a/doc/bashref.info b/doc/bashref.info index ec4dabbb..824cca59 100644 --- a/doc/bashref.info +++ b/doc/bashref.info @@ -1,5 +1,5 @@ This is bashref.info, produced by makeinfo version 4.13 from -/Users/chet/src/bash/src/doc/bashref.texi. +/usr/homes/chet/src/bash/src/doc/bashref.texi. This text is a brief description of the features that are present in the Bash shell (version 4.1, 30 May 2010). @@ -2539,14 +2539,17 @@ standard. greater than or equal to 1. `cd' - cd [-L|-P] [DIRECTORY] + cd [-L|[-P [-e]]] [DIRECTORY] Change the current working directory to DIRECTORY. If DIRECTORY is not given, the value of the `HOME' shell variable is used. If the shell variable `CDPATH' exists, it is used as a search path. If DIRECTORY begins with a slash, `CDPATH' is not used. The `-P' option means to not follow symbolic links; symbolic links - are followed by default or with the `-L' option. If DIRECTORY is + are followed by default or with the `-L' option. If the `-e' + option is supplied with `-P' and the current working directory + cannot be successfully determined after a successful directory + change, `cd' will return an unsuccessful status. If DIRECTORY is `-', it is equivalent to `$OLDPWD'. If a non-empty directory name from `CDPATH' is used, or if `-' is @@ -9825,7 +9828,7 @@ D.1 Index of Shell Builtin Commands * :: Bourne Shell Builtins. (line 11) * [: Bourne Shell Builtins. - (line 214) + (line 217) * alias: Bash Builtins. (line 11) * bg: Job Control Builtins. (line 7) @@ -9844,7 +9847,7 @@ D.1 Index of Shell Builtin Commands * compopt: Programmable Completion Builtins. (line 217) * continue: Bourne Shell Builtins. - (line 55) + (line 58) * declare: Bash Builtins. (line 142) * dirs: Directory Stack Builtins. (line 7) @@ -9853,21 +9856,21 @@ D.1 Index of Shell Builtin Commands * echo: Bash Builtins. (line 226) * enable: Bash Builtins. (line 286) * eval: Bourne Shell Builtins. - (line 63) + (line 66) * exec: Bourne Shell Builtins. - (line 70) + (line 73) * exit: Bourne Shell Builtins. - (line 82) + (line 85) * export: Bourne Shell Builtins. - (line 88) + (line 91) * fc: Bash History Builtins. (line 10) * fg: Job Control Builtins. (line 16) * getopts: Bourne Shell Builtins. - (line 103) + (line 106) * hash: Bourne Shell Builtins. - (line 145) + (line 148) * help: Bash Builtins. (line 314) * history: Bash History Builtins. (line 39) @@ -9885,34 +9888,34 @@ D.1 Index of Shell Builtin Commands * pushd: Directory Stack Builtins. (line 58) * pwd: Bourne Shell Builtins. - (line 164) + (line 167) * read: Bash Builtins. (line 446) * readarray: Bash Builtins. (line 526) * readonly: Bourne Shell Builtins. - (line 173) + (line 176) * return: Bourne Shell Builtins. - (line 189) + (line 192) * set: The Set Builtin. (line 11) * shift: Bourne Shell Builtins. - (line 202) + (line 205) * shopt: The Shopt Builtin. (line 9) * source: Bash Builtins. (line 534) * suspend: Job Control Builtins. (line 94) * test: Bourne Shell Builtins. - (line 214) + (line 217) * times: Bourne Shell Builtins. - (line 282) + (line 285) * trap: Bourne Shell Builtins. - (line 287) + (line 290) * type: Bash Builtins. (line 538) * typeset: Bash Builtins. (line 569) * ulimit: Bash Builtins. (line 575) * umask: Bourne Shell Builtins. - (line 333) + (line 336) * unalias: Bash Builtins. (line 664) * unset: Bourne Shell Builtins. - (line 350) + (line 353) * wait: Job Control Builtins. (line 73) @@ -10413,133 +10416,133 @@ D.5 Concept Index Tag Table: -Node: Top1336 -Node: Introduction3165 -Node: What is Bash?3393 -Node: What is a shell?4506 -Node: Definitions7046 -Node: Basic Shell Features9964 -Node: Shell Syntax11183 -Node: Shell Operation12213 -Node: Quoting13507 -Node: Escape Character14810 -Node: Single Quotes15295 -Node: Double Quotes15643 -Node: ANSI-C Quoting16768 -Node: Locale Translation18012 -Node: Comments18908 -Node: Shell Commands19526 -Node: Simple Commands20398 -Node: Pipelines21029 -Node: Lists23576 -Node: Compound Commands25305 -Node: Looping Constructs26109 -Node: Conditional Constructs28564 -Node: Command Grouping36677 -Node: Coprocesses38156 -Node: GNU Parallel39821 -Node: Shell Functions42289 -Node: Shell Parameters47035 -Node: Positional Parameters49451 -Node: Special Parameters50351 -Node: Shell Expansions53315 -Node: Brace Expansion55240 -Node: Tilde Expansion57995 -Node: Shell Parameter Expansion60346 -Node: Command Substitution69247 -Node: Arithmetic Expansion70580 -Node: Process Substitution71430 -Node: Word Splitting72480 -Node: Filename Expansion74103 -Node: Pattern Matching76242 -Node: Quote Removal79881 -Node: Redirections80176 -Node: Executing Commands88701 -Node: Simple Command Expansion89371 -Node: Command Search and Execution91301 -Node: Command Execution Environment93638 -Node: Environment96624 -Node: Exit Status98284 -Node: Signals99905 -Node: Shell Scripts101873 -Node: Shell Builtin Commands104391 -Node: Bourne Shell Builtins106419 -Node: Bash Builtins123887 -Node: Modifying Shell Behavior150092 -Node: The Set Builtin150437 -Node: The Shopt Builtin159961 -Node: Special Builtins171295 -Node: Shell Variables172274 -Node: Bourne Shell Variables172714 -Node: Bash Variables174695 -Node: Bash Features199033 -Node: Invoking Bash199916 -Node: Bash Startup Files205680 -Node: Interactive Shells210692 -Node: What is an Interactive Shell?211102 -Node: Is this Shell Interactive?211751 -Node: Interactive Shell Behavior212566 -Node: Bash Conditional Expressions215846 -Node: Shell Arithmetic219594 -Node: Aliases222353 -Node: Arrays224925 -Node: The Directory Stack228883 -Node: Directory Stack Builtins229597 -Node: Printing a Prompt232489 -Node: The Restricted Shell235241 -Node: Bash POSIX Mode237073 -Node: Job Control245899 -Node: Job Control Basics246359 -Node: Job Control Builtins251076 -Node: Job Control Variables255440 -Node: Command Line Editing256598 -Node: Introduction and Notation258165 -Node: Readline Interaction259787 -Node: Readline Bare Essentials260978 -Node: Readline Movement Commands262767 -Node: Readline Killing Commands263732 -Node: Readline Arguments265652 -Node: Searching266696 -Node: Readline Init File268882 -Node: Readline Init File Syntax270029 -Node: Conditional Init Constructs285133 -Node: Sample Init File287666 -Node: Bindable Readline Commands290783 -Node: Commands For Moving291990 -Node: Commands For History293134 -Node: Commands For Text296289 -Node: Commands For Killing298962 -Node: Numeric Arguments301413 -Node: Commands For Completion302552 -Node: Keyboard Macros306744 -Node: Miscellaneous Commands307315 -Node: Readline vi Mode313121 -Node: Programmable Completion314028 -Node: Programmable Completion Builtins321238 -Node: Using History Interactively330374 -Node: Bash History Facilities331058 -Node: Bash History Builtins333972 -Node: History Interaction337829 -Node: Event Designators340534 -Node: Word Designators341549 -Node: Modifiers343188 -Node: Installing Bash344592 -Node: Basic Installation345729 -Node: Compilers and Options348421 -Node: Compiling For Multiple Architectures349162 -Node: Installation Names350826 -Node: Specifying the System Type351644 -Node: Sharing Defaults352360 -Node: Operation Controls353033 -Node: Optional Features353991 -Node: Reporting Bugs363550 -Node: Major Differences From The Bourne Shell364751 -Node: GNU Free Documentation License381438 -Node: Indexes406634 -Node: Builtin Index407088 -Node: Reserved Word Index413915 -Node: Variable Index416363 -Node: Function Index429317 -Node: Concept Index436326 +Node: Top1340 +Node: Introduction3169 +Node: What is Bash?3397 +Node: What is a shell?4510 +Node: Definitions7050 +Node: Basic Shell Features9968 +Node: Shell Syntax11187 +Node: Shell Operation12217 +Node: Quoting13511 +Node: Escape Character14814 +Node: Single Quotes15299 +Node: Double Quotes15647 +Node: ANSI-C Quoting16772 +Node: Locale Translation18016 +Node: Comments18912 +Node: Shell Commands19530 +Node: Simple Commands20402 +Node: Pipelines21033 +Node: Lists23580 +Node: Compound Commands25309 +Node: Looping Constructs26113 +Node: Conditional Constructs28568 +Node: Command Grouping36681 +Node: Coprocesses38160 +Node: GNU Parallel39825 +Node: Shell Functions42293 +Node: Shell Parameters47039 +Node: Positional Parameters49455 +Node: Special Parameters50355 +Node: Shell Expansions53319 +Node: Brace Expansion55244 +Node: Tilde Expansion57999 +Node: Shell Parameter Expansion60350 +Node: Command Substitution69251 +Node: Arithmetic Expansion70584 +Node: Process Substitution71434 +Node: Word Splitting72484 +Node: Filename Expansion74107 +Node: Pattern Matching76246 +Node: Quote Removal79885 +Node: Redirections80180 +Node: Executing Commands88705 +Node: Simple Command Expansion89375 +Node: Command Search and Execution91305 +Node: Command Execution Environment93642 +Node: Environment96628 +Node: Exit Status98288 +Node: Signals99909 +Node: Shell Scripts101877 +Node: Shell Builtin Commands104395 +Node: Bourne Shell Builtins106423 +Node: Bash Builtins124101 +Node: Modifying Shell Behavior150306 +Node: The Set Builtin150651 +Node: The Shopt Builtin160175 +Node: Special Builtins171509 +Node: Shell Variables172488 +Node: Bourne Shell Variables172928 +Node: Bash Variables174909 +Node: Bash Features199247 +Node: Invoking Bash200130 +Node: Bash Startup Files205894 +Node: Interactive Shells210906 +Node: What is an Interactive Shell?211316 +Node: Is this Shell Interactive?211965 +Node: Interactive Shell Behavior212780 +Node: Bash Conditional Expressions216060 +Node: Shell Arithmetic219808 +Node: Aliases222567 +Node: Arrays225139 +Node: The Directory Stack229097 +Node: Directory Stack Builtins229811 +Node: Printing a Prompt232703 +Node: The Restricted Shell235455 +Node: Bash POSIX Mode237287 +Node: Job Control246113 +Node: Job Control Basics246573 +Node: Job Control Builtins251290 +Node: Job Control Variables255654 +Node: Command Line Editing256812 +Node: Introduction and Notation258379 +Node: Readline Interaction260001 +Node: Readline Bare Essentials261192 +Node: Readline Movement Commands262981 +Node: Readline Killing Commands263946 +Node: Readline Arguments265866 +Node: Searching266910 +Node: Readline Init File269096 +Node: Readline Init File Syntax270243 +Node: Conditional Init Constructs285347 +Node: Sample Init File287880 +Node: Bindable Readline Commands290997 +Node: Commands For Moving292204 +Node: Commands For History293348 +Node: Commands For Text296503 +Node: Commands For Killing299176 +Node: Numeric Arguments301627 +Node: Commands For Completion302766 +Node: Keyboard Macros306958 +Node: Miscellaneous Commands307529 +Node: Readline vi Mode313335 +Node: Programmable Completion314242 +Node: Programmable Completion Builtins321452 +Node: Using History Interactively330588 +Node: Bash History Facilities331272 +Node: Bash History Builtins334186 +Node: History Interaction338043 +Node: Event Designators340748 +Node: Word Designators341763 +Node: Modifiers343402 +Node: Installing Bash344806 +Node: Basic Installation345943 +Node: Compilers and Options348635 +Node: Compiling For Multiple Architectures349376 +Node: Installation Names351040 +Node: Specifying the System Type351858 +Node: Sharing Defaults352574 +Node: Operation Controls353247 +Node: Optional Features354205 +Node: Reporting Bugs363764 +Node: Major Differences From The Bourne Shell364965 +Node: GNU Free Documentation License381652 +Node: Indexes406848 +Node: Builtin Index407302 +Node: Reserved Word Index414129 +Node: Variable Index416577 +Node: Function Index429531 +Node: Concept Index436540 End Tag Table diff --git a/doc/bashref.log b/doc/bashref.log index 899bc1da..5082158e 100644 --- a/doc/bashref.log +++ b/doc/bashref.log @@ -1,6 +1,6 @@ -This is TeX, Version 3.141592 (Web2C 7.5.4) (format=tex 2008.12.11) 1 JUN 2010 14:16 -**/Users/chet/src/bash/src/doc/bashref.texi -(/Users/chet/src/bash/src/doc/bashref.texi (./texinfo.tex +This is TeX, Version 3.141592 (Web2C 7.5.4) (format=tex 2008.12.11) 7 JUN 2010 16:19 +**/usr/homes/chet/src/bash/src/doc/bashref.texi +(/usr/homes/chet/src/bash/src/doc/bashref.texi (./texinfo.tex Loading texinfo [version 2009-01-18.17]: \bindingoffset=\dimen16 \normaloffset=\dimen17 @@ -232,7 +232,7 @@ arallel -k traceroute[] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] Chapter 4 [35] [36] [37] [38] [39] [40] [41] [42] [43] -Underfull \hbox (badness 5231) in paragraph at lines 3395--3408 +Underfull \hbox (badness 5231) in paragraph at lines 3399--3412 @texttt emacs-meta[]@textrm , @texttt emacs-ctlx[]@textrm , @texttt vi[]@textr m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and @@ -245,7 +245,7 @@ m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and .etc. [44] [45] [46] [47] [48] [49] -Overfull \hbox (172.34125pt too wide) in paragraph at lines 3852--3852 +Overfull \hbox (172.34125pt too wide) in paragraph at lines 3856--3856 []@texttt read [-ers] [-a @textttsl aname@texttt ] [-d @textttsl de-lim@texttt ] [-i @textttsl text@texttt ] [-n @textttsl nchars@texttt ] [-N @textttsl ncha rs@texttt ] [-p @textttsl prompt@texttt ] [-t @textttsl time- @@ -260,7 +260,7 @@ rs@texttt ] [-p @textttsl prompt@texttt ] [-t @textttsl time- [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] Chapter 5 [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] Chapter 6 [72] -Overfull \hbox (51.96864pt too wide) in paragraph at lines 5445--5445 +Overfull \hbox (51.96864pt too wide) in paragraph at lines 5449--5449 []@texttt bash [long-opt] [-ir] [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@t exttt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar- @@ -273,7 +273,7 @@ exttt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar- .etc. -Overfull \hbox (76.23077pt too wide) in paragraph at lines 5446--5446 +Overfull \hbox (76.23077pt too wide) in paragraph at lines 5450--5450 []@texttt bash [long-opt] [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@texttt ] [-O @textttsl shopt_option@texttt ] -c @textttsl string @texttt [@textttsl ar - @@ -287,7 +287,7 @@ Overfull \hbox (76.23077pt too wide) in paragraph at lines 5446--5446 .etc. -Overfull \hbox (34.72258pt too wide) in paragraph at lines 5447--5447 +Overfull \hbox (34.72258pt too wide) in paragraph at lines 5451--5451 []@texttt bash [long-opt] -s [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@text tt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar- @@ -300,7 +300,7 @@ tt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar- .etc. [73] [74] -Underfull \hbox (badness 2245) in paragraph at lines 5620--5622 +Underfull \hbox (badness 2245) in paragraph at lines 5624--5626 []@textrm When a lo-gin shell ex-its, Bash reads and ex-e-cutes com-mands from the file @@ -313,7 +313,7 @@ the file .etc. [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] -Underfull \hbox (badness 2521) in paragraph at lines 6789--6792 +Underfull \hbox (badness 2521) in paragraph at lines 6793--6796 @textrm `@texttt --enable-strict-posix-default[]@textrm '[] to @texttt configur e[] @textrm when build-ing (see Sec-tion 10.8 @@ -326,8 +326,8 @@ e[] @textrm when build-ing (see Sec-tion 10.8 .etc. Chapter 7 [89] [90] [91] [92] [93] -(/Users/chet/src/bash/src/lib/readline/doc/rluser.texi Chapter 8 [94] [95] -[96] [97] [98] [99] [100] +(/usr/homes/chet/src/bash/src/lib/readline/doc/rluser.texi Chapter 8 [94] +[95] [96] [97] [98] [99] [100] Underfull \hbox (badness 5231) in paragraph at lines 551--567 @texttt emacs-meta[]@textrm , @texttt emacs-ctlx[]@textrm , @texttt vi[]@textr m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and @@ -379,9 +379,9 @@ Underfull \hbox (badness 2753) in paragraph at lines 1919--1922 .@texttt o .etc. -[121]) (/Users/chet/src/bash/src/lib/readline/doc/hsuser.texi Chapter 9 +[121]) (/usr/homes/chet/src/bash/src/lib/readline/doc/hsuser.texi Chapter 9 [122] [123] [124] [125] [126]) Chapter 10 [127] [128] [129] [130] [131] -Underfull \hbox (badness 2772) in paragraph at lines 7390--7394 +Underfull \hbox (badness 2772) in paragraph at lines 7394--7398 []@textrm Enable sup-port for large files (@texttt http://www.sas.com/standard s/large_ @@ -400,11 +400,11 @@ s/large_ [159] [160] ) Here is how much of TeX's memory you used: 2081 strings out of 97980 - 28558 string characters out of 1221004 + 28590 string characters out of 1221004 65603 words of memory out of 1500000 2897 multiletter control sequences out of 10000+50000 32127 words of font info for 112 fonts, out of 1200000 for 2000 51 hyphenation exceptions out of 8191 - 16i,6n,14p,315b,702s stack positions out of 5000i,500n,6000p,200000b,5000s + 16i,6n,14p,319b,702s stack positions out of 5000i,500n,6000p,200000b,5000s -Output written on bashref.dvi (166 pages, 675816 bytes). +Output written on bashref.dvi (166 pages, 676044 bytes). diff --git a/doc/bashref.pdf b/doc/bashref.pdf Binary files differindex f7fa6ff9..317b172c 100644 --- a/doc/bashref.pdf +++ b/doc/bashref.pdf diff --git a/doc/bashref.ps b/doc/bashref.ps index 4a270e9c..dd5e9022 100644 --- a/doc/bashref.ps +++ b/doc/bashref.ps @@ -11,7 +11,7 @@ %DVIPSWebPage: (www.radicaleye.com) %DVIPSCommandLine: dvips -D 600 -t letter -o bashref.ps bashref.dvi %DVIPSParameters: dpi=600 -%DVIPSSource: TeX output 2010.06.01:1416 +%DVIPSSource: TeX output 2010.06.07:1619 %%BeginProcSet: tex.pro 0 0 %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S @@ -7522,1699 +7522,1708 @@ Fq(n)p Ft(th)630 408 y(enclosing)c(lo)s(op)f(is)h(exited.)70 b Fq(n)40 b Ft(m)m(ust)g(b)s(e)f(greater)j(than)d(or)i(equal)f(to)h(1.) 70 b(The)40 b(return)630 518 y(status)31 b(is)f(zero)h(unless)f Fq(n)g Ft(is)g(not)h(greater)g(than)g(or)f(equal)h(to)g(1.)150 -671 y Fs(cd)870 803 y(cd)47 b([-L|-P])f([)p Fi(directory)11 -b Fs(])630 934 y Ft(Change)36 b(the)h(curren)m(t)f(w)m(orking)g -(directory)h(to)g Fq(directory)8 b Ft(.)59 b(If)35 b -Fq(directory)45 b Ft(is)36 b(not)h(giv)m(en,)630 1044 +687 y Fs(cd)870 827 y(cd)47 b([-L|[-P)f([-e]]])g([)p +Fi(directory)11 b Fs(])630 966 y Ft(Change)36 b(the)h(curren)m(t)f(w)m +(orking)g(directory)h(to)g Fq(directory)8 b Ft(.)59 b(If)35 +b Fq(directory)45 b Ft(is)36 b(not)h(giv)m(en,)630 1076 y(the)31 b(v)-5 b(alue)31 b(of)g(the)g Fs(HOME)e Ft(shell)i(v)-5 b(ariable)32 b(is)f(used.)40 b(If)31 b(the)g(shell)g(v)-5 -b(ariable)31 b Fs(CDPATH)e Ft(exists,)630 1154 y(it)f(is)f(used)f(as)h +b(ariable)31 b Fs(CDPATH)e Ft(exists,)630 1186 y(it)f(is)f(used)f(as)h (a)h(searc)m(h)f(path.)40 b(If)26 b Fq(directory)35 b Ft(b)s(egins)27 b(with)g(a)g(slash,)h Fs(CDPATH)d Ft(is)i(not)g(used.) -630 1285 y(The)h(`)p Fs(-P)p Ft(')h(option)g(means)f(to)h(not)g(follo)m +630 1325 y(The)h(`)p Fs(-P)p Ft(')h(option)g(means)f(to)h(not)g(follo)m (w)h(sym)m(b)s(olic)f(links;)g(sym)m(b)s(olic)g(links)f(are)h(follo)m -(w)m(ed)630 1395 y(b)m(y)23 b(default)h(or)g(with)f(the)h(`)p -Fs(-L)p Ft(')f(option.)39 b(If)23 b Fq(directory)32 b -Ft(is)23 b(`)p Fs(-)p Ft(',)j(it)e(is)f(equiv)-5 b(alen)m(t)25 -b(to)g Fs($OLDPWD)p Ft(.)630 1526 y(If)33 b(a)h(non-empt)m(y)g -(directory)g(name)f(from)g Fs(CDPATH)f Ft(is)h(used,)h(or)g(if)f(`)p -Fs(-)p Ft(')h(is)f(the)h(\014rst)f(argu-)630 1636 y(men)m(t,)28 +(w)m(ed)630 1435 y(b)m(y)22 b(default)h(or)f(with)g(the)g(`)p +Fs(-L)p Ft(')g(option.)39 b(If)22 b(the)g(`)p Fs(-e)p +Ft(')g(option)h(is)f(supplied)f(with)h(`)p Fs(-P)p Ft(')g(and)g(the)630 +1544 y(curren)m(t)32 b(w)m(orking)h(directory)f(cannot)h(b)s(e)f +(successfully)g(determined)g(after)h(a)f(successful)630 +1654 y(directory)f(c)m(hange,)h Fs(cd)e Ft(will)h(return)f(an)g +(unsuccessful)g(status.)42 b(If)30 b Fq(directory)39 +b Ft(is)31 b(`)p Fs(-)p Ft(',)g(it)g(is)630 1763 y(equiv)-5 +b(alen)m(t)32 b(to)f Fs($OLDPWD)p Ft(.)630 1903 y(If)i(a)h(non-empt)m +(y)g(directory)g(name)f(from)g Fs(CDPATH)f Ft(is)h(used,)h(or)g(if)f(`) +p Fs(-)p Ft(')h(is)f(the)h(\014rst)f(argu-)630 2012 y(men)m(t,)28 b(and)e(the)h(directory)g(c)m(hange)h(is)f(successful,)h(the)f -(absolute)g(pathname)g(of)f(the)h(new)630 1745 y(w)m(orking)k +(absolute)g(pathname)g(of)f(the)h(new)630 2122 y(w)m(orking)k (directory)g(is)f(written)g(to)i(the)e(standard)g(output.)630 -1877 y(The)f(return)g(status)h(is)f(zero)i(if)e(the)h(directory)g(is)g -(successfully)g(c)m(hanged,)g(non-zero)g(oth-)630 1987 -y(erwise.)150 2140 y Fs(continue)870 2271 y(continue)46 -b([)p Fi(n)11 b Fs(])630 2403 y Ft(Resume)32 b(the)g(next)g(iteration)i +2262 y(The)f(return)g(status)h(is)f(zero)i(if)e(the)h(directory)g(is)g +(successfully)g(c)m(hanged,)g(non-zero)g(oth-)630 2371 +y(erwise.)150 2540 y Fs(continue)870 2680 y(continue)46 +b([)p Fi(n)11 b Fs(])630 2819 y Ft(Resume)32 b(the)g(next)g(iteration)i (of)e(an)g(enclosing)h Fs(for)p Ft(,)f Fs(while)p Ft(,)f -Fs(until)p Ft(,)g(or)h Fs(select)f Ft(lo)s(op.)630 2513 +Fs(until)p Ft(,)g(or)h Fs(select)f Ft(lo)s(op.)630 2929 y(If)f Fq(n)h Ft(is)g(supplied,)e(the)j(execution)g(of)f(the)g Fq(n)p Ft(th)f(enclosing)i(lo)s(op)f(is)f(resumed.)42 -b Fq(n)30 b Ft(m)m(ust)h(b)s(e)630 2622 y(greater)39 +b Fq(n)30 b Ft(m)m(ust)h(b)s(e)630 3039 y(greater)39 b(than)f(or)g(equal)g(to)h(1.)63 b(The)38 b(return)e(status)j(is)e -(zero)i(unless)e Fq(n)h Ft(is)g(not)g(greater)630 2732 -y(than)30 b(or)g(equal)h(to)g(1.)150 2885 y Fs(eval)870 -3017 y(eval)47 b([)p Fi(arguments)11 b Fs(])630 3148 +(zero)i(unless)e Fq(n)h Ft(is)g(not)g(greater)630 3148 +y(than)30 b(or)g(equal)h(to)g(1.)150 3318 y Fs(eval)870 +3457 y(eval)47 b([)p Fi(arguments)11 b Fs(])630 3597 y Ft(The)25 b(argumen)m(ts)h(are)g(concatenated)i(together)f(in)m(to)f -(a)g(single)h(command,)f(whic)m(h)g(is)f(then)630 3258 +(a)g(single)h(command,)f(whic)m(h)g(is)f(then)630 3706 y(read)35 b(and)g(executed,)j(and)d(its)h(exit)g(status)g(returned)e (as)h(the)h(exit)g(status)g(of)g Fs(eval)p Ft(.)54 b(If)630 -3367 y(there)31 b(are)f(no)h(argumen)m(ts)f(or)h(only)f(empt)m(y)h +3816 y(there)31 b(are)f(no)h(argumen)m(ts)f(or)h(only)f(empt)m(y)h (argumen)m(ts,)g(the)f(return)g(status)g(is)h(zero.)150 -3521 y Fs(exec)870 3652 y(exec)47 b([-cl])f([-a)h Fi(name)11 +3985 y Fs(exec)870 4125 y(exec)47 b([-cl])f([-a)h Fi(name)11 b Fs(])46 b([)p Fi(command)56 b Fs([)p Fi(arguments)11 -b Fs(]])630 3784 y Ft(If)36 b Fq(command)k Ft(is)c(supplied,)h(it)g +b Fs(]])630 4264 y Ft(If)36 b Fq(command)k Ft(is)c(supplied,)h(it)g (replaces)h(the)e(shell)h(without)f(creating)i(a)f(new)f(pro)s(cess.) -630 3893 y(If)h(the)g(`)p Fs(-l)p Ft(')g(option)h(is)f(supplied,)g(the) +630 4374 y(If)h(the)g(`)p Fs(-l)p Ft(')g(option)h(is)f(supplied,)g(the) h(shell)f(places)h(a)g(dash)e(at)i(the)f(b)s(eginning)f(of)i(the)630 -4003 y(zeroth)e(argumen)m(t)g(passed)f(to)h Fq(command)t +4483 y(zeroth)e(argumen)m(t)g(passed)f(to)h Fq(command)t Ft(.)56 b(This)34 b(is)i(what)f(the)h Fs(login)e Ft(program)h(do)s(es.) -630 4113 y(The)e(`)p Fs(-c)p Ft(')h(option)g(causes)g +630 4593 y(The)e(`)p Fs(-c)p Ft(')h(option)g(causes)g Fq(command)j Ft(to)e(b)s(e)e(executed)i(with)e(an)h(empt)m(y)g(en)m -(vironmen)m(t.)630 4222 y(If)d(`)p Fs(-a)p Ft(')g(is)h(supplied,)f(the) +(vironmen)m(t.)630 4702 y(If)d(`)p Fs(-a)p Ft(')g(is)h(supplied,)f(the) g(shell)h(passes)f Fq(name)37 b Ft(as)31 b(the)h(zeroth)g(argumen)m(t)g -(to)g Fq(command)t Ft(.)630 4332 y(If)45 b(no)g Fq(command)k +(to)g Fq(command)t Ft(.)630 4812 y(If)45 b(no)g Fq(command)k Ft(is)c(sp)s(eci\014ed,)k(redirections)d(ma)m(y)g(b)s(e)f(used)f(to)j -(a\013ect)g(the)e(curren)m(t)630 4441 y(shell)33 b(en)m(vironmen)m(t.) +(a\013ect)g(the)e(curren)m(t)630 4922 y(shell)33 b(en)m(vironmen)m(t.) 48 b(If)32 b(there)h(are)g(no)f(redirection)h(errors,)g(the)g(return)e -(status)i(is)g(zero;)630 4551 y(otherwise)e(the)f(return)g(status)g(is) -h(non-zero.)150 4704 y Fs(exit)870 4836 y(exit)47 b([)p -Fi(n)11 b Fs(])630 4967 y Ft(Exit)30 b(the)g(shell,)h(returning)d(a)j -(status)f(of)g Fq(n)f Ft(to)h(the)g(shell's)g(paren)m(t.)41 -b(If)30 b Fq(n)f Ft(is)h(omitted,)h(the)630 5077 y(exit)c(status)g(is)g -(that)g(of)g(the)g(last)g(command)f(executed.)41 b(An)m(y)26 -b(trap)h(on)f Fs(EXIT)f Ft(is)i(executed)630 5187 y(b)s(efore)j(the)h -(shell)f(terminates.)150 5340 y Fs(export)p eop end +(status)i(is)g(zero;)630 5031 y(otherwise)e(the)f(return)g(status)g(is) +h(non-zero.)150 5200 y Fs(exit)870 5340 y(exit)47 b([)p +Fi(n)11 b Fs(])p eop end %%Page: 39 45 TeXDict begin 39 44 bop 150 -116 a Ft(Chapter)30 b(4:)41 -b(Shell)30 b(Builtin)h(Commands)2069 b(39)870 299 y Fs(export)46 +b(Shell)30 b(Builtin)h(Commands)2069 b(39)630 299 y(Exit)30 +b(the)g(shell,)h(returning)d(a)j(status)f(of)g Fq(n)f +Ft(to)h(the)g(shell's)g(paren)m(t.)41 b(If)30 b Fq(n)f +Ft(is)h(omitted,)h(the)630 408 y(exit)c(status)g(is)g(that)g(of)g(the)g +(last)g(command)f(executed.)41 b(An)m(y)26 b(trap)h(on)f +Fs(EXIT)f Ft(is)i(executed)630 518 y(b)s(efore)j(the)h(shell)f +(terminates.)150 675 y Fs(export)870 808 y(export)46 b([-fn])g([-p])h([)p Fi(name)11 b Fs([=)p Fi(value)g -Fs(]])630 432 y Ft(Mark)40 b(eac)m(h)h Fq(name)k Ft(to)40 +Fs(]])630 941 y Ft(Mark)40 b(eac)m(h)h Fq(name)k Ft(to)40 b(b)s(e)f(passed)g(to)i(c)m(hild)f(pro)s(cesses)f(in)g(the)h(en)m -(vironmen)m(t.)70 b(If)39 b(the)630 542 y(`)p Fs(-f)p +(vironmen)m(t.)70 b(If)39 b(the)630 1050 y(`)p Fs(-f)p Ft(')29 b(option)h(is)g(supplied,)f(the)g Fq(name)5 b Ft(s)30 b(refer)f(to)h(shell)g(functions;)f(otherwise)h(the)g(names)630 -651 y(refer)36 b(to)i(shell)e(v)-5 b(ariables.)60 b(The)36 +1160 y(refer)36 b(to)i(shell)e(v)-5 b(ariables.)60 b(The)36 b(`)p Fs(-n)p Ft(')h(option)g(means)f(to)h(no)g(longer)g(mark)f(eac)m -(h)i Fq(name)630 761 y Ft(for)h(exp)s(ort.)65 b(If)39 +(h)i Fq(name)630 1270 y Ft(for)h(exp)s(ort.)65 b(If)39 b(no)g Fq(names)j Ft(are)d(supplied,)h(or)f(if)g(the)g(`)p Fs(-p)p Ft(')g(option)g(is)g(giv)m(en,)j(a)d(list)h(of)630 -870 y(exp)s(orted)c(names)h(is)f(displa)m(y)m(ed.)60 +1379 y(exp)s(orted)c(names)h(is)f(displa)m(y)m(ed.)60 b(The)37 b(`)p Fs(-p)p Ft(')f(option)h(displa)m(ys)g(output)f(in)g(a)h -(form)f(that)630 980 y(ma)m(y)31 b(b)s(e)f(reused)g(as)h(input.)41 +(form)f(that)630 1489 y(ma)m(y)31 b(b)s(e)f(reused)g(as)h(input.)41 b(If)31 b(a)g(v)-5 b(ariable)31 b(name)g(is)g(follo)m(w)m(ed)i(b)m(y)d (=)p Fq(v)-5 b(alue)5 b Ft(,)32 b(the)f(v)-5 b(alue)31 -b(of)630 1089 y(the)g(v)-5 b(ariable)31 b(is)f(set)h(to)g -Fq(v)-5 b(alue)5 b Ft(.)630 1223 y(The)29 b(return)e(status)j(is)f +b(of)630 1598 y(the)g(v)-5 b(ariable)31 b(is)f(set)h(to)g +Fq(v)-5 b(alue)5 b Ft(.)630 1731 y(The)29 b(return)e(status)j(is)f (zero)h(unless)e(an)h(in)m(v)-5 b(alid)29 b(option)h(is)f(supplied,)f -(one)i(of)f(the)g(names)630 1332 y(is)h(not)h(a)f(v)-5 +(one)i(of)f(the)g(names)630 1841 y(is)h(not)h(a)f(v)-5 b(alid)31 b(shell)f(v)-5 b(ariable)31 b(name,)f(or)h(`)p Fs(-f)p Ft(')f(is)g(supplied)f(with)g(a)i(name)f(that)h(is)f(not)h(a) -630 1442 y(shell)g(function.)150 1598 y Fs(getopts)870 -1731 y(getopts)46 b Fi(optstring)56 b(name)h Fs([)p Fi(args)11 -b Fs(])630 1864 y(getopts)28 b Ft(is)i(used)g(b)m(y)g(shell)g(scripts)g +630 1951 y(shell)g(function.)150 2107 y Fs(getopts)870 +2240 y(getopts)46 b Fi(optstring)56 b(name)h Fs([)p Fi(args)11 +b Fs(])630 2373 y(getopts)28 b Ft(is)i(used)g(b)m(y)g(shell)g(scripts)g (to)g(parse)g(p)s(ositional)h(parameters.)41 b Fq(optstring)d -Ft(con-)630 1974 y(tains)k(the)g(option)f(c)m(haracters)i(to)g(b)s(e)d +Ft(con-)630 2483 y(tains)k(the)g(option)f(c)m(haracters)i(to)g(b)s(e)d (recognized;)49 b(if)42 b(a)f(c)m(haracter)j(is)d(follo)m(w)m(ed)i(b)m -(y)f(a)630 2084 y(colon,)33 b(the)f(option)g(is)g(exp)s(ected)g(to)h +(y)f(a)630 2592 y(colon,)33 b(the)f(option)g(is)g(exp)s(ected)g(to)h (ha)m(v)m(e)g(an)e(argumen)m(t,)i(whic)m(h)f(should)e(b)s(e)h -(separated)630 2193 y(from)37 b(it)h(b)m(y)f(white)h(space.)63 +(separated)630 2702 y(from)37 b(it)h(b)m(y)f(white)h(space.)63 b(The)37 b(colon)h(\(`)p Fs(:)p Ft('\))h(and)d(question)i(mark)f(\(`)p -Fs(?)p Ft('\))i(ma)m(y)f(not)g(b)s(e)630 2303 y(used)g(as)g(option)h(c) +Fs(?)p Ft('\))i(ma)m(y)f(not)g(b)s(e)630 2812 y(used)g(as)g(option)h(c) m(haracters.)67 b(Eac)m(h)39 b(time)g(it)g(is)f(in)m(v)m(ok)m(ed,)k -Fs(getopts)37 b Ft(places)i(the)g(next)630 2412 y(option)29 +Fs(getopts)37 b Ft(places)i(the)g(next)630 2921 y(option)29 b(in)f(the)g(shell)h(v)-5 b(ariable)29 b Fq(name)5 b Ft(,)29 b(initializing)h Fq(name)k Ft(if)28 b(it)h(do)s(es)f(not)g -(exist,)i(and)e(the)630 2522 y(index)33 b(of)g(the)h(next)f(argumen)m +(exist,)i(and)e(the)630 3031 y(index)33 b(of)g(the)h(next)f(argumen)m (t)h(to)g(b)s(e)e(pro)s(cessed)h(in)m(to)h(the)g(v)-5 -b(ariable)34 b Fs(OPTIND)p Ft(.)48 b Fs(OPTIND)630 2632 +b(ariable)34 b Fs(OPTIND)p Ft(.)48 b Fs(OPTIND)630 3140 y Ft(is)41 b(initialized)i(to)f(1)f(eac)m(h)h(time)g(the)f(shell)g(or)g (a)g(shell)g(script)g(is)g(in)m(v)m(ok)m(ed.)74 b(When)41 -b(an)630 2741 y(option)36 b(requires)e(an)h(argumen)m(t,)i +b(an)630 3250 y(option)36 b(requires)e(an)h(argumen)m(t,)i Fs(getopts)c Ft(places)j(that)g(argumen)m(t)g(in)m(to)g(the)f(v)-5 -b(ariable)630 2851 y Fs(OPTARG)p Ft(.)55 b(The)35 b(shell)g(do)s(es)h +b(ariable)630 3360 y Fs(OPTARG)p Ft(.)55 b(The)35 b(shell)g(do)s(es)h (not)g(reset)g Fs(OPTIND)e Ft(automatically;)41 b(it)36 -b(m)m(ust)f(b)s(e)g(man)m(ually)630 2960 y(reset)i(b)s(et)m(w)m(een)g +b(m)m(ust)f(b)s(e)g(man)m(ually)630 3469 y(reset)i(b)s(et)m(w)m(een)g (m)m(ultiple)h(calls)f(to)g Fs(getopts)e Ft(within)h(the)h(same)g -(shell)f(in)m(v)m(o)s(cation)j(if)e(a)630 3070 y(new)30 +(shell)f(in)m(v)m(o)s(cation)j(if)e(a)630 3579 y(new)30 b(set)h(of)f(parameters)h(is)f(to)i(b)s(e)d(used.)630 -3203 y(When)41 b(the)h(end)e(of)i(options)g(is)f(encoun)m(tered,)k +3712 y(When)41 b(the)h(end)e(of)i(options)g(is)f(encoun)m(tered,)k Fs(getopts)39 b Ft(exits)j(with)f(a)h(return)e(v)-5 b(alue)630 -3313 y(greater)32 b(than)e(zero.)41 b Fs(OPTIND)29 b +3821 y(greater)32 b(than)e(zero.)41 b Fs(OPTIND)29 b Ft(is)h(set)h(to)g(the)g(index)f(of)g(the)h(\014rst)f(non-option)g -(argumen)m(t,)630 3422 y(and)g Fs(name)f Ft(is)h(set)h(to)g(`)p -Fs(?)p Ft('.)630 3555 y Fs(getopts)c Ft(normally)j(parses)e(the)i(p)s +(argumen)m(t,)630 3931 y(and)g Fs(name)f Ft(is)h(set)h(to)g(`)p +Fs(?)p Ft('.)630 4064 y Fs(getopts)c Ft(normally)j(parses)e(the)i(p)s (ositional)g(parameters,)g(but)e(if)i(more)f(argumen)m(ts)h(are)630 -3665 y(giv)m(en)h(in)f Fq(args)t Ft(,)h Fs(getopts)e -Ft(parses)g(those)i(instead.)630 3798 y Fs(getopts)h +4174 y(giv)m(en)h(in)f Fq(args)t Ft(,)h Fs(getopts)e +Ft(parses)g(those)i(instead.)630 4307 y Fs(getopts)h Ft(can)h(rep)s(ort)g(errors)g(in)h(t)m(w)m(o)h(w)m(a)m(ys.)51 b(If)33 b(the)h(\014rst)e(c)m(haracter)k(of)d Fq(optstring)42 -b Ft(is)34 b(a)630 3907 y(colon,)i Fq(silen)m(t)i Ft(error)33 +b Ft(is)34 b(a)630 4416 y(colon,)i Fq(silen)m(t)i Ft(error)33 b(rep)s(orting)h(is)h(used.)51 b(In)33 b(normal)i(op)s(eration)f -(diagnostic)i(messages)630 4017 y(are)30 b(prin)m(ted)e(when)g(in)m(v) +(diagnostic)i(messages)630 4526 y(are)30 b(prin)m(ted)e(when)g(in)m(v) -5 b(alid)30 b(options)g(or)f(missing)g(option)g(argumen)m(ts)h(are)f -(encoun)m(tered.)630 4127 y(If)34 b(the)g(v)-5 b(ariable)35 +(encoun)m(tered.)630 4635 y(If)34 b(the)g(v)-5 b(ariable)35 b Fs(OPTERR)d Ft(is)i(set)h(to)f(0,)i(no)e(error)g(messages)h(will)f(b) -s(e)f(displa)m(y)m(ed,)j(ev)m(en)f(if)630 4236 y(the)c(\014rst)e(c)m +s(e)f(displa)m(y)m(ed,)j(ev)m(en)f(if)630 4745 y(the)c(\014rst)e(c)m (haracter)j(of)f Fs(optstring)d Ft(is)i(not)h(a)f(colon.)630 -4369 y(If)39 b(an)h(in)m(v)-5 b(alid)41 b(option)f(is)g(seen,)i +4878 y(If)39 b(an)h(in)m(v)-5 b(alid)41 b(option)f(is)g(seen,)i Fs(getopts)c Ft(places)j(`)p Fs(?)p Ft(')f(in)m(to)h -Fq(name)k Ft(and,)d(if)e(not)g(silen)m(t,)630 4479 y(prin)m(ts)f(an)h +Fq(name)k Ft(and,)d(if)e(not)g(silen)m(t,)630 4988 y(prin)m(ts)f(an)h (error)f(message)h(and)f(unsets)g Fs(OPTARG)p Ft(.)67 b(If)39 b Fs(getopts)f Ft(is)i(silen)m(t,)j(the)c(option)630 -4589 y(c)m(haracter)32 b(found)d(is)h(placed)h(in)f Fs(OPTARG)f +5097 y(c)m(haracter)32 b(found)d(is)h(placed)h(in)f Fs(OPTARG)f Ft(and)h(no)g(diagnostic)i(message)f(is)g(prin)m(ted.)630 -4722 y(If)c(a)g(required)f(argumen)m(t)i(is)f(not)g(found,)g(and)f +5230 y(If)c(a)g(required)f(argumen)m(t)i(is)f(not)g(found,)g(and)f Fs(getopts)f Ft(is)i(not)h(silen)m(t,)h(a)e(question)g(mark)630 -4831 y(\(`)p Fs(?)p Ft('\))35 b(is)g(placed)g(in)g Fq(name)5 +5340 y(\(`)p Fs(?)p Ft('\))35 b(is)g(placed)g(in)g Fq(name)5 b Ft(,)36 b Fs(OPTARG)d Ft(is)h(unset,)i(and)e(a)h(diagnostic)h -(message)f(is)g(prin)m(ted.)630 4941 y(If)e Fs(getopts)f -Ft(is)h(silen)m(t,)j(then)d(a)i(colon)f(\(`)p Fs(:)p -Ft('\))h(is)e(placed)h(in)g Fq(name)k Ft(and)33 b Fs(OPTARG)f -Ft(is)i(set)g(to)630 5050 y(the)d(option)f(c)m(haracter)i(found.)150 -5207 y Fs(hash)870 5340 y(hash)47 b([-r])f([-p)h Fi(filename)11 -b Fs(])45 b([-dt])h([)p Fi(name)11 b Fs(])p eop end +(message)f(is)g(prin)m(ted.)p eop end %%Page: 40 46 TeXDict begin 40 45 bop 150 -116 a Ft(40)2572 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y(Eac)m(h)h(time)g Fs(hash)e -Ft(is)h(in)m(v)m(ok)m(ed,)j(it)d(remem)m(b)s(ers)g(the)g(full)g -(pathnames)g(of)h(the)f(commands)630 408 y(sp)s(eci\014ed)i(as)i -Fq(name)k Ft(argumen)m(ts,)c(so)g(they)f(need)g(not)g(b)s(e)f(searc)m -(hed)i(for)f(on)g(subsequen)m(t)630 518 y(in)m(v)m(o)s(cations.)79 -b(The)41 b(commands)h(are)h(found)e(b)m(y)h(searc)m(hing)i(through)d -(the)i(directories)630 628 y(listed)33 b(in)g Fs($PATH)p -Ft(.)47 b(An)m(y)33 b(previously-remem)m(b)s(ered)f(pathname)h(is)g -(discarded.)48 b(The)32 b(`)p Fs(-p)p Ft(')630 737 y(option)i(inhibits) -e(the)i(path)f(searc)m(h,)i(and)e Fq(\014lename)38 b -Ft(is)c(used)e(as)i(the)f(lo)s(cation)i(of)f Fq(name)5 -b Ft(.)630 847 y(The)35 b(`)p Fs(-r)p Ft(')g(option)g(causes)h(the)g -(shell)f(to)h(forget)g(all)g(remem)m(b)s(ered)f(lo)s(cations.)56 -b(The)35 b(`)p Fs(-d)p Ft(')630 956 y(option)c(causes)f(the)g(shell)h -(to)f(forget)i(the)e(remem)m(b)s(ered)f(lo)s(cation)j(of)e(eac)m(h)h -Fq(name)5 b Ft(.)41 b(If)30 b(the)630 1066 y(`)p Fs(-t)p -Ft(')35 b(option)h(is)g(supplied,)f(the)h(full)f(pathname)g(to)i(whic)m -(h)e(eac)m(h)h Fq(name)41 b Ft(corresp)s(onds)34 b(is)630 -1176 y(prin)m(ted.)39 b(If)26 b(m)m(ultiple)h Fq(name)32 -b Ft(argumen)m(ts)27 b(are)g(supplied)e(with)h(`)p Fs(-t)p -Ft(')g(the)h Fq(name)32 b Ft(is)26 b(prin)m(ted)630 1285 -y(b)s(efore)f(the)h(hashed)e(full)h(pathname.)39 b(The)25 -b(`)p Fs(-l)p Ft(')h(option)f(causes)h(output)f(to)i(b)s(e)d(displa)m -(y)m(ed)630 1395 y(in)31 b(a)g(format)h(that)f(ma)m(y)h(b)s(e)f(reused) -f(as)h(input.)42 b(If)31 b(no)g(argumen)m(ts)h(are)f(giv)m(en,)i(or)e -(if)g(only)630 1504 y(`)p Fs(-l)p Ft(')44 b(is)f(supplied,)j -(information)e(ab)s(out)g(remem)m(b)s(ered)f(commands)g(is)h(prin)m -(ted.)80 b(The)630 1614 y(return)25 b(status)h(is)f(zero)i(unless)e(a)h -Fq(name)31 b Ft(is)26 b(not)g(found)e(or)i(an)g(in)m(v)-5 -b(alid)26 b(option)g(is)g(supplied.)150 1786 y Fs(pwd)870 -1927 y(pwd)47 b([-LP])630 2068 y Ft(Prin)m(t)24 b(the)h(absolute)g -(pathname)g(of)f(the)h(curren)m(t)f(w)m(orking)h(directory)-8 -b(.)40 b(If)23 b(the)i(`)p Fs(-P)p Ft(')f(option)630 -2178 y(is)36 b(supplied,)f(the)h(pathname)f(prin)m(ted)g(will)h(not)g -(con)m(tain)h(sym)m(b)s(olic)f(links.)55 b(If)35 b(the)h(`)p -Fs(-L)p Ft(')630 2287 y(option)44 b(is)g(supplied,)i(the)e(pathname)f -(prin)m(ted)h(ma)m(y)g(con)m(tain)h(sym)m(b)s(olic)f(links.)80 -b(The)630 2397 y(return)26 b(status)h(is)h(zero)g(unless)e(an)h(error)g -(is)g(encoun)m(tered)g(while)h(determining)f(the)g(name)630 -2506 y(of)k(the)f(curren)m(t)g(directory)h(or)f(an)h(in)m(v)-5 -b(alid)31 b(option)g(is)f(supplied.)150 2679 y Fs(readonly)870 -2819 y(readonly)46 b([-aApf])f([)p Fi(name)11 b Fs([=)p -Fi(value)g Fs(]])43 b(...)630 2960 y Ft(Mark)24 b(eac)m(h)h -Fq(name)k Ft(as)24 b(readonly)-8 b(.)39 b(The)24 b(v)-5 -b(alues)24 b(of)g(these)g(names)g(ma)m(y)g(not)g(b)s(e)g(c)m(hanged)g -(b)m(y)630 3070 y(subsequen)m(t)e(assignmen)m(t.)39 b(If)22 -b(the)h(`)p Fs(-f)p Ft(')f(option)i(is)e(supplied,)h(eac)m(h)h -Fq(name)k Ft(refers)22 b(to)i(a)f(shell)630 3180 y(function.)39 -b(The)26 b(`)p Fs(-a)p Ft(')h(option)g(means)g(eac)m(h)h +b(Reference)g(Man)m(ual)630 299 y(If)i Fs(getopts)f Ft(is)h(silen)m(t,) +j(then)d(a)i(colon)f(\(`)p Fs(:)p Ft('\))h(is)e(placed)h(in)g +Fq(name)k Ft(and)33 b Fs(OPTARG)f Ft(is)i(set)g(to)630 +408 y(the)d(option)f(c)m(haracter)i(found.)150 573 y +Fs(hash)870 710 y(hash)47 b([-r])f([-p)h Fi(filename)11 +b Fs(])45 b([-dt])h([)p Fi(name)11 b Fs(])630 847 y Ft(Eac)m(h)32 +b(time)g Fs(hash)e Ft(is)h(in)m(v)m(ok)m(ed,)j(it)d(remem)m(b)s(ers)g +(the)g(full)g(pathnames)g(of)h(the)f(commands)630 956 +y(sp)s(eci\014ed)i(as)i Fq(name)k Ft(argumen)m(ts,)c(so)g(they)f(need)g +(not)g(b)s(e)f(searc)m(hed)i(for)f(on)g(subsequen)m(t)630 +1066 y(in)m(v)m(o)s(cations.)79 b(The)41 b(commands)h(are)h(found)e(b)m +(y)h(searc)m(hing)i(through)d(the)i(directories)630 1176 +y(listed)33 b(in)g Fs($PATH)p Ft(.)47 b(An)m(y)33 b(previously-remem)m +(b)s(ered)f(pathname)h(is)g(discarded.)48 b(The)32 b(`)p +Fs(-p)p Ft(')630 1285 y(option)i(inhibits)e(the)i(path)f(searc)m(h,)i +(and)e Fq(\014lename)38 b Ft(is)c(used)e(as)i(the)f(lo)s(cation)i(of)f +Fq(name)5 b Ft(.)630 1395 y(The)35 b(`)p Fs(-r)p Ft(')g(option)g +(causes)h(the)g(shell)f(to)h(forget)g(all)g(remem)m(b)s(ered)f(lo)s +(cations.)56 b(The)35 b(`)p Fs(-d)p Ft(')630 1504 y(option)c(causes)f +(the)g(shell)h(to)f(forget)i(the)e(remem)m(b)s(ered)f(lo)s(cation)j(of) +e(eac)m(h)h Fq(name)5 b Ft(.)41 b(If)30 b(the)630 1614 +y(`)p Fs(-t)p Ft(')35 b(option)h(is)g(supplied,)f(the)h(full)f +(pathname)g(to)i(whic)m(h)e(eac)m(h)h Fq(name)41 b Ft(corresp)s(onds)34 +b(is)630 1724 y(prin)m(ted.)39 b(If)26 b(m)m(ultiple)h +Fq(name)32 b Ft(argumen)m(ts)27 b(are)g(supplied)e(with)h(`)p +Fs(-t)p Ft(')g(the)h Fq(name)32 b Ft(is)26 b(prin)m(ted)630 +1833 y(b)s(efore)f(the)h(hashed)e(full)h(pathname.)39 +b(The)25 b(`)p Fs(-l)p Ft(')h(option)f(causes)h(output)f(to)i(b)s(e)d +(displa)m(y)m(ed)630 1943 y(in)31 b(a)g(format)h(that)f(ma)m(y)h(b)s(e) +f(reused)f(as)h(input.)42 b(If)31 b(no)g(argumen)m(ts)h(are)f(giv)m +(en,)i(or)e(if)g(only)630 2052 y(`)p Fs(-l)p Ft(')44 +b(is)f(supplied,)j(information)e(ab)s(out)g(remem)m(b)s(ered)f +(commands)g(is)h(prin)m(ted.)80 b(The)630 2162 y(return)25 +b(status)h(is)f(zero)i(unless)e(a)h Fq(name)31 b Ft(is)26 +b(not)g(found)e(or)i(an)g(in)m(v)-5 b(alid)26 b(option)g(is)g +(supplied.)150 2326 y Fs(pwd)870 2463 y(pwd)47 b([-LP])630 +2600 y Ft(Prin)m(t)24 b(the)h(absolute)g(pathname)g(of)f(the)h(curren)m +(t)f(w)m(orking)h(directory)-8 b(.)40 b(If)23 b(the)i(`)p +Fs(-P)p Ft(')f(option)630 2710 y(is)36 b(supplied,)f(the)h(pathname)f +(prin)m(ted)g(will)h(not)g(con)m(tain)h(sym)m(b)s(olic)f(links.)55 +b(If)35 b(the)h(`)p Fs(-L)p Ft(')630 2819 y(option)44 +b(is)g(supplied,)i(the)e(pathname)f(prin)m(ted)h(ma)m(y)g(con)m(tain)h +(sym)m(b)s(olic)f(links.)80 b(The)630 2929 y(return)26 +b(status)h(is)h(zero)g(unless)e(an)h(error)g(is)g(encoun)m(tered)g +(while)h(determining)f(the)g(name)630 3039 y(of)k(the)f(curren)m(t)g +(directory)h(or)f(an)h(in)m(v)-5 b(alid)31 b(option)g(is)f(supplied.) +150 3203 y Fs(readonly)870 3340 y(readonly)46 b([-aApf])f([)p +Fi(name)11 b Fs([=)p Fi(value)g Fs(]])43 b(...)630 3477 +y Ft(Mark)24 b(eac)m(h)h Fq(name)k Ft(as)24 b(readonly)-8 +b(.)39 b(The)24 b(v)-5 b(alues)24 b(of)g(these)g(names)g(ma)m(y)g(not)g +(b)s(e)g(c)m(hanged)g(b)m(y)630 3587 y(subsequen)m(t)e(assignmen)m(t.) +39 b(If)22 b(the)h(`)p Fs(-f)p Ft(')f(option)i(is)e(supplied,)h(eac)m +(h)h Fq(name)k Ft(refers)22 b(to)i(a)f(shell)630 3696 +y(function.)39 b(The)26 b(`)p Fs(-a)p Ft(')h(option)g(means)g(eac)m(h)h Fq(name)k Ft(refers)26 b(to)i(an)e(indexed)h(arra)m(y)g(v)-5 -b(ariable;)630 3289 y(the)33 b(`)p Fs(-A)p Ft(')g(option)g(means)g(eac) +b(ariable;)630 3806 y(the)33 b(`)p Fs(-A)p Ft(')g(option)g(means)g(eac) m(h)h Fq(name)k Ft(refers)32 b(to)h(an)g(asso)s(ciativ)m(e)j(arra)m(y)d -(v)-5 b(ariable.)49 b(If)32 b(no)630 3399 y Fq(name)f +(v)-5 b(ariable.)49 b(If)32 b(no)630 3915 y Fq(name)f Ft(argumen)m(ts)26 b(are)g(giv)m(en,)i(or)d(if)h(the)g(`)p Fs(-p)p Ft(')f(option)h(is)g(supplied,)f(a)h(list)h(of)e(all)i -(readonly)630 3508 y(names)37 b(is)g(prin)m(ted.)59 b(The)37 +(readonly)630 4025 y(names)37 b(is)g(prin)m(ted.)59 b(The)37 b(`)p Fs(-p)p Ft(')f(option)i(causes)f(output)g(to)g(b)s(e)f(displa)m -(y)m(ed)i(in)e(a)i(format)630 3618 y(that)25 b(ma)m(y)g(b)s(e)e(reused) +(y)m(ed)i(in)e(a)i(format)630 4134 y(that)25 b(ma)m(y)g(b)s(e)e(reused) h(as)g(input.)38 b(If)24 b(a)g(v)-5 b(ariable)25 b(name)g(is)f(follo)m (w)m(ed)i(b)m(y)e(=)p Fq(v)-5 b(alue)5 b Ft(,)26 b(the)e(v)-5 -b(alue)630 3727 y(of)26 b(the)h(v)-5 b(ariable)27 b(is)f(set)h(to)g +b(alue)630 4244 y(of)26 b(the)h(v)-5 b(ariable)27 b(is)f(set)h(to)g Fq(v)-5 b(alue)5 b Ft(.)40 b(The)26 b(return)f(status)i(is)f(zero)h -(unless)e(an)i(in)m(v)-5 b(alid)26 b(option)630 3837 +(unless)e(an)i(in)m(v)-5 b(alid)26 b(option)630 4354 y(is)k(supplied,)f(one)h(of)g(the)g Fq(name)35 b Ft(argumen)m(ts)30 b(is)g(not)g(a)g(v)-5 b(alid)31 b(shell)f(v)-5 b(ariable)30 -b(or)g(function)630 3947 y(name,)h(or)f(the)h(`)p Fs(-f)p +b(or)g(function)630 4463 y(name,)h(or)f(the)h(`)p Fs(-f)p Ft(')f(option)h(is)f(supplied)f(with)h(a)h(name)f(that)h(is)g(not)f(a)h -(shell)g(function.)150 4119 y Fs(return)870 4260 y(return)46 -b([)p Fi(n)11 b Fs(])630 4401 y Ft(Cause)30 b(a)g(shell)g(function)g +(shell)g(function.)150 4628 y Fs(return)870 4765 y(return)46 +b([)p Fi(n)11 b Fs(])630 4902 y Ft(Cause)30 b(a)g(shell)g(function)g (to)h(exit)f(with)g(the)g(return)f(v)-5 b(alue)31 b Fq(n)p Ft(.)40 b(If)29 b Fq(n)h Ft(is)g(not)g(supplied,)f(the)630 -4510 y(return)35 b(v)-5 b(alue)37 b(is)f(the)g(exit)h(status)f(of)h +5011 y(return)35 b(v)-5 b(alue)37 b(is)f(the)g(exit)h(status)f(of)h (the)f(last)h(command)f(executed)h(in)f(the)g(function.)630 -4620 y(This)21 b(ma)m(y)i(also)g(b)s(e)e(used)g(to)i(terminate)g +5121 y(This)21 b(ma)m(y)i(also)g(b)s(e)e(used)g(to)i(terminate)g (execution)g(of)f(a)h(script)f(b)s(eing)f(executed)i(with)f(the)630 -4729 y Fs(.)27 b Ft(\(or)g Fs(source)p Ft(\))f(builtin,)i(returning)e +5230 y Fs(.)27 b Ft(\(or)g Fs(source)p Ft(\))f(builtin,)i(returning)e (either)h Fq(n)g Ft(or)g(the)g(exit)h(status)g(of)f(the)g(last)h -(command)630 4839 y(executed)46 b(within)f(the)g(script)g(as)h(the)f -(exit)h(status)g(of)f(the)h(script.)85 b(An)m(y)45 b(command)630 -4949 y(asso)s(ciated)30 b(with)e(the)g Fs(RETURN)f Ft(trap)h(is)g -(executed)h(b)s(efore)f(execution)h(resumes)f(after)h(the)630 -5058 y(function)38 b(or)f(script.)63 b(The)38 b(return)e(status)i(is)g -(non-zero)h(if)e Fs(return)g Ft(is)g(used)g(outside)i(a)630 -5168 y(function)30 b(and)g(not)g(during)g(the)g(execution)i(of)e(a)h -(script)f(b)m(y)h Fs(.)f Ft(or)g Fs(source)p Ft(.)150 -5340 y Fs(shift)p eop end +(command)630 5340 y(executed)46 b(within)f(the)g(script)g(as)h(the)f +(exit)h(status)g(of)f(the)h(script.)85 b(An)m(y)45 b(command)p +eop end %%Page: 41 47 TeXDict begin 41 46 bop 150 -116 a Ft(Chapter)30 b(4:)41 -b(Shell)30 b(Builtin)h(Commands)2069 b(41)870 299 y Fs(shift)46 -b([)p Fi(n)11 b Fs(])630 432 y Ft(Shift)41 b(the)g(p)s(ositional)h -(parameters)g(to)g(the)f(left)h(b)m(y)g Fq(n)p Ft(.)73 -b(The)40 b(p)s(ositional)j(parameters)630 542 y(from)34 -b Fq(n)p Fs(+)p Ft(1)39 b(.)22 b(.)h(.)45 b Fs($#)34 -b Ft(are)g(renamed)g(to)h Fs($1)k Ft(.)22 b(.)g(.)46 -b Fs($#)p Ft(-)p Fq(n)p Ft(.)51 b(P)m(arameters)36 b(represen)m(ted)e -(b)m(y)g(the)630 651 y(n)m(um)m(b)s(ers)25 b Fs($#)i -Ft(to)g Fs($#)p Ft(-)p Fq(n)p Fs(+)p Ft(1)g(are)g(unset.)39 +b(Shell)30 b(Builtin)h(Commands)2069 b(41)630 299 y(asso)s(ciated)30 +b(with)e(the)g Fs(RETURN)f Ft(trap)h(is)g(executed)h(b)s(efore)f +(execution)h(resumes)f(after)h(the)630 408 y(function)38 +b(or)f(script.)63 b(The)38 b(return)e(status)i(is)g(non-zero)h(if)e +Fs(return)g Ft(is)g(used)g(outside)i(a)630 518 y(function)30 +b(and)g(not)g(during)g(the)g(execution)i(of)e(a)h(script)f(b)m(y)h +Fs(.)f Ft(or)g Fs(source)p Ft(.)150 682 y Fs(shift)870 +819 y(shift)46 b([)p Fi(n)11 b Fs(])630 956 y Ft(Shift)41 +b(the)g(p)s(ositional)h(parameters)g(to)g(the)f(left)h(b)m(y)g +Fq(n)p Ft(.)73 b(The)40 b(p)s(ositional)j(parameters)630 +1066 y(from)34 b Fq(n)p Fs(+)p Ft(1)39 b(.)22 b(.)h(.)45 +b Fs($#)34 b Ft(are)g(renamed)g(to)h Fs($1)k Ft(.)22 +b(.)g(.)46 b Fs($#)p Ft(-)p Fq(n)p Ft(.)51 b(P)m(arameters)36 +b(represen)m(ted)e(b)m(y)g(the)630 1176 y(n)m(um)m(b)s(ers)25 +b Fs($#)i Ft(to)g Fs($#)p Ft(-)p Fq(n)p Fs(+)p Ft(1)g(are)g(unset.)39 b Fq(n)26 b Ft(m)m(ust)h(b)s(e)f(a)i(non-negativ)m(e)h(n)m(um)m(b)s(er) -c(less)i(than)g(or)630 761 y(equal)33 b(to)h Fs($#)p +c(less)i(than)g(or)630 1285 y(equal)33 b(to)h Fs($#)p Ft(.)47 b(If)33 b Fq(n)f Ft(is)h(zero)g(or)g(greater)h(than)f Fs($#)p Ft(,)g(the)g(p)s(ositional)g(parameters)g(are)h(not)630 -871 y(c)m(hanged.)48 b(If)32 b Fq(n)g Ft(is)h(not)f(supplied,)h(it)g +1395 y(c)m(hanged.)48 b(If)32 b Fq(n)g Ft(is)h(not)f(supplied,)h(it)g (is)f(assumed)g(to)h(b)s(e)f(1.)48 b(The)32 b(return)g(status)h(is)f -(zero)630 980 y(unless)e Fq(n)f Ft(is)i(greater)g(than)g +(zero)630 1504 y(unless)e Fq(n)f Ft(is)i(greater)g(than)g Fs($#)e Ft(or)i(less)f(than)h(zero,)g(non-zero)g(otherwise.)150 -1137 y Fs(test)150 1247 y([)432 b Ft(Ev)-5 b(aluate)31 +1669 y Fs(test)150 1778 y([)432 b Ft(Ev)-5 b(aluate)31 b(a)g(conditional)g(expression)f Fq(expr)7 b Ft(.)40 b(Eac)m(h)30 b(op)s(erator)h(and)e(op)s(erand)g(m)m(ust)h(b)s(e)g(a)630 -1357 y(separate)d(argumen)m(t.)40 b(Expressions)25 b(are)i(comp)s(osed) +1888 y(separate)d(argumen)m(t.)40 b(Expressions)25 b(are)i(comp)s(osed) e(of)i(the)f(primaries)g(describ)s(ed)f(b)s(elo)m(w)630 -1466 y(in)34 b(Section)g(6.4)h([Bash)g(Conditional)f(Expressions],)h +1998 y(in)34 b(Section)g(6.4)h([Bash)g(Conditional)f(Expressions],)h (page)g(78.)52 b Fs(test)33 b Ft(do)s(es)g(not)h(accept)630 -1576 y(an)m(y)27 b(options,)i(nor)d(do)s(es)h(it)g(accept)i(and)d +2107 y(an)m(y)27 b(options,)i(nor)d(do)s(es)h(it)g(accept)i(and)d (ignore)i(an)f(argumen)m(t)g(of)g(`)p Fs(--)p Ft(')g(as)h(signifying)f -(the)630 1685 y(end)j(of)g(options.)630 1819 y(When)g(the)h +(the)630 2217 y(end)j(of)g(options.)630 2354 y(When)g(the)h Fs([)f Ft(form)g(is)g(used,)g(the)g(last)i(argumen)m(t)e(to)i(the)e -(command)g(m)m(ust)h(b)s(e)e(a)i Fs(])p Ft(.)630 1952 +(command)g(m)m(ust)h(b)s(e)e(a)i Fs(])p Ft(.)630 2491 y(Expressions)23 b(ma)m(y)h(b)s(e)e(com)m(bined)i(using)f(the)h(follo)m (wing)h(op)s(erators,)g(listed)f(in)f(decreasing)630 -2062 y(order)30 b(of)h(precedence.)43 b(The)30 b(ev)-5 +2600 y(order)30 b(of)h(precedence.)43 b(The)30 b(ev)-5 b(aluation)33 b(dep)s(ends)28 b(on)j(the)g(n)m(um)m(b)s(er)f(of)h -(argumen)m(ts;)g(see)630 2171 y(b)s(elo)m(w.)630 2329 +(argumen)m(ts;)g(see)630 2710 y(b)s(elo)m(w.)630 2874 y Fs(!)f Fi(expr)210 b Ft(T)-8 b(rue)30 b(if)g Fq(expr)37 -b Ft(is)30 b(false.)630 2486 y Fs(\()g Fi(expr)40 b Fs(\))122 +b Ft(is)30 b(false.)630 3039 y Fs(\()g Fi(expr)40 b Fs(\))122 b Ft(Returns)23 b(the)h(v)-5 b(alue)24 b(of)g Fq(expr)7 b Ft(.)37 b(This)23 b(ma)m(y)i(b)s(e)e(used)g(to)h(o)m(v)m(erride)h -(the)f(normal)1110 2595 y(precedence)31 b(of)f(op)s(erators.)630 -2753 y Fi(expr1)39 b Fs(-a)30 b Fi(expr2)1110 2862 y +(the)f(normal)1110 3148 y(precedence)31 b(of)f(op)s(erators.)630 +3313 y Fi(expr1)39 b Fs(-a)30 b Fi(expr2)1110 3422 y Ft(T)-8 b(rue)30 b(if)g(b)s(oth)g Fq(expr1)37 b Ft(and)30 -b Fq(expr2)38 b Ft(are)30 b(true.)630 3020 y Fi(expr1)39 -b Fs(-o)30 b Fi(expr2)1110 3129 y Ft(T)-8 b(rue)30 b(if)g(either)h +b Fq(expr2)38 b Ft(are)30 b(true.)630 3587 y Fi(expr1)39 +b Fs(-o)30 b Fi(expr2)1110 3696 y Ft(T)-8 b(rue)30 b(if)g(either)h Fq(expr1)38 b Ft(or)30 b Fq(expr2)37 b Ft(is)31 b(true.)630 -3286 y(The)37 b Fs(test)f Ft(and)g Fs([)h Ft(builtins)g(ev)-5 +3861 y(The)37 b Fs(test)f Ft(and)g Fs([)h Ft(builtins)g(ev)-5 b(aluate)39 b(conditional)f(expressions)f(using)g(a)g(set)h(of)f(rules) -630 3396 y(based)30 b(on)g(the)h(n)m(um)m(b)s(er)e(of)h(argumen)m(ts.) -630 3553 y(0)h(argumen)m(ts)1110 3663 y(The)f(expression)g(is)g(false.) -630 3820 y(1)h(argumen)m(t)1110 3930 y(The)f(expression)g(is)g(true)h +630 3970 y(based)30 b(on)g(the)h(n)m(um)m(b)s(er)e(of)h(argumen)m(ts.) +630 4134 y(0)h(argumen)m(ts)1110 4244 y(The)f(expression)g(is)g(false.) +630 4408 y(1)h(argumen)m(t)1110 4518 y(The)f(expression)g(is)g(true)h (if)f(and)g(only)g(if)h(the)f(argumen)m(t)h(is)f(not)h(n)m(ull.)630 -4087 y(2)g(argumen)m(ts)1110 4196 y(If)f(the)h(\014rst)f(argumen)m(t)h +4682 y(2)g(argumen)m(ts)1110 4792 y(If)f(the)h(\014rst)f(argumen)m(t)h (is)g(`)p Fs(!)p Ft(',)g(the)g(expression)g(is)g(true)f(if)h(and)f -(only)h(if)g(the)1110 4306 y(second)j(argumen)m(t)f(is)h(n)m(ull.)50 +(only)h(if)g(the)1110 4902 y(second)j(argumen)m(t)f(is)h(n)m(ull.)50 b(If)33 b(the)h(\014rst)e(argumen)m(t)i(is)g(one)g(of)f(the)h(unary) -1110 4416 y(conditional)42 b(op)s(erators)f(\(see)g(Section)h(6.4)f -([Bash)g(Conditional)g(Expres-)1110 4525 y(sions],)34 +1110 5011 y(conditional)42 b(op)s(erators)f(\(see)g(Section)h(6.4)f +([Bash)g(Conditional)g(Expres-)1110 5121 y(sions],)34 b(page)f(78\),)i(the)e(expression)f(is)h(true)g(if)g(the)g(unary)e -(test)j(is)f(true.)47 b(If)1110 4635 y(the)33 b(\014rst)g(argumen)m(t)h +(test)j(is)f(true.)47 b(If)1110 5230 y(the)33 b(\014rst)g(argumen)m(t)h (is)f(not)g(a)h(v)-5 b(alid)34 b(unary)e(op)s(erator,)i(the)g -(expression)f(is)1110 4744 y(false.)630 4902 y(3)e(argumen)m(ts)1110 -5011 y(If)k(the)g(second)g(argumen)m(t)g(is)g(one)h(of)f(the)g(binary)f -(conditional)j(op)s(erators)1110 5121 y(\(see)23 b(Section)g(6.4)f -([Bash)h(Conditional)f(Expressions],)h(page)g(78\),)i(the)d(result)1110 -5230 y(of)44 b(the)h(expression)f(is)g(the)g(result)g(of)h(the)f -(binary)g(test)h(using)e(the)i(\014rst)1110 5340 y(and)31 -b(third)g(argumen)m(ts)i(as)f(op)s(erands.)44 b(The)31 -b(`)p Fs(-a)p Ft(')h(and)g(`)p Fs(-o)p Ft(')f(op)s(erators)i(are)p -eop end +(expression)f(is)1110 5340 y(false.)p eop end %%Page: 42 48 TeXDict begin 42 47 bop 150 -116 a Ft(42)2572 b(Bash)31 -b(Reference)g(Man)m(ual)1110 299 y(considered)25 b(binary)g(op)s -(erators)g(when)f(there)i(are)f(three)h(argumen)m(ts.)39 -b(If)25 b(the)1110 408 y(\014rst)j(argumen)m(t)h(is)g(`)p +b(Reference)g(Man)m(ual)630 299 y(3)g(argumen)m(ts)1110 +408 y(If)k(the)g(second)g(argumen)m(t)g(is)g(one)h(of)f(the)g(binary)f +(conditional)j(op)s(erators)1110 518 y(\(see)23 b(Section)g(6.4)f +([Bash)h(Conditional)f(Expressions],)h(page)g(78\),)i(the)d(result)1110 +628 y(of)44 b(the)h(expression)f(is)g(the)g(result)g(of)h(the)f(binary) +g(test)h(using)e(the)i(\014rst)1110 737 y(and)31 b(third)g(argumen)m +(ts)i(as)f(op)s(erands.)44 b(The)31 b(`)p Fs(-a)p Ft(')h(and)g(`)p +Fs(-o)p Ft(')f(op)s(erators)i(are)1110 847 y(considered)25 +b(binary)g(op)s(erators)g(when)f(there)i(are)f(three)h(argumen)m(ts.)39 +b(If)25 b(the)1110 956 y(\014rst)j(argumen)m(t)h(is)g(`)p Fs(!)p Ft(',)h(the)f(v)-5 b(alue)29 b(is)g(the)g(negation)i(of)e(the)g -(t)m(w)m(o-argumen)m(t)1110 518 y(test)38 b(using)f(the)g(second)g(and) -g(third)f(argumen)m(ts.)61 b(If)37 b(the)g(\014rst)f(argumen)m(t)1110 -628 y(is)j(exactly)i(`)p Fs(\()p Ft(')f(and)f(the)g(third)g(argumen)m -(t)h(is)f(exactly)i(`)p Fs(\))p Ft(',)h(the)e(result)f(is)1110 -737 y(the)46 b(one-argumen)m(t)g(test)h(of)f(the)f(second)h(argumen)m -(t.)86 b(Otherwise,)50 b(the)1110 847 y(expression)30 -b(is)h(false.)630 1003 y(4)g(argumen)m(ts)1110 1113 y(If)h(the)i +(t)m(w)m(o-argumen)m(t)1110 1066 y(test)38 b(using)f(the)g(second)g +(and)g(third)f(argumen)m(ts.)61 b(If)37 b(the)g(\014rst)f(argumen)m(t) +1110 1176 y(is)j(exactly)i(`)p Fs(\()p Ft(')f(and)f(the)g(third)g +(argumen)m(t)h(is)f(exactly)i(`)p Fs(\))p Ft(',)h(the)e(result)f(is) +1110 1285 y(the)46 b(one-argumen)m(t)g(test)h(of)f(the)f(second)h +(argumen)m(t.)86 b(Otherwise,)50 b(the)1110 1395 y(expression)30 +b(is)h(false.)630 1555 y(4)g(argumen)m(ts)1110 1665 y(If)h(the)i (\014rst)e(argumen)m(t)h(is)g(`)p Fs(!)p Ft(',)h(the)f(result)g(is)g -(the)g(negation)h(of)f(the)g(three-)1110 1223 y(argumen)m(t)h +(the)g(negation)h(of)f(the)g(three-)1110 1774 y(argumen)m(t)h (expression)f(comp)s(osed)h(of)f(the)h(remaining)g(argumen)m(ts.)50 -b(Oth-)1110 1332 y(erwise,)34 b(the)f(expression)g(is)g(parsed)g(and)f -(ev)-5 b(aluated)34 b(according)h(to)e(prece-)1110 1442 +b(Oth-)1110 1884 y(erwise,)34 b(the)f(expression)g(is)g(parsed)g(and)f +(ev)-5 b(aluated)34 b(according)h(to)e(prece-)1110 1993 y(dence)e(using)e(the)i(rules)f(listed)h(ab)s(o)m(v)m(e.)630 -1598 y(5)g(or)f(more)h(argumen)m(ts)1110 1708 y(The)43 +2153 y(5)g(or)f(more)h(argumen)m(ts)1110 2263 y(The)43 b(expression)f(is)i(parsed)e(and)g(ev)-5 b(aluated)45 -b(according)f(to)f(precedence)1110 1817 y(using)30 b(the)g(rules)g -(listed)h(ab)s(o)m(v)m(e.)150 1974 y Fs(times)870 2107 -y(times)630 2240 y Ft(Prin)m(t)37 b(out)h(the)g(user)e(and)h(system)g +b(according)f(to)f(precedence)1110 2373 y(using)30 b(the)g(rules)g +(listed)h(ab)s(o)m(v)m(e.)150 2533 y Fs(times)870 2668 +y(times)630 2803 y Ft(Prin)m(t)37 b(out)h(the)g(user)e(and)h(system)g (times)h(used)f(b)m(y)g(the)h(shell)f(and)g(its)h(c)m(hildren.)61 -b(The)630 2350 y(return)29 b(status)i(is)f(zero.)150 -2506 y Fs(trap)870 2639 y(trap)47 b([-lp])f([)p Fi(arg)11 -b Fs(])46 b([)p Fi(sigspec)56 b Fs(...)o(])630 2772 y +b(The)630 2912 y(return)29 b(status)i(is)f(zero.)150 +3072 y Fs(trap)870 3207 y(trap)47 b([-lp])f([)p Fi(arg)11 +b Fs(])46 b([)p Fi(sigspec)56 b Fs(...)o(])630 3342 y Ft(The)43 b(commands)f(in)h Fq(arg)51 b Ft(are)44 b(to)g(b)s(e)e(read)h (and)g(executed)h(when)e(the)h(shell)g(receiv)m(es)630 -2882 y(signal)36 b Fq(sigsp)s(ec)6 b Ft(.)55 b(If)35 +3452 y(signal)36 b Fq(sigsp)s(ec)6 b Ft(.)55 b(If)35 b Fq(arg)44 b Ft(is)35 b(absen)m(t)h(\(and)f(there)g(is)g(a)h(single)g Fq(sigsp)s(ec)6 b Ft(\))35 b(or)h(equal)f(to)i(`)p Fs(-)p -Ft(',)630 2992 y(eac)m(h)28 b(sp)s(eci\014ed)e(signal's)h(disp)s +Ft(',)630 3561 y(eac)m(h)28 b(sp)s(eci\014ed)e(signal's)h(disp)s (osition)f(is)h(reset)g(to)g(the)g(v)-5 b(alue)27 b(it)g(had)f(when)f -(the)i(shell)g(w)m(as)630 3101 y(started.)63 b(If)37 +(the)i(shell)g(w)m(as)630 3671 y(started.)63 b(If)37 b Fq(arg)46 b Ft(is)37 b(the)h(n)m(ull)g(string,)h(then)e(the)h(signal) h(sp)s(eci\014ed)d(b)m(y)i(eac)m(h)h Fq(sigsp)s(ec)k -Ft(is)630 3211 y(ignored)36 b(b)m(y)g(the)g(shell)g(and)g(commands)f +Ft(is)630 3780 y(ignored)36 b(b)m(y)g(the)g(shell)g(and)g(commands)f (it)i(in)m(v)m(ok)m(es.)59 b(If)35 b Fq(arg)45 b Ft(is)36 -b(not)g(presen)m(t)g(and)f(`)p Fs(-p)p Ft(')630 3320 +b(not)g(presen)m(t)g(and)f(`)p Fs(-p)p Ft(')630 3890 y(has)e(b)s(een)g(supplied,)f(the)i(shell)f(displa)m(ys)h(the)f(trap)g -(commands)g(asso)s(ciated)i(with)e(eac)m(h)630 3430 y +(commands)g(asso)s(ciated)i(with)e(eac)m(h)630 4000 y Fq(sigsp)s(ec)6 b Ft(.)40 b(If)28 b(no)g(argumen)m(ts)h(are)g (supplied,)f(or)g(only)h(`)p Fs(-p)p Ft(')f(is)g(giv)m(en,)i -Fs(trap)e Ft(prin)m(ts)g(the)g(list)630 3540 y(of)g(commands)f(asso)s +Fs(trap)e Ft(prin)m(ts)g(the)g(list)630 4109 y(of)g(commands)f(asso)s (ciated)i(with)f(eac)m(h)h(signal)f(n)m(um)m(b)s(er)e(in)i(a)g(form)f -(that)h(ma)m(y)h(b)s(e)e(reused)630 3649 y(as)34 b(shell)g(input.)51 +(that)h(ma)m(y)h(b)s(e)e(reused)630 4219 y(as)34 b(shell)g(input.)51 b(The)33 b(`)p Fs(-l)p Ft(')h(option)g(causes)h(the)f(shell)g(to)h -(prin)m(t)e(a)i(list)f(of)g(signal)h(names)630 3759 y(and)j(their)h +(prin)m(t)e(a)i(list)f(of)g(signal)h(names)630 4328 y(and)j(their)h (corresp)s(onding)f(n)m(um)m(b)s(ers.)65 b(Eac)m(h)39 b Fq(sigsp)s(ec)45 b Ft(is)39 b(either)g(a)g(signal)h(name)f(or)g(a)630 -3868 y(signal)27 b(n)m(um)m(b)s(er.)39 b(Signal)27 b(names)f(are)h +4438 y(signal)27 b(n)m(um)m(b)s(er.)39 b(Signal)27 b(names)f(are)h (case)h(insensitiv)m(e)g(and)e(the)g Fs(SIG)g Ft(pre\014x)g(is)h -(optional.)630 4001 y(If)35 b(a)g Fq(sigsp)s(ec)41 b +(optional.)630 4573 y(If)35 b(a)g Fq(sigsp)s(ec)41 b Ft(is)35 b Fs(0)g Ft(or)g Fs(EXIT)p Ft(,)g Fq(arg)43 b Ft(is)35 b(executed)h(when)e(the)h(shell)h(exits.)55 -b(If)35 b(a)g Fq(sigsp)s(ec)41 b Ft(is)630 4111 y Fs(DEBUG)p +b(If)35 b(a)g Fq(sigsp)s(ec)41 b Ft(is)630 4682 y Fs(DEBUG)p Ft(,)32 b(the)g(command)g Fq(arg)40 b Ft(is)33 b(executed)g(b)s(efore)f (ev)m(ery)h(simple)f(command,)h Fs(for)e Ft(com-)630 -4221 y(mand,)d Fs(case)g Ft(command,)h Fs(select)e Ft(command,)i(ev)m -(ery)h(arithmetic)g Fs(for)d Ft(command,)j(and)630 4330 +4792 y(mand,)d Fs(case)g Ft(command,)h Fs(select)e Ft(command,)i(ev)m +(ery)h(arithmetic)g Fs(for)d Ft(command,)j(and)630 4902 y(b)s(efore)22 b(the)g(\014rst)f(command)h(executes)i(in)e(a)g(shell)h (function.)37 b(Refer)22 b(to)h(the)g(description)f(of)630 -4440 y(the)i Fs(extdebug)d Ft(option)j(to)h(the)f Fs(shopt)e +5011 y(the)i Fs(extdebug)d Ft(option)j(to)h(the)f Fs(shopt)e Ft(builtin)h(\(see)i(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)630 -4549 y(page)33 b(57\))g(for)f(details)h(of)f(its)h(e\013ect)g(on)f(the) +5121 y(page)33 b(57\))g(for)f(details)h(of)f(its)h(e\013ect)g(on)f(the) g Fs(DEBUG)f Ft(trap.)46 b(If)31 b(a)i Fq(sigsp)s(ec)38 -b Ft(is)32 b Fs(RETURN)p Ft(,)f(the)630 4659 y(command)h +b Ft(is)32 b Fs(RETURN)p Ft(,)f(the)630 5230 y(command)h Fq(arg)41 b Ft(is)33 b(executed)g(eac)m(h)h(time)f(a)g(shell)g -(function)g(or)f(a)h(script)g(executed)g(with)630 4769 +(function)g(or)f(a)h(script)g(executed)g(with)630 5340 y(the)e Fs(.)f Ft(or)g Fs(source)f Ft(builtins)g(\014nishes)h -(executing.)630 4902 y(If)g(a)i Fq(sigsp)s(ec)k Ft(is)31 -b Fs(ERR)p Ft(,)f(the)h(command)g Fq(arg)39 b Ft(is)31 -b(executed)g(whenev)m(er)g(a)g(simple)g(command)630 5011 -y(has)k(a)h(non-zero)h(exit)f(status,)i(sub)5 b(ject)35 -b(to)h(the)g(follo)m(wing)h(conditions.)57 b(The)35 b -Fs(ERR)g Ft(trap)630 5121 y(is)30 b(not)f(executed)i(if)e(the)h(failed) -g(command)g(is)f(part)h(of)f(the)h(command)f(list)i(immediately)630 -5230 y(follo)m(wing)47 b(an)d Fs(until)g Ft(or)h Fs(while)f -Ft(k)m(eyw)m(ord,)49 b(part)c(of)g(the)h(test)g(follo)m(wing)g(the)f -Fs(if)g Ft(or)630 5340 y Fs(elif)d Ft(reserv)m(ed)i(w)m(ords,)j(part)c -(of)h(a)g(command)f(executed)i(in)e(a)h Fs(&&)f Ft(or)h -Fs(||)f Ft(list,)k(or)d(if)p eop end +(executing.)p eop end %%Page: 43 49 TeXDict begin 43 48 bop 150 -116 a Ft(Chapter)30 b(4:)41 -b(Shell)30 b(Builtin)h(Commands)2069 b(43)630 299 y(the)40 -b(command's)g(return)f(status)h(is)g(b)s(eing)f(in)m(v)m(erted)i(using) -f Fs(!)p Ft(.)68 b(These)40 b(are)g(the)h(same)630 408 -y(conditions)31 b(ob)s(ey)m(ed)f(b)m(y)h(the)f Fs(errexit)f -Ft(option.)630 545 y(Signals)37 b(ignored)f(up)s(on)f(en)m(try)i(to)g +b(Shell)30 b(Builtin)h(Commands)2069 b(43)630 299 y(If)30 +b(a)i Fq(sigsp)s(ec)k Ft(is)31 b Fs(ERR)p Ft(,)f(the)h(command)g +Fq(arg)39 b Ft(is)31 b(executed)g(whenev)m(er)g(a)g(simple)g(command) +630 408 y(has)k(a)h(non-zero)h(exit)f(status,)i(sub)5 +b(ject)35 b(to)h(the)g(follo)m(wing)h(conditions.)57 +b(The)35 b Fs(ERR)g Ft(trap)630 518 y(is)30 b(not)f(executed)i(if)e +(the)h(failed)g(command)g(is)f(part)h(of)f(the)h(command)f(list)i +(immediately)630 628 y(follo)m(wing)47 b(an)d Fs(until)g +Ft(or)h Fs(while)f Ft(k)m(eyw)m(ord,)49 b(part)c(of)g(the)h(test)g +(follo)m(wing)g(the)f Fs(if)g Ft(or)630 737 y Fs(elif)d +Ft(reserv)m(ed)i(w)m(ords,)j(part)c(of)h(a)g(command)f(executed)i(in)e +(a)h Fs(&&)f Ft(or)h Fs(||)f Ft(list,)k(or)d(if)630 847 +y(the)c(command's)g(return)f(status)h(is)g(b)s(eing)f(in)m(v)m(erted)i +(using)f Fs(!)p Ft(.)68 b(These)40 b(are)g(the)h(same)630 +956 y(conditions)31 b(ob)s(ey)m(ed)f(b)m(y)h(the)f Fs(errexit)f +Ft(option.)630 1088 y(Signals)37 b(ignored)f(up)s(on)f(en)m(try)i(to)g (the)f(shell)h(cannot)g(b)s(e)f(trapp)s(ed)f(or)h(reset.)59 -b(T)-8 b(rapp)s(ed)630 654 y(signals)28 b(that)f(are)h(not)f(b)s(eing)g -(ignored)g(are)g(reset)h(to)g(their)f(original)h(v)-5 -b(alues)28 b(in)e(a)i(subshell)630 764 y(or)i(subshell)g(en)m(vironmen) -m(t)h(when)e(one)i(is)f(created.)630 900 y(The)g(return)f(status)i(is)f -(zero)h(unless)f(a)h Fq(sigsp)s(ec)36 b Ft(do)s(es)30 -b(not)h(sp)s(ecify)f(a)g(v)-5 b(alid)31 b(signal.)150 -1063 y Fs(umask)870 1199 y(umask)46 b([-p])h([-S])g([)p -Fi(mode)11 b Fs(])630 1335 y Ft(Set)29 b(the)h(shell)f(pro)s(cess's)g +b(T)-8 b(rapp)s(ed)630 1198 y(signals)28 b(that)f(are)h(not)f(b)s(eing) +g(ignored)g(are)g(reset)h(to)g(their)f(original)h(v)-5 +b(alues)28 b(in)e(a)i(subshell)630 1308 y(or)i(subshell)g(en)m +(vironmen)m(t)h(when)e(one)i(is)f(created.)630 1440 y(The)g(return)f +(status)i(is)f(zero)h(unless)f(a)h Fq(sigsp)s(ec)36 b +Ft(do)s(es)30 b(not)h(sp)s(ecify)f(a)g(v)-5 b(alid)31 +b(signal.)150 1594 y Fs(umask)870 1726 y(umask)46 b([-p])h([-S])g([)p +Fi(mode)11 b Fs(])630 1858 y Ft(Set)29 b(the)h(shell)f(pro)s(cess's)g (\014le)g(creation)h(mask)f(to)h Fq(mo)s(de)5 b Ft(.)40 b(If)28 b Fq(mo)s(de)34 b Ft(b)s(egins)29 b(with)f(a)i(digit,)630 -1445 y(it)e(is)f(in)m(terpreted)g(as)g(an)g(o)s(ctal)i(n)m(um)m(b)s +1967 y(it)e(is)f(in)m(terpreted)g(as)g(an)g(o)s(ctal)i(n)m(um)m(b)s (er;)e(if)g(not,)h(it)g(is)f(in)m(terpreted)g(as)g(a)h(sym)m(b)s(olic)f -(mo)s(de)630 1554 y(mask)i(similar)g(to)g(that)h(accepted)g(b)m(y)f +(mo)s(de)630 2077 y(mask)i(similar)g(to)g(that)h(accepted)g(b)m(y)f (the)g Fs(chmod)e Ft(command.)40 b(If)28 b Fq(mo)s(de)34 -b Ft(is)28 b(omitted,)j(the)630 1664 y(curren)m(t)36 +b Ft(is)28 b(omitted,)j(the)630 2187 y(curren)m(t)36 b(v)-5 b(alue)36 b(of)g(the)h(mask)f(is)g(prin)m(ted.)57 b(If)35 b(the)h(`)p Fs(-S)p Ft(')g(option)h(is)f(supplied)f(without)h -(a)630 1773 y Fq(mo)s(de)k Ft(argumen)m(t,)d(the)e(mask)g(is)g(prin)m +(a)630 2296 y Fq(mo)s(de)k Ft(argumen)m(t,)d(the)e(mask)g(is)g(prin)m (ted)g(in)g(a)h(sym)m(b)s(olic)f(format.)55 b(If)35 b(the)g(`)p -Fs(-p)p Ft(')g(option)630 1883 y(is)f(supplied,)f(and)g +Fs(-p)p Ft(')g(option)630 2406 y(is)f(supplied,)f(and)g Fq(mo)s(de)38 b Ft(is)33 b(omitted,)j(the)e(output)f(is)g(in)h(a)g -(form)f(that)h(ma)m(y)g(b)s(e)f(reused)630 1993 y(as)e(input.)41 +(form)f(that)h(ma)m(y)g(b)s(e)f(reused)630 2515 y(as)e(input.)41 b(The)31 b(return)f(status)h(is)g(zero)h(if)e(the)h(mo)s(de)g(is)g -(successfully)g(c)m(hanged)g(or)g(if)g(no)630 2102 y +(successfully)g(c)m(hanged)g(or)g(if)g(no)630 2625 y Fq(mo)s(de)k Ft(argumen)m(t)c(is)f(supplied,)g(and)f(non-zero)i -(otherwise.)630 2238 y(Note)38 b(that)e(when)g(the)g(mo)s(de)g(is)g(in) +(otherwise.)630 2757 y(Note)38 b(that)e(when)g(the)g(mo)s(de)g(is)g(in) m(terpreted)h(as)f(an)g(o)s(ctal)i(n)m(um)m(b)s(er,)e(eac)m(h)i(n)m(um) -m(b)s(er)d(of)630 2348 y(the)f(umask)g(is)h(subtracted)f(from)f +m(b)s(er)d(of)630 2866 y(the)f(umask)g(is)h(subtracted)f(from)f Fs(7)p Ft(.)53 b(Th)m(us,)34 b(a)h(umask)e(of)i Fs(022)e -Ft(results)h(in)g(p)s(ermissions)630 2457 y(of)d Fs(755)p -Ft(.)150 2620 y Fs(unset)870 2756 y(unset)46 b([-fv])h([)p -Fi(name)11 b Fs(])630 2892 y Ft(Eac)m(h)34 b(v)-5 b(ariable)33 +Ft(results)h(in)g(p)s(ermissions)630 2976 y(of)d Fs(755)p +Ft(.)150 3130 y Fs(unset)870 3262 y(unset)46 b([-fv])h([)p +Fi(name)11 b Fs(])630 3394 y Ft(Eac)m(h)34 b(v)-5 b(ariable)33 b(or)g(function)g Fq(name)38 b Ft(is)33 b(remo)m(v)m(ed.)50 b(If)32 b(no)h(options)h(are)f(supplied,)g(or)g(the)630 -3002 y(`)p Fs(-v)p Ft(')h(option)h(is)g(giv)m(en,)h(eac)m(h)g +3504 y(`)p Fs(-v)p Ft(')h(option)h(is)g(giv)m(en,)h(eac)m(h)g Fq(name)k Ft(refers)34 b(to)h(a)g(shell)f(v)-5 b(ariable.)54 -b(If)34 b(the)h(`)p Fs(-f)p Ft(')f(option)h(is)630 3112 +b(If)34 b(the)h(`)p Fs(-f)p Ft(')f(option)h(is)630 3613 y(giv)m(en,)27 b(the)d Fq(name)5 b Ft(s)25 b(refer)f(to)h(shell)g (functions,)g(and)f(the)g(function)g(de\014nition)g(is)h(remo)m(v)m -(ed.)630 3221 y(Readonly)32 b(v)-5 b(ariables)33 b(and)f(functions)f +(ed.)630 3723 y(Readonly)32 b(v)-5 b(ariables)33 b(and)f(functions)f (ma)m(y)i(not)f(b)s(e)g(unset.)45 b(The)32 b(return)f(status)h(is)g -(zero)630 3331 y(unless)e(a)g Fq(name)36 b Ft(is)30 b(readonly)-8 -b(.)150 3568 y Fr(4.2)68 b(Bash)45 b(Builtin)g(Commands)150 -3728 y Ft(This)c(section)h(describ)s(es)f(builtin)f(commands)h(whic)m +(zero)630 3833 y(unless)e(a)g Fq(name)36 b Ft(is)30 b(readonly)-8 +b(.)150 4060 y Fr(4.2)68 b(Bash)45 b(Builtin)g(Commands)150 +4219 y Ft(This)c(section)h(describ)s(es)f(builtin)f(commands)h(whic)m (h)g(are)h(unique)e(to)j(or)e(ha)m(v)m(e)h(b)s(een)f(extended)g(in)150 -3837 y(Bash.)g(Some)30 b(of)h(these)g(commands)f(are)g(sp)s(eci\014ed)g -(in)g(the)h Fl(posix)e Ft(standard.)150 4002 y Fs(alias)870 -4138 y(alias)46 b([-p])h([)p Fi(name)11 b Fs([=)p Fi(value)g -Fs(])43 b(...)o(])630 4274 y Ft(Without)h(argumen)m(ts)f(or)g(with)g +4329 y(Bash.)g(Some)30 b(of)h(these)g(commands)f(are)g(sp)s(eci\014ed)g +(in)g(the)h Fl(posix)e Ft(standard.)150 4483 y Fs(alias)870 +4615 y(alias)46 b([-p])h([)p Fi(name)11 b Fs([=)p Fi(value)g +Fs(])43 b(...)o(])630 4747 y Ft(Without)h(argumen)m(ts)f(or)g(with)g (the)h(`)p Fs(-p)p Ft(')f(option,)k Fs(alias)41 b Ft(prin)m(ts)i(the)g -(list)h(of)f(aliases)630 4384 y(on)36 b(the)g(standard)f(output)h(in)f +(list)h(of)f(aliases)630 4857 y(on)36 b(the)g(standard)f(output)h(in)f (a)i(form)e(that)i(allo)m(ws)g(them)f(to)g(b)s(e)g(reused)f(as)h -(input.)56 b(If)630 4493 y(argumen)m(ts)29 b(are)g(supplied,)f(an)h +(input.)56 b(If)630 4966 y(argumen)m(ts)29 b(are)g(supplied,)f(an)h (alias)h(is)f(de\014ned)e(for)i(eac)m(h)h Fq(name)k Ft(whose)28 -b Fq(v)-5 b(alue)35 b Ft(is)29 b(giv)m(en.)630 4603 y(If)39 +b Fq(v)-5 b(alue)35 b Ft(is)29 b(giv)m(en.)630 5076 y(If)39 b(no)h Fq(v)-5 b(alue)45 b Ft(is)40 b(giv)m(en,)j(the)d(name)f(and)g(v) -5 b(alue)40 b(of)g(the)g(alias)h(is)f(prin)m(ted.)68 -b(Aliases)41 b(are)630 4712 y(describ)s(ed)29 b(in)h(Section)i(6.6)f -([Aliases],)h(page)f(81.)150 4875 y Fs(bind)870 5011 -y(bind)47 b([-m)g Fi(keymap)11 b Fs(])45 b([-lpsvPSV])870 -5121 y(bind)i([-m)g Fi(keymap)11 b Fs(])45 b([-q)i Fi(function)11 -b Fs(])45 b([-u)h Fi(function)11 b Fs(])45 b([-r)i Fi(keyseq)11 -b Fs(])870 5230 y(bind)47 b([-m)g Fi(keymap)11 b Fs(])45 -b(-f)i Fi(filename)870 5340 y Fs(bind)g([-m)g Fi(keymap)11 -b Fs(])45 b(-x)i Fi(keyseq:shell-command)p eop end +b(Aliases)41 b(are)630 5186 y(describ)s(ed)29 b(in)h(Section)i(6.6)f +([Aliases],)h(page)f(81.)150 5340 y Fs(bind)p eop end %%Page: 44 50 TeXDict begin 44 49 bop 150 -116 a Ft(44)2572 b(Bash)31 b(Reference)g(Man)m(ual)870 299 y Fs(bind)47 b([-m)g +Fi(keymap)11 b Fs(])45 b([-lpsvPSV])870 408 y(bind)i([-m)g +Fi(keymap)11 b Fs(])45 b([-q)i Fi(function)11 b Fs(])45 +b([-u)h Fi(function)11 b Fs(])45 b([-r)i Fi(keyseq)11 +b Fs(])870 518 y(bind)47 b([-m)g Fi(keymap)11 b Fs(])45 +b(-f)i Fi(filename)870 628 y Fs(bind)g([-m)g Fi(keymap)11 +b Fs(])45 b(-x)i Fi(keyseq:shell-command)870 737 y Fs(bind)g([-m)g Fi(keymap)11 b Fs(])45 b Fi(keyseq:function-name)870 -408 y Fs(bind)i Fi(readline-command)630 545 y Ft(Displa)m(y)26 +847 y Fs(bind)i Fi(readline-command)630 990 y Ft(Displa)m(y)26 b(curren)m(t)f(Readline)h(\(see)g(Chapter)f(8)g([Command)g(Line)g -(Editing],)i(page)f(95\))g(k)m(ey)630 655 y(and)36 b(function)g +(Editing],)i(page)f(95\))g(k)m(ey)630 1100 y(and)36 b(function)g (bindings,)i(bind)d(a)i(k)m(ey)g(sequence)g(to)h(a)f(Readline)g -(function)f(or)h(macro,)630 765 y(or)44 b(set)h(a)g(Readline)f(v)-5 +(function)f(or)h(macro,)630 1209 y(or)44 b(set)h(a)g(Readline)f(v)-5 b(ariable.)83 b(Eac)m(h)45 b(non-option)g(argumen)m(t)f(is)g(a)h -(command)f(as)g(it)630 874 y(w)m(ould)e(app)s(ear)f(in)h(a)h(Readline)g -(initialization)i(\014le)d(\(see)h(Section)g(8.3)g([Readline)g(Init)630 -984 y(File],)g(page)c(98\),)k(but)38 b(eac)m(h)i(binding)e(or)h +(command)f(as)g(it)630 1319 y(w)m(ould)e(app)s(ear)f(in)h(a)h(Readline) +g(initialization)i(\014le)d(\(see)h(Section)g(8.3)g([Readline)g(Init) +630 1428 y(File],)g(page)c(98\),)k(but)38 b(eac)m(h)i(binding)e(or)h (command)g(m)m(ust)g(b)s(e)f(passed)g(as)i(a)f(separate)630 -1093 y(argumen)m(t;)31 b(e.g.,)h(`)p Fs("\\C-x\\C-r":re-read-init-f)o -(ile)p Ft('.)630 1230 y(Options,)e(if)h(supplied,)e(ha)m(v)m(e)i(the)g -(follo)m(wing)h(meanings:)630 1395 y Fs(-m)e Fi(keymap)1110 -1504 y Ft(Use)54 b Fq(k)m(eymap)j Ft(as)d(the)g(k)m(eymap)g(to)h(b)s(e) -e(a\013ected)i(b)m(y)f(the)g(subsequen)m(t)1110 1614 +1538 y(argumen)m(t;)31 b(e.g.,)h(`)p Fs("\\C-x\\C-r":re-read-init-f)o +(ile)p Ft('.)630 1681 y(Options,)e(if)h(supplied,)e(ha)m(v)m(e)i(the)g +(follo)m(wing)h(meanings:)630 1858 y Fs(-m)e Fi(keymap)1110 +1968 y Ft(Use)54 b Fq(k)m(eymap)j Ft(as)d(the)g(k)m(eymap)g(to)h(b)s(e) +e(a\013ected)i(b)m(y)f(the)g(subsequen)m(t)1110 2078 y(bindings.)46 b(Acceptable)34 b Fq(k)m(eymap)i Ft(names)c(are)h -Fs(emacs)p Ft(,)f Fs(emacs-standard)p Ft(,)1110 1724 +Fs(emacs)p Ft(,)f Fs(emacs-standard)p Ft(,)1110 2187 y Fs(emacs-meta)p Ft(,)99 b Fs(emacs-ctlx)p Ft(,)f Fs(vi)p Ft(,)j Fs(vi-move)p Ft(,)f Fs(vi-command)p Ft(,)f(and)1110 -1833 y Fs(vi-insert)p Ft(.)64 b Fs(vi)38 b Ft(is)h(equiv)-5 +2297 y Fs(vi-insert)p Ft(.)64 b Fs(vi)38 b Ft(is)h(equiv)-5 b(alen)m(t)41 b(to)e Fs(vi-command)p Ft(;)i Fs(emacs)c -Ft(is)i(equiv)-5 b(alen)m(t)1110 1943 y(to)31 b Fs(emacs-standard)p -Ft(.)630 2107 y Fs(-l)384 b Ft(List)31 b(the)f(names)g(of)h(all)g -(Readline)g(functions.)630 2271 y Fs(-p)384 b Ft(Displa)m(y)34 +Ft(is)i(equiv)-5 b(alen)m(t)1110 2406 y(to)31 b Fs(emacs-standard)p +Ft(.)630 2583 y Fs(-l)384 b Ft(List)31 b(the)f(names)g(of)h(all)g +(Readline)g(functions.)630 2760 y Fs(-p)384 b Ft(Displa)m(y)34 b(Readline)f(function)g(names)g(and)f(bindings)f(in)i(suc)m(h)f(a)i(w)m -(a)m(y)f(that)1110 2381 y(they)e(can)f(b)s(e)g(used)g(as)g(input)g(or)g -(in)g(a)h(Readline)g(initialization)i(\014le.)630 2545 +(a)m(y)f(that)1110 2870 y(they)e(can)f(b)s(e)g(used)g(as)g(input)g(or)g +(in)g(a)h(Readline)g(initialization)i(\014le.)630 3047 y Fs(-P)384 b Ft(List)31 b(curren)m(t)f(Readline)h(function)f(names)g -(and)g(bindings.)630 2710 y Fs(-v)384 b Ft(Displa)m(y)25 +(and)g(bindings.)630 3224 y Fs(-v)384 b Ft(Displa)m(y)25 b(Readline)f(v)-5 b(ariable)25 b(names)f(and)f(v)-5 b(alues)24 -b(in)g(suc)m(h)f(a)i(w)m(a)m(y)f(that)h(they)1110 2819 +b(in)g(suc)m(h)f(a)i(w)m(a)m(y)f(that)h(they)1110 3334 y(can)31 b(b)s(e)e(used)h(as)h(input)e(or)h(in)g(a)h(Readline)g -(initialization)j(\014le.)630 2984 y Fs(-V)384 b Ft(List)31 +(initialization)j(\014le.)630 3511 y Fs(-V)384 b Ft(List)31 b(curren)m(t)f(Readline)h(v)-5 b(ariable)31 b(names)f(and)g(v)-5 -b(alues.)630 3148 y Fs(-s)384 b Ft(Displa)m(y)39 b(Readline)f(k)m(ey)g +b(alues.)630 3688 y Fs(-s)384 b Ft(Displa)m(y)39 b(Readline)f(k)m(ey)g (sequences)f(b)s(ound)f(to)i(macros)g(and)f(the)g(strings)1110 -3258 y(they)d(output)f(in)h(suc)m(h)f(a)h(w)m(a)m(y)h(that)f(they)g -(can)g(b)s(e)f(used)g(as)h(input)e(or)i(in)g(a)1110 3367 -y(Readline)d(initialization)i(\014le.)630 3532 y Fs(-S)384 +3797 y(they)d(output)f(in)h(suc)m(h)f(a)h(w)m(a)m(y)h(that)f(they)g +(can)g(b)s(e)f(used)g(as)h(input)e(or)i(in)g(a)1110 3907 +y(Readline)d(initialization)i(\014le.)630 4084 y Fs(-S)384 b Ft(Displa)m(y)39 b(Readline)f(k)m(ey)g(sequences)f(b)s(ound)f(to)i -(macros)g(and)f(the)g(strings)1110 3641 y(they)31 b(output.)630 -3806 y Fs(-f)f Fi(filename)1110 3915 y Ft(Read)h(k)m(ey)g(bindings)e -(from)h Fq(\014lename)5 b Ft(.)630 4080 y Fs(-q)30 b -Fi(function)1110 4189 y Ft(Query)g(ab)s(out)g(whic)m(h)g(k)m(eys)h(in)m -(v)m(ok)m(e)h(the)f(named)f Fq(function)p Ft(.)630 4354 -y Fs(-u)g Fi(function)1110 4463 y Ft(Un)m(bind)f(all)i(k)m(eys)g(b)s -(ound)e(to)i(the)f(named)g Fq(function)p Ft(.)630 4628 -y Fs(-r)g Fi(keyseq)1110 4737 y Ft(Remo)m(v)m(e)i(an)m(y)f(curren)m(t)f -(binding)f(for)h Fq(k)m(eyseq)r Ft(.)630 4902 y Fs(-x)g -Fi(keyseq:shell-command)1110 5011 y Ft(Cause)35 b Fq(shell-command)k +(macros)g(and)f(the)g(strings)1110 4194 y(they)31 b(output.)630 +4371 y Fs(-f)f Fi(filename)1110 4480 y Ft(Read)h(k)m(ey)g(bindings)e +(from)h Fq(\014lename)5 b Ft(.)630 4657 y Fs(-q)30 b +Fi(function)1110 4767 y Ft(Query)g(ab)s(out)g(whic)m(h)g(k)m(eys)h(in)m +(v)m(ok)m(e)h(the)f(named)f Fq(function)p Ft(.)630 4944 +y Fs(-u)g Fi(function)1110 5053 y Ft(Un)m(bind)f(all)i(k)m(eys)g(b)s +(ound)e(to)i(the)f(named)g Fq(function)p Ft(.)630 5230 +y Fs(-r)g Fi(keyseq)1110 5340 y Ft(Remo)m(v)m(e)i(an)m(y)f(curren)m(t)f +(binding)f(for)h Fq(k)m(eyseq)r Ft(.)p eop end +%%Page: 45 51 +TeXDict begin 45 50 bop 150 -116 a Ft(Chapter)30 b(4:)41 +b(Shell)30 b(Builtin)h(Commands)2069 b(45)630 299 y Fs(-x)30 +b Fi(keyseq:shell-command)1110 408 y Ft(Cause)35 b Fq(shell-command)k Ft(to)d(b)s(e)f(executed)h(whenev)m(er)f Fq(k)m(eyseq)j -Ft(is)d(en)m(tered.)1110 5121 y(When)46 b Fq(shell-command)k +Ft(is)d(en)m(tered.)1110 518 y(When)46 b Fq(shell-command)k Ft(is)c(executed,)51 b(the)46 b(shell)g(sets)g(the)g -Fs(READLINE_)1110 5230 y(LINE)37 b Ft(v)-5 b(ariable)38 +Fs(READLINE_)1110 628 y(LINE)37 b Ft(v)-5 b(ariable)38 b(to)g(the)g(con)m(ten)m(ts)i(of)e(the)g(Readline)g(line)g(bu\013er)f -(and)g(the)1110 5340 y Fs(READLINE_POINT)e Ft(v)-5 b(ariable)39 -b(to)h(the)e(curren)m(t)h(lo)s(cation)h(of)f(the)g(insertion)p -eop end -%%Page: 45 51 -TeXDict begin 45 50 bop 150 -116 a Ft(Chapter)30 b(4:)41 -b(Shell)30 b(Builtin)h(Commands)2069 b(45)1110 299 y(p)s(oin)m(t.)59 -b(If)37 b(the)f(executed)i(command)e(c)m(hanges)i(the)f(v)-5 -b(alue)37 b(of)f Fs(READLINE_)1110 408 y(LINE)29 b Ft(or)h -Fs(READLINE_POINT)p Ft(,)c(those)31 b(new)e(v)-5 b(alues)31 -b(will)f(b)s(e)f(re\015ected)i(in)f(the)1110 518 y(editing)h(state.)630 -677 y(The)26 b(return)f(status)i(is)f(zero)i(unless)d(an)i(in)m(v)-5 -b(alid)27 b(option)g(is)f(supplied)f(or)i(an)f(error)g(o)s(ccurs.)150 -837 y Fs(builtin)870 971 y(builtin)46 b([)p Fi(shell-builtin)54 -b Fs([)p Fi(args)11 b Fs(]])630 1106 y Ft(Run)35 b(a)h(shell)h -(builtin,)g(passing)f(it)g Fq(args)t Ft(,)i(and)e(return)f(its)h(exit)h -(status.)58 b(This)36 b(is)g(useful)630 1215 y(when)29 -b(de\014ning)h(a)g(shell)h(function)f(with)g(the)g(same)h(name)f(as)h -(a)g(shell)f(builtin,)g(retaining)630 1325 y(the)k(functionalit)m(y)h -(of)f(the)f(builtin)g(within)g(the)h(function.)50 b(The)33 -b(return)g(status)h(is)f(non-)630 1435 y(zero)e(if)g -Fq(shell-builtin)f Ft(is)g(not)h(a)g(shell)f(builtin)g(command.)150 -1594 y Fs(caller)870 1729 y(caller)46 b([)p Fi(expr)11 -b Fs(])630 1863 y Ft(Returns)34 b(the)g(con)m(text)j(of)e(an)m(y)g -(activ)m(e)i(subroutine)c(call)j(\(a)f(shell)g(function)f(or)h(a)g -(script)630 1973 y(executed)c(with)f(the)h Fs(.)f Ft(or)g -Fs(source)f Ft(builtins\).)630 2107 y(Without)45 b Fq(expr)7 -b Ft(,)46 b Fs(caller)d Ft(displa)m(ys)h(the)g(line)g(n)m(um)m(b)s(er)f -(and)g(source)h(\014lename)h(of)f(the)630 2217 y(curren)m(t)35 -b(subroutine)f(call.)56 b(If)35 b(a)h(non-negativ)m(e)h(in)m(teger)g -(is)e(supplied)f(as)h Fq(expr)7 b Ft(,)36 b Fs(caller)630 -2326 y Ft(displa)m(ys)41 b(the)f(line)h(n)m(um)m(b)s(er,)h(subroutine)d -(name,)44 b(and)c(source)g(\014le)h(corresp)s(onding)e(to)630 -2436 y(that)c(p)s(osition)g(in)f(the)h(curren)m(t)f(execution)i(call)g -(stac)m(k.)54 b(This)34 b(extra)h(information)g(ma)m(y)630 -2545 y(b)s(e)30 b(used,)g(for)g(example,)h(to)g(prin)m(t)f(a)h(stac)m +(and)g(the)1110 737 y Fs(READLINE_POINT)e Ft(v)-5 b(ariable)39 +b(to)h(the)e(curren)m(t)h(lo)s(cation)h(of)f(the)g(insertion)1110 +847 y(p)s(oin)m(t.)59 b(If)37 b(the)f(executed)i(command)e(c)m(hanges)i +(the)f(v)-5 b(alue)37 b(of)f Fs(READLINE_)1110 956 y(LINE)29 +b Ft(or)h Fs(READLINE_POINT)p Ft(,)c(those)31 b(new)e(v)-5 +b(alues)31 b(will)f(b)s(e)f(re\015ected)i(in)f(the)1110 +1066 y(editing)h(state.)630 1233 y(The)26 b(return)f(status)i(is)f +(zero)i(unless)d(an)i(in)m(v)-5 b(alid)27 b(option)g(is)f(supplied)f +(or)i(an)f(error)g(o)s(ccurs.)150 1401 y Fs(builtin)870 +1539 y(builtin)46 b([)p Fi(shell-builtin)54 b Fs([)p +Fi(args)11 b Fs(]])630 1677 y Ft(Run)35 b(a)h(shell)h(builtin,)g +(passing)f(it)g Fq(args)t Ft(,)i(and)e(return)f(its)h(exit)h(status.)58 +b(This)36 b(is)g(useful)630 1787 y(when)29 b(de\014ning)h(a)g(shell)h +(function)f(with)g(the)g(same)h(name)f(as)h(a)g(shell)f(builtin,)g +(retaining)630 1897 y(the)k(functionalit)m(y)h(of)f(the)f(builtin)g +(within)g(the)h(function.)50 b(The)33 b(return)g(status)h(is)f(non-)630 +2006 y(zero)e(if)g Fq(shell-builtin)f Ft(is)g(not)h(a)g(shell)f +(builtin)g(command.)150 2173 y Fs(caller)870 2312 y(caller)46 +b([)p Fi(expr)11 b Fs(])630 2450 y Ft(Returns)34 b(the)g(con)m(text)j +(of)e(an)m(y)g(activ)m(e)i(subroutine)c(call)j(\(a)f(shell)g(function)f +(or)h(a)g(script)630 2560 y(executed)c(with)f(the)h Fs(.)f +Ft(or)g Fs(source)f Ft(builtins\).)630 2698 y(Without)45 +b Fq(expr)7 b Ft(,)46 b Fs(caller)d Ft(displa)m(ys)h(the)g(line)g(n)m +(um)m(b)s(er)f(and)g(source)h(\014lename)h(of)f(the)630 +2808 y(curren)m(t)35 b(subroutine)f(call.)56 b(If)35 +b(a)h(non-negativ)m(e)h(in)m(teger)g(is)e(supplied)f(as)h +Fq(expr)7 b Ft(,)36 b Fs(caller)630 2917 y Ft(displa)m(ys)41 +b(the)f(line)h(n)m(um)m(b)s(er,)h(subroutine)d(name,)44 +b(and)c(source)g(\014le)h(corresp)s(onding)e(to)630 3027 +y(that)c(p)s(osition)g(in)f(the)h(curren)m(t)f(execution)i(call)g(stac) +m(k.)54 b(This)34 b(extra)h(information)g(ma)m(y)630 +3137 y(b)s(e)30 b(used,)g(for)g(example,)h(to)g(prin)m(t)f(a)h(stac)m (k)h(trace.)42 b(The)29 b(curren)m(t)i(frame)f(is)g(frame)h(0.)630 -2680 y(The)e(return)f(v)-5 b(alue)29 b(is)h(0)f(unless)g(the)g(shell)g +3275 y(The)e(return)f(v)-5 b(alue)29 b(is)h(0)f(unless)g(the)g(shell)g (is)h(not)f(executing)h(a)g(subroutine)e(call)i(or)g -Fq(expr)630 2790 y Ft(do)s(es)g(not)h(corresp)s(ond)e(to)i(a)g(v)-5 +Fq(expr)630 3385 y Ft(do)s(es)g(not)h(corresp)s(ond)e(to)i(a)g(v)-5 b(alid)30 b(p)s(osition)h(in)f(the)g(call)i(stac)m(k.)150 -2949 y Fs(command)870 3083 y(command)46 b([-pVv])g Fi(command)56 -b Fs([)p Fi(arguments)g Fs(...)o(])630 3218 y Ft(Runs)31 +3552 y Fs(command)870 3690 y(command)46 b([-pVv])g Fi(command)56 +b Fs([)p Fi(arguments)g Fs(...)o(])630 3829 y Ft(Runs)31 b Fq(command)36 b Ft(with)d Fq(argumen)m(ts)j Ft(ignoring)d(an)m(y)g -(shell)g(function)f(named)g Fq(command)t Ft(.)630 3328 +(shell)g(function)f(named)g Fq(command)t Ft(.)630 3938 y(Only)39 b(shell)i(builtin)e(commands)h(or)g(commands)f(found)g(b)m(y) -h(searc)m(hing)h(the)f Fs(PATH)f Ft(are)630 3437 y(executed.)g(If)23 +h(searc)m(hing)h(the)f Fs(PATH)f Ft(are)630 4048 y(executed.)g(If)23 b(there)h(is)f(a)h(shell)f(function)g(named)g Fs(ls)p Ft(,)i(running)c(`)p Fs(command)29 b(ls)p Ft(')23 b(within)g(the)630 -3547 y(function)33 b(will)g(execute)i(the)f(external)g(command)f +4158 y(function)33 b(will)g(execute)i(the)f(external)g(command)f Fs(ls)f Ft(instead)i(of)f(calling)i(the)e(function)630 -3656 y(recursiv)m(ely)-8 b(.)84 b(The)44 b(`)p Fs(-p)p +4267 y(recursiv)m(ely)-8 b(.)84 b(The)44 b(`)p Fs(-p)p Ft(')h(option)g(means)f(to)h(use)g(a)f(default)h(v)-5 -b(alue)45 b(for)f Fs(PATH)g Ft(that)h(is)630 3766 y(guaran)m(teed)35 +b(alue)45 b(for)f Fs(PATH)g Ft(that)h(is)630 4377 y(guaran)m(teed)35 b(to)f(\014nd)e(all)j(of)f(the)g(standard)f(utilities.)52 -b(The)33 b(return)g(status)h(in)f(this)h(case)630 3875 +b(The)33 b(return)g(status)h(in)f(this)h(case)630 4486 y(is)29 b(127)g(if)g Fq(command)j Ft(cannot)d(b)s(e)e(found)h(or)g(an)g (error)h(o)s(ccurred,)f(and)g(the)h(exit)g(status)g(of)630 -3985 y Fq(command)34 b Ft(otherwise.)630 4120 y(If)25 +4596 y Fq(command)34 b Ft(otherwise.)630 4734 y(If)25 b(either)g(the)h(`)p Fs(-V)p Ft(')f(or)g(`)p Fs(-v)p Ft(')g(option)g(is)g(supplied,)h(a)f(description)g(of)h -Fq(command)i Ft(is)d(prin)m(ted.)630 4229 y(The)i(`)p +Fq(command)i Ft(is)d(prin)m(ted.)630 4844 y(The)i(`)p Fs(-v)p Ft(')h(option)h(causes)f(a)h(single)f(w)m(ord)g(indicating)h -(the)f(command)g(or)g(\014le)g(name)g(used)630 4339 y(to)36 +(the)f(command)g(or)g(\014le)g(name)g(used)630 4954 y(to)36 b(in)m(v)m(ok)m(e)g Fq(command)j Ft(to)c(b)s(e)g(displa)m(y)m(ed;)j (the)d(`)p Fs(-V)p Ft(')g(option)g(pro)s(duces)e(a)j(more)f(v)m(erb)s -(ose)630 4448 y(description.)61 b(In)36 b(this)h(case,)j(the)e(return)e +(ose)630 5063 y(description.)61 b(In)36 b(this)h(case,)j(the)e(return)e (status)h(is)g(zero)h(if)f Fq(command)k Ft(is)c(found,)h(and)630 -4558 y(non-zero)31 b(if)f(not.)150 4717 y Fs(declare)870 -4852 y(declare)46 b([-aAfFilrtux])e([-p])j([)p Fi(name)11 -b Fs([=)p Fi(value)g Fs(])43 b(...)o(])630 4986 y Ft(Declare)29 -b(v)-5 b(ariables)28 b(and)e(giv)m(e)j(them)e(attributes.)40 -b(If)27 b(no)g Fq(name)5 b Ft(s)27 b(are)h(giv)m(en,)h(then)e(displa)m -(y)630 5096 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31 -b(instead.)630 5230 y(The)c(`)p Fs(-p)p Ft(')h(option)g(will)g(displa)m -(y)g(the)g(attributes)g(and)g(v)-5 b(alues)28 b(of)g(eac)m(h)h -Fq(name)5 b Ft(.)40 b(When)27 b(`)p Fs(-p)p Ft(')630 -5340 y(is)j(used)g(with)g Fq(name)36 b Ft(argumen)m(ts,)31 -b(additional)g(options)f(are)h(ignored.)p eop end +5173 y(non-zero)31 b(if)f(not.)150 5340 y Fs(declare)p +eop end %%Page: 46 52 TeXDict begin 46 51 bop 150 -116 a Ft(46)2572 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y(When)36 b(`)p Fs(-p)p -Ft(')f(is)h(supplied)f(without)h Fq(name)41 b Ft(argumen)m(ts,)d -Fs(declare)c Ft(will)i(displa)m(y)g(the)g(at-)630 408 -y(tributes)31 b(and)f(v)-5 b(alues)31 b(of)g(all)h(v)-5 -b(ariables)31 b(ha)m(ving)h(the)f(attributes)g(sp)s(eci\014ed)f(b)m(y)h -(the)g(addi-)630 518 y(tional)h(options.)41 b(If)30 b(no)g(other)h -(options)g(are)g(supplied)e(with)h(`)p Fs(-p)p Ft(',)g -Fs(declare)f Ft(will)i(displa)m(y)630 628 y(the)f(attributes)g(and)e(v) --5 b(alues)30 b(of)g(all)g(shell)g(v)-5 b(ariables.)41 -b(The)29 b(`)p Fs(-f)p Ft(')g(option)h(will)g(restrict)g(the)630 -737 y(displa)m(y)h(to)g(shell)f(functions.)630 870 y(The)36 -b(`)p Fs(-F)p Ft(')h(option)g(inhibits)f(the)h(displa)m(y)g(of)g -(function)g(de\014nitions;)i(only)e(the)g(function)630 -979 y(name)30 b(and)f(attributes)i(are)f(prin)m(ted.)40 +b(Reference)g(Man)m(ual)870 299 y Fs(declare)46 b([-aAfFilrtux])e([-p]) +j([)p Fi(name)11 b Fs([=)p Fi(value)g Fs(])43 b(...)o(])630 +434 y Ft(Declare)29 b(v)-5 b(ariables)28 b(and)e(giv)m(e)j(them)e +(attributes.)40 b(If)27 b(no)g Fq(name)5 b Ft(s)27 b(are)h(giv)m(en,)h +(then)e(displa)m(y)630 543 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 +b(ariables)31 b(instead.)630 678 y(The)c(`)p Fs(-p)p +Ft(')h(option)g(will)g(displa)m(y)g(the)g(attributes)g(and)g(v)-5 +b(alues)28 b(of)g(eac)m(h)h Fq(name)5 b Ft(.)40 b(When)27 +b(`)p Fs(-p)p Ft(')630 788 y(is)j(used)g(with)g Fq(name)36 +b Ft(argumen)m(ts,)31 b(additional)g(options)f(are)h(ignored.)630 +923 y(When)36 b(`)p Fs(-p)p Ft(')f(is)h(supplied)f(without)h +Fq(name)41 b Ft(argumen)m(ts,)d Fs(declare)c Ft(will)i(displa)m(y)g +(the)g(at-)630 1032 y(tributes)31 b(and)f(v)-5 b(alues)31 +b(of)g(all)h(v)-5 b(ariables)31 b(ha)m(ving)h(the)f(attributes)g(sp)s +(eci\014ed)f(b)m(y)h(the)g(addi-)630 1142 y(tional)h(options.)41 +b(If)30 b(no)g(other)h(options)g(are)g(supplied)e(with)h(`)p +Fs(-p)p Ft(',)g Fs(declare)f Ft(will)i(displa)m(y)630 +1251 y(the)f(attributes)g(and)e(v)-5 b(alues)30 b(of)g(all)g(shell)g(v) +-5 b(ariables.)41 b(The)29 b(`)p Fs(-f)p Ft(')g(option)h(will)g +(restrict)g(the)630 1361 y(displa)m(y)h(to)g(shell)f(functions.)630 +1496 y(The)36 b(`)p Fs(-F)p Ft(')h(option)g(inhibits)f(the)h(displa)m +(y)g(of)g(function)g(de\014nitions;)i(only)e(the)g(function)630 +1606 y(name)30 b(and)f(attributes)i(are)f(prin)m(ted.)40 b(If)30 b(the)g Fs(extdebug)e Ft(shell)i(option)g(is)g(enabled)g(using) -630 1089 y Fs(shopt)24 b Ft(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f +630 1715 y Fs(shopt)24 b Ft(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f (Builtin],)k(page)e(57\),)i(the)d(source)h(\014le)f(name)h(and)630 -1198 y(line)38 b(n)m(um)m(b)s(er)e(where)i(the)g(function)f(is)h +1825 y(line)38 b(n)m(um)m(b)s(er)e(where)i(the)g(function)f(is)h (de\014ned)e(are)i(displa)m(y)m(ed)h(as)e(w)m(ell.)64 -b(`)p Fs(-F)p Ft(')38 b(implies)630 1308 y(`)p Fs(-f)p -Ft('.)630 1440 y(The)32 b(`)p Fs(-g)p Ft(')h(option)g(forces)g(v)-5 +b(`)p Fs(-F)p Ft(')38 b(implies)630 1934 y(`)p Fs(-f)p +Ft('.)630 2069 y(The)32 b(`)p Fs(-g)p Ft(')h(option)g(forces)g(v)-5 b(ariables)33 b(to)h(b)s(e)e(created)h(or)g(mo)s(di\014ed)e(at)j(the)f -(global)h(scop)s(e,)630 1550 y(ev)m(en)39 b(when)f Fs(\\)p +(global)h(scop)s(e,)630 2179 y(ev)m(en)39 b(when)f Fs(\\)p Ft(fBdeclare)p Fs(\\)p Ft(fP)h(is)g(executed)h(in)e(a)h(shell)g -(function.)66 b(It)39 b(is)g(ignored)g(in)f(all)630 1660 -y(other)31 b(cases.)630 1792 y(The)c(follo)m(wing)h(options)g(can)f(b)s +(function.)66 b(It)39 b(is)g(ignored)g(in)f(all)630 2288 +y(other)31 b(cases.)630 2423 y(The)c(follo)m(wing)h(options)g(can)f(b)s (e)g(used)f(to)i(restrict)g(output)e(to)i(v)-5 b(ariables)28 -b(with)f(the)g(sp)s(ec-)630 1902 y(i\014ed)j(attributes)h(or)f(to)h -(giv)m(e)h(v)-5 b(ariables)31 b(attributes:)630 2057 +b(with)f(the)g(sp)s(ec-)630 2533 y(i\014ed)j(attributes)h(or)f(to)h +(giv)m(e)h(v)-5 b(ariables)31 b(attributes:)630 2693 y Fs(-a)384 b Ft(Eac)m(h)36 b Fq(name)k Ft(is)34 b(an)h(indexed)g(arra) m(y)g(v)-5 b(ariable)36 b(\(see)f(Section)h(6.7)g([Arra)m(ys],)1110 -2166 y(page)31 b(82\).)630 2322 y Fs(-A)384 b Ft(Eac)m(h)24 +2803 y(page)31 b(82\).)630 2963 y Fs(-A)384 b Ft(Eac)m(h)24 b Fq(name)k Ft(is)23 b(an)g(asso)s(ciativ)m(e)j(arra)m(y)e(v)-5 b(ariable)24 b(\(see)g(Section)g(6.7)g([Arra)m(ys],)1110 -2431 y(page)31 b(82\).)630 2587 y Fs(-f)384 b Ft(Use)31 -b(function)f(names)g(only)-8 b(.)630 2742 y Fs(-i)384 +3072 y(page)31 b(82\).)630 3232 y Fs(-f)384 b Ft(Use)31 +b(function)f(names)g(only)-8 b(.)630 3393 y Fs(-i)384 b Ft(The)36 b(v)-5 b(ariable)37 b(is)f(to)h(b)s(e)f(treated)h(as)g(an)f (in)m(teger;)41 b(arithmetic)c(ev)-5 b(aluation)1110 -2851 y(\(see)29 b(Section)f(6.5)h([Shell)f(Arithmetic],)i(page)e(80\))h -(is)f(p)s(erformed)e(when)h(the)1110 2961 y(v)-5 b(ariable)31 -b(is)g(assigned)f(a)h(v)-5 b(alue.)630 3116 y Fs(-l)384 +3502 y(\(see)29 b(Section)f(6.5)h([Shell)f(Arithmetic],)i(page)e(80\))h +(is)f(p)s(erformed)e(when)h(the)1110 3612 y(v)-5 b(ariable)31 +b(is)g(assigned)f(a)h(v)-5 b(alue.)630 3772 y Fs(-l)384 b Ft(When)26 b(the)g(v)-5 b(ariable)27 b(is)f(assigned)g(a)g(v)-5 b(alue,)28 b(all)f(upp)s(er-case)e(c)m(haracters)j(are)1110 -3226 y(con)m(v)m(erted)k(to)f(lo)m(w)m(er-case.)43 b(The)30 -b(upp)s(er-case)g(attribute)h(is)g(disabled.)630 3381 +3882 y(con)m(v)m(erted)k(to)f(lo)m(w)m(er-case.)43 b(The)30 +b(upp)s(er-case)g(attribute)h(is)g(disabled.)630 4042 y Fs(-r)384 b Ft(Mak)m(e)25 b Fq(name)5 b Ft(s)23 b(readonly)-8 b(.)39 b(These)24 b(names)f(cannot)h(then)f(b)s(e)g(assigned)h(v)-5 -b(alues)1110 3491 y(b)m(y)30 b(subsequen)m(t)g(assignmen)m(t)h -(statemen)m(ts)h(or)f(unset.)630 3646 y Fs(-t)384 b Ft(Giv)m(e)33 +b(alues)1110 4151 y(b)m(y)30 b(subsequen)m(t)g(assignmen)m(t)h +(statemen)m(ts)h(or)f(unset.)630 4312 y Fs(-t)384 b Ft(Giv)m(e)33 b(eac)m(h)h Fq(name)j Ft(the)32 b Fs(trace)f Ft(attribute.)46 -b(T)-8 b(raced)32 b(functions)g(inherit)g(the)1110 3756 +b(T)-8 b(raced)32 b(functions)g(inherit)g(the)1110 4421 y Fs(DEBUG)26 b Ft(and)h Fs(RETURN)f Ft(traps)h(from)g(the)h(calling)h -(shell.)40 b(The)27 b(trace)i(attribute)1110 3865 y(has)h(no)g(sp)s -(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630 4020 y +(shell.)40 b(The)27 b(trace)i(attribute)1110 4531 y(has)h(no)g(sp)s +(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630 4691 y Fs(-u)384 b Ft(When)28 b(the)h(v)-5 b(ariable)29 b(is)f(assigned)h(a)f (v)-5 b(alue,)30 b(all)f(lo)m(w)m(er-case)i(c)m(haracters)f(are)1110 -4130 y(con)m(v)m(erted)i(to)f(upp)s(er-case.)40 b(The)30 -b(lo)m(w)m(er-case)j(attribute)e(is)g(disabled.)630 4285 +4800 y(con)m(v)m(erted)i(to)f(upp)s(er-case.)40 b(The)30 +b(lo)m(w)m(er-case)j(attribute)e(is)g(disabled.)630 4961 y Fs(-x)384 b Ft(Mark)30 b(eac)m(h)h Fq(name)k Ft(for)29 b(exp)s(ort)h(to)g(subsequen)m(t)f(commands)h(via)g(the)g(en)m(vi-)1110 -4395 y(ronmen)m(t.)630 4550 y(Using)e(`)p Fs(+)p Ft(')h(instead)f(of)g +5070 y(ronmen)m(t.)630 5230 y(Using)e(`)p Fs(+)p Ft(')h(instead)f(of)g (`)p Fs(-)p Ft(')g(turns)f(o\013)i(the)f(attribute)h(instead,)g(with)f -(the)g(exceptions)h(that)630 4660 y(`)p Fs(+a)p Ft(')h(ma)m(y)h(not)f +(the)g(exceptions)h(that)630 5340 y(`)p Fs(+a)p Ft(')h(ma)m(y)h(not)f (b)s(e)f(used)g(to)i(destro)m(y)g(an)f(arra)m(y)g(v)-5 b(ariable)31 b(and)f(`)p Fs(+r)p Ft(')g(will)g(not)g(remo)m(v)m(e)i -(the)630 4769 y(readonly)e(attribute.)41 b(When)30 b(used)f(in)g(a)h -(function,)g Fs(declare)e Ft(mak)m(es)j(eac)m(h)f Fq(name)35 -b Ft(lo)s(cal,)630 4879 y(as)30 b(with)g(the)h Fs(local)e -Ft(command,)h(unless)f(the)i(`)p Fs(-g)p Ft(')f(option)g(is)h(used.)40 -b(If)29 b(a)i(v)-5 b(ariable)31 b(name)630 4988 y(is)f(follo)m(w)m(ed)i -(b)m(y)f(=)p Fq(v)-5 b(alue)5 b Ft(,)31 b(the)f(v)-5 -b(alue)31 b(of)g(the)f(v)-5 b(ariable)31 b(is)g(set)g(to)g -Fq(v)-5 b(alue)5 b Ft(.)630 5121 y(The)35 b(return)f(status)i(is)g -(zero)g(unless)f(an)g(in)m(v)-5 b(alid)36 b(option)g(is)g(encoun)m -(tered,)h(an)f(attempt)630 5230 y(is)c(made)g(to)g(de\014ne)f(a)h -(function)g(using)f(`)p Fs(-f)f(foo=bar)p Ft(',)h(an)h(attempt)g(is)g -(made)g(to)h(assign)630 5340 y(a)42 b(v)-5 b(alue)43 -b(to)g(a)f(readonly)g(v)-5 b(ariable,)47 b(an)42 b(attempt)h(is)f(made) -g(to)h(assign)f(a)h(v)-5 b(alue)42 b(to)h(an)p eop end +(the)p eop end %%Page: 47 53 TeXDict begin 47 52 bop 150 -116 a Ft(Chapter)30 b(4:)41 -b(Shell)30 b(Builtin)h(Commands)2069 b(47)630 299 y(arra)m(y)30 -b(v)-5 b(ariable)30 b(without)g(using)e(the)i(comp)s(ound)e(assignmen)m -(t)i(syn)m(tax)g(\(see)h(Section)f(6.7)630 408 y([Arra)m(ys],)47 -b(page)c(82\),)48 b(one)43 b(of)g(the)g Fq(names)k Ft(is)c(not)g(a)g(v) --5 b(alid)43 b(shell)g(v)-5 b(ariable)44 b(name,)i(an)630 -518 y(attempt)28 b(is)f(made)h(to)f(turn)f(o\013)i(readonly)f(status)g +b(Shell)30 b(Builtin)h(Commands)2069 b(47)630 299 y(readonly)30 +b(attribute.)41 b(When)30 b(used)f(in)g(a)h(function,)g +Fs(declare)e Ft(mak)m(es)j(eac)m(h)f Fq(name)35 b Ft(lo)s(cal,)630 +408 y(as)30 b(with)g(the)h Fs(local)e Ft(command,)h(unless)f(the)i(`)p +Fs(-g)p Ft(')f(option)g(is)h(used.)40 b(If)29 b(a)i(v)-5 +b(ariable)31 b(name)630 518 y(is)f(follo)m(w)m(ed)i(b)m(y)f(=)p +Fq(v)-5 b(alue)5 b Ft(,)31 b(the)f(v)-5 b(alue)31 b(of)g(the)f(v)-5 +b(ariable)31 b(is)g(set)g(to)g Fq(v)-5 b(alue)5 b Ft(.)630 +647 y(The)35 b(return)f(status)i(is)g(zero)g(unless)f(an)g(in)m(v)-5 +b(alid)36 b(option)g(is)g(encoun)m(tered,)h(an)f(attempt)630 +757 y(is)c(made)g(to)g(de\014ne)f(a)h(function)g(using)f(`)p +Fs(-f)f(foo=bar)p Ft(',)h(an)h(attempt)g(is)g(made)g(to)h(assign)630 +866 y(a)42 b(v)-5 b(alue)43 b(to)g(a)f(readonly)g(v)-5 +b(ariable,)47 b(an)42 b(attempt)h(is)f(made)g(to)h(assign)f(a)h(v)-5 +b(alue)42 b(to)h(an)630 976 y(arra)m(y)30 b(v)-5 b(ariable)30 +b(without)g(using)e(the)i(comp)s(ound)e(assignmen)m(t)i(syn)m(tax)g +(\(see)h(Section)f(6.7)630 1085 y([Arra)m(ys],)47 b(page)c(82\),)48 +b(one)43 b(of)g(the)g Fq(names)k Ft(is)c(not)g(a)g(v)-5 +b(alid)43 b(shell)g(v)-5 b(ariable)44 b(name,)i(an)630 +1195 y(attempt)28 b(is)f(made)h(to)f(turn)f(o\013)i(readonly)f(status)g (for)g(a)h(readonly)f(v)-5 b(ariable,)29 b(an)e(attempt)630 -628 y(is)h(made)h(to)g(turn)e(o\013)i(arra)m(y)f(status)h(for)f(an)g +1305 y(is)h(made)h(to)g(turn)e(o\013)i(arra)m(y)f(status)h(for)f(an)g (arra)m(y)h(v)-5 b(ariable,)30 b(or)e(an)g(attempt)i(is)e(made)g(to)630 -737 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g(`)p -Fs(-f)p Ft('.)150 894 y Fs(echo)870 1027 y(echo)47 b([-neE])f([)p -Fi(arg)57 b Fs(...)o(])630 1161 y Ft(Output)31 b(the)i +1414 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g(`)p +Fs(-f)p Ft('.)150 1562 y Fs(echo)870 1691 y(echo)47 b([-neE])f([)p +Fi(arg)57 b Fs(...)o(])630 1820 y Ft(Output)31 b(the)i Fq(arg)8 b Ft(s,)33 b(separated)g(b)m(y)g(spaces,)g(terminated)g(with)f -(a)h(newline.)47 b(The)32 b(return)630 1270 y(status)40 +(a)h(newline.)47 b(The)32 b(return)630 1930 y(status)40 b(is)g(alw)m(a)m(ys)h(0.)69 b(If)39 b(`)p Fs(-n)p Ft(')h(is)f(sp)s (eci\014ed,)j(the)e(trailing)h(newline)e(is)h(suppressed.)66 -b(If)630 1380 y(the)29 b(`)p Fs(-e)p Ft(')g(option)g(is)h(giv)m(en,)g +b(If)630 2039 y(the)29 b(`)p Fs(-e)p Ft(')g(option)g(is)h(giv)m(en,)g (in)m(terpretation)g(of)g(the)f(follo)m(wing)h(bac)m(kslash-escap)s(ed) -g(c)m(har-)630 1490 y(acters)38 b(is)f(enabled.)60 b(The)36 +g(c)m(har-)630 2149 y(acters)38 b(is)f(enabled.)60 b(The)36 b(`)p Fs(-E)p Ft(')h(option)g(disables)g(the)g(in)m(terpretation)h(of)f -(these)g(escap)s(e)630 1599 y(c)m(haracters,)h(ev)m(en)d(on)g(systems)g +(these)g(escap)s(e)630 2259 y(c)m(haracters,)h(ev)m(en)d(on)g(systems)g (where)f(they)h(are)g(in)m(terpreted)h(b)m(y)e(default.)55 -b(The)34 b Fs(xpg_)630 1709 y(echo)d Ft(shell)h(option)h(ma)m(y)g(b)s +b(The)34 b Fs(xpg_)630 2368 y(echo)d Ft(shell)h(option)h(ma)m(y)g(b)s (e)e(used)h(to)h(dynamically)g(determine)f(whether)f(or)i(not)f -Fs(echo)630 1818 y Ft(expands)39 b(these)i(escap)s(e)g(c)m(haracters)g +Fs(echo)630 2478 y Ft(expands)39 b(these)i(escap)s(e)g(c)m(haracters)g (b)m(y)g(default.)70 b Fs(echo)39 b Ft(do)s(es)h(not)g(in)m(terpret)h -(`)p Fs(--)p Ft(')f(to)630 1928 y(mean)30 b(the)h(end)f(of)g(options.) -630 2061 y Fs(echo)f Ft(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e) -f(sequences:)630 2218 y Fs(\\a)384 b Ft(alert)31 b(\(b)s(ell\))630 -2375 y Fs(\\b)384 b Ft(bac)m(kspace)630 2532 y Fs(\\c)g -Ft(suppress)28 b(further)h(output)630 2689 y Fs(\\e)384 -b Ft(escap)s(e)630 2846 y Fs(\\f)g Ft(form)30 b(feed)630 -3003 y Fs(\\n)384 b Ft(new)30 b(line)630 3160 y Fs(\\r)384 -b Ft(carriage)32 b(return)630 3317 y Fs(\\t)384 b Ft(horizon)m(tal)32 -b(tab)630 3474 y Fs(\\v)384 b Ft(v)m(ertical)32 b(tab)630 -3631 y Fs(\\\\)384 b Ft(bac)m(kslash)630 3788 y Fs(\\0)p +(`)p Fs(--)p Ft(')f(to)630 2587 y(mean)30 b(the)h(end)f(of)g(options.) +630 2716 y Fs(echo)f Ft(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e) +f(sequences:)630 2865 y Fs(\\a)384 b Ft(alert)31 b(\(b)s(ell\))630 +3013 y Fs(\\b)384 b Ft(bac)m(kspace)630 3161 y Fs(\\c)g +Ft(suppress)28 b(further)h(output)630 3309 y Fs(\\e)384 +b Ft(escap)s(e)630 3458 y Fs(\\f)g Ft(form)30 b(feed)630 +3606 y Fs(\\n)384 b Ft(new)30 b(line)630 3754 y Fs(\\r)384 +b Ft(carriage)32 b(return)630 3902 y Fs(\\t)384 b Ft(horizon)m(tal)32 +b(tab)630 4051 y Fs(\\v)384 b Ft(v)m(ertical)32 b(tab)630 +4199 y Fs(\\\\)384 b Ft(bac)m(kslash)630 4347 y Fs(\\0)p Fi(nnn)240 b Ft(the)32 b(eigh)m(t-bit)i(c)m(haracter)g(whose)e(v)-5 b(alue)33 b(is)f(the)g(o)s(ctal)i(v)-5 b(alue)32 b Fq(nnn)f -Ft(\(zero)i(to)1110 3898 y(three)e(o)s(ctal)g(digits\))630 -4055 y Fs(\\x)p Fi(HH)288 b Ft(the)40 b(eigh)m(t-bit)h(c)m(haracter)g +Ft(\(zero)i(to)1110 4457 y(three)e(o)s(ctal)g(digits\))630 +4605 y Fs(\\x)p Fi(HH)288 b Ft(the)40 b(eigh)m(t-bit)h(c)m(haracter)g (whose)e(v)-5 b(alue)39 b(is)h(the)f(hexadecimal)i(v)-5 -b(alue)40 b Fq(HH)1110 4164 y Ft(\(one)31 b(or)f(t)m(w)m(o)i(hex)e -(digits\))630 4321 y Fs(\\u)p Fi(HHHH)192 b Ft(the)41 +b(alue)40 b Fq(HH)1110 4715 y Ft(\(one)31 b(or)f(t)m(w)m(o)i(hex)e +(digits\))630 4863 y Fs(\\u)p Fi(HHHH)192 b Ft(the)41 b(Unico)s(de)g(\(ISO/IEC)f(10646\))j(c)m(haracter)g(whose)e(v)-5 -b(alue)41 b(is)g(the)g(hex-)1110 4431 y(adecimal)32 b(v)-5 +b(alue)41 b(is)g(the)g(hex-)1110 4973 y(adecimal)32 b(v)-5 b(alue)31 b Fq(HHHH)41 b Ft(\(one)31 b(to)g(four)e(hex)h(digits\))630 -4588 y Fs(\\U)p Fi(HHHHHHHH)1110 4697 y Ft(the)41 b(Unico)s(de)g +5121 y Fs(\\U)p Fi(HHHHHHHH)1110 5230 y Ft(the)41 b(Unico)s(de)g (\(ISO/IEC)f(10646\))j(c)m(haracter)g(whose)e(v)-5 b(alue)41 -b(is)g(the)g(hex-)1110 4807 y(adecimal)32 b(v)-5 b(alue)31 -b Fq(HHHHHHHH)41 b Ft(\(one)31 b(to)g(eigh)m(t)h(hex)e(digits\))150 -4964 y Fs(enable)870 5097 y(enable)46 b([-a])h([-dnps])f([-f)g -Fi(filename)11 b Fs(])45 b([)p Fi(name)57 b Fs(...)o(])630 -5230 y Ft(Enable)36 b(and)f(disable)h(builtin)g(shell)g(commands.)56 -b(Disabling)37 b(a)g(builtin)e(allo)m(ws)i(a)f(disk)630 -5340 y(command)e(whic)m(h)g(has)g(the)g(same)h(name)f(as)h(a)f(shell)h -(builtin)e(to)i(b)s(e)f(executed)h(without)p eop end +b(is)g(the)g(hex-)1110 5340 y(adecimal)32 b(v)-5 b(alue)31 +b Fq(HHHHHHHH)41 b Ft(\(one)31 b(to)g(eigh)m(t)h(hex)e(digits\))p +eop end %%Page: 48 54 TeXDict begin 48 53 bop 150 -116 a Ft(48)2572 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y(sp)s(ecifying)c(a)g(full)g(pathname,) -g(ev)m(en)h(though)f(the)g(shell)g(normally)g(searc)m(hes)h(for)f -(builtins)630 408 y(b)s(efore)32 b(disk)f(commands.)46 -b(If)31 b(`)p Fs(-n)p Ft(')h(is)g(used,)g(the)g Fq(name)5 -b Ft(s)32 b(b)s(ecome)h(disabled.)45 b(Otherwise)630 -518 y Fq(name)5 b Ft(s)44 b(are)h(enabled.)82 b(F)-8 -b(or)45 b(example,)k(to)c(use)f(the)g Fs(test)f Ft(binary)h(found)f -(via)h Fs($PATH)630 628 y Ft(instead)31 b(of)f(the)h(shell)f(builtin)g -(v)m(ersion,)h(t)m(yp)s(e)g(`)p Fs(enable)e(-n)h(test)p -Ft('.)630 762 y(If)42 b(the)h(`)p Fs(-p)p Ft(')f(option)h(is)f -(supplied,)j(or)d(no)h Fq(name)k Ft(argumen)m(ts)c(app)s(ear,)i(a)e -(list)g(of)g(shell)630 871 y(builtins)37 b(is)h(prin)m(ted.)63 -b(With)38 b(no)f(other)h(argumen)m(ts,)j(the)d(list)g(consists)g(of)g -(all)h(enabled)630 981 y(shell)33 b(builtins.)46 b(The)32 -b(`)p Fs(-a)p Ft(')h(option)g(means)f(to)i(list)f(eac)m(h)h(builtin)e -(with)g(an)g(indication)i(of)630 1090 y(whether)c(or)g(not)h(it)g(is)f -(enabled.)630 1224 y(The)40 b(`)p Fs(-f)p Ft(')g(option)g(means)g(to)h -(load)g(the)f(new)f(builtin)h(command)g Fq(name)45 b -Ft(from)40 b(shared)630 1334 y(ob)5 b(ject)26 b Fq(\014lename)5 -b Ft(,)28 b(on)d(systems)h(that)g(supp)s(ort)e(dynamic)h(loading.)40 -b(The)25 b(`)p Fs(-d)p Ft(')h(option)g(will)630 1443 -y(delete)32 b(a)e(builtin)g(loaded)h(with)f(`)p Fs(-f)p -Ft('.)630 1577 y(If)h(there)g(are)g(no)g(options,)h(a)f(list)h(of)f -(the)g(shell)g(builtins)g(is)g(displa)m(y)m(ed.)43 b(The)31 -b(`)p Fs(-s)p Ft(')f(option)630 1687 y(restricts)f Fs(enable)e -Ft(to)i(the)f Fl(posix)g Ft(sp)s(ecial)h(builtins.)40 -b(If)27 b(`)p Fs(-s)p Ft(')i(is)f(used)g(with)g(`)p Fs(-f)p -Ft(',)h(the)f(new)630 1797 y(builtin)i(b)s(ecomes)h(a)f(sp)s(ecial)h -(builtin)f(\(see)i(Section)f(4.4)g([Sp)s(ecial)g(Builtins],)g(page)g -(62\).)630 1931 y(The)26 b(return)f(status)h(is)g(zero)h(unless)e(a)i -Fq(name)k Ft(is)26 b(not)g(a)h(shell)f(builtin)g(or)g(there)g(is)g(an)g -(error)630 2040 y(loading)31 b(a)g(new)f(builtin)g(from)g(a)g(shared)g -(ob)5 b(ject.)150 2198 y Fs(help)870 2332 y(help)47 b([-dms])f([)p -Fi(pattern)11 b Fs(])630 2466 y Ft(Displa)m(y)40 b(helpful)e -(information)h(ab)s(out)g(builtin)f(commands.)66 b(If)38 -b Fq(pattern)h Ft(is)g(sp)s(eci\014ed,)630 2576 y Fs(help)28 -b Ft(giv)m(es)i(detailed)g(help)e(on)h(all)h(commands)e(matc)m(hing)i -Fq(pattern)p Ft(,)g(otherwise)f(a)g(list)h(of)630 2685 -y(the)h(builtins)e(is)i(prin)m(ted.)630 2819 y(Options,)f(if)h +b(Reference)g(Man)m(ual)150 299 y Fs(enable)870 433 y(enable)46 +b([-a])h([-dnps])f([-f)g Fi(filename)11 b Fs(])45 b([)p +Fi(name)57 b Fs(...)o(])630 567 y Ft(Enable)36 b(and)f(disable)h +(builtin)g(shell)g(commands.)56 b(Disabling)37 b(a)g(builtin)e(allo)m +(ws)i(a)f(disk)630 676 y(command)e(whic)m(h)g(has)g(the)g(same)h(name)f +(as)h(a)f(shell)h(builtin)e(to)i(b)s(e)f(executed)h(without)630 +786 y(sp)s(ecifying)27 b(a)g(full)g(pathname,)g(ev)m(en)h(though)f(the) +g(shell)g(normally)g(searc)m(hes)h(for)f(builtins)630 +896 y(b)s(efore)32 b(disk)f(commands.)46 b(If)31 b(`)p +Fs(-n)p Ft(')h(is)g(used,)g(the)g Fq(name)5 b Ft(s)32 +b(b)s(ecome)h(disabled.)45 b(Otherwise)630 1005 y Fq(name)5 +b Ft(s)44 b(are)h(enabled.)82 b(F)-8 b(or)45 b(example,)k(to)c(use)f +(the)g Fs(test)f Ft(binary)h(found)f(via)h Fs($PATH)630 +1115 y Ft(instead)31 b(of)f(the)h(shell)f(builtin)g(v)m(ersion,)h(t)m +(yp)s(e)g(`)p Fs(enable)e(-n)h(test)p Ft('.)630 1249 +y(If)42 b(the)h(`)p Fs(-p)p Ft(')f(option)h(is)f(supplied,)j(or)d(no)h +Fq(name)k Ft(argumen)m(ts)c(app)s(ear,)i(a)e(list)g(of)g(shell)630 +1358 y(builtins)37 b(is)h(prin)m(ted.)63 b(With)38 b(no)f(other)h +(argumen)m(ts,)j(the)d(list)g(consists)g(of)g(all)h(enabled)630 +1468 y(shell)33 b(builtins.)46 b(The)32 b(`)p Fs(-a)p +Ft(')h(option)g(means)f(to)i(list)f(eac)m(h)h(builtin)e(with)g(an)g +(indication)i(of)630 1577 y(whether)c(or)g(not)h(it)g(is)f(enabled.)630 +1711 y(The)40 b(`)p Fs(-f)p Ft(')g(option)g(means)g(to)h(load)g(the)f +(new)f(builtin)h(command)g Fq(name)45 b Ft(from)40 b(shared)630 +1821 y(ob)5 b(ject)26 b Fq(\014lename)5 b Ft(,)28 b(on)d(systems)h +(that)g(supp)s(ort)e(dynamic)h(loading.)40 b(The)25 b(`)p +Fs(-d)p Ft(')h(option)g(will)630 1931 y(delete)32 b(a)e(builtin)g +(loaded)h(with)f(`)p Fs(-f)p Ft('.)630 2064 y(If)h(there)g(are)g(no)g +(options,)h(a)f(list)h(of)f(the)g(shell)g(builtins)g(is)g(displa)m(y)m +(ed.)43 b(The)31 b(`)p Fs(-s)p Ft(')f(option)630 2174 +y(restricts)f Fs(enable)e Ft(to)i(the)f Fl(posix)g Ft(sp)s(ecial)h +(builtins.)40 b(If)27 b(`)p Fs(-s)p Ft(')i(is)f(used)g(with)g(`)p +Fs(-f)p Ft(',)h(the)f(new)630 2284 y(builtin)i(b)s(ecomes)h(a)f(sp)s +(ecial)h(builtin)f(\(see)i(Section)f(4.4)g([Sp)s(ecial)g(Builtins],)g +(page)g(62\).)630 2418 y(The)26 b(return)f(status)h(is)g(zero)h(unless) +e(a)i Fq(name)k Ft(is)26 b(not)g(a)h(shell)f(builtin)g(or)g(there)g(is) +g(an)g(error)630 2527 y(loading)31 b(a)g(new)f(builtin)g(from)g(a)g +(shared)g(ob)5 b(ject.)150 2685 y Fs(help)870 2819 y(help)47 +b([-dms])f([)p Fi(pattern)11 b Fs(])630 2953 y Ft(Displa)m(y)40 +b(helpful)e(information)h(ab)s(out)g(builtin)f(commands.)66 +b(If)38 b Fq(pattern)h Ft(is)g(sp)s(eci\014ed,)630 3063 +y Fs(help)28 b Ft(giv)m(es)i(detailed)g(help)e(on)h(all)h(commands)e +(matc)m(hing)i Fq(pattern)p Ft(,)g(otherwise)f(a)g(list)h(of)630 +3173 y(the)h(builtins)e(is)i(prin)m(ted.)630 3306 y(Options,)f(if)h (supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630 -2978 y Fs(-d)384 b Ft(Displa)m(y)32 b(a)e(short)g(description)h(of)f -(eac)m(h)i Fq(pattern)630 3136 y Fs(-m)384 b Ft(Displa)m(y)32 +3465 y Fs(-d)384 b Ft(Displa)m(y)32 b(a)e(short)g(description)h(of)f +(eac)m(h)i Fq(pattern)630 3623 y Fs(-m)384 b Ft(Displa)m(y)32 b(the)e(description)g(of)h(eac)m(h)h Fq(pattern)e Ft(in)g(a)h -(manpage-lik)m(e)h(format)630 3294 y Fs(-s)384 b Ft(Displa)m(y)32 +(manpage-lik)m(e)h(format)630 3781 y Fs(-s)384 b Ft(Displa)m(y)32 b(only)e(a)h(short)f(usage)h(synopsis)e(for)i(eac)m(h)g -Fq(pattern)630 3453 y Ft(The)f(return)f(status)i(is)f(zero)h(unless)f -(no)g(command)h(matc)m(hes)g Fq(pattern)p Ft(.)150 3611 -y Fs(let)870 3745 y(let)47 b Fi(expression)55 b Fs([)p -Fi(expression)11 b Fs(])630 3879 y Ft(The)41 b Fs(let)g +Fq(pattern)630 3940 y Ft(The)f(return)f(status)i(is)f(zero)h(unless)f +(no)g(command)h(matc)m(hes)g Fq(pattern)p Ft(.)150 4098 +y Fs(let)870 4232 y(let)47 b Fi(expression)55 b Fs([)p +Fi(expression)11 b Fs(])630 4366 y Ft(The)41 b Fs(let)g Ft(builtin)g(allo)m(ws)i(arithmetic)f(to)h(b)s(e)d(p)s(erformed)g(on)i -(shell)g(v)-5 b(ariables.)74 b(Eac)m(h)630 3988 y Fq(expression)31 +(shell)g(v)-5 b(ariables.)74 b(Eac)m(h)630 4475 y Fq(expression)31 b Ft(is)g(ev)-5 b(aluated)32 b(according)f(to)h(the)f(rules)g(giv)m(en) -h(b)s(elo)m(w)f(in)f(Section)i(6.5)g([Shell)630 4098 +h(b)s(elo)m(w)f(in)f(Section)i(6.5)g([Shell)630 4585 y(Arithmetic],)51 b(page)46 b(80.)87 b(If)45 b(the)g(last)h Fq(expression)g Ft(ev)-5 b(aluates)47 b(to)f(0,)k Fs(let)44 -b Ft(returns)g(1;)630 4208 y(otherwise)31 b(0)g(is)f(returned.)150 -4366 y Fs(local)870 4500 y(local)46 b([)p Fi(option)11 +b Ft(returns)g(1;)630 4695 y(otherwise)31 b(0)g(is)f(returned.)150 +4853 y Fs(local)870 4987 y(local)46 b([)p Fi(option)11 b Fs(])45 b Fi(name)11 b Fs([=)p Fi(value)g Fs(])44 b(...)630 -4634 y Ft(F)-8 b(or)26 b(eac)m(h)h(argumen)m(t,)g(a)e(lo)s(cal)i(v)-5 +5121 y Ft(F)-8 b(or)26 b(eac)m(h)h(argumen)m(t,)g(a)e(lo)s(cal)i(v)-5 b(ariable)26 b(named)f Fq(name)31 b Ft(is)25 b(created,)j(and)d -(assigned)g Fq(v)-5 b(alue)5 b Ft(.)630 4743 y(The)37 +(assigned)g Fq(v)-5 b(alue)5 b Ft(.)630 5230 y(The)37 b Fq(option)h Ft(can)f(b)s(e)g(an)m(y)h(of)f(the)h(options)g(accepted)g (b)m(y)g Fs(declare)p Ft(.)59 b Fs(local)36 b Ft(can)i(only)630 -4853 y(b)s(e)j(used)h(within)f(a)i(function;)48 b(it)42 +5340 y(b)s(e)j(used)h(within)f(a)i(function;)48 b(it)42 b(mak)m(es)h(the)f(v)-5 b(ariable)43 b Fq(name)48 b Ft(ha)m(v)m(e)43 -b(a)f(visible)h(scop)s(e)630 4963 y(restricted)c(to)g(that)g(function)f -(and)f(its)i(c)m(hildren.)64 b(The)38 b(return)f(status)h(is)h(zero)g -(unless)630 5072 y Fs(local)g Ft(is)h(used)g(outside)g(a)h(function,)h -(an)e(in)m(v)-5 b(alid)41 b Fq(name)46 b Ft(is)40 b(supplied,)i(or)e -Fq(name)45 b Ft(is)c(a)630 5182 y(readonly)30 b(v)-5 -b(ariable.)150 5340 y Fs(logout)p eop end +b(a)f(visible)h(scop)s(e)p eop end %%Page: 49 55 TeXDict begin 49 54 bop 150 -116 a Ft(Chapter)30 b(4:)41 -b(Shell)30 b(Builtin)h(Commands)2069 b(49)870 299 y Fs(logout)46 -b([)p Fi(n)11 b Fs(])630 429 y Ft(Exit)31 b(a)g(login)g(shell,)g -(returning)e(a)i(status)g(of)f Fq(n)g Ft(to)h(the)g(shell's)f(paren)m -(t.)150 580 y Fs(mapfile)870 710 y(mapfile)46 b([-n)h -Fi(count)11 b Fs(])45 b([-O)i Fi(origin)11 b Fs(])46 -b([-s)g Fi(count)11 b Fs(])46 b([-t])h([-u)g Fi(fd)11 -b Fs(])46 b([)870 819 y(-C)h Fi(callback)11 b Fs(])45 -b([-c)i Fi(quantum)11 b Fs(])45 b([)p Fi(array)11 b Fs(])630 -950 y Ft(Read)37 b(lines)g(from)f(the)h(standard)f(input)g(in)m(to)h -(the)g(indexed)f(arra)m(y)i(v)-5 b(ariable)37 b Fq(arra)m(y)8 -b Ft(,)39 b(or)630 1059 y(from)c(\014le)h(descriptor)g -Fq(fd)j Ft(if)d(the)g(`)p Fs(-u)p Ft(')g(option)g(is)g(supplied.)56 +b(Shell)30 b(Builtin)h(Commands)2069 b(49)630 299 y(restricted)39 +b(to)g(that)g(function)f(and)f(its)i(c)m(hildren.)64 +b(The)38 b(return)f(status)h(is)h(zero)g(unless)630 408 +y Fs(local)g Ft(is)h(used)g(outside)g(a)h(function,)h(an)e(in)m(v)-5 +b(alid)41 b Fq(name)46 b Ft(is)40 b(supplied,)i(or)e +Fq(name)45 b Ft(is)c(a)630 518 y(readonly)30 b(v)-5 b(ariable.)150 +684 y Fs(logout)870 822 y(logout)46 b([)p Fi(n)11 b Fs(])630 +960 y Ft(Exit)31 b(a)g(login)g(shell,)g(returning)e(a)i(status)g(of)f +Fq(n)g Ft(to)h(the)g(shell's)f(paren)m(t.)150 1126 y +Fs(mapfile)870 1264 y(mapfile)46 b([-n)h Fi(count)11 +b Fs(])45 b([-O)i Fi(origin)11 b Fs(])46 b([-s)g Fi(count)11 +b Fs(])46 b([-t])h([-u)g Fi(fd)11 b Fs(])46 b([)870 1374 +y(-C)h Fi(callback)11 b Fs(])45 b([-c)i Fi(quantum)11 +b Fs(])45 b([)p Fi(array)11 b Fs(])630 1511 y Ft(Read)37 +b(lines)g(from)f(the)h(standard)f(input)g(in)m(to)h(the)g(indexed)f +(arra)m(y)i(v)-5 b(ariable)37 b Fq(arra)m(y)8 b Ft(,)39 +b(or)630 1621 y(from)c(\014le)h(descriptor)g Fq(fd)j +Ft(if)d(the)g(`)p Fs(-u)p Ft(')g(option)g(is)g(supplied.)56 b(The)35 b(v)-5 b(ariable)37 b Fs(MAPFILE)d Ft(is)630 -1169 y(the)d(default)f Fq(arra)m(y)8 b Ft(.)41 b(Options,)30 +1731 y(the)d(default)f Fq(arra)m(y)8 b Ft(.)41 b(Options,)30 b(if)h(supplied,)e(ha)m(v)m(e)j(the)e(follo)m(wing)i(meanings:)630 -1319 y Fs(-n)384 b Ft(Cop)m(y)30 b(at)h(most)g Fq(coun)m(t)i +1897 y Fs(-n)384 b Ft(Cop)m(y)30 b(at)h(most)g Fq(coun)m(t)i Ft(lines.)41 b(If)30 b Fq(coun)m(t)j Ft(is)d(0,)h(all)h(lines)e(are)h -(copied.)630 1470 y Fs(-O)384 b Ft(Begin)31 b(assigning)g(to)g +(copied.)630 2063 y Fs(-O)384 b Ft(Begin)31 b(assigning)g(to)g Fq(arra)m(y)39 b Ft(at)31 b(index)f Fq(origin)p Ft(.)41 -b(The)30 b(default)h(index)f(is)g(0.)630 1621 y Fs(-s)384 +b(The)30 b(default)h(index)f(is)g(0.)630 2229 y Fs(-s)384 b Ft(Discard)31 b(the)f(\014rst)g Fq(coun)m(t)j Ft(lines)e(read.)630 -1771 y Fs(-t)384 b Ft(Remo)m(v)m(e)32 b(a)f(trailing)g(newline)g(from)f -(eac)m(h)h(line)g(read.)630 1922 y Fs(-u)384 b Ft(Read)31 +2395 y Fs(-t)384 b Ft(Remo)m(v)m(e)32 b(a)f(trailing)g(newline)g(from)f +(eac)m(h)h(line)g(read.)630 2561 y Fs(-u)384 b Ft(Read)31 b(lines)f(from)g(\014le)h(descriptor)f Fq(fd)j Ft(instead)e(of)f(the)h -(standard)e(input.)630 2073 y Fs(-C)384 b Ft(Ev)-5 b(aluate)43 +(standard)e(input.)630 2728 y Fs(-C)384 b Ft(Ev)-5 b(aluate)43 b Fq(callbac)m(k)49 b Ft(eac)m(h)42 b(time)g Fq(quan)m(tum)p Ft(P)f(lines)h(are)f(read.)74 b(The)41 b(`)p Fs(-c)p -Ft(')1110 2182 y(option)31 b(sp)s(eci\014es)f Fq(quan)m(tum)p -Ft(.)630 2333 y Fs(-c)384 b Ft(Sp)s(ecify)30 b(the)g(n)m(um)m(b)s(er)f +Ft(')1110 2837 y(option)31 b(sp)s(eci\014es)f Fq(quan)m(tum)p +Ft(.)630 3003 y Fs(-c)384 b Ft(Sp)s(ecify)30 b(the)g(n)m(um)m(b)s(er)f (of)i(lines)f(read)h(b)s(et)m(w)m(een)g(eac)m(h)g(call)h(to)f -Fq(callbac)m(k)6 b Ft(.)630 2484 y(If)36 b(`)p Fs(-C)p +Fq(callbac)m(k)6 b Ft(.)630 3169 y(If)36 b(`)p Fs(-C)p Ft(')g(is)h(sp)s(eci\014ed)f(without)g(`)p Fs(-c)p Ft(',)i(the)f (default)f(quan)m(tum)g(is)h(5000.)61 b(When)36 b Fq(callbac)m(k)630 -2593 y Ft(is)e(ev)-5 b(aluated,)36 b(it)f(is)f(supplied)f(the)h(index)f +3279 y Ft(is)e(ev)-5 b(aluated,)36 b(it)f(is)f(supplied)f(the)h(index)f (of)h(the)h(next)f(arra)m(y)g(elemen)m(t)i(to)e(b)s(e)g(assigned)630 -2703 y(and)f(the)g(line)h(to)f(b)s(e)g(assigned)g(to)h(that)g(elemen)m +3389 y(and)f(the)g(line)h(to)f(b)s(e)g(assigned)g(to)h(that)g(elemen)m (t)h(as)e(additional)h(argumen)m(ts.)50 b Fq(callbac)m(k)630 -2813 y Ft(is)30 b(ev)-5 b(aluated)32 b(after)f(the)f(line)h(is)g(read)f +3498 y Ft(is)30 b(ev)-5 b(aluated)32 b(after)f(the)f(line)h(is)g(read)f (but)g(b)s(efore)f(the)i(arra)m(y)g(elemen)m(t)h(is)e(assigned.)630 -2943 y(If)25 b(not)g(supplied)f(with)h(an)g(explicit)i(origin,)g +3636 y(If)25 b(not)g(supplied)f(with)h(an)g(explicit)i(origin,)g Fs(mapfile)c Ft(will)j(clear)g Fq(arra)m(y)34 b Ft(b)s(efore)24 -b(assigning)630 3052 y(to)31 b(it.)630 3182 y Fs(mapfile)41 +b(assigning)630 3746 y(to)31 b(it.)630 3884 y Fs(mapfile)41 b Ft(returns)g(successfully)i(unless)e(an)i(in)m(v)-5 b(alid)43 b(option)g(or)g(option)g(argumen)m(t)g(is)630 -3292 y(supplied,)29 b Fq(arra)m(y)39 b Ft(is)30 b(in)m(v)-5 +3993 y(supplied,)29 b Fq(arra)m(y)39 b Ft(is)30 b(in)m(v)-5 b(alid)31 b(or)g(unassignable,)f(or)h Fq(arra)m(y)38 b Ft(is)31 b(not)f(an)h(indexed)e(arra)m(y)-8 b(.)150 -3443 y Fs(printf)870 3573 y(printf)46 b([-v)h Fi(var)11 +4159 y Fs(printf)870 4297 y(printf)46 b([-v)h Fi(var)11 b Fs(])46 b Fi(format)57 b Fs([)p Fi(arguments)11 b Fs(])630 -3703 y Ft(W)-8 b(rite)27 b(the)g(formatted)f Fq(argumen)m(ts)k +4435 y Ft(W)-8 b(rite)27 b(the)g(formatted)f Fq(argumen)m(ts)k Ft(to)d(the)f(standard)f(output)h(under)e(the)i(con)m(trol)i(of)e(the) -630 3813 y Fq(format)r Ft(.)57 b(The)35 b(`)p Fs(-v)p +630 4545 y Fq(format)r Ft(.)57 b(The)35 b(`)p Fs(-v)p Ft(')h(option)g(causes)g(the)g(output)g(to)g(b)s(e)f(assigned)h(to)h -(the)e(v)-5 b(ariable)37 b Fq(v)-5 b(ar)630 3922 y Ft(rather)30 +(the)e(v)-5 b(ariable)37 b Fq(v)-5 b(ar)630 4654 y Ft(rather)30 b(than)g(b)s(eing)g(prin)m(ted)g(to)h(the)g(standard)e(output.)630 -4052 y(The)36 b Fq(format)i Ft(is)f(a)f(c)m(haracter)i(string)e(whic)m +4792 y(The)36 b Fq(format)i Ft(is)f(a)f(c)m(haracter)i(string)e(whic)m (h)g(con)m(tains)i(three)e(t)m(yp)s(es)g(of)h(ob)5 b(jects:)53 -b(plain)630 4162 y(c)m(haracters,)41 b(whic)m(h)c(are)h(simply)e +b(plain)630 4902 y(c)m(haracters,)41 b(whic)m(h)c(are)h(simply)e (copied)i(to)g(standard)f(output,)i(c)m(haracter)g(escap)s(e)e(se-)630 -4271 y(quences,)g(whic)m(h)f(are)g(con)m(v)m(erted)h(and)f(copied)g(to) -g(the)g(standard)f(output,)i(and)f(format)630 4381 y(sp)s +5011 y(quences,)g(whic)m(h)f(are)g(con)m(v)m(erted)h(and)f(copied)g(to) +g(the)g(standard)f(output,)i(and)f(format)630 5121 y(sp)s (eci\014cations,)i(eac)m(h)g(of)e(whic)m(h)g(causes)g(prin)m(ting)g(of) g(the)h(next)f(successiv)m(e)h Fq(argumen)m(t)r Ft(.)630 -4491 y(In)24 b(addition)h(to)g(the)g(standard)f Fs(printf\(1\))e +5230 y(In)24 b(addition)h(to)g(the)g(standard)f Fs(printf\(1\))e Ft(formats,)27 b Fs(printf)c Ft(in)m(terprets)i(the)f(follo)m(wing)630 -4600 y(extensions:)630 4751 y Fs(\045b)384 b Ft(causes)42 +5340 y(extensions:)p eop end +%%Page: 50 56 +TeXDict begin 50 55 bop 150 -116 a Ft(50)2572 b(Bash)31 +b(Reference)g(Man)m(ual)630 299 y Fs(\045b)384 b Ft(causes)42 b Fs(printf)e Ft(to)i(expand)f(bac)m(kslash)h(escap)s(e)g(sequences)f -(in)h(the)f(cor-)1110 4861 y(resp)s(onding)c Fq(argumen)m(t)r +(in)h(the)f(cor-)1110 408 y(resp)s(onding)c Fq(argumen)m(t)r Ft(,)42 b(\(except)e(that)g(`)p Fs(\\c)p Ft(')e(terminates)i(output,)h -(bac)m(k-)1110 4970 y(slashes)d(in)f(`)p Fs(\\')p Ft(',)j(`)p +(bac)m(k-)1110 518 y(slashes)d(in)f(`)p Fs(\\')p Ft(',)j(`)p Fs(\\")p Ft(',)f(and)e(`)p Fs(\\?)p Ft(')h(are)g(not)g(remo)m(v)m(ed,)j -(and)c(o)s(ctal)i(escap)s(es)1110 5080 y(b)s(eginning)30 +(and)c(o)s(ctal)i(escap)s(es)1110 628 y(b)s(eginning)30 b(with)g(`)p Fs(\\0)p Ft(')g(ma)m(y)h(con)m(tain)h(up)d(to)i(four)f -(digits\).)630 5230 y Fs(\045q)384 b Ft(causes)35 b Fs(printf)e +(digits\).)630 786 y Fs(\045q)384 b Ft(causes)35 b Fs(printf)e Ft(to)i(output)g(the)g(corresp)s(onding)e Fq(argumen)m(t)k -Ft(in)e(a)g(format)1110 5340 y(that)c(can)g(b)s(e)e(reused)h(as)h -(shell)f(input.)p eop end -%%Page: 50 56 -TeXDict begin 50 55 bop 150 -116 a Ft(50)2572 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y Fs(\045\()p Fi(datefmt)11 -b Fs(\)T)1110 408 y Ft(causes)32 b Fs(printf)f Ft(to)h(output)g(the)g -(date-time)i(string)e(resulting)g(from)f(using)1110 518 -y Fq(datefm)m(t)45 b Ft(as)d(a)g(format)g(string)g(for)g -Fs(strftime)p Ft(\(3\).)74 b(The)41 b(corresp)s(onding)1110 -628 y Fq(argumen)m(t)h Ft(is)e(an)g(in)m(teger)i(represen)m(ting)e(the) -g(n)m(um)m(b)s(er)f(of)h(seconds)g(since)1110 737 y(the)24 -b(ep)s(o)s(c)m(h.)38 b(Tw)m(o)24 b(sp)s(ecial)h(argumen)m(t)f(v)-5 -b(alues)24 b(ma)m(y)h(b)s(e)e(used:)36 b(-1)25 b(represen)m(ts)1110 -847 y(the)30 b(curren)m(t)g(time,)h(and)e(-2)i(represen)m(ts)f(the)g +Ft(in)e(a)g(format)1110 896 y(that)c(can)g(b)s(e)e(reused)h(as)h(shell) +f(input.)630 1054 y Fs(\045\()p Fi(datefmt)11 b Fs(\)T)1110 +1163 y Ft(causes)32 b Fs(printf)f Ft(to)h(output)g(the)g(date-time)i +(string)e(resulting)g(from)f(using)1110 1273 y Fq(datefm)m(t)45 +b Ft(as)d(a)g(format)g(string)g(for)g Fs(strftime)p Ft(\(3\).)74 +b(The)41 b(corresp)s(onding)1110 1383 y Fq(argumen)m(t)h +Ft(is)e(an)g(in)m(teger)i(represen)m(ting)e(the)g(n)m(um)m(b)s(er)f(of) +h(seconds)g(since)1110 1492 y(the)24 b(ep)s(o)s(c)m(h.)38 +b(Tw)m(o)24 b(sp)s(ecial)h(argumen)m(t)f(v)-5 b(alues)24 +b(ma)m(y)h(b)s(e)e(used:)36 b(-1)25 b(represen)m(ts)1110 +1602 y(the)30 b(curren)m(t)g(time,)h(and)e(-2)i(represen)m(ts)f(the)g (time)h(the)f(shell)g(w)m(as)g(in)m(v)m(ok)m(ed.)630 -1005 y(Argumen)m(ts)e(to)h(non-string)e(format)i(sp)s(eci\014ers)e(are) -h(treated)h(as)g(C)e(language)j(constan)m(ts,)630 1115 +1760 y(Argumen)m(ts)e(to)h(non-string)e(format)i(sp)s(eci\014ers)e(are) +h(treated)h(as)g(C)e(language)j(constan)m(ts,)630 1870 y(except)22 b(that)g(a)g(leading)g(plus)e(or)h(min)m(us)f(sign)i(is)f (allo)m(w)m(ed,)k(and)c(if)g(the)g(leading)h(c)m(haracter)h(is)630 -1224 y(a)i(single)g(or)f(double)h(quote,)h(the)f(v)-5 +1979 y(a)i(single)g(or)f(double)h(quote,)h(the)f(v)-5 b(alue)25 b(is)f(the)h(ASCI)s(I)e(v)-5 b(alue)25 b(of)f(the)h(follo)m -(wing)h(c)m(haracter.)630 1358 y(The)31 b Fq(format)i +(wing)h(c)m(haracter.)630 2113 y(The)31 b Fq(format)i Ft(is)e(reused)f(as)i(necessary)f(to)h(consume)f(all)h(of)f(the)g Fq(argumen)m(ts)t Ft(.)43 b(If)31 b(the)g Fq(for-)630 -1468 y(mat)d Ft(requires)e(more)g Fq(argumen)m(ts)k Ft(than)25 +2223 y(mat)d Ft(requires)e(more)g Fq(argumen)m(ts)k Ft(than)25 b(are)i(supplied,)e(the)h(extra)h(format)f(sp)s(eci\014cations)630 -1577 y(b)s(eha)m(v)m(e)j(as)g(if)f(a)h(zero)g(v)-5 b(alue)29 +2332 y(b)s(eha)m(v)m(e)j(as)g(if)f(a)h(zero)g(v)-5 b(alue)29 b(or)g(n)m(ull)f(string,)h(as)g(appropriate,)g(had)f(b)s(een)g -(supplied.)38 b(The)630 1687 y(return)29 b(v)-5 b(alue)31 +(supplied.)38 b(The)630 2442 y(return)29 b(v)-5 b(alue)31 b(is)g(zero)g(on)f(success,)h(non-zero)g(on)f(failure.)150 -1845 y Fs(read)870 1979 y(read)47 b([-ers])f([-a)h Fi(aname)11 +2600 y Fs(read)870 2734 y(read)47 b([-ers])f([-a)h Fi(aname)11 b Fs(])45 b([-d)i Fi(delim)11 b Fs(])46 b([-i)h Fi(text)11 b Fs(])46 b([-n)g Fi(nchars)11 b Fs(])46 b([-N)h Fi(nchars)11 b Fs(])45 b([-p)i Fi(prompt)11 b Fs(])45 b([-t)i Fi(time-)870 -2089 y(out)11 b Fs(])46 b([-u)h Fi(fd)11 b Fs(])46 b([)p -Fi(name)57 b Fs(...])630 2223 y Ft(One)26 b(line)h(is)g(read)f(from)h +2844 y(out)11 b Fs(])46 b([-u)h Fi(fd)11 b Fs(])46 b([)p +Fi(name)57 b Fs(...])630 2978 y Ft(One)26 b(line)h(is)g(read)f(from)h (the)f(standard)g(input,)h(or)g(from)f(the)h(\014le)f(descriptor)h -Fq(fd)i Ft(supplied)630 2332 y(as)37 b(an)g(argumen)m(t)h(to)f(the)h(`) +Fq(fd)i Ft(supplied)630 3087 y(as)37 b(an)g(argumen)m(t)h(to)f(the)h(`) p Fs(-u)p Ft(')e(option,)k(and)c(the)i(\014rst)e(w)m(ord)g(is)h -(assigned)h(to)f(the)h(\014rst)630 2442 y Fq(name)5 b +(assigned)h(to)f(the)h(\014rst)630 3197 y Fq(name)5 b Ft(,)28 b(the)g(second)g(w)m(ord)f(to)h(the)f(second)h Fq(name)5 b Ft(,)28 b(and)f(so)h(on,)g(with)f(lefto)m(v)m(er)j(w)m -(ords)d(and)630 2552 y(their)h(in)m(terv)m(ening)g(separators)g +(ords)d(and)630 3306 y(their)h(in)m(terv)m(ening)g(separators)g (assigned)g(to)h(the)e(last)i Fq(name)5 b Ft(.)40 b(If)27 -b(there)h(are)g(few)m(er)f(w)m(ords)630 2661 y(read)44 +b(there)h(are)g(few)m(er)f(w)m(ords)630 3416 y(read)44 b(from)f(the)g(input)g(stream)h(than)g(names,)j(the)c(remaining)h -(names)g(are)g(assigned)630 2771 y(empt)m(y)31 b(v)-5 +(names)g(are)g(assigned)630 3526 y(empt)m(y)31 b(v)-5 b(alues.)41 b(The)30 b(c)m(haracters)i(in)e(the)h(v)-5 b(alue)31 b(of)g(the)f Fs(IFS)g Ft(v)-5 b(ariable)31 -b(are)g(used)f(to)h(split)630 2880 y(the)37 b(line)h(in)m(to)g(w)m +b(are)g(used)f(to)h(split)630 3635 y(the)37 b(line)h(in)m(to)g(w)m (ords.)61 b(The)36 b(bac)m(kslash)i(c)m(haracter)h(`)p Fs(\\)p Ft(')e(ma)m(y)h(b)s(e)f(used)f(to)i(remo)m(v)m(e)h(an)m(y)630 -2990 y(sp)s(ecial)h(meaning)g(for)f(the)g(next)h(c)m(haracter)h(read)e +3745 y(sp)s(ecial)h(meaning)g(for)f(the)g(next)h(c)m(haracter)h(read)e (and)g(for)g(line)h(con)m(tin)m(uation.)69 b(If)39 b(no)630 -3099 y(names)28 b(are)h(supplied,)f(the)g(line)h(read)g(is)f(assigned)h +3854 y(names)28 b(are)h(supplied,)f(the)g(line)h(read)g(is)f(assigned)h (to)g(the)f(v)-5 b(ariable)29 b Fs(REPLY)p Ft(.)39 b(The)28 -b(return)630 3209 y(co)s(de)e(is)g(zero,)h(unless)e(end-of-\014le)h(is) +b(return)630 3964 y(co)s(de)e(is)g(zero,)h(unless)e(end-of-\014le)h(is) g(encoun)m(tered,)h Fs(read)e Ft(times)h(out)g(\(in)g(whic)m(h)f(case)i -(the)630 3319 y(return)i(co)s(de)i(is)g(greater)g(than)g(128\),)h(or)f +(the)630 4074 y(return)i(co)s(de)i(is)g(greater)g(than)g(128\),)h(or)f (an)f(in)m(v)-5 b(alid)31 b(\014le)g(descriptor)f(is)h(supplied)e(as)i -(the)630 3428 y(argumen)m(t)g(to)g(`)p Fs(-u)p Ft('.)630 -3562 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h -(meanings:)630 3720 y Fs(-a)e Fi(aname)114 b Ft(The)34 +(the)630 4183 y(argumen)m(t)g(to)g(`)p Fs(-u)p Ft('.)630 +4317 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h +(meanings:)630 4475 y Fs(-a)e Fi(aname)114 b Ft(The)34 b(w)m(ords)f(are)i(assigned)f(to)h(sequen)m(tial)h(indices)e(of)g(the)g -(arra)m(y)h(v)-5 b(ariable)1110 3830 y Fq(aname)5 b Ft(,)29 +(arra)m(y)h(v)-5 b(ariable)1110 4585 y Fq(aname)5 b Ft(,)29 b(starting)g(at)f(0.)40 b(All)29 b(elemen)m(ts)g(are)f(remo)m(v)m(ed)h -(from)e Fq(aname)33 b Ft(b)s(efore)1110 3940 y(the)e(assignmen)m(t.)41 +(from)e Fq(aname)33 b Ft(b)s(efore)1110 4695 y(the)e(assignmen)m(t.)41 b(Other)30 b Fq(name)36 b Ft(argumen)m(ts)30 b(are)h(ignored.)630 -4098 y Fs(-d)f Fi(delim)114 b Ft(The)41 b(\014rst)h(c)m(haracter)h(of)f +4853 y Fs(-d)f Fi(delim)114 b Ft(The)41 b(\014rst)h(c)m(haracter)h(of)f Fq(delim)g Ft(is)g(used)g(to)g(terminate)h(the)f(input)f(line,)1110 -4208 y(rather)30 b(than)g(newline.)630 4366 y Fs(-e)384 +4963 y(rather)30 b(than)g(newline.)630 5121 y Fs(-e)384 b Ft(Readline)28 b(\(see)h(Chapter)e(8)h([Command)f(Line)g(Editing],)i -(page)f(95\))h(is)f(used)1110 4475 y(to)42 b(obtain)f(the)g(line.)73 +(page)f(95\))h(is)f(used)1110 5230 y(to)42 b(obtain)f(the)g(line.)73 b(Readline)41 b(uses)g(the)g(curren)m(t)g(\(or)g(default,)j(if)d(line) -1110 4585 y(editing)31 b(w)m(as)g(not)f(previously)g(activ)m(e\))j -(editing)f(settings.)630 4743 y Fs(-i)e Fi(text)162 b -Ft(If)36 b(Readline)i(is)f(b)s(eing)g(used)f(to)h(read)g(the)g(line,)j -Fq(text)f Ft(is)e(placed)h(in)m(to)g(the)1110 4853 y(editing)31 -b(bu\013er)e(b)s(efore)h(editing)h(b)s(egins.)630 5011 -y Fs(-n)f Fi(nchars)1110 5121 y Fs(read)38 b Ft(returns)f(after)j -(reading)f Fq(nc)m(hars)j Ft(c)m(haracters)e(rather)f(than)g(w)m -(aiting)1110 5230 y(for)g(a)h(complete)h(line)f(of)f(input,)i(but)e -(honor)g(a)h(delimiter)g(if)f(few)m(er)h(than)1110 5340 -y Fq(nc)m(hars)34 b Ft(c)m(haracters)e(are)e(read)h(b)s(efore)f(the)g -(delimiter.)p eop end +1110 5340 y(editing)31 b(w)m(as)g(not)f(previously)g(activ)m(e\))j +(editing)f(settings.)p eop end %%Page: 51 57 TeXDict begin 51 56 bop 150 -116 a Ft(Chapter)30 b(4:)41 -b(Shell)30 b(Builtin)h(Commands)2069 b(51)630 299 y Fs(-N)30 -b Fi(nchars)1110 408 y Fs(read)39 b Ft(returns)f(after)j(reading)e -(exactly)j Fq(nc)m(hars)h Ft(c)m(haracters)f(rather)d(than)1110 -518 y(w)m(aiting)32 b(for)f(a)g(complete)i(line)e(of)g(input,)g(unless) -f(EOF)h(is)g(encoun)m(tered)g(or)1110 628 y Fs(read)f -Ft(times)i(out.)43 b(Delimiter)33 b(c)m(haracters)f(encoun)m(tered)g -(in)f(the)g(input)g(are)1110 737 y(not)g(treated)h(sp)s(ecially)g(and)f -(do)f(not)i(cause)f Fs(read)f Ft(to)i(return)e(un)m(til)h -Fq(nc)m(hars)1110 847 y Ft(c)m(haracters)h(are)f(read.)630 -1004 y Fs(-p)f Fi(prompt)1110 1114 y Ft(Displa)m(y)38 +b(Shell)30 b(Builtin)h(Commands)2069 b(51)630 299 y Fs(-i)30 +b Fi(text)162 b Ft(If)36 b(Readline)i(is)f(b)s(eing)g(used)f(to)h(read) +g(the)g(line,)j Fq(text)f Ft(is)e(placed)h(in)m(to)g(the)1110 +408 y(editing)31 b(bu\013er)e(b)s(efore)h(editing)h(b)s(egins.)630 +573 y Fs(-n)f Fi(nchars)1110 682 y Fs(read)38 b Ft(returns)f(after)j +(reading)f Fq(nc)m(hars)j Ft(c)m(haracters)e(rather)f(than)g(w)m +(aiting)1110 792 y(for)g(a)h(complete)h(line)f(of)f(input,)i(but)e +(honor)g(a)h(delimiter)g(if)f(few)m(er)h(than)1110 902 +y Fq(nc)m(hars)34 b Ft(c)m(haracters)e(are)e(read)h(b)s(efore)f(the)g +(delimiter.)630 1066 y Fs(-N)g Fi(nchars)1110 1176 y +Fs(read)39 b Ft(returns)f(after)j(reading)e(exactly)j +Fq(nc)m(hars)h Ft(c)m(haracters)f(rather)d(than)1110 +1285 y(w)m(aiting)32 b(for)f(a)g(complete)i(line)e(of)g(input,)g +(unless)f(EOF)h(is)g(encoun)m(tered)g(or)1110 1395 y +Fs(read)f Ft(times)i(out.)43 b(Delimiter)33 b(c)m(haracters)f(encoun)m +(tered)g(in)f(the)g(input)g(are)1110 1504 y(not)g(treated)h(sp)s +(ecially)g(and)f(do)f(not)i(cause)f Fs(read)f Ft(to)i(return)e(un)m +(til)h Fq(nc)m(hars)1110 1614 y Ft(c)m(haracters)h(are)f(read.)630 +1778 y Fs(-p)f Fi(prompt)1110 1888 y Ft(Displa)m(y)38 b Fq(prompt)r Ft(,)f(without)g(a)f(trailing)i(newline,)g(b)s(efore)e -(attempting)i(to)1110 1223 y(read)f(an)m(y)h(input.)60 +(attempting)i(to)1110 1998 y(read)f(an)m(y)h(input.)60 b(The)37 b(prompt)g(is)g(displa)m(y)m(ed)h(only)f(if)g(input)g(is)g -(coming)1110 1333 y(from)30 b(a)h(terminal.)630 1490 +(coming)1110 2107 y(from)30 b(a)h(terminal.)630 2271 y Fs(-r)384 b Ft(If)21 b(this)h(option)g(is)f(giv)m(en,)k(bac)m(kslash) d(do)s(es)f(not)h(act)h(as)f(an)f(escap)s(e)h(c)m(haracter.)1110 -1600 y(The)30 b(bac)m(kslash)i(is)f(considered)g(to)h(b)s(e)e(part)h -(of)g(the)g(line.)43 b(In)30 b(particular,)i(a)1110 1709 +2381 y(The)30 b(bac)m(kslash)i(is)f(considered)g(to)h(b)s(e)e(part)h +(of)g(the)g(line.)43 b(In)30 b(particular,)i(a)1110 2491 y(bac)m(kslash-newline)f(pair)f(ma)m(y)h(not)g(b)s(e)f(used)f(as)i(a)g -(line)f(con)m(tin)m(uation.)630 1866 y Fs(-s)384 b Ft(Silen)m(t)28 +(line)f(con)m(tin)m(uation.)630 2655 y Fs(-s)384 b Ft(Silen)m(t)28 b(mo)s(de.)40 b(If)27 b(input)f(is)i(coming)g(from)f(a)h(terminal,)h(c) -m(haracters)g(are)f(not)1110 1976 y(ec)m(ho)s(ed.)630 -2133 y Fs(-t)i Fi(timeout)1110 2243 y Ft(Cause)23 b Fs(read)f +m(haracters)g(are)f(not)1110 2765 y(ec)m(ho)s(ed.)630 +2929 y Fs(-t)i Fi(timeout)1110 3039 y Ft(Cause)23 b Fs(read)f Ft(to)i(time)f(out)h(and)e(return)g(failure)h(if)g(a)h(complete)g(line) -g(of)f(input)1110 2352 y(is)44 b(not)f(read)h(within)e +g(of)f(input)1110 3148 y(is)44 b(not)f(read)h(within)e Fq(timeout)47 b Ft(seconds.)80 b Fq(timeout)46 b Ft(ma)m(y)e(b)s(e)f(a) -h(decimal)1110 2462 y(n)m(um)m(b)s(er)26 b(with)h(a)h(fractional)h(p)s +h(decimal)1110 3258 y(n)m(um)m(b)s(er)26 b(with)h(a)h(fractional)h(p)s (ortion)d(follo)m(wing)j(the)f(decimal)g(p)s(oin)m(t.)40 -b(This)1110 2572 y(option)g(is)g(only)g(e\013ectiv)m(e)j(if)c +b(This)1110 3367 y(option)g(is)g(only)g(e\013ectiv)m(e)j(if)c Fs(read)g Ft(is)h(reading)g(input)f(from)g(a)h(terminal,)1110 -2681 y(pip)s(e,)25 b(or)e(other)i(sp)s(ecial)f(\014le;)i(it)f(has)e(no) -h(e\013ect)h(when)e(reading)h(from)g(regular)1110 2791 +3477 y(pip)s(e,)25 b(or)e(other)i(sp)s(ecial)f(\014le;)i(it)f(has)e(no) +h(e\013ect)h(when)e(reading)h(from)g(regular)1110 3587 y(\014les.)55 b(If)34 b Fq(timeout)k Ft(is)d(0,)i Fs(read)d Ft(returns)g(success)h(if)g(input)g(is)g(a)m(v)-5 b(ailable)37 -b(on)1110 2900 y(the)j(sp)s(eci\014ed)f(\014le)g(descriptor,)j(failure) -e(otherwise.)69 b(The)39 b(exit)h(status)g(is)1110 3010 +b(on)1110 3696 y(the)j(sp)s(eci\014ed)f(\014le)g(descriptor,)j(failure) +e(otherwise.)69 b(The)39 b(exit)h(status)g(is)1110 3806 y(greater)32 b(than)e(128)h(if)g(the)f(timeout)i(is)e(exceeded.)630 -3167 y Fs(-u)g Fi(fd)258 b Ft(Read)31 b(input)e(from)h(\014le)g -(descriptor)h Fq(fd)t Ft(.)150 3324 y Fs(readarray)870 -3434 y(readarray)45 b([-n)i Fi(count)11 b Fs(])46 b([-O)h +3970 y Fs(-u)g Fi(fd)258 b Ft(Read)31 b(input)e(from)h(\014le)g +(descriptor)h Fq(fd)t Ft(.)150 4134 y Fs(readarray)870 +4244 y(readarray)45 b([-n)i Fi(count)11 b Fs(])46 b([-O)h Fi(origin)11 b Fs(])45 b([-s)i Fi(count)11 b Fs(])46 -b([-t])g([-u)h Fi(fd)11 b Fs(])47 b([)870 3544 y(-C)g +b([-t])g([-u)h Fi(fd)11 b Fs(])47 b([)870 4354 y(-C)g Fi(callback)11 b Fs(])45 b([-c)i Fi(quantum)11 b Fs(])45 -b([)p Fi(array)11 b Fs(])630 3677 y Ft(Read)37 b(lines)g(from)f(the)h +b([)p Fi(array)11 b Fs(])630 4491 y Ft(Read)37 b(lines)g(from)f(the)h (standard)f(input)g(in)m(to)h(the)g(indexed)f(arra)m(y)i(v)-5 -b(ariable)37 b Fq(arra)m(y)8 b Ft(,)39 b(or)630 3787 +b(ariable)37 b Fq(arra)m(y)8 b Ft(,)39 b(or)630 4600 y(from)30 b(\014le)g(descriptor)h Fq(fd)i Ft(if)d(the)h(`)p -Fs(-u)p Ft(')f(option)h(is)f(supplied.)630 3920 y(A)g(synon)m(ym)g(for) -g Fs(mapfile)p Ft(.)150 4077 y Fs(source)870 4211 y(source)46 -b Fi(filename)630 4344 y Ft(A)30 b(synon)m(ym)g(for)g +Fs(-u)p Ft(')f(option)h(is)f(supplied.)630 4737 y(A)g(synon)m(ym)g(for) +g Fs(mapfile)p Ft(.)150 4902 y Fs(source)870 5039 y(source)46 +b Fi(filename)630 5176 y Ft(A)30 b(synon)m(ym)g(for)g Fs(.)g Ft(\(see)i(Section)f(4.1)g([Bourne)g(Shell)f(Builtins],)h(page)g -(37\).)150 4501 y Fs(type)870 4635 y(type)47 b([-afptP])e([)p -Fi(name)57 b Fs(...)o(])630 4768 y Ft(F)-8 b(or)41 b(eac)m(h)h +(37\).)150 5340 y Fs(type)p eop end +%%Page: 52 58 +TeXDict begin 52 57 bop 150 -116 a Ft(52)2572 b(Bash)31 +b(Reference)g(Man)m(ual)870 299 y Fs(type)47 b([-afptP])e([)p +Fi(name)57 b Fs(...)o(])630 433 y Ft(F)-8 b(or)41 b(eac)m(h)h Fq(name)5 b Ft(,)44 b(indicate)e(ho)m(w)f(it)g(w)m(ould)f(b)s(e)g(in)m -(terpreted)h(if)g(used)f(as)h(a)g(command)630 4878 y(name.)630 -5011 y(If)d(the)g(`)p Fs(-t)p Ft(')g(option)g(is)g(used,)i +(terpreted)h(if)g(used)f(as)h(a)g(command)630 542 y(name.)630 +676 y(If)d(the)g(`)p Fs(-t)p Ft(')g(option)g(is)g(used,)i Fs(type)d Ft(prin)m(ts)g(a)i(single)f(w)m(ord)g(whic)m(h)g(is)g(one)g -(of)h(`)p Fs(alias)p Ft(',)630 5121 y(`)p Fs(function)p +(of)h(`)p Fs(alias)p Ft(',)630 786 y(`)p Fs(function)p Ft(',)32 b(`)p Fs(builtin)p Ft(',)g(`)p Fs(file)p Ft(')g(or)h(`)p Fs(keyword)p Ft(',)f(if)h Fq(name)38 b Ft(is)33 b(an)f(alias,)j(shell)e -(function,)630 5230 y(shell)i(builtin,)g(disk)g(\014le,)h(or)e(shell)h +(function,)630 896 y(shell)i(builtin,)g(disk)g(\014le,)h(or)e(shell)h (reserv)m(ed)g(w)m(ord,)h(resp)s(ectiv)m(ely)-8 b(.)55 -b(If)34 b(the)h Fq(name)40 b Ft(is)35 b(not)630 5340 +b(If)34 b(the)h Fq(name)40 b Ft(is)35 b(not)630 1005 y(found,)29 b(then)h(nothing)h(is)f(prin)m(ted,)g(and)g -Fs(type)f Ft(returns)g(a)i(failure)g(status.)p eop end -%%Page: 52 58 -TeXDict begin 52 57 bop 150 -116 a Ft(52)2572 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y(If)39 b(the)g(`)p Fs(-p)p -Ft(')g(option)h(is)f(used,)i Fs(type)d Ft(either)h(returns)f(the)i -(name)f(of)g(the)g(disk)g(\014le)g(that)630 408 y(w)m(ould)30 -b(b)s(e)g(executed,)h(or)g(nothing)f(if)g(`)p Fs(-t)p -Ft(')h(w)m(ould)f(not)g(return)g(`)p Fs(file)p Ft('.)630 -542 y(The)23 b(`)p Fs(-P)p Ft(')g(option)h(forces)g(a)g(path)f(searc)m -(h)h(for)f(eac)m(h)h Fq(name)5 b Ft(,)26 b(ev)m(en)e(if)f(`)p -Fs(-t)p Ft(')g(w)m(ould)g(not)h(return)630 652 y(`)p -Fs(file)p Ft('.)630 785 y(If)34 b(a)i(command)e(is)h(hashed,)g(`)p -Fs(-p)p Ft(')g(and)f(`)p Fs(-P)p Ft(')h(prin)m(t)f(the)h(hashed)f(v)-5 -b(alue,)37 b(not)e(necessarily)630 895 y(the)c(\014le)f(that)h(app)s -(ears)f(\014rst)f(in)h Fs($PATH)p Ft(.)630 1029 y(If)36 -b(the)h(`)p Fs(-a)p Ft(')g(option)g(is)g(used,)g Fs(type)f -Ft(returns)f(all)j(of)f(the)g(places)g(that)g(con)m(tain)h(an)f(exe-) -630 1138 y(cutable)d(named)f Fq(\014le)5 b Ft(.)49 b(This)32 -b(includes)h(aliases)i(and)d(functions,)i(if)f(and)f(only)i(if)f(the)g -(`)p Fs(-p)p Ft(')630 1248 y(option)e(is)f(not)h(also)g(used.)630 -1381 y(If)26 b(the)h(`)p Fs(-f)p Ft(')g(option)g(is)g(used,)g -Fs(type)e Ft(do)s(es)i(not)g(attempt)g(to)h(\014nd)d(shell)i -(functions,)g(as)g(with)630 1491 y(the)k Fs(command)d -Ft(builtin.)630 1625 y(The)j(return)f(status)h(is)g(zero)h(if)f(all)h +Fs(type)f Ft(returns)g(a)i(failure)g(status.)630 1139 +y(If)39 b(the)g(`)p Fs(-p)p Ft(')g(option)h(is)f(used,)i +Fs(type)d Ft(either)h(returns)f(the)i(name)f(of)g(the)g(disk)g(\014le)g +(that)630 1249 y(w)m(ould)30 b(b)s(e)g(executed,)h(or)g(nothing)f(if)g +(`)p Fs(-t)p Ft(')h(w)m(ould)f(not)g(return)g(`)p Fs(file)p +Ft('.)630 1383 y(The)23 b(`)p Fs(-P)p Ft(')g(option)h(forces)g(a)g +(path)f(searc)m(h)h(for)f(eac)m(h)h Fq(name)5 b Ft(,)26 +b(ev)m(en)e(if)f(`)p Fs(-t)p Ft(')g(w)m(ould)g(not)h(return)630 +1492 y(`)p Fs(file)p Ft('.)630 1626 y(If)34 b(a)i(command)e(is)h +(hashed,)g(`)p Fs(-p)p Ft(')g(and)f(`)p Fs(-P)p Ft(')h(prin)m(t)f(the)h +(hashed)f(v)-5 b(alue,)37 b(not)e(necessarily)630 1736 +y(the)c(\014le)f(that)h(app)s(ears)f(\014rst)f(in)h Fs($PATH)p +Ft(.)630 1870 y(If)36 b(the)h(`)p Fs(-a)p Ft(')g(option)g(is)g(used,)g +Fs(type)f Ft(returns)f(all)j(of)f(the)g(places)g(that)g(con)m(tain)h +(an)f(exe-)630 1979 y(cutable)d(named)f Fq(\014le)5 b +Ft(.)49 b(This)32 b(includes)h(aliases)i(and)d(functions,)i(if)f(and)f +(only)i(if)f(the)g(`)p Fs(-p)p Ft(')630 2089 y(option)e(is)f(not)h +(also)g(used.)630 2223 y(If)26 b(the)h(`)p Fs(-f)p Ft(')g(option)g(is)g +(used,)g Fs(type)e Ft(do)s(es)i(not)g(attempt)g(to)h(\014nd)d(shell)i +(functions,)g(as)g(with)630 2332 y(the)k Fs(command)d +Ft(builtin.)630 2466 y(The)j(return)f(status)h(is)g(zero)h(if)f(all)h (of)f(the)h Fq(names)i Ft(are)e(found,)e(non-zero)i(if)f(an)m(y)g(are)h -(not)630 1734 y(found.)150 1892 y Fs(typeset)870 2026 +(not)630 2576 y(found.)150 2734 y Fs(typeset)870 2868 y(typeset)46 b([-afFrxi])f([-p])i([)p Fi(name)11 b Fs([=)p -Fi(value)g Fs(])43 b(...)o(])630 2159 y Ft(The)29 b Fs(typeset)f +Fi(value)g Fs(])43 b(...)o(])630 3002 y Ft(The)29 b Fs(typeset)f Ft(command)h(is)g(supplied)g(for)g(compatibilit)m(y)j(with)d(the)h -(Korn)e(shell;)j(ho)m(w-)630 2269 y(ev)m(er,)g(it)g(has)f(b)s(een)g +(Korn)e(shell;)j(ho)m(w-)630 3112 y(ev)m(er,)g(it)g(has)f(b)s(een)g (deprecated)h(in)f(fa)m(v)m(or)i(of)e(the)h Fs(declare)d -Ft(builtin)i(command.)150 2427 y Fs(ulimit)870 2560 y(ulimit)46 +Ft(builtin)i(command.)150 3270 y Fs(ulimit)870 3404 y(ulimit)46 b([-abcdefilmnpqrstuvxHST])41 b([)p Fi(limit)11 b Fs(])630 -2694 y(ulimit)25 b Ft(pro)m(vides)h(con)m(trol)i(o)m(v)m(er)g(the)f +3538 y(ulimit)25 b Ft(pro)m(vides)h(con)m(trol)i(o)m(v)m(er)g(the)f (resources)f(a)m(v)-5 b(ailable)29 b(to)e(pro)s(cesses)f(started)h(b)m -(y)g(the)630 2803 y(shell,)i(on)f(systems)g(that)h(allo)m(w)h(suc)m(h)e +(y)g(the)630 3647 y(shell,)i(on)f(systems)g(that)h(allo)m(w)h(suc)m(h)e (con)m(trol.)41 b(If)28 b(an)g(option)h(is)f(giv)m(en,)i(it)e(is)h(in)m -(terpreted)630 2913 y(as)i(follo)m(ws:)630 3071 y Fs(-S)384 +(terpreted)630 3757 y(as)i(follo)m(ws:)630 3915 y Fs(-S)384 b Ft(Change)30 b(and)g(rep)s(ort)g(the)g(soft)h(limit)g(asso)s(ciated)h -(with)e(a)h(resource.)630 3228 y Fs(-H)384 b Ft(Change)30 +(with)e(a)h(resource.)630 4074 y Fs(-H)384 b Ft(Change)30 b(and)g(rep)s(ort)g(the)g(hard)g(limit)h(asso)s(ciated)h(with)e(a)h -(resource.)630 3386 y Fs(-a)384 b Ft(All)31 b(curren)m(t)f(limits)h -(are)g(rep)s(orted.)630 3544 y Fs(-b)384 b Ft(The)30 +(resource.)630 4232 y Fs(-a)384 b Ft(All)31 b(curren)m(t)f(limits)h +(are)g(rep)s(orted.)630 4390 y Fs(-b)384 b Ft(The)30 b(maxim)m(um)g(so)s(c)m(k)m(et)i(bu\013er)e(size.)630 -3701 y Fs(-c)384 b Ft(The)30 b(maxim)m(um)g(size)h(of)g(core)g(\014les) -f(created.)630 3859 y Fs(-d)384 b Ft(The)30 b(maxim)m(um)g(size)h(of)g -(a)g(pro)s(cess's)f(data)h(segmen)m(t.)630 4017 y Fs(-e)384 +4548 y Fs(-c)384 b Ft(The)30 b(maxim)m(um)g(size)h(of)g(core)g(\014les) +f(created.)630 4707 y Fs(-d)384 b Ft(The)30 b(maxim)m(um)g(size)h(of)g +(a)g(pro)s(cess's)f(data)h(segmen)m(t.)630 4865 y Fs(-e)384 b Ft(The)30 b(maxim)m(um)g(sc)m(heduling)h(priorit)m(y)f(\()p -Fs(")p Ft(nice)p Fs(")p Ft(\).)630 4175 y Fs(-f)384 b +Fs(")p Ft(nice)p Fs(")p Ft(\).)630 5023 y Fs(-f)384 b Ft(The)30 b(maxim)m(um)g(size)h(of)g(\014les)f(written)h(b)m(y)f(the)g -(shell)h(and)f(its)h(c)m(hildren.)630 4332 y Fs(-i)384 +(shell)h(and)f(its)h(c)m(hildren.)630 5182 y Fs(-i)384 b Ft(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(p)s(ending)e -(signals.)630 4490 y Fs(-l)384 b Ft(The)30 b(maxim)m(um)g(size)h(that)g +(signals.)630 5340 y Fs(-l)384 b Ft(The)30 b(maxim)m(um)g(size)h(that)g (ma)m(y)g(b)s(e)f(lo)s(c)m(k)m(ed)i(in)m(to)f(memory)-8 -b(.)630 4648 y Fs(-m)384 b Ft(The)36 b(maxim)m(um)g(residen)m(t)h(set)g -(size)g(\(man)m(y)g(systems)f(do)h(not)f(honor)g(this)1110 -4757 y(limit\).)630 4915 y Fs(-n)384 b Ft(The)38 b(maxim)m(um)h(n)m(um) -m(b)s(er)e(of)i(op)s(en)f(\014le)h(descriptors)g(\(most)g(systems)g(do) -1110 5025 y(not)31 b(allo)m(w)g(this)g(v)-5 b(alue)31 -b(to)g(b)s(e)e(set\).)630 5182 y Fs(-p)384 b Ft(The)30 -b(pip)s(e)f(bu\013er)h(size.)630 5340 y Fs(-q)384 b Ft(The)30 -b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(b)m(ytes)g(in)f(POSIX)f(message)j -(queues.)p eop end +b(.)p eop end %%Page: 53 59 TeXDict begin 53 58 bop 150 -116 a Ft(Chapter)30 b(4:)41 -b(Shell)30 b(Builtin)h(Commands)2069 b(53)630 299 y Fs(-r)384 +b(Shell)30 b(Builtin)h(Commands)2069 b(53)630 299 y Fs(-m)384 +b Ft(The)36 b(maxim)m(um)g(residen)m(t)h(set)g(size)g(\(man)m(y)g +(systems)f(do)h(not)f(honor)g(this)1110 408 y(limit\).)630 +580 y Fs(-n)384 b Ft(The)38 b(maxim)m(um)h(n)m(um)m(b)s(er)e(of)i(op)s +(en)f(\014le)h(descriptors)g(\(most)g(systems)g(do)1110 +690 y(not)31 b(allo)m(w)g(this)g(v)-5 b(alue)31 b(to)g(b)s(e)e(set\).) +630 862 y Fs(-p)384 b Ft(The)30 b(pip)s(e)f(bu\013er)h(size.)630 +1034 y Fs(-q)384 b Ft(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(b)m +(ytes)g(in)f(POSIX)f(message)j(queues.)630 1206 y Fs(-r)384 b Ft(The)30 b(maxim)m(um)g(real-time)i(sc)m(heduling)f(priorit)m(y)-8 -b(.)630 459 y Fs(-s)384 b Ft(The)30 b(maxim)m(um)g(stac)m(k)i(size.)630 -618 y Fs(-t)384 b Ft(The)30 b(maxim)m(um)g(amoun)m(t)h(of)f(cpu)g(time) -h(in)f(seconds.)630 778 y Fs(-u)384 b Ft(The)30 b(maxim)m(um)g(n)m(um)m -(b)s(er)f(of)i(pro)s(cesses)f(a)m(v)-5 b(ailable)33 b(to)e(a)f(single)i -(user.)630 938 y Fs(-v)384 b Ft(The)41 b(maxim)m(um)h(amoun)m(t)g(of)h -(virtual)f(memory)g(a)m(v)-5 b(ailable)44 b(to)e(the)g(shell,)1110 -1047 y(and,)30 b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)630 -1207 y Fs(-x)384 b Ft(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i -(\014le)f(lo)s(c)m(ks.)630 1367 y Fs(-T)384 b Ft(The)30 -b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(threads.)630 1526 +b(.)630 1378 y Fs(-s)384 b Ft(The)30 b(maxim)m(um)g(stac)m(k)i(size.) +630 1550 y Fs(-t)384 b Ft(The)30 b(maxim)m(um)g(amoun)m(t)h(of)f(cpu)g +(time)h(in)f(seconds.)630 1722 y Fs(-u)384 b Ft(The)30 +b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(pro)s(cesses)f(a)m(v)-5 +b(ailable)33 b(to)e(a)f(single)i(user.)630 1894 y Fs(-v)384 +b Ft(The)41 b(maxim)m(um)h(amoun)m(t)g(of)h(virtual)f(memory)g(a)m(v)-5 +b(ailable)44 b(to)e(the)g(shell,)1110 2004 y(and,)30 +b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)630 +2176 y Fs(-x)384 b Ft(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i +(\014le)f(lo)s(c)m(ks.)630 2348 y Fs(-T)384 b Ft(The)30 +b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(threads.)630 2520 y(If)i Fq(limit)j Ft(is)e(giv)m(en,)h(it)f(is)g(the)g(new)f(v)-5 b(alue)34 b(of)f(the)h(sp)s(eci\014ed)f(resource;)i(the)f(sp)s(ecial)g -Fq(limit)630 1636 y Ft(v)-5 b(alues)27 b Fs(hard)p Ft(,)g +Fq(limit)630 2630 y Ft(v)-5 b(alues)27 b Fs(hard)p Ft(,)g Fs(soft)p Ft(,)g(and)g Fs(unlimited)d Ft(stand)j(for)g(the)g(curren)m -(t)g(hard)f(limit,)j(the)e(curren)m(t)630 1746 y(soft)38 +(t)g(hard)f(limit,)j(the)e(curren)m(t)630 2739 y(soft)38 b(limit,)j(and)d(no)f(limit,)k(resp)s(ectiv)m(ely)-8 b(.)66 b(A)38 b(hard)f(limit)h(cannot)h(b)s(e)e(increased)i(b)m(y)f(a) -630 1855 y(non-ro)s(ot)f(user)f(once)i(it)g(is)f(set;)k(a)c(soft)g +630 2849 y(non-ro)s(ot)f(user)f(once)i(it)g(is)f(set;)k(a)c(soft)g (limit)h(ma)m(y)g(b)s(e)e(increased)h(up)f(to)i(the)f(v)-5 -b(alue)38 b(of)630 1965 y(the)c(hard)f(limit.)51 b(Otherwise,)35 +b(alue)38 b(of)630 2958 y(the)c(hard)f(limit.)51 b(Otherwise,)35 b(the)f(curren)m(t)f(v)-5 b(alue)35 b(of)f(the)f(soft)i(limit)f(for)g -(the)g(sp)s(eci\014ed)630 2074 y(resource)27 b(is)h(prin)m(ted,)f +(the)g(sp)s(eci\014ed)630 3068 y(resource)27 b(is)h(prin)m(ted,)f (unless)g(the)g(`)p Fs(-H)p Ft(')g(option)h(is)f(supplied.)38 -b(When)27 b(setting)h(new)f(limits,)630 2184 y(if)40 +b(When)27 b(setting)h(new)f(limits,)630 3178 y(if)40 b(neither)f(`)p Fs(-H)p Ft(')h(nor)f(`)p Fs(-S)p Ft(')h(is)f(supplied,) i(b)s(oth)e(the)h(hard)f(and)g(soft)h(limits)g(are)g(set.)69 -b(If)630 2293 y(no)35 b(option)h(is)f(giv)m(en,)j(then)d(`)p +b(If)630 3287 y(no)35 b(option)h(is)f(giv)m(en,)j(then)d(`)p Fs(-f)p Ft(')g(is)g(assumed.)55 b(V)-8 b(alues)36 b(are)f(in)g(1024-b)m -(yte)j(incremen)m(ts,)630 2403 y(except)d(for)f(`)p Fs(-t)p +(yte)j(incremen)m(ts,)630 3397 y(except)d(for)f(`)p Fs(-t)p Ft(',)g(whic)m(h)g(is)g(in)g(seconds,)h(`)p Fs(-p)p Ft(',)g(whic)m(h)e (is)h(in)g(units)f(of)h(512-b)m(yte)i(blo)s(c)m(ks,)630 -2513 y(and)30 b(`)p Fs(-n)p Ft(')g(and)g(`)p Fs(-u)p +3506 y(and)30 b(`)p Fs(-n)p Ft(')g(and)g(`)p Fs(-u)p Ft(',)g(whic)m(h)g(are)h(unscaled)f(v)-5 b(alues.)630 -2647 y(The)34 b(return)g(status)h(is)f(zero)i(unless)e(an)g(in)m(v)-5 +3647 y(The)34 b(return)g(status)h(is)f(zero)i(unless)e(an)g(in)m(v)-5 b(alid)36 b(option)f(or)f(argumen)m(t)i(is)e(supplied,)h(or)630 -2757 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f(limit.) -150 2917 y Fs(unalias)870 3051 y(unalias)46 b([-a])g([)p -Fi(name)57 b Fs(...)47 b(])630 3186 y Ft(Remo)m(v)m(e)39 +3757 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f(limit.) +150 3929 y Fs(unalias)870 4070 y(unalias)46 b([-a])g([)p +Fi(name)57 b Fs(...)47 b(])630 4210 y Ft(Remo)m(v)m(e)39 b(eac)m(h)f Fq(name)k Ft(from)36 b(the)h(list)h(of)f(aliases.)61 b(If)36 b(`)p Fs(-a)p Ft(')h(is)g(supplied,)h(all)f(aliases)i(are)630 -3295 y(remo)m(v)m(ed.)j(Aliases)31 b(are)g(describ)s(ed)e(in)h(Section) -i(6.6)f([Aliases],)h(page)f(81.)150 3528 y Fr(4.3)68 -b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 3753 y Fj(4.3.1)63 -b(The)41 b(Set)g(Builtin)150 3899 y Ft(This)35 b(builtin)h(is)g(so)g +4320 y(remo)m(v)m(ed.)j(Aliases)31 b(are)g(describ)s(ed)e(in)h(Section) +i(6.6)f([Aliases],)h(page)f(81.)150 4571 y Fr(4.3)68 +b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 4796 y Fj(4.3.1)63 +b(The)41 b(Set)g(Builtin)150 4942 y Ft(This)35 b(builtin)h(is)g(so)g (complicated)i(that)f(it)f(deserv)m(es)h(its)f(o)m(wn)g(section.)59 b Fs(set)35 b Ft(allo)m(ws)j(y)m(ou)e(to)h(c)m(hange)150 -4009 y(the)c(v)-5 b(alues)34 b(of)f(shell)g(options)h(and)e(set)i(the)f +5052 y(the)c(v)-5 b(alues)34 b(of)f(shell)g(options)h(and)e(set)i(the)f (p)s(ositional)h(parameters,)h(or)e(to)h(displa)m(y)f(the)g(names)h -(and)150 4119 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150 -4279 y Fs(set)870 4413 y(set)47 b([--abefhkmnptuvxBCEHPT])41 -b([-o)47 b Fi(option)11 b Fs(])46 b([)p Fi(argument)55 -b Fs(...])870 4523 y(set)47 b([+abefhkmnptuvxBCEHPT])42 +(and)150 5162 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150 +5340 y Fs(set)p eop end +%%Page: 54 60 +TeXDict begin 54 59 bop 150 -116 a Ft(54)2572 b(Bash)31 +b(Reference)g(Man)m(ual)870 299 y Fs(set)47 b([--abefhkmnptuvxBCEHPT]) +41 b([-o)47 b Fi(option)11 b Fs(])46 b([)p Fi(argument)55 +b Fs(...])870 408 y(set)47 b([+abefhkmnptuvxBCEHPT])42 b([+o)47 b Fi(option)11 b Fs(])45 b([)p Fi(argument)56 -b Fs(...)o(])630 4657 y Ft(If)22 b(no)h(options)g(or)g(argumen)m(ts)g +b Fs(...)o(])630 539 y Ft(If)22 b(no)h(options)g(or)g(argumen)m(ts)g (are)g(supplied,)g Fs(set)f Ft(displa)m(ys)g(the)h(names)g(and)f(v)-5 -b(alues)23 b(of)g(all)630 4767 y(shell)j(v)-5 b(ariables)27 +b(alues)23 b(of)g(all)630 649 y(shell)j(v)-5 b(ariables)27 b(and)e(functions,)h(sorted)g(according)h(to)g(the)f(curren)m(t)f(lo)s -(cale,)k(in)c(a)i(format)630 4877 y(that)i(ma)m(y)h(b)s(e)e(reused)g -(as)h(input)f(for)h(setting)h(or)e(resetting)i(the)f(curren)m(tly-set)h -(v)-5 b(ariables.)630 4986 y(Read-only)37 b(v)-5 b(ariables)37 +(cale,)k(in)c(a)i(format)630 758 y(that)i(ma)m(y)h(b)s(e)e(reused)g(as) +h(input)f(for)h(setting)h(or)e(resetting)i(the)f(curren)m(tly-set)h(v) +-5 b(ariables.)630 868 y(Read-only)37 b(v)-5 b(ariables)37 b(cannot)h(b)s(e)e(reset.)59 b(In)36 b Fl(posix)g Ft(mo)s(de,)i(only)f -(shell)f(v)-5 b(ariables)38 b(are)630 5096 y(listed.)630 -5230 y(When)29 b(options)g(are)g(supplied,)f(they)h(set)h(or)f(unset)f +(shell)f(v)-5 b(ariables)38 b(are)630 977 y(listed.)630 +1108 y(When)29 b(options)g(are)g(supplied,)f(they)h(set)h(or)f(unset)f (shell)h(attributes.)41 b(Options,)29 b(if)g(sp)s(ec-)630 -5340 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)p -eop end -%%Page: 54 60 -TeXDict begin 54 59 bop 150 -116 a Ft(54)2572 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y Fs(-a)384 b Ft(Mark)32 -b(v)-5 b(ariables)33 b(and)e(function)h(whic)m(h)g(are)g(mo)s(di\014ed) -f(or)h(created)h(for)f(ex-)1110 408 y(p)s(ort)e(to)h(the)f(en)m -(vironmen)m(t)h(of)g(subsequen)m(t)f(commands.)630 562 -y Fs(-b)384 b Ft(Cause)44 b(the)h(status)g(of)f(terminated)h(bac)m -(kground)g(jobs)f(to)h(b)s(e)f(rep)s(orted)1110 671 y(immediately)-8 -b(,)30 b(rather)d(than)f(b)s(efore)h(prin)m(ting)g(the)g(next)g -(primary)g(prompt.)630 825 y Fs(-e)384 b Ft(Exit)65 b(immediately)g(if) -f(a)h(pip)s(eline)e(\(see)i(Section)g(3.2.2)h([Pip)s(elines],)1110 -934 y(page)56 b(8\),)62 b(whic)m(h)55 b(ma)m(y)h(consist)f(of)h(a)f -(single)h(simple)f(command)g(\(see)1110 1044 y(Section)43 -b(3.2.1)i([Simple)d(Commands],)j(page)e(8\),)k(a)c(subshell)e(command) -1110 1154 y(enclosed)32 b(in)f(paren)m(theses)h(\(see)h(Section)f -(3.2.4.3)i([Command)d(Grouping],)1110 1263 y(page)h(13\),)h(or)e(one)g -(of)h(the)f(commands)g(executed)h(as)f(part)g(of)h(a)f(command)1110 -1373 y(list)37 b(enclosed)g(b)m(y)f(braces)g(\(see)h(Section)g(3.2.4.3) -h([Command)e(Grouping],)1110 1482 y(page)48 b(13\))g(returns)d(a)j -(non-zero)f(status.)91 b(The)46 b(shell)h(do)s(es)g(not)g(exit)h(if) -1110 1592 y(the)39 b(command)f(that)h(fails)g(is)f(part)g(of)h(the)f -(command)h(list)g(immediately)1110 1702 y(follo)m(wing)47 +1217 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630 +1369 y Fs(-a)384 b Ft(Mark)32 b(v)-5 b(ariables)33 b(and)e(function)h +(whic)m(h)g(are)g(mo)s(di\014ed)f(or)h(created)h(for)f(ex-)1110 +1478 y(p)s(ort)e(to)h(the)f(en)m(vironmen)m(t)h(of)g(subsequen)m(t)f +(commands.)630 1630 y Fs(-b)384 b Ft(Cause)44 b(the)h(status)g(of)f +(terminated)h(bac)m(kground)g(jobs)f(to)h(b)s(e)f(rep)s(orted)1110 +1739 y(immediately)-8 b(,)30 b(rather)d(than)f(b)s(efore)h(prin)m(ting) +g(the)g(next)g(primary)g(prompt.)630 1891 y Fs(-e)384 +b Ft(Exit)65 b(immediately)g(if)f(a)h(pip)s(eline)e(\(see)i(Section)g +(3.2.2)h([Pip)s(elines],)1110 2000 y(page)56 b(8\),)62 +b(whic)m(h)55 b(ma)m(y)h(consist)f(of)h(a)f(single)h(simple)f(command)g +(\(see)1110 2110 y(Section)43 b(3.2.1)i([Simple)d(Commands],)j(page)e +(8\),)k(a)c(subshell)e(command)1110 2219 y(enclosed)32 +b(in)f(paren)m(theses)h(\(see)h(Section)f(3.2.4.3)i([Command)d +(Grouping],)1110 2329 y(page)h(13\),)h(or)e(one)g(of)h(the)f(commands)g +(executed)h(as)f(part)g(of)h(a)f(command)1110 2438 y(list)37 +b(enclosed)g(b)m(y)f(braces)g(\(see)h(Section)g(3.2.4.3)h([Command)e +(Grouping],)1110 2548 y(page)48 b(13\))g(returns)d(a)j(non-zero)f +(status.)91 b(The)46 b(shell)h(do)s(es)g(not)g(exit)h(if)1110 +2658 y(the)39 b(command)f(that)h(fails)g(is)f(part)g(of)h(the)f +(command)h(list)g(immediately)1110 2767 y(follo)m(wing)47 b(a)f Fs(while)e Ft(or)h Fs(until)f Ft(k)m(eyw)m(ord,)50 -b(part)45 b(of)h(the)g(test)g(in)f(an)h Fs(if)1110 1811 +b(part)45 b(of)h(the)g(test)g(in)f(an)h Fs(if)1110 2877 y Ft(statemen)m(t,)31 b(part)d(of)h(an)m(y)g(command)f(executed)h(in)g -(a)g Fs(&&)e Ft(or)i Fs(||)f Ft(list)h(except)1110 1921 +(a)g Fs(&&)e Ft(or)i Fs(||)f Ft(list)h(except)1110 2986 y(the)48 b(command)h(follo)m(wing)g(the)g(\014nal)f Fs(&&)f Ft(or)i Fs(||)p Ft(,)j(an)m(y)d(command)f(in)g(a)1110 -2030 y(pip)s(eline)39 b(but)f(the)i(last,)i(or)d(if)g(the)h(command's)f -(return)f(status)h(is)g(b)s(eing)1110 2140 y(in)m(v)m(erted)33 +3096 y(pip)s(eline)39 b(but)f(the)i(last,)i(or)d(if)g(the)h(command's)f +(return)f(status)h(is)g(b)s(eing)1110 3206 y(in)m(v)m(erted)33 b(with)e Fs(!)p Ft(.)45 b(A)32 b(trap)g(on)f Fs(ERR)p Ft(,)h(if)g(set,)h(is)f(executed)g(b)s(efore)g(the)g(shell)1110 -2250 y(exits.)1110 2381 y(This)e(option)h(applies)f(to)h(the)g(shell)g +3315 y(exits.)1110 3446 y(This)e(option)h(applies)f(to)h(the)g(shell)g (en)m(vironmen)m(t)g(and)f(eac)m(h)h(subshell)f(en-)1110 -2491 y(vironmen)m(t)j(separately)i(\(see)f(Section)g(3.7.3)h([Command)d -(Execution)i(En-)1110 2600 y(vironmen)m(t],)i(page)f(32\),)i(and)d(ma)m +3555 y(vironmen)m(t)j(separately)i(\(see)f(Section)g(3.7.3)h([Command)d +(Execution)i(En-)1110 3665 y(vironmen)m(t],)i(page)f(32\),)i(and)d(ma)m (y)h(cause)f(subshells)g(to)h(exit)g(b)s(efore)f(exe-)1110 -2710 y(cuting)d(all)g(the)g(commands)f(in)g(the)g(subshell.)630 -2863 y Fs(-f)384 b Ft(Disable)31 b(\014lename)g(expansion)f -(\(globbing\).)630 3017 y Fs(-h)384 b Ft(Lo)s(cate)33 +3774 y(cuting)d(all)g(the)g(commands)f(in)g(the)g(subshell.)630 +3926 y Fs(-f)384 b Ft(Disable)31 b(\014lename)g(expansion)f +(\(globbing\).)630 4077 y Fs(-h)384 b Ft(Lo)s(cate)33 b(and)e(remem)m(b)s(er)h(\(hash\))g(commands)f(as)h(they)g(are)g(lo)s -(ok)m(ed)h(up)e(for)1110 3126 y(execution.)42 b(This)29 -b(option)i(is)g(enabled)f(b)m(y)g(default.)630 3280 y +(ok)m(ed)h(up)e(for)1110 4187 y(execution.)42 b(This)29 +b(option)i(is)g(enabled)f(b)m(y)g(default.)630 4338 y Fs(-k)384 b Ft(All)34 b(argumen)m(ts)g(in)f(the)h(form)f(of)g (assignmen)m(t)h(statemen)m(ts)i(are)d(placed)h(in)1110 -3389 y(the)k(en)m(vironmen)m(t)g(for)g(a)g(command,)h(not)f(just)f -(those)i(that)f(precede)g(the)1110 3499 y(command)30 -b(name.)630 3652 y Fs(-m)384 b Ft(Job)30 b(con)m(trol)i(is)e(enabled)h +4448 y(the)k(en)m(vironmen)m(t)g(for)g(a)g(command,)h(not)f(just)f +(those)i(that)f(precede)g(the)1110 4557 y(command)30 +b(name.)630 4709 y Fs(-m)384 b Ft(Job)30 b(con)m(trol)i(is)e(enabled)h (\(see)g(Chapter)f(7)g([Job)h(Con)m(trol],)g(page)g(91\).)630 -3806 y Fs(-n)384 b Ft(Read)21 b(commands)f(but)g(do)h(not)g(execute)h +4860 y Fs(-n)384 b Ft(Read)21 b(commands)f(but)g(do)h(not)g(execute)h (them;)i(this)d(ma)m(y)g(b)s(e)f(used)g(to)h(c)m(hec)m(k)1110 -3915 y(a)42 b(script)g(for)g(syn)m(tax)g(errors.)75 b(This)41 +4969 y(a)42 b(script)g(for)g(syn)m(tax)g(errors.)75 b(This)41 b(option)h(is)g(ignored)g(b)m(y)g(in)m(teractiv)m(e)1110 -4025 y(shells.)630 4178 y Fs(-o)30 b Fi(option-name)1110 -4288 y Ft(Set)h(the)f(option)h(corresp)s(onding)e(to)i -Fq(option-name)5 b Ft(:)1110 4441 y Fs(allexport)1590 -4551 y Ft(Same)30 b(as)h Fs(-a)p Ft(.)1110 4704 y Fs(braceexpand)1590 -4814 y Ft(Same)f(as)h Fs(-B)p Ft(.)1110 4967 y Fs(emacs)240 -b Ft(Use)25 b(an)f Fs(emacs)p Ft(-st)m(yle)h(line)f(editing)h(in)m -(terface)h(\(see)g(Chapter)e(8)1590 5077 y([Command)38 -b(Line)g(Editing],)i(page)f(95\).)66 b(This)37 b(also)i(a\013ects)1590 -5187 y(the)31 b(editing)g(in)m(terface)h(used)d(for)h -Fs(read)f(-e)p Ft(.)1110 5340 y Fs(errexit)144 b Ft(Same)30 -b(as)h Fs(-e)p Ft(.)p eop end +5079 y(shells.)630 5230 y Fs(-o)30 b Fi(option-name)1110 +5340 y Ft(Set)h(the)f(option)h(corresp)s(onding)e(to)i +Fq(option-name)5 b Ft(:)p eop end %%Page: 55 61 TeXDict begin 55 60 bop 150 -116 a Ft(Chapter)30 b(4:)41 b(Shell)30 b(Builtin)h(Commands)2069 b(55)1110 299 y -Fs(errtrace)96 b Ft(Same)30 b(as)h Fs(-E)p Ft(.)1110 -461 y Fs(functrace)1590 570 y Ft(Same)f(as)h Fs(-T)p -Ft(.)1110 732 y Fs(hashall)144 b Ft(Same)30 b(as)h Fs(-h)p -Ft(.)1110 894 y Fs(histexpand)1590 1003 y Ft(Same)f(as)h -Fs(-H)p Ft(.)1110 1165 y Fs(history)144 b Ft(Enable)39 +Fs(allexport)1590 408 y Ft(Same)30 b(as)h Fs(-a)p Ft(.)1110 +560 y Fs(braceexpand)1590 669 y Ft(Same)f(as)h Fs(-B)p +Ft(.)1110 821 y Fs(emacs)240 b Ft(Use)25 b(an)f Fs(emacs)p +Ft(-st)m(yle)h(line)f(editing)h(in)m(terface)h(\(see)g(Chapter)e(8)1590 +930 y([Command)38 b(Line)g(Editing],)i(page)f(95\).)66 +b(This)37 b(also)i(a\013ects)1590 1040 y(the)31 b(editing)g(in)m +(terface)h(used)d(for)h Fs(read)f(-e)p Ft(.)1110 1191 +y Fs(errexit)144 b Ft(Same)30 b(as)h Fs(-e)p Ft(.)1110 +1343 y Fs(errtrace)96 b Ft(Same)30 b(as)h Fs(-E)p Ft(.)1110 +1494 y Fs(functrace)1590 1604 y Ft(Same)f(as)h Fs(-T)p +Ft(.)1110 1755 y Fs(hashall)144 b Ft(Same)30 b(as)h Fs(-h)p +Ft(.)1110 1906 y Fs(histexpand)1590 2016 y Ft(Same)f(as)h +Fs(-H)p Ft(.)1110 2167 y Fs(history)144 b Ft(Enable)39 b(command)g(history)-8 b(,)42 b(as)d(describ)s(ed)f(in)h(Section)h(9.1) -1590 1275 y([Bash)d(History)g(F)-8 b(acilities],)41 b(page)c(123.)60 -b(This)36 b(option)h(is)f(on)1590 1384 y(b)m(y)30 b(default)h(in)f(in)m -(teractiv)m(e)j(shells.)1110 1546 y Fs(ignoreeof)1590 -1656 y Ft(An)d(in)m(teractiv)m(e)j(shell)e(will)g(not)f(exit)h(up)s(on) -e(reading)i(EOF.)1110 1817 y Fs(keyword)144 b Ft(Same)30 -b(as)h Fs(-k)p Ft(.)1110 1979 y Fs(monitor)144 b Ft(Same)30 -b(as)h Fs(-m)p Ft(.)1110 2141 y Fs(noclobber)1590 2251 -y Ft(Same)f(as)h Fs(-C)p Ft(.)1110 2412 y Fs(noexec)192 -b Ft(Same)30 b(as)h Fs(-n)p Ft(.)1110 2574 y Fs(noglob)192 -b Ft(Same)30 b(as)h Fs(-f)p Ft(.)1110 2736 y Fs(nolog)240 -b Ft(Curren)m(tly)30 b(ignored.)1110 2898 y Fs(notify)192 -b Ft(Same)30 b(as)h Fs(-b)p Ft(.)1110 3059 y Fs(nounset)144 -b Ft(Same)30 b(as)h Fs(-u)p Ft(.)1110 3221 y Fs(onecmd)192 -b Ft(Same)30 b(as)h Fs(-t)p Ft(.)1110 3383 y Fs(physical)96 -b Ft(Same)30 b(as)h Fs(-P)p Ft(.)1110 3545 y Fs(pipefail)96 +1590 2277 y([Bash)d(History)g(F)-8 b(acilities],)41 b(page)c(123.)60 +b(This)36 b(option)h(is)f(on)1590 2386 y(b)m(y)30 b(default)h(in)f(in)m +(teractiv)m(e)j(shells.)1110 2538 y Fs(ignoreeof)1590 +2647 y Ft(An)d(in)m(teractiv)m(e)j(shell)e(will)g(not)f(exit)h(up)s(on) +e(reading)i(EOF.)1110 2799 y Fs(keyword)144 b Ft(Same)30 +b(as)h Fs(-k)p Ft(.)1110 2950 y Fs(monitor)144 b Ft(Same)30 +b(as)h Fs(-m)p Ft(.)1110 3101 y Fs(noclobber)1590 3211 +y Ft(Same)f(as)h Fs(-C)p Ft(.)1110 3362 y Fs(noexec)192 +b Ft(Same)30 b(as)h Fs(-n)p Ft(.)1110 3513 y Fs(noglob)192 +b Ft(Same)30 b(as)h Fs(-f)p Ft(.)1110 3665 y Fs(nolog)240 +b Ft(Curren)m(tly)30 b(ignored.)1110 3816 y Fs(notify)192 +b Ft(Same)30 b(as)h Fs(-b)p Ft(.)1110 3968 y Fs(nounset)144 +b Ft(Same)30 b(as)h Fs(-u)p Ft(.)1110 4119 y Fs(onecmd)192 +b Ft(Same)30 b(as)h Fs(-t)p Ft(.)1110 4270 y Fs(physical)96 +b Ft(Same)30 b(as)h Fs(-P)p Ft(.)1110 4422 y Fs(pipefail)96 b Ft(If)44 b(set,)k(the)d(return)e(v)-5 b(alue)45 b(of)f(a)h(pip)s -(eline)e(is)i(the)f(v)-5 b(alue)45 b(of)1590 3654 y(the)33 +(eline)e(is)i(the)f(v)-5 b(alue)45 b(of)1590 4531 y(the)33 b(last)h(\(righ)m(tmost\))h(command)e(to)h(exit)g(with)f(a)g(non-zero) -1590 3764 y(status,)28 b(or)f(zero)g(if)f(all)i(commands)e(in)g(the)h -(pip)s(eline)f(exit)i(suc-)1590 3874 y(cessfully)-8 b(.)41 +1590 4641 y(status,)28 b(or)f(zero)g(if)f(all)i(commands)e(in)g(the)h +(pip)s(eline)f(exit)i(suc-)1590 4750 y(cessfully)-8 b(.)41 b(This)30 b(option)h(is)f(disabled)g(b)m(y)h(default.)1110 -4035 y Fs(posix)240 b Ft(Change)30 b(the)g(b)s(eha)m(vior)h(of)f(Bash)g -(where)g(the)g(default)h(op)s(era-)1590 4145 y(tion)25 +4902 y Fs(posix)240 b Ft(Change)30 b(the)g(b)s(eha)m(vior)h(of)f(Bash)g +(where)g(the)g(default)h(op)s(era-)1590 5011 y(tion)25 b(di\013ers)f(from)g(the)h Fl(posix)f Ft(standard)f(to)i(matc)m(h)h -(the)f(stan-)1590 4255 y(dard)32 b(\(see)i(Section)g(6.11)h([Bash)e -(POSIX)f(Mo)s(de],)j(page)e(86\).)1590 4364 y(This)k(is)g(in)m(tended)g +(the)f(stan-)1590 5121 y(dard)32 b(\(see)i(Section)g(6.11)h([Bash)e +(POSIX)f(Mo)s(de],)j(page)e(86\).)1590 5230 y(This)k(is)g(in)m(tended)g (to)h(mak)m(e)g(Bash)g(b)s(eha)m(v)m(e)g(as)g(a)f(strict)h(su-)1590 -4474 y(p)s(erset)30 b(of)h(that)f(standard.)1110 4635 -y Fs(privileged)1590 4745 y Ft(Same)g(as)h Fs(-p)p Ft(.)1110 -4907 y Fs(verbose)144 b Ft(Same)30 b(as)h Fs(-v)p Ft(.)1110 -5069 y Fs(vi)384 b Ft(Use)36 b(a)g Fs(vi)p Ft(-st)m(yle)g(line)g -(editing)g(in)m(terface.)58 b(This)35 b(also)h(a\013ects)1590 -5178 y(the)31 b(editing)g(in)m(terface)h(used)d(for)h -Fs(read)f(-e)p Ft(.)1110 5340 y Fs(xtrace)192 b Ft(Same)30 -b(as)h Fs(-x)p Ft(.)p eop end +5340 y(p)s(erset)30 b(of)h(that)f(standard.)p eop end %%Page: 56 62 TeXDict begin 56 61 bop 150 -116 a Ft(56)2572 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y Fs(-p)384 b Ft(T)-8 -b(urn)33 b(on)h(privileged)h(mo)s(de.)51 b(In)34 b(this)g(mo)s(de,)h -(the)f Fs($BASH_ENV)e Ft(and)h Fs($ENV)1110 408 y Ft(\014les)23 -b(are)h(not)f(pro)s(cessed,)h(shell)g(functions)e(are)i(not)f -(inherited)g(from)f(the)i(en-)1110 518 y(vironmen)m(t,)h(and)e(the)g -Fs(SHELLOPTS)p Ft(,)f Fs(BASHOPTS)p Ft(,)h Fs(CDPATH)e -Ft(and)i Fs(GLOBIGNORE)1110 628 y Ft(v)-5 b(ariables,)23 -b(if)e(they)g(app)s(ear)f(in)g(the)h(en)m(vironmen)m(t,)i(are)e -(ignored.)38 b(If)20 b(the)h(shell)1110 737 y(is)37 b(started)h(with)f -(the)g(e\013ectiv)m(e)j(user)d(\(group\))g(id)g(not)g(equal)h(to)g(the) -f(real)1110 847 y(user)h(\(group\))h(id,)i(and)d(the)h -Fs(-p)f Ft(option)i(is)e(not)i(supplied,)f(these)h(actions)1110 -956 y(are)32 b(tak)m(en)i(and)d(the)h(e\013ectiv)m(e)j(user)c(id)h(is)g -(set)h(to)f(the)h(real)f(user)g(id.)45 b(If)32 b(the)1110 -1066 y Fs(-p)i Ft(option)h(is)g(supplied)f(at)h(startup,)h(the)f -(e\013ectiv)m(e)i(user)d(id)g(is)h(not)g(reset.)1110 -1176 y(T)-8 b(urning)35 b(this)i(option)g(o\013)g(causes)g(the)g -(e\013ectiv)m(e)i(user)d(and)g(group)g(ids)g(to)1110 -1285 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f(and)g(group)g(ids.)630 -1450 y Fs(-t)384 b Ft(Exit)31 b(after)g(reading)f(and)g(executing)h -(one)g(command.)630 1614 y Fs(-u)384 b Ft(T)-8 b(reat)25 -b(unset)e(v)-5 b(ariables)25 b(and)e(parameters)h(other)h(than)e(the)h -(sp)s(ecial)h(param-)1110 1724 y(eters)35 b(`)p Fs(@)p -Ft(')f(or)g(`)p Fs(*)p Ft(')h(as)f(an)g(error)g(when)f(p)s(erforming)g -(parameter)i(expansion.)1110 1833 y(An)28 b(error)h(message)g(will)g(b) -s(e)f(written)h(to)h(the)e(standard)g(error,)h(and)f(a)h(non-)1110 -1943 y(in)m(teractiv)m(e)k(shell)e(will)g(exit.)630 2107 -y Fs(-v)384 b Ft(Prin)m(t)30 b(shell)h(input)e(lines)i(as)g(they)f(are) -h(read.)630 2271 y Fs(-x)384 b Ft(Prin)m(t)21 b(a)h(trace)h(of)f -(simple)f(commands,)i Fs(for)e Ft(commands,)i Fs(case)d -Ft(commands,)1110 2381 y Fs(select)29 b Ft(commands,)j(and)e -(arithmetic)j Fs(for)d Ft(commands)h(and)f(their)i(argu-)1110 -2491 y(men)m(ts)h(or)f(asso)s(ciated)i(w)m(ord)e(lists)h(after)g(they)f -(are)h(expanded)f(and)f(b)s(efore)1110 2600 y(they)i(are)g(executed.)49 +b(Reference)g(Man)m(ual)1110 299 y Fs(privileged)1590 +408 y Ft(Same)f(as)h Fs(-p)p Ft(.)1110 569 y Fs(verbose)144 +b Ft(Same)30 b(as)h Fs(-v)p Ft(.)1110 729 y Fs(vi)384 +b Ft(Use)36 b(a)g Fs(vi)p Ft(-st)m(yle)g(line)g(editing)g(in)m +(terface.)58 b(This)35 b(also)h(a\013ects)1590 838 y(the)31 +b(editing)g(in)m(terface)h(used)d(for)h Fs(read)f(-e)p +Ft(.)1110 999 y Fs(xtrace)192 b Ft(Same)30 b(as)h Fs(-x)p +Ft(.)630 1159 y Fs(-p)384 b Ft(T)-8 b(urn)33 b(on)h(privileged)h(mo)s +(de.)51 b(In)34 b(this)g(mo)s(de,)h(the)f Fs($BASH_ENV)e +Ft(and)h Fs($ENV)1110 1268 y Ft(\014les)23 b(are)h(not)f(pro)s(cessed,) +h(shell)g(functions)e(are)i(not)f(inherited)g(from)f(the)i(en-)1110 +1378 y(vironmen)m(t,)h(and)e(the)g Fs(SHELLOPTS)p Ft(,)f +Fs(BASHOPTS)p Ft(,)h Fs(CDPATH)e Ft(and)i Fs(GLOBIGNORE)1110 +1487 y Ft(v)-5 b(ariables,)23 b(if)e(they)g(app)s(ear)f(in)g(the)h(en)m +(vironmen)m(t,)i(are)e(ignored.)38 b(If)20 b(the)h(shell)1110 +1597 y(is)37 b(started)h(with)f(the)g(e\013ectiv)m(e)j(user)d +(\(group\))g(id)g(not)g(equal)h(to)g(the)f(real)1110 +1707 y(user)h(\(group\))h(id,)i(and)d(the)h Fs(-p)f Ft(option)i(is)e +(not)i(supplied,)f(these)h(actions)1110 1816 y(are)32 +b(tak)m(en)i(and)d(the)h(e\013ectiv)m(e)j(user)c(id)h(is)g(set)h(to)f +(the)h(real)f(user)g(id.)45 b(If)32 b(the)1110 1926 y +Fs(-p)i Ft(option)h(is)g(supplied)f(at)h(startup,)h(the)f(e\013ectiv)m +(e)i(user)d(id)g(is)h(not)g(reset.)1110 2035 y(T)-8 b(urning)35 +b(this)i(option)g(o\013)g(causes)g(the)g(e\013ectiv)m(e)i(user)d(and)g +(group)g(ids)g(to)1110 2145 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f +(and)g(group)g(ids.)630 2305 y Fs(-t)384 b Ft(Exit)31 +b(after)g(reading)f(and)g(executing)h(one)g(command.)630 +2465 y Fs(-u)384 b Ft(T)-8 b(reat)25 b(unset)e(v)-5 b(ariables)25 +b(and)e(parameters)h(other)h(than)e(the)h(sp)s(ecial)h(param-)1110 +2575 y(eters)35 b(`)p Fs(@)p Ft(')f(or)g(`)p Fs(*)p Ft(')h(as)f(an)g +(error)g(when)f(p)s(erforming)g(parameter)i(expansion.)1110 +2685 y(An)28 b(error)h(message)g(will)g(b)s(e)f(written)h(to)h(the)e +(standard)g(error,)h(and)f(a)h(non-)1110 2794 y(in)m(teractiv)m(e)k +(shell)e(will)g(exit.)630 2954 y Fs(-v)384 b Ft(Prin)m(t)30 +b(shell)h(input)e(lines)i(as)g(they)f(are)h(read.)630 +3114 y Fs(-x)384 b Ft(Prin)m(t)21 b(a)h(trace)h(of)f(simple)f +(commands,)i Fs(for)e Ft(commands,)i Fs(case)d Ft(commands,)1110 +3224 y Fs(select)29 b Ft(commands,)j(and)e(arithmetic)j +Fs(for)d Ft(commands)h(and)f(their)i(argu-)1110 3334 +y(men)m(ts)h(or)f(asso)s(ciated)i(w)m(ord)e(lists)h(after)g(they)f(are) +h(expanded)f(and)f(b)s(efore)1110 3443 y(they)i(are)g(executed.)49 b(The)32 b(v)-5 b(alue)33 b(of)g(the)g Fs(PS4)f Ft(v)-5 -b(ariable)34 b(is)f(expanded)f(and)1110 2710 y(the)24 +b(ariable)34 b(is)f(expanded)f(and)1110 3553 y(the)24 b(resultan)m(t)h(v)-5 b(alue)24 b(is)g(prin)m(ted)g(b)s(efore)f(the)h -(command)g(and)f(its)i(expanded)1110 2819 y(argumen)m(ts.)630 -2984 y Fs(-B)384 b Ft(The)41 b(shell)g(will)g(p)s(erform)f(brace)h -(expansion)g(\(see)h(Section)g(3.5.1)g([Brace)1110 3093 +(command)g(and)f(its)i(expanded)1110 3662 y(argumen)m(ts.)630 +3823 y Fs(-B)384 b Ft(The)41 b(shell)g(will)g(p)s(erform)f(brace)h +(expansion)g(\(see)h(Section)g(3.5.1)g([Brace)1110 3932 y(Expansion],)30 b(page)h(19\).)42 b(This)30 b(option)h(is)f(on)g(b)m -(y)h(default.)630 3258 y Fs(-C)384 b Ft(Prev)m(en)m(t)25 +(y)h(default.)630 4092 y Fs(-C)384 b Ft(Prev)m(en)m(t)25 b(output)e(redirection)h(using)f(`)p Fs(>)p Ft(',)i(`)p Fs(>&)p Ft(',)g(and)e(`)p Fs(<>)p Ft(')g(from)h(o)m(v)m(erwriting)1110 -3367 y(existing)31 b(\014les.)630 3532 y Fs(-E)384 b +4202 y(existing)31 b(\014les.)630 4362 y Fs(-E)384 b Ft(If)39 b(set,)j(an)m(y)e(trap)f(on)g Fs(ERR)g Ft(is)g(inherited)g(b)m -(y)g(shell)h(functions,)h(command)1110 3641 y(substitutions,)35 +(y)g(shell)h(functions,)h(command)1110 4472 y(substitutions,)35 b(and)e(commands)g(executed)i(in)f(a)g(subshell)f(en)m(vironmen)m(t.) -1110 3751 y(The)d Fs(ERR)f Ft(trap)i(is)f(normally)h(not)f(inherited)g -(in)g(suc)m(h)g(cases.)630 3915 y Fs(-H)384 b Ft(Enable)38 +1110 4581 y(The)d Fs(ERR)f Ft(trap)i(is)f(normally)h(not)f(inherited)g +(in)g(suc)m(h)g(cases.)630 4741 y Fs(-H)384 b Ft(Enable)38 b(`)p Fs(!)p Ft(')h(st)m(yle)h(history)e(substitution)g(\(see)h -(Section)h(9.3)f([History)g(In-)1110 4025 y(teraction],)g(page)d +(Section)h(9.3)f([History)g(In-)1110 4851 y(teraction],)g(page)d (125\).)57 b(This)34 b(option)i(is)f(on)g(b)m(y)h(default)f(for)g(in)m -(teractiv)m(e)1110 4134 y(shells.)630 4299 y Fs(-P)384 +(teractiv)m(e)1110 4961 y(shells.)630 5121 y Fs(-P)384 b Ft(If)43 b(set,)k(do)c(not)g(follo)m(w)h(sym)m(b)s(olic)g(links)e -(when)g(p)s(erforming)g(commands)1110 4408 y(suc)m(h)29 +(when)g(p)s(erforming)g(commands)1110 5230 y(suc)m(h)29 b(as)h Fs(cd)f Ft(whic)m(h)g(c)m(hange)h(the)g(curren)m(t)f(directory) --8 b(.)42 b(The)28 b(ph)m(ysical)j(direc-)1110 4518 y(tory)j(is)g(used) +-8 b(.)42 b(The)28 b(ph)m(ysical)j(direc-)1110 5340 y(tory)j(is)g(used) f(instead.)52 b(By)34 b(default,)h(Bash)f(follo)m(ws)h(the)f(logical)i -(c)m(hain)f(of)1110 4628 y(directories)j(when)d(p)s(erforming)h -(commands)g(whic)m(h)g(c)m(hange)i(the)f(curren)m(t)1110 -4737 y(directory)-8 b(.)1110 4874 y(F)g(or)31 b(example,)g(if)f(`)p -Fs(/usr/sys)p Ft(')e(is)i(a)g(sym)m(b)s(olic)h(link)f(to)g(`)p -Fs(/usr/local/sys)p Ft(')1110 4984 y(then:)1350 5121 -y Fs($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 5230 y(/usr/sys)1350 -5340 y($)g(cd)h(..;)f(pwd)p eop end +(c)m(hain)f(of)p eop end %%Page: 57 63 TeXDict begin 57 62 bop 150 -116 a Ft(Chapter)30 b(4:)41 -b(Shell)30 b(Builtin)h(Commands)2069 b(57)1350 299 y -Fs(/usr)1110 435 y Ft(If)30 b Fs(set)f(-P)h Ft(is)h(on,)f(then:)1350 -571 y Fs($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 681 -y(/usr/local/sys)1350 790 y($)g(cd)h(..;)f(pwd)1350 900 -y(/usr/local)630 1062 y(-T)384 b Ft(If)34 b(set,)j(an)m(y)e(trap)g(on)g -Fs(DEBUG)e Ft(and)i Fs(RETURN)e Ft(are)i(inherited)g(b)m(y)f(shell)i -(func-)1110 1172 y(tions,)k(command)d(substitutions,)h(and)f(commands)g -(executed)h(in)f(a)h(sub-)1110 1281 y(shell)33 b(en)m(vironmen)m(t.)49 -b(The)32 b Fs(DEBUG)g Ft(and)g Fs(RETURN)f Ft(traps)h(are)i(normally)f -(not)1110 1391 y(inherited)d(in)g(suc)m(h)g(cases.)630 -1554 y Fs(--)384 b Ft(If)31 b(no)h(argumen)m(ts)f(follo)m(w)i(this)f -(option,)g(then)f(the)h(p)s(ositional)h(parameters)1110 -1663 y(are)h(unset.)49 b(Otherwise,)34 b(the)g(p)s(ositional)g -(parameters)g(are)g(set)g(to)g(the)g Fq(ar-)1110 1773 -y(gumen)m(ts)t Ft(,)d(ev)m(en)g(if)f(some)h(of)f(them)h(b)s(egin)f -(with)g(a)g(`)p Fs(-)p Ft('.)630 1935 y Fs(-)432 b Ft(Signal)45 -b(the)g(end)f(of)h(options,)k(cause)c(all)h(remaining)e -Fq(argumen)m(ts)49 b Ft(to)d(b)s(e)1110 2045 y(assigned)38 -b(to)h(the)f(p)s(ositional)h(parameters.)65 b(The)37 -b(`)p Fs(-x)p Ft(')h(and)g(`)p Fs(-v)p Ft(')g(options)1110 -2155 y(are)25 b(turned)e(o\013.)40 b(If)24 b(there)h(are)g(no)f +b(Shell)30 b(Builtin)h(Commands)2069 b(57)1110 299 y(directories)38 +b(when)d(p)s(erforming)h(commands)g(whic)m(h)g(c)m(hange)i(the)f +(curren)m(t)1110 408 y(directory)-8 b(.)1110 542 y(F)g(or)31 +b(example,)g(if)f(`)p Fs(/usr/sys)p Ft(')e(is)i(a)g(sym)m(b)s(olic)h +(link)f(to)g(`)p Fs(/usr/local/sys)p Ft(')1110 652 y(then:)1350 +786 y Fs($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 895 +y(/usr/sys)1350 1005 y($)g(cd)h(..;)f(pwd)1350 1114 y(/usr)1110 +1248 y Ft(If)30 b Fs(set)f(-P)h Ft(is)h(on,)f(then:)1350 +1382 y Fs($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 1491 +y(/usr/local/sys)1350 1601 y($)g(cd)h(..;)f(pwd)1350 +1711 y(/usr/local)630 1869 y(-T)384 b Ft(If)34 b(set,)j(an)m(y)e(trap)g +(on)g Fs(DEBUG)e Ft(and)i Fs(RETURN)e Ft(are)i(inherited)g(b)m(y)f +(shell)i(func-)1110 1978 y(tions,)k(command)d(substitutions,)h(and)f +(commands)g(executed)h(in)f(a)h(sub-)1110 2088 y(shell)33 +b(en)m(vironmen)m(t.)49 b(The)32 b Fs(DEBUG)g Ft(and)g +Fs(RETURN)f Ft(traps)h(are)i(normally)f(not)1110 2197 +y(inherited)d(in)g(suc)m(h)g(cases.)630 2355 y Fs(--)384 +b Ft(If)31 b(no)h(argumen)m(ts)f(follo)m(w)i(this)f(option,)g(then)f +(the)h(p)s(ositional)h(parameters)1110 2465 y(are)h(unset.)49 +b(Otherwise,)34 b(the)g(p)s(ositional)g(parameters)g(are)g(set)g(to)g +(the)g Fq(ar-)1110 2575 y(gumen)m(ts)t Ft(,)d(ev)m(en)g(if)f(some)h(of) +f(them)h(b)s(egin)f(with)g(a)g(`)p Fs(-)p Ft('.)630 2732 +y Fs(-)432 b Ft(Signal)45 b(the)g(end)f(of)h(options,)k(cause)c(all)h +(remaining)e Fq(argumen)m(ts)49 b Ft(to)d(b)s(e)1110 +2842 y(assigned)38 b(to)h(the)f(p)s(ositional)h(parameters.)65 +b(The)37 b(`)p Fs(-x)p Ft(')h(and)g(`)p Fs(-v)p Ft(')g(options)1110 +2952 y(are)25 b(turned)e(o\013.)40 b(If)24 b(there)h(are)g(no)f (argumen)m(ts,)i(the)f(p)s(ositional)h(parameters)1110 -2264 y(remain)k(unc)m(hanged.)630 2427 y(Using)d(`)p +3061 y(remain)k(unc)m(hanged.)630 3219 y(Using)d(`)p Fs(+)p Ft(')h(rather)f(than)g(`)p Fs(-)p Ft(')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 -2536 y(also)36 b(b)s(e)f(used)f(up)s(on)g(in)m(v)m(o)s(cation)j(of)e +3329 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 2646 y(found)29 b(in)h Fs($-)p Ft(.)630 2782 +(b)s(e)630 3438 y(found)29 b(in)h Fs($-)p Ft(.)630 3572 y(The)43 b(remaining)h(N)f Fq(argumen)m(ts)48 b Ft(are)c(p)s(ositional) -g(parameters)g(and)f(are)h(assigned,)j(in)630 2891 y(order,)30 +g(parameters)g(and)f(are)h(assigned,)j(in)630 3682 y(order,)30 b(to)h Fs($1)p Ft(,)f Fs($2)p Ft(,)36 b(.)22 b(.)g(.)42 b Fs($N)p Ft(.)e(The)30 b(sp)s(ecial)h(parameter)g Fs(#)f -Ft(is)g(set)h(to)g(N.)630 3028 y(The)f(return)f(status)i(is)f(alw)m(a)m +Ft(is)g(set)h(to)g(N.)630 3815 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 3230 y Fj(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150 -3377 y Ft(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h +(supplied.)150 4013 y Fj(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150 +4160 y Ft(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 -3541 y Fs(shopt)870 3677 y(shopt)46 b([-pqsu])g([-o])h([)p -Fi(optname)56 b Fs(...)o(])630 3813 y Ft(T)-8 b(oggle)47 +4318 y Fs(shopt)870 4452 y(shopt)46 b([-pqsu])g([-o])h([)p +Fi(optname)56 b Fs(...)o(])630 4586 y Ft(T)-8 b(oggle)47 b(the)d(v)-5 b(alues)45 b(of)g(v)-5 b(ariables)45 b(con)m(trolling)i (optional)f(shell)e(b)s(eha)m(vior.)84 b(With)45 b(no)630 -3923 y(options,)32 b(or)f(with)g(the)g(`)p Fs(-p)p Ft(')g(option,)h(a)g +4695 y(options,)32 b(or)f(with)g(the)g(`)p Fs(-p)p Ft(')g(option,)h(a)g (list)f(of)h(all)g(settable)g(options)g(is)f(displa)m(y)m(ed,)h(with) -630 4032 y(an)i(indication)i(of)f(whether)f(or)g(not)h(eac)m(h)h(is)e +630 4805 y(an)i(indication)i(of)f(whether)f(or)g(not)h(eac)m(h)h(is)e (set.)54 b(The)34 b(`)p Fs(-p)p Ft(')h(option)g(causes)g(output)f(to) -630 4142 y(b)s(e)i(displa)m(y)m(ed)h(in)e(a)i(form)f(that)h(ma)m(y)g(b) +630 4914 y(b)s(e)i(displa)m(y)m(ed)h(in)e(a)i(form)f(that)h(ma)m(y)g(b) s(e)e(reused)h(as)g(input.)58 b(Other)36 b(options)g(ha)m(v)m(e)i(the) -630 4251 y(follo)m(wing)32 b(meanings:)630 4414 y Fs(-s)384 +630 5024 y(follo)m(wing)32 b(meanings:)630 5182 y Fs(-s)384 b Ft(Enable)30 b(\(set\))i(eac)m(h)f Fq(optname)5 b Ft(.)630 -4577 y Fs(-u)384 b Ft(Disable)31 b(\(unset\))g(eac)m(h)h -Fq(optname)5 b Ft(.)630 4739 y Fs(-q)384 b Ft(Suppresses)28 -b(normal)h(output;)h(the)g(return)e(status)i(indicates)h(whether)e(the) -1110 4849 y Fq(optname)37 b Ft(is)31 b(set)h(or)f(unset.)43 -b(If)31 b(m)m(ultiple)h Fq(optname)37 b Ft(argumen)m(ts)31 -b(are)h(giv)m(en)1110 4958 y(with)43 b(`)p Fs(-q)p Ft(',)j(the)d -(return)f(status)h(is)g(zero)h(if)f(all)g Fq(optnames)k -Ft(are)d(enabled;)1110 5068 y(non-zero)31 b(otherwise.)630 -5230 y Fs(-o)384 b Ft(Restricts)28 b(the)g(v)-5 b(alues)28 -b(of)f Fq(optname)33 b Ft(to)c(b)s(e)d(those)i(de\014ned)f(for)g(the)g -(`)p Fs(-o)p Ft(')h(op-)1110 5340 y(tion)23 b(to)h(the)f -Fs(set)f Ft(builtin)h(\(see)g(Section)h(4.3.1)h([The)d(Set)i(Builtin],) -h(page)e(53\).)p eop end +5340 y Fs(-u)384 b Ft(Disable)31 b(\(unset\))g(eac)m(h)h +Fq(optname)5 b Ft(.)p eop end %%Page: 58 64 TeXDict begin 58 63 bop 150 -116 a Ft(58)2572 b(Bash)31 -b(Reference)g(Man)m(ual)630 299 y(If)e(either)i(`)p Fs(-s)p -Ft(')f(or)g(`)p Fs(-u)p Ft(')f(is)h(used)g(with)f(no)h -Fq(optname)35 b Ft(argumen)m(ts,)c(the)f(displa)m(y)g(is)g(limited)630 -408 y(to)h(those)g(options)g(whic)m(h)f(are)h(set)f(or)h(unset,)f(resp) -s(ectiv)m(ely)-8 b(.)630 542 y(Unless)30 b(otherwise)h(noted,)g(the)g -Fs(shopt)d Ft(options)j(are)g(disabled)f(\(o\013)7 b(\))32 -b(b)m(y)e(default.)630 675 y(The)d(return)f(status)i(when)f(listing)h -(options)g(is)f(zero)i(if)e(all)i Fq(optnames)i Ft(are)d(enabled,)g -(non-)630 785 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 -894 y(unless)30 b(an)g Fq(optname)36 b Ft(is)30 b(not)h(a)g(v)-5 -b(alid)30 b(shell)h(option.)630 1028 y(The)f(list)h(of)f -Fs(shopt)f Ft(options)i(is:)630 1185 y Fs(autocd)192 -b Ft(If)27 b(set,)h(a)g(command)f(name)g(that)h(is)f(the)g(name)g(of)h -(a)f(directory)h(is)f(executed)1110 1295 y(as)j(if)f(it)h(w)m(ere)f -(the)h(argumen)m(t)g(to)g(the)f Fs(cd)g Ft(command.)40 -b(This)29 b(option)g(is)h(only)1110 1404 y(used)g(b)m(y)g(in)m -(teractiv)m(e)j(shells.)630 1562 y Fs(cdable_vars)1110 -1671 y Ft(If)h(this)h(is)g(set,)i(an)e(argumen)m(t)g(to)h(the)f -Fs(cd)f Ft(builtin)h(command)f(that)i(is)f(not)1110 1781 -y(a)c(directory)g(is)g(assumed)f(to)h(b)s(e)f(the)h(name)f(of)h(a)g(v) --5 b(ariable)31 b(whose)g(v)-5 b(alue)31 b(is)1110 1890 -y(the)g(directory)f(to)i(c)m(hange)f(to.)630 2048 y Fs(cdspell)144 -b Ft(If)27 b(set,)h(minor)f(errors)f(in)h(the)g(sp)s(elling)h(of)f(a)g -(directory)h(comp)s(onen)m(t)f(in)g(a)h Fs(cd)1110 2157 -y Ft(command)i(will)h(b)s(e)f(corrected.)43 b(The)30 -b(errors)g(c)m(hec)m(k)m(ed)j(for)d(are)h(transp)s(osed)1110 -2267 y(c)m(haracters,)46 b(a)c(missing)f(c)m(haracter,)47 +b(Reference)g(Man)m(ual)630 299 y Fs(-q)384 b Ft(Suppresses)28 +b(normal)h(output;)h(the)g(return)e(status)i(indicates)h(whether)e(the) +1110 408 y Fq(optname)37 b Ft(is)31 b(set)h(or)f(unset.)43 +b(If)31 b(m)m(ultiple)h Fq(optname)37 b Ft(argumen)m(ts)31 +b(are)h(giv)m(en)1110 518 y(with)43 b(`)p Fs(-q)p Ft(',)j(the)d(return) +f(status)h(is)g(zero)h(if)f(all)g Fq(optnames)k Ft(are)d(enabled;)1110 +628 y(non-zero)31 b(otherwise.)630 775 y Fs(-o)384 b +Ft(Restricts)28 b(the)g(v)-5 b(alues)28 b(of)f Fq(optname)33 +b Ft(to)c(b)s(e)d(those)i(de\014ned)f(for)g(the)g(`)p +Fs(-o)p Ft(')h(op-)1110 885 y(tion)23 b(to)h(the)f Fs(set)f +Ft(builtin)h(\(see)g(Section)h(4.3.1)h([The)d(Set)i(Builtin],)h(page)e +(53\).)630 1033 y(If)29 b(either)i(`)p Fs(-s)p Ft(')f(or)g(`)p +Fs(-u)p Ft(')f(is)h(used)g(with)f(no)h Fq(optname)35 +b Ft(argumen)m(ts,)c(the)f(displa)m(y)g(is)g(limited)630 +1142 y(to)h(those)g(options)g(whic)m(h)f(are)h(set)f(or)h(unset,)f +(resp)s(ectiv)m(ely)-8 b(.)630 1271 y(Unless)30 b(otherwise)h(noted,)g +(the)g Fs(shopt)d Ft(options)j(are)g(disabled)f(\(o\013)7 +b(\))32 b(b)m(y)e(default.)630 1400 y(The)d(return)f(status)i(when)f +(listing)h(options)g(is)f(zero)i(if)e(all)i Fq(optnames)i +Ft(are)d(enabled,)g(non-)630 1509 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 1619 y(unless)30 b(an)g Fq(optname)36 +b Ft(is)30 b(not)h(a)g(v)-5 b(alid)30 b(shell)h(option.)630 +1747 y(The)f(list)h(of)f Fs(shopt)f Ft(options)i(is:)630 +1895 y Fs(autocd)192 b Ft(If)27 b(set,)h(a)g(command)f(name)g(that)h +(is)f(the)g(name)g(of)h(a)f(directory)h(is)f(executed)1110 +2005 y(as)j(if)f(it)h(w)m(ere)f(the)h(argumen)m(t)g(to)g(the)f +Fs(cd)g Ft(command.)40 b(This)29 b(option)g(is)h(only)1110 +2114 y(used)g(b)m(y)g(in)m(teractiv)m(e)j(shells.)630 +2262 y Fs(cdable_vars)1110 2372 y Ft(If)h(this)h(is)g(set,)i(an)e +(argumen)m(t)g(to)h(the)f Fs(cd)f Ft(builtin)h(command)f(that)i(is)f +(not)1110 2481 y(a)c(directory)g(is)g(assumed)f(to)h(b)s(e)f(the)h +(name)f(of)h(a)g(v)-5 b(ariable)31 b(whose)g(v)-5 b(alue)31 +b(is)1110 2591 y(the)g(directory)f(to)i(c)m(hange)f(to.)630 +2738 y Fs(cdspell)144 b Ft(If)27 b(set,)h(minor)f(errors)f(in)h(the)g +(sp)s(elling)h(of)f(a)g(directory)h(comp)s(onen)m(t)f(in)g(a)h +Fs(cd)1110 2848 y Ft(command)i(will)h(b)s(e)f(corrected.)43 +b(The)30 b(errors)g(c)m(hec)m(k)m(ed)j(for)d(are)h(transp)s(osed)1110 +2958 y(c)m(haracters,)46 b(a)c(missing)f(c)m(haracter,)47 b(and)40 b(a)i(c)m(haracter)h(to)s(o)g(man)m(y)-8 b(.)74 -b(If)42 b(a)1110 2376 y(correction)25 b(is)e(found,)g(the)h(corrected)g -(path)f(is)g(prin)m(ted,)h(and)f(the)g(command)1110 2486 +b(If)42 b(a)1110 3067 y(correction)25 b(is)e(found,)g(the)h(corrected)g +(path)f(is)g(prin)m(ted,)h(and)f(the)g(command)1110 3177 y(pro)s(ceeds.)40 b(This)30 b(option)h(is)f(only)h(used)e(b)m(y)h(in)m -(teractiv)m(e)k(shells.)630 2643 y Fs(checkhash)1110 -2753 y Ft(If)29 b(this)h(is)g(set,)g(Bash)g(c)m(hec)m(ks)h(that)g(a)f -(command)f(found)g(in)g(the)h(hash)f(table)1110 2862 +(teractiv)m(e)k(shells.)630 3324 y Fs(checkhash)1110 +3434 y Ft(If)29 b(this)h(is)g(set,)g(Bash)g(c)m(hec)m(ks)h(that)g(a)f +(command)f(found)g(in)g(the)h(hash)f(table)1110 3544 y(exists)k(b)s(efore)f(trying)h(to)h(execute)g(it.)48 -b(If)32 b(a)h(hashed)e(command)i(no)f(longer)1110 2972 +b(If)32 b(a)h(hashed)e(command)i(no)f(longer)1110 3653 y(exists,)f(a)g(normal)f(path)g(searc)m(h)h(is)g(p)s(erformed.)630 -3129 y Fs(checkjobs)1110 3239 y Ft(If)d(set,)i(Bash)e(lists)h(the)g +3801 y Fs(checkjobs)1110 3911 y Ft(If)d(set,)i(Bash)e(lists)h(the)g (status)g(of)f(an)m(y)h(stopp)s(ed)f(and)g(running)e(jobs)i(b)s(efore) -1110 3348 y(exiting)42 b(an)f(in)m(teractiv)m(e)j(shell.)72 +1110 4020 y(exiting)42 b(an)f(in)m(teractiv)m(e)j(shell.)72 b(If)41 b(an)m(y)g(jobs)f(are)i(running,)g(this)f(causes)1110 -3458 y(the)30 b(exit)g(to)g(b)s(e)f(deferred)g(un)m(til)h(a)f(second)h -(exit)g(is)g(attempted)h(without)e(an)1110 3567 y(in)m(terv)m(ening)j +4130 y(the)30 b(exit)g(to)g(b)s(e)f(deferred)g(un)m(til)h(a)f(second)h +(exit)g(is)g(attempted)h(without)e(an)1110 4239 y(in)m(terv)m(ening)j (command)e(\(see)h(Chapter)f(7)h([Job)f(Con)m(trol],)i(page)f(91\).)42 -b(The)1110 3677 y(shell)31 b(alw)m(a)m(ys)g(p)s(ostp)s(ones)f(exiting)h -(if)g(an)m(y)f(jobs)g(are)h(stopp)s(ed.)630 3834 y Fs(checkwinsize)1110 -3944 y Ft(If)41 b(set,)k(Bash)c(c)m(hec)m(ks)i(the)f(windo)m(w)e(size)j -(after)f(eac)m(h)g(command)f(and,)j(if)1110 4053 y(necessary)-8 +b(The)1110 4349 y(shell)31 b(alw)m(a)m(ys)g(p)s(ostp)s(ones)f(exiting)h +(if)g(an)m(y)f(jobs)g(are)h(stopp)s(ed.)630 4497 y Fs(checkwinsize)1110 +4606 y Ft(If)41 b(set,)k(Bash)c(c)m(hec)m(ks)i(the)f(windo)m(w)e(size)j +(after)f(eac)m(h)g(command)f(and,)j(if)1110 4716 y(necessary)-8 b(,)31 b(up)s(dates)f(the)g(v)-5 b(alues)31 b(of)g Fs(LINES)e -Ft(and)g Fs(COLUMNS)p Ft(.)630 4211 y Fs(cmdhist)144 +Ft(and)g Fs(COLUMNS)p Ft(.)630 4864 y Fs(cmdhist)144 b Ft(If)33 b(set,)j(Bash)e(attempts)h(to)g(sa)m(v)m(e)g(all)g(lines)f -(of)g(a)h(m)m(ultiple-line)g(command)1110 4320 y(in)c(the)g(same)g +(of)g(a)h(m)m(ultiple-line)g(command)1110 4973 y(in)c(the)g(same)g (history)g(en)m(try)-8 b(.)42 b(This)30 b(allo)m(ws)i(easy)g -(re-editing)g(of)f(m)m(ulti-line)1110 4430 y(commands.)630 -4587 y Fs(compat31)96 b Ft(If)27 b(set,)i(Bash)e(c)m(hanges)i(its)f(b)s +(re-editing)g(of)f(m)m(ulti-line)1110 5083 y(commands.)630 +5230 y Fs(compat31)96 b Ft(If)27 b(set,)i(Bash)e(c)m(hanges)i(its)f(b)s (eha)m(vior)f(to)i(that)f(of)f(v)m(ersion)h(3.1)h(with)e(resp)s(ect) -1110 4697 y(to)k(quoted)g(argumen)m(ts)f(to)h(the)g(conditional)h -(command's)e(=)p Fs(~)g Ft(op)s(erator.)630 4854 y Fs(compat32)96 -b Ft(If)27 b(set,)i(Bash)e(c)m(hanges)i(its)f(b)s(eha)m(vior)f(to)i -(that)f(of)f(v)m(ersion)h(3.2)h(with)e(resp)s(ect)1110 -4964 y(to)22 b(lo)s(cale-sp)s(eci\014c)h(string)e(comparison)g(when)f -(using)g(the)i(conditional)g(com-)1110 5073 y(mand's)30 -b Fs(<)g Ft(and)f Fs(>)h Ft(op)s(erators.)630 5230 y -Fs(compat40)96 b Ft(If)27 b(set,)i(Bash)e(c)m(hanges)i(its)f(b)s(eha)m -(vior)f(to)i(that)f(of)f(v)m(ersion)h(4.0)h(with)e(resp)s(ect)1110 -5340 y(to)22 b(lo)s(cale-sp)s(eci\014c)h(string)e(comparison)g(when)f -(using)g(the)i(conditional)g(com-)p eop end +1110 5340 y(to)k(quoted)g(argumen)m(ts)f(to)h(the)g(conditional)h +(command's)e(=)p Fs(~)g Ft(op)s(erator.)p eop end %%Page: 59 65 TeXDict begin 59 64 bop 150 -116 a Ft(Chapter)30 b(4:)41 -b(Shell)30 b(Builtin)h(Commands)2069 b(59)1110 299 y(mand's)25 -b Fs(<)g Ft(and)g Fs(>)g Ft(op)s(erators)h(and)f(the)g(e\013ect)i(of)f -(in)m(terrupting)f(a)h(command)1110 408 y(list.)630 555 +b(Shell)30 b(Builtin)h(Commands)2069 b(59)630 299 y Fs(compat32)96 +b Ft(If)27 b(set,)i(Bash)e(c)m(hanges)i(its)f(b)s(eha)m(vior)f(to)i +(that)f(of)f(v)m(ersion)h(3.2)h(with)e(resp)s(ect)1110 +408 y(to)22 b(lo)s(cale-sp)s(eci\014c)h(string)e(comparison)g(when)f +(using)g(the)i(conditional)g(com-)1110 518 y(mand's)30 +b Fs(<)g Ft(and)f Fs(>)h Ft(op)s(erators.)630 667 y Fs(compat40)96 +b Ft(If)27 b(set,)i(Bash)e(c)m(hanges)i(its)f(b)s(eha)m(vior)f(to)i +(that)f(of)f(v)m(ersion)h(4.0)h(with)e(resp)s(ect)1110 +777 y(to)22 b(lo)s(cale-sp)s(eci\014c)h(string)e(comparison)g(when)f +(using)g(the)i(conditional)g(com-)1110 887 y(mand's)j +Fs(<)g Ft(and)g Fs(>)g Ft(op)s(erators)h(and)f(the)g(e\013ect)i(of)f +(in)m(terrupting)f(a)h(command)1110 996 y(list.)630 1146 y Fs(dirspell)96 b Ft(If)26 b(set,)i(Bash)f(attempts)g(sp)s(elling)g -(correction)g(on)g(directory)g(names)f(during)1110 664 +(correction)g(on)g(directory)g(names)f(during)1110 1255 y(w)m(ord)36 b(completion)h(if)f(the)g(directory)g(name)g(initially)h -(supplied)e(do)s(es)h(not)1110 774 y(exist.)630 920 y -Fs(dotglob)144 b Ft(If)27 b(set,)i(Bash)f(includes)g(\014lenames)g(b)s -(eginning)f(with)g(a)h(`.')41 b(in)27 b(the)h(results)g(of)1110 -1029 y(\014lename)j(expansion.)630 1176 y Fs(execfail)96 +(supplied)e(do)s(es)h(not)1110 1365 y(exist.)630 1514 +y Fs(dotglob)144 b Ft(If)27 b(set,)i(Bash)f(includes)g(\014lenames)g(b) +s(eginning)f(with)g(a)h(`.')41 b(in)27 b(the)h(results)g(of)1110 +1624 y(\014lename)j(expansion.)630 1773 y Fs(execfail)96 b Ft(If)24 b(this)h(is)f(set,)j(a)e(non-in)m(teractiv)m(e)i(shell)e (will)f(not)h(exit)h(if)e(it)h(cannot)h(execute)1110 -1285 y(the)i(\014le)g(sp)s(eci\014ed)g(as)g(an)g(argumen)m(t)g(to)h -(the)f Fs(exec)f Ft(builtin)h(command.)39 b(An)1110 1395 +1883 y(the)i(\014le)g(sp)s(eci\014ed)g(as)g(an)g(argumen)m(t)g(to)h +(the)f Fs(exec)f Ft(builtin)h(command.)39 b(An)1110 1993 y(in)m(teractiv)m(e)33 b(shell)e(do)s(es)f(not)g(exit)i(if)e -Fs(exec)f Ft(fails.)630 1541 y Fs(expand_aliases)1110 -1650 y Ft(If)j(set,)h(aliases)g(are)g(expanded)e(as)h(describ)s(ed)f(b) -s(elo)m(w)h(under)f(Aliases,)i(Sec-)1110 1760 y(tion)38 +Fs(exec)f Ft(fails.)630 2142 y Fs(expand_aliases)1110 +2252 y Ft(If)j(set,)h(aliases)g(are)g(expanded)e(as)h(describ)s(ed)f(b) +s(elo)m(w)h(under)f(Aliases,)i(Sec-)1110 2361 y(tion)38 b(6.6)h([Aliases],)j(page)d(81.)64 b(This)37 b(option)h(is)g(enabled)g -(b)m(y)g(default)g(for)1110 1870 y(in)m(teractiv)m(e)33 -b(shells.)630 2016 y Fs(extdebug)96 b Ft(If)30 b(set,)h(b)s(eha)m(vior) +(b)m(y)g(default)g(for)1110 2471 y(in)m(teractiv)m(e)33 +b(shells.)630 2620 y Fs(extdebug)96 b Ft(If)30 b(set,)h(b)s(eha)m(vior) g(in)m(tended)f(for)g(use)g(b)m(y)g(debuggers)g(is)h(enabled:)1159 -2144 y(1.)61 b(The)32 b(`)p Fs(-F)p Ft(')g(option)h(to)g(the)g +2750 y(1.)61 b(The)32 b(`)p Fs(-F)p Ft(')g(option)h(to)g(the)g Fs(declare)d Ft(builtin)i(\(see)i(Section)f(4.2)h([Bash)1290 -2253 y(Builtins],)29 b(page)g(43\))g(displa)m(ys)f(the)g(source)h -(\014le)f(name)g(and)f(line)h(n)m(um-)1290 2363 y(b)s(er)h(corresp)s +2859 y(Builtins],)29 b(page)g(43\))g(displa)m(ys)f(the)g(source)h +(\014le)f(name)g(and)f(line)h(n)m(um-)1290 2969 y(b)s(er)h(corresp)s (onding)g(to)i(eac)m(h)g(function)f(name)g(supplied)f(as)i(an)f(argu-) -1290 2472 y(men)m(t.)1159 2600 y(2.)61 b(If)20 b(the)h(command)g(run)e +1290 3078 y(men)m(t.)1159 3208 y(2.)61 b(If)20 b(the)h(command)g(run)e (b)m(y)i(the)f Fs(DEBUG)g Ft(trap)g(returns)g(a)h(non-zero)g(v)-5 -b(alue,)1290 2710 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g -(not)i(executed.)1159 2838 y(3.)61 b(If)37 b(the)g(command)g(run)f(b)m +b(alue,)1290 3318 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g +(not)i(executed.)1159 3447 y(3.)61 b(If)37 b(the)g(command)g(run)f(b)m (y)i(the)f Fs(DEBUG)f Ft(trap)h(returns)f(a)i(v)-5 b(alue)38 -b(of)f(2,)1290 2947 y(and)c(the)g(shell)h(is)f(executing)i(in)e(a)h -(subroutine)e(\(a)i(shell)g(function)f(or)1290 3057 y(a)h(shell)h +b(of)f(2,)1290 3557 y(and)c(the)g(shell)h(is)f(executing)i(in)e(a)h +(subroutine)e(\(a)i(shell)g(function)f(or)1290 3666 y(a)h(shell)h (script)f(executed)h(b)m(y)f(the)g Fs(.)g Ft(or)g Fs(source)e -Ft(builtins\),)j(a)g(call)g(to)1290 3166 y Fs(return)29 -b Ft(is)h(sim)m(ulated.)1159 3294 y(4.)61 b Fs(BASH_ARGC)34 +Ft(builtins\),)j(a)g(call)g(to)1290 3776 y Fs(return)29 +b Ft(is)h(sim)m(ulated.)1159 3905 y(4.)61 b Fs(BASH_ARGC)34 b Ft(and)i Fs(BASH_ARGV)e Ft(are)j(up)s(dated)e(as)h(describ)s(ed)g(in) -g(their)1290 3404 y(descriptions)30 b(\(see)i(Section)f(5.2)g([Bash)g -(V)-8 b(ariables],)32 b(page)f(63\).)1159 3532 y(5.)61 +g(their)1290 4015 y(descriptions)30 b(\(see)i(Section)f(5.2)g([Bash)g +(V)-8 b(ariables],)32 b(page)f(63\).)1159 4144 y(5.)61 b(F)-8 b(unction)57 b(tracing)g(is)g(enabled:)93 b(command)56 -b(substitution,)63 b(shell)1290 3641 y(functions,)30 +b(substitution,)63 b(shell)1290 4254 y(functions,)30 b(and)f(subshells)g(in)m(v)m(ok)m(ed)j(with)d Fs(\()h -Fi(command)39 b Fs(\))30 b Ft(inherit)g(the)1290 3751 -y Fs(DEBUG)f Ft(and)h Fs(RETURN)e Ft(traps.)1159 3879 +Fi(command)39 b Fs(\))30 b Ft(inherit)g(the)1290 4364 +y Fs(DEBUG)f Ft(and)h Fs(RETURN)e Ft(traps.)1159 4493 y(6.)61 b(Error)41 b(tracing)i(is)f(enabled:)63 b(command)42 -b(substitution,)i(shell)f(func-)1290 3988 y(tions,)30 +b(substitution,)i(shell)f(func-)1290 4603 y(tions,)30 b(and)f(subshells)g(in)m(v)m(ok)m(ed)i(with)e Fs(\()h Fi(command)39 b Fs(\))29 b Ft(inherit)g(the)h Fs(ERR)1290 -4098 y Ft(trap.)630 4244 y Fs(extglob)144 b Ft(If)26 +4712 y Ft(trap.)630 4862 y Fs(extglob)144 b Ft(If)26 b(set,)i(the)f(extended)f(pattern)h(matc)m(hing)g(features)g(describ)s -(ed)e(ab)s(o)m(v)m(e)j(\(see)1110 4354 y(Section)j(3.5.8.1)i([P)m +(ed)e(ab)s(o)m(v)m(e)j(\(see)1110 4971 y(Section)j(3.5.8.1)i([P)m (attern)f(Matc)m(hing],)g(page)f(26\))h(are)f(enabled.)630 -4500 y Fs(extquote)96 b Ft(If)49 b(set,)54 b Fs($')p +5121 y Fs(extquote)96 b Ft(If)49 b(set,)54 b Fs($')p Fi(string)11 b Fs(')46 b Ft(and)j Fs($")p Fi(string)11 b Fs(")46 b Ft(quoting)k(is)f(p)s(erformed)e(within)1110 -4609 y Fs(${)p Fi(parameter)11 b Fs(})30 b Ft(expansions)j(enclosed)h -(in)g(double)f(quotes.)51 b(This)32 b(option)1110 4719 -y(is)e(enabled)h(b)m(y)f(default.)630 4865 y Fs(failglob)96 -b Ft(If)36 b(set,)j(patterns)d(whic)m(h)g(fail)h(to)h(matc)m(h)f -(\014lenames)f(during)g(\014lename)g(ex-)1110 4975 y(pansion)30 -b(result)g(in)g(an)g(expansion)h(error.)630 5121 y Fs(force_fignore) -1110 5230 y Ft(If)43 b(set,)k(the)d(su\016xes)f(sp)s(eci\014ed)f(b)m(y) -i(the)f Fs(FIGNORE)f Ft(shell)h(v)-5 b(ariable)44 b(cause)1110 -5340 y(w)m(ords)31 b(to)h(b)s(e)f(ignored)h(when)f(p)s(erforming)f(w)m -(ord)h(completion)i(ev)m(en)f(if)g(the)p eop end +5230 y Fs(${)p Fi(parameter)11 b Fs(})30 b Ft(expansions)j(enclosed)h +(in)g(double)f(quotes.)51 b(This)32 b(option)1110 5340 +y(is)e(enabled)h(b)m(y)f(default.)p eop end %%Page: 60 66 TeXDict begin 60 65 bop 150 -116 a Ft(60)2572 b(Bash)31 -b(Reference)g(Man)m(ual)1110 299 y(ignored)37 b(w)m(ords)g(are)g(the)h -(only)f(p)s(ossible)g(completions.)62 b(See)37 b(Section)h(5.2)1110 -408 y([Bash)24 b(V)-8 b(ariables],)27 b(page)e(63,)h(for)d(a)h -(description)g(of)g Fs(FIGNORE)p Ft(.)37 b(This)22 b(option)1110 -518 y(is)30 b(enabled)h(b)m(y)f(default.)630 667 y Fs(globstar)96 +b(Reference)g(Man)m(ual)630 299 y Fs(failglob)96 b Ft(If)36 +b(set,)j(patterns)d(whic)m(h)g(fail)h(to)h(matc)m(h)f(\014lenames)f +(during)g(\014lename)g(ex-)1110 408 y(pansion)30 b(result)g(in)g(an)g +(expansion)h(error.)630 573 y Fs(force_fignore)1110 682 +y Ft(If)43 b(set,)k(the)d(su\016xes)f(sp)s(eci\014ed)f(b)m(y)i(the)f +Fs(FIGNORE)f Ft(shell)h(v)-5 b(ariable)44 b(cause)1110 +792 y(w)m(ords)31 b(to)h(b)s(e)f(ignored)h(when)f(p)s(erforming)f(w)m +(ord)h(completion)i(ev)m(en)f(if)g(the)1110 902 y(ignored)37 +b(w)m(ords)g(are)g(the)h(only)f(p)s(ossible)g(completions.)62 +b(See)37 b(Section)h(5.2)1110 1011 y([Bash)24 b(V)-8 +b(ariables],)27 b(page)e(63,)h(for)d(a)h(description)g(of)g +Fs(FIGNORE)p Ft(.)37 b(This)22 b(option)1110 1121 y(is)30 +b(enabled)h(b)m(y)f(default.)630 1285 y Fs(globstar)96 b Ft(If)38 b(set,)j(the)e(pattern)f(`)p Fs(**)p Ft(')h(used)e(in)i(a)f -(\014lename)h(expansion)f(con)m(text)j(will)1110 777 +(\014lename)h(expansion)f(con)m(text)j(will)1110 1395 y(matc)m(h)f(a)g(\014les)f(and)f(zero)i(or)g(more)f(directories)h(and)f -(sub)s(directories.)66 b(If)1110 887 y(the)30 b(pattern)g(is)g(follo)m +(sub)s(directories.)66 b(If)1110 1504 y(the)30 b(pattern)g(is)g(follo)m (w)m(ed)i(b)m(y)d(a)i(`)p Fs(/)p Ft(',)f(only)g(directories)h(and)f -(sub)s(directories)1110 996 y(matc)m(h.)630 1146 y Fs(gnu_errfmt)1110 -1255 y Ft(If)35 b(set,)j(shell)e(error)g(messages)g(are)h(written)e(in) -h(the)g(standard)f Fl(gnu)g Ft(error)1110 1365 y(message)c(format.)630 -1514 y Fs(histappend)1110 1624 y Ft(If)c(set,)j(the)e(history)g(list)g +(sub)s(directories)1110 1614 y(matc)m(h.)630 1778 y Fs(gnu_errfmt)1110 +1888 y Ft(If)35 b(set,)j(shell)e(error)g(messages)g(are)h(written)e(in) +h(the)g(standard)f Fl(gnu)g Ft(error)1110 1998 y(message)c(format.)630 +2162 y Fs(histappend)1110 2271 y Ft(If)c(set,)j(the)e(history)g(list)g (is)g(app)s(ended)e(to)j(the)f(\014le)g(named)f(b)m(y)h(the)g(v)-5 -b(alue)29 b(of)1110 1733 y(the)d Fs(HISTFILE)d Ft(v)-5 +b(alue)29 b(of)1110 2381 y(the)d Fs(HISTFILE)d Ft(v)-5 b(ariable)26 b(when)e(the)h(shell)h(exits,)h(rather)e(than)h(o)m(v)m -(erwriting)1110 1843 y(the)31 b(\014le.)630 1993 y Fs(histreedit)1110 -2102 y Ft(If)i(set,)h(and)f(Readline)h(is)f(b)s(eing)g(used,)g(a)g +(erwriting)1110 2491 y(the)31 b(\014le.)630 2655 y Fs(histreedit)1110 +2765 y Ft(If)i(set,)h(and)f(Readline)h(is)f(b)s(eing)g(used,)g(a)g (user)g(is)g(giv)m(en)h(the)g(opp)s(ortunit)m(y)1110 -2212 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)630 -2361 y Fs(histverify)1110 2471 y Ft(If)35 b(set,)i(and)e(Readline)h(is) +2874 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)630 +3039 y Fs(histverify)1110 3148 y Ft(If)35 b(set,)i(and)e(Readline)h(is) f(b)s(eing)g(used,)h(the)f(results)g(of)g(history)h(substitu-)1110 -2580 y(tion)h(are)g(not)g(immediately)h(passed)e(to)h(the)g(shell)g -(parser.)59 b(Instead,)38 b(the)1110 2690 y(resulting)i(line)f(is)h +3258 y(tion)h(are)g(not)g(immediately)h(passed)e(to)h(the)g(shell)g +(parser.)59 b(Instead,)38 b(the)1110 3367 y(resulting)i(line)f(is)h (loaded)g(in)m(to)g(the)g(Readline)g(editing)g(bu\013er,)h(allo)m(wing) -1110 2800 y(further)29 b(mo)s(di\014cation.)630 2949 -y Fs(hostcomplete)1110 3059 y Ft(If)38 b(set,)j(and)c(Readline)i(is)f +1110 3477 y(further)29 b(mo)s(di\014cation.)630 3641 +y Fs(hostcomplete)1110 3751 y Ft(If)38 b(set,)j(and)c(Readline)i(is)f (b)s(eing)g(used,)h(Bash)g(will)f(attempt)h(to)g(p)s(erform)1110 -3168 y(hostname)d(completion)h(when)e(a)h(w)m(ord)f(con)m(taining)i(a)f -(`)p Fs(@)p Ft(')g(is)g(b)s(eing)f(com-)1110 3278 y(pleted)g(\(see)h +3861 y(hostname)d(completion)h(when)e(a)h(w)m(ord)f(con)m(taining)i(a)f +(`)p Fs(@)p Ft(')g(is)g(b)s(eing)f(com-)1110 3970 y(pleted)g(\(see)h (Section)f(8.4.6)i([Commands)d(F)-8 b(or)36 b(Completion],)g(page)g -(112\).)1110 3387 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.) -630 3537 y Fs(huponexit)1110 3646 y Ft(If)i(set,)i(Bash)f(will)h(send)d +(112\).)1110 4080 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.) +630 4244 y Fs(huponexit)1110 4354 y Ft(If)i(set,)i(Bash)f(will)h(send)d Fs(SIGHUP)h Ft(to)h(all)h(jobs)e(when)g(an)g(in)m(teractiv)m(e)k(login) -1110 3756 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g -(page)f(34\).)630 3905 y Fs(interactive_comments)1110 -4015 y Ft(Allo)m(w)c(a)g(w)m(ord)e(b)s(eginning)g(with)h(`)p +1110 4463 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g +(page)f(34\).)630 4628 y Fs(interactive_comments)1110 +4737 y Ft(Allo)m(w)c(a)g(w)m(ord)e(b)s(eginning)g(with)h(`)p Fs(#)p Ft(')g(to)h(cause)f(that)h(w)m(ord)f(and)f(all)i(remain-)1110 -4125 y(ing)41 b(c)m(haracters)i(on)e(that)h(line)g(to)g(b)s(e)f +4847 y(ing)41 b(c)m(haracters)i(on)e(that)h(line)g(to)g(b)s(e)f (ignored)g(in)g(an)g(in)m(teractiv)m(e)j(shell.)1110 -4234 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630 -4384 y Fs(lithist)144 b Ft(If)22 b(enabled,)i(and)d(the)h +4956 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630 +5121 y Fs(lithist)144 b Ft(If)22 b(enabled,)i(and)d(the)h Fs(cmdhist)e Ft(option)j(is)f(enabled,)i(m)m(ulti-line)f(commands)1110 -4493 y(are)28 b(sa)m(v)m(ed)h(to)g(the)f(history)g(with)f(em)m(b)s -(edded)g(newlines)h(rather)g(than)f(using)1110 4603 y(semicolon)32 -b(separators)f(where)e(p)s(ossible.)630 4752 y Fs(login_shell)1110 -4862 y Ft(The)35 b(shell)h(sets)g(this)f(option)h(if)g(it)g(is)f +5230 y(are)28 b(sa)m(v)m(ed)h(to)g(the)f(history)g(with)f(em)m(b)s +(edded)g(newlines)h(rather)g(than)f(using)1110 5340 y(semicolon)32 +b(separators)f(where)e(p)s(ossible.)p eop end +%%Page: 61 67 +TeXDict begin 61 66 bop 150 -116 a Ft(Chapter)30 b(4:)41 +b(Shell)30 b(Builtin)h(Commands)2069 b(61)630 299 y Fs(login_shell)1110 +408 y Ft(The)35 b(shell)h(sets)g(this)f(option)h(if)g(it)g(is)f (started)h(as)g(a)g(login)g(shell)g(\(see)g(Sec-)1110 -4971 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(73\).)41 +518 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(73\).)41 b(The)28 b(v)-5 b(alue)29 b(ma)m(y)g(not)f(b)s(e)g(c)m(hanged.)630 -5121 y Fs(mailwarn)96 b Ft(If)34 b(set,)i(and)e(a)h(\014le)g(that)g +677 y Fs(mailwarn)96 b Ft(If)34 b(set,)i(and)e(a)h(\014le)g(that)g (Bash)f(is)h(c)m(hec)m(king)h(for)f(mail)g(has)f(b)s(een)g(accessed) -1110 5230 y(since)24 b(the)h(last)g(time)f(it)h(w)m(as)f(c)m(hec)m(k)m +1110 787 y(since)24 b(the)h(last)g(time)f(it)h(w)m(as)f(c)m(hec)m(k)m (ed,)k(the)c(message)h Fs("The)k(mail)h(in)f Fi(mail-)1110 -5340 y(file)40 b Fs(has)29 b(been)g(read")g Ft(is)i(displa)m(y)m(ed.)p -eop end -%%Page: 61 67 -TeXDict begin 61 66 bop 150 -116 a Ft(Chapter)30 b(4:)41 -b(Shell)30 b(Builtin)h(Commands)2069 b(61)630 299 y Fs -(no_empty_cmd_completion)1110 408 y Ft(If)30 b(set,)g(and)g(Readline)g -(is)h(b)s(eing)e(used,)h(Bash)g(will)g(not)g(attempt)i(to)e(searc)m(h) -1110 518 y(the)25 b Fs(PATH)f Ft(for)h(p)s(ossible)f(completions)j -(when)d(completion)i(is)f(attempted)h(on)1110 628 y(an)k(empt)m(y)h -(line.)630 823 y Fs(nocaseglob)1110 933 y Ft(If)38 b(set,)k(Bash)d -(matc)m(hes)g(\014lenames)g(in)f(a)h(case-insensitiv)m(e)j(fashion)c -(when)1110 1042 y(p)s(erforming)29 b(\014lename)i(expansion.)630 -1238 y Fs(nocasematch)1110 1347 y Ft(If)42 b(set,)k(Bash)d(matc)m(hes)g -(patterns)g(in)f(a)h(case-insensitiv)m(e)i(fashion)d(when)1110 -1457 y(p)s(erforming)31 b(matc)m(hing)i(while)f(executing)i -Fs(case)d Ft(or)h Fs([[)g Ft(conditional)h(com-)1110 -1567 y(mands.)630 1762 y Fs(nullglob)96 b Ft(If)23 b(set,)j(Bash)e -(allo)m(ws)g(\014lename)g(patterns)g(whic)m(h)f(matc)m(h)h(no)g -(\014les)f(to)i(expand)1110 1872 y(to)31 b(a)g(n)m(ull)f(string,)h -(rather)f(than)g(themselv)m(es.)630 2067 y Fs(progcomp)96 -b Ft(If)25 b(set,)i(the)f(programmable)g(completion)g(facilities)i -(\(see)f(Section)f(8.6)h([Pro-)1110 2177 y(grammable)45 -b(Completion],)k(page)c(117\))h(are)f(enabled.)82 b(This)44 -b(option)h(is)1110 2286 y(enabled)30 b(b)m(y)h(default.)630 -2482 y Fs(promptvars)1110 2591 y Ft(If)24 b(set,)i(prompt)d(strings)h -(undergo)f(parameter)i(expansion,)g(command)f(sub-)1110 -2701 y(stitution,)34 b(arithmetic)f(expansion,)g(and)e(quote)i(remo)m -(v)-5 b(al)33 b(after)g(b)s(eing)e(ex-)1110 2811 y(panded)39 +897 y(file)40 b Fs(has)29 b(been)g(read")g Ft(is)i(displa)m(y)m(ed.)630 +1056 y Fs(no_empty_cmd_completion)1110 1166 y Ft(If)f(set,)g(and)g +(Readline)g(is)h(b)s(eing)e(used,)h(Bash)g(will)g(not)g(attempt)i(to)e +(searc)m(h)1110 1275 y(the)25 b Fs(PATH)f Ft(for)h(p)s(ossible)f +(completions)j(when)d(completion)i(is)f(attempted)h(on)1110 +1385 y(an)k(empt)m(y)h(line.)630 1544 y Fs(nocaseglob)1110 +1654 y Ft(If)38 b(set,)k(Bash)d(matc)m(hes)g(\014lenames)g(in)f(a)h +(case-insensitiv)m(e)j(fashion)c(when)1110 1763 y(p)s(erforming)29 +b(\014lename)i(expansion.)630 1923 y Fs(nocasematch)1110 +2032 y Ft(If)42 b(set,)k(Bash)d(matc)m(hes)g(patterns)g(in)f(a)h +(case-insensitiv)m(e)i(fashion)d(when)1110 2142 y(p)s(erforming)31 +b(matc)m(hing)i(while)f(executing)i Fs(case)d Ft(or)h +Fs([[)g Ft(conditional)h(com-)1110 2252 y(mands.)630 +2411 y Fs(nullglob)96 b Ft(If)23 b(set,)j(Bash)e(allo)m(ws)g +(\014lename)g(patterns)g(whic)m(h)f(matc)m(h)h(no)g(\014les)f(to)i +(expand)1110 2521 y(to)31 b(a)g(n)m(ull)f(string,)h(rather)f(than)g +(themselv)m(es.)630 2680 y Fs(progcomp)96 b Ft(If)25 +b(set,)i(the)f(programmable)g(completion)g(facilities)i(\(see)f +(Section)f(8.6)h([Pro-)1110 2790 y(grammable)45 b(Completion],)k(page)c +(117\))h(are)f(enabled.)82 b(This)44 b(option)h(is)1110 +2899 y(enabled)30 b(b)m(y)h(default.)630 3059 y Fs(promptvars)1110 +3168 y Ft(If)24 b(set,)i(prompt)d(strings)h(undergo)f(parameter)i +(expansion,)g(command)f(sub-)1110 3278 y(stitution,)34 +b(arithmetic)f(expansion,)g(and)e(quote)i(remo)m(v)-5 +b(al)33 b(after)g(b)s(eing)e(ex-)1110 3387 y(panded)39 b(as)i(describ)s(ed)e(b)s(elo)m(w)i(\(see)g(Section)g(6.9)g([Prin)m -(ting)g(a)g(Prompt],)1110 2920 y(page)31 b(84\).)42 b(This)30 -b(option)g(is)h(enabled)f(b)m(y)g(default.)630 3116 y -Fs(restricted_shell)1110 3225 y Ft(The)40 b(shell)h(sets)g(this)g +(ting)g(a)g(Prompt],)1110 3497 y(page)31 b(84\).)42 b(This)30 +b(option)g(is)h(enabled)f(b)m(y)g(default.)630 3656 y +Fs(restricted_shell)1110 3766 y Ft(The)40 b(shell)h(sets)g(this)g (option)g(if)g(it)h(is)e(started)i(in)e(restricted)i(mo)s(de)e(\(see) -1110 3335 y(Section)c(6.10)g([The)f(Restricted)g(Shell],)i(page)e +1110 3875 y(Section)c(6.10)g([The)f(Restricted)g(Shell],)i(page)e (86\).)56 b(The)34 b(v)-5 b(alue)35 b(ma)m(y)h(not)1110 -3444 y(b)s(e)c(c)m(hanged.)49 b(This)32 b(is)h(not)h(reset)f(when)f -(the)h(startup)g(\014les)f(are)i(executed,)1110 3554 +3985 y(b)s(e)c(c)m(hanged.)49 b(This)32 b(is)h(not)h(reset)f(when)f +(the)h(startup)g(\014les)f(are)i(executed,)1110 4095 y(allo)m(wing)k(the)e(startup)f(\014les)h(to)g(disco)m(v)m(er)h -(whether)f(or)f(not)i(a)f(shell)g(is)g(re-)1110 3664 -y(stricted.)630 3859 y Fs(shift_verbose)1110 3969 y Ft(If)g(this)g(is)g +(whether)f(or)f(not)i(a)f(shell)g(is)g(re-)1110 4204 +y(stricted.)630 4364 y Fs(shift_verbose)1110 4473 y Ft(If)g(this)g(is)g (set,)j(the)d Fs(shift)f Ft(builtin)h(prin)m(ts)f(an)h(error)g(message) -i(when)d(the)1110 4078 y(shift)30 b(coun)m(t)h(exceeds)g(the)g(n)m(um)m -(b)s(er)e(of)h(p)s(ositional)i(parameters.)630 4274 y -Fs(sourcepath)1110 4383 y Ft(If)22 b(set,)j(the)e Fs(source)e +i(when)d(the)1110 4583 y(shift)30 b(coun)m(t)h(exceeds)g(the)g(n)m(um)m +(b)s(er)e(of)h(p)s(ositional)i(parameters.)630 4742 y +Fs(sourcepath)1110 4852 y Ft(If)22 b(set,)j(the)e Fs(source)e Ft(builtin)h(uses)g(the)h(v)-5 b(alue)23 b(of)g Fs(PATH)e -Ft(to)j(\014nd)d(the)h(directory)1110 4493 y(con)m(taining)29 +Ft(to)j(\014nd)d(the)h(directory)1110 4961 y(con)m(taining)29 b(the)e(\014le)h(supplied)e(as)h(an)g(argumen)m(t.)40 -b(This)27 b(option)h(is)f(enabled)1110 4603 y(b)m(y)j(default.)630 -4798 y Fs(xpg_echo)96 b Ft(If)31 b(set,)h(the)g Fs(echo)e +b(This)27 b(option)h(is)f(enabled)1110 5071 y(b)m(y)j(default.)630 +5230 y Fs(xpg_echo)96 b Ft(If)31 b(set,)h(the)g Fs(echo)e Ft(builtin)h(expands)f(bac)m(kslash-escap)s(e)j(sequences)f(b)m(y)f -(de-)1110 4908 y(fault.)630 5103 y(The)c(return)f(status)i(when)f -(listing)h(options)g(is)f(zero)i(if)e(all)i Fq(optnames)i -Ft(are)d(enabled,)g(non-)630 5213 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 5322 y(unless)30 b(an)g Fq(optname)36 -b Ft(is)30 b(not)h(a)g(v)-5 b(alid)30 b(shell)h(option.)p -eop end +(de-)1110 5340 y(fault.)p eop end %%Page: 62 68 TeXDict begin 62 67 bop 150 -116 a Ft(62)2572 b(Bash)31 -b(Reference)g(Man)m(ual)150 299 y Fr(4.4)68 b(Sp)t(ecial)45 -b(Builtins)150 458 y Ft(F)-8 b(or)35 b(historical)h(reasons,)g(the)e -Fl(posix)g Ft(standard)f(has)i(classi\014ed)f(sev)m(eral)i(builtin)e -(commands)g(as)h Fk(sp)-5 b(e-)150 568 y(cial)p Ft(.)47 -b(When)33 b(Bash)f(is)h(executing)g(in)f Fl(posix)g Ft(mo)s(de,)h(the)g -(sp)s(ecial)g(builtins)e(di\013er)i(from)f(other)g(builtin)150 -677 y(commands)e(in)g(three)h(resp)s(ects:)199 812 y(1.)61 -b(Sp)s(ecial)31 b(builtins)e(are)i(found)e(b)s(efore)h(shell)h -(functions)f(during)f(command)h(lo)s(okup.)199 946 y(2.)61 +b(Reference)g(Man)m(ual)630 299 y(The)c(return)f(status)i(when)f +(listing)h(options)g(is)f(zero)i(if)e(all)i Fq(optnames)i +Ft(are)d(enabled,)g(non-)630 408 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 518 y(unless)30 b(an)g Fq(optname)36 +b Ft(is)30 b(not)h(a)g(v)-5 b(alid)30 b(shell)h(option.)150 +751 y Fr(4.4)68 b(Sp)t(ecial)45 b(Builtins)150 910 y +Ft(F)-8 b(or)35 b(historical)h(reasons,)g(the)e Fl(posix)g +Ft(standard)f(has)i(classi\014ed)f(sev)m(eral)i(builtin)e(commands)g +(as)h Fk(sp)-5 b(e-)150 1020 y(cial)p Ft(.)47 b(When)33 +b(Bash)f(is)h(executing)g(in)f Fl(posix)g Ft(mo)s(de,)h(the)g(sp)s +(ecial)g(builtins)e(di\013er)i(from)f(other)g(builtin)150 +1129 y(commands)e(in)g(three)h(resp)s(ects:)199 1264 +y(1.)61 b(Sp)s(ecial)31 b(builtins)e(are)i(found)e(b)s(efore)h(shell)h +(functions)f(during)f(command)h(lo)s(okup.)199 1398 y(2.)61 b(If)30 b(a)h(sp)s(ecial)g(builtin)f(returns)f(an)h(error)g(status,)h -(a)g(non-in)m(teractiv)m(e)i(shell)d(exits.)199 1081 +(a)g(non-in)m(teractiv)m(e)i(shell)d(exits.)199 1533 y(3.)61 b(Assignmen)m(t)30 b(statemen)m(ts)h(preceding)f(the)f(command) g(sta)m(y)i(in)e(e\013ect)i(in)e(the)h(shell)f(en)m(vironmen)m(t)330 -1191 y(after)i(the)f(command)h(completes.)275 1350 y(When)36 +1642 y(after)i(the)f(command)h(completes.)275 1802 y(When)36 b(Bash)g(is)h(not)f(executing)i(in)e Fl(posix)f Ft(mo)s(de,)j(these)f (builtins)f(b)s(eha)m(v)m(e)h(no)f(di\013eren)m(tly)h(than)150 -1460 y(the)31 b(rest)f(of)h(the)f(Bash)h(builtin)e(commands.)41 +1911 y(the)31 b(rest)f(of)h(the)f(Bash)h(builtin)e(commands.)41 b(The)30 b(Bash)g Fl(posix)g Ft(mo)s(de)g(is)g(describ)s(ed)f(in)h -(Section)h(6.11)150 1569 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g(86.)275 -1704 y(These)f(are)g(the)h Fl(posix)f Ft(sp)s(ecial)h(builtins:)390 -1838 y Fs(break)46 b(:)i(.)f(continue)f(eval)g(exec)h(exit)g(export)f -(readonly)f(return)h(set)390 1948 y(shift)g(trap)h(unset)p +(Section)h(6.11)150 2021 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g(86.)275 +2155 y(These)f(are)g(the)h Fl(posix)f Ft(sp)s(ecial)h(builtins:)390 +2290 y Fs(break)46 b(:)i(.)f(continue)f(eval)g(exec)h(exit)g(export)f +(readonly)f(return)h(set)390 2399 y(shift)g(trap)h(unset)p eop end %%Page: 63 69 TeXDict begin 63 68 bop 150 -116 a Ft(Chapter)30 b(5:)41 @@ -15345,7 +15354,7 @@ b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(47)150 4507 y Fe(enable)17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:) f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g -(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(47)150 4595 y Fe(eval)23 +(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(48)150 4595 y Fe(eval)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:) h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(38)150 4682 y @@ -15358,7 +15367,7 @@ g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(38)150 4857 y Fe(export)17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:) f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 -b Fb(38)150 5110 y Fr(F)150 5227 y Fe(fc)8 b Fc(:)14 +b Fb(39)150 5110 y Fr(F)150 5227 y Fe(fc)8 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:) g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35 b Fb(123)150 5314 @@ -15371,7 +15380,7 @@ g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(39)2025 1250 y Fr(H)2025 1370 y Fe(hash)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:) -h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(39)2025 1459 y Fe(help)23 +h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(40)2025 1459 y Fe(help)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:) g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(48)2025 1549 @@ -15394,7 +15403,7 @@ g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(48)2025 2856 y Fe(logout)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:) f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 -b Fb(48)2025 3118 y Fr(M)2025 3238 y Fe(mapfile)15 b +b Fb(49)2025 3118 y Fr(M)2025 3238 y Fe(mapfile)15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:) h(:)f(:)g(:)g(:)41 b Fb(49)2025 3500 y Fr(P)2025 3620 @@ -15428,7 +15437,7 @@ b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(53)2025 4991 y Fe(shift)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:) -g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(40)2025 +g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(41)2025 5080 y Fe(shopt)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:) g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b diff --git a/doc/bashref.texi b/doc/bashref.texi index 611d928d..5888c417 100644 --- a/doc/bashref.texi +++ b/doc/bashref.texi @@ -1765,9 +1765,13 @@ If @var{length} is omitted, expands to the substring of (@pxref{Shell Arithmetic}). This is referred to as Substring Expansion. -@var{length} must evaluate to a number greater than or equal to zero. If @var{offset} evaluates to a number less than zero, the value is used as an offset from the end of the value of @var{parameter}. +If @var{length} evaluates to a number less than zero, and @var{parameter} +is not @samp{@@} and not an indexed or associative array, it is interpreted +as an offset from the end of the value of @var{parameter} rather than +a number of characters, and the expansion is the characters between the +two offsets. If @var{parameter} is @samp{@@}, the result is @var{length} positional parameters beginning at @var{offset}. If @var{parameter} is an indexed array name subscripted @@ -4505,6 +4509,13 @@ changes its behavior to that of version 4.0 with respect to locale-specific string comparison when using the conditional command's < and > operators and the effect of interrupting a command list. +@item compat41 +If set, Bash, when in posix mode, treats a single quote in a double-quoted +parameter expansion as a special character. The single quotes must match +(an even number) and the characters between the single quotes are considered +quoted. This is the behavior of @sc{posix} mode through version 4.1. +The default Bash behavior remains as in previous versions. + @item dirspell If set, Bash attempts spelling correction on directory names during word completion @@ -6197,8 +6208,11 @@ name[@var{subscript}]=@var{value} @noindent The @var{subscript} -is treated as an arithmetic expression that must evaluate to a number -greater than or equal to zero. To explicitly declare an array, use +is treated as an arithmetic expression that must evaluate to a number. +If @var{subscript} evaluates to a number less than zero, it is used as +an offset from one greater than the array's maximum index (so a subcript +of -1 refers to the last element of the array). +To explicitly declare an array, use @example declare -a @var{name} @end example diff --git a/doc/bashref.texi~ b/doc/bashref.texi~ index 69266d09..14e82bab 100644 --- a/doc/bashref.texi~ +++ b/doc/bashref.texi~ @@ -1765,9 +1765,13 @@ If @var{length} is omitted, expands to the substring of (@pxref{Shell Arithmetic}). This is referred to as Substring Expansion. -@var{length} must evaluate to a number greater than or equal to zero. If @var{offset} evaluates to a number less than zero, the value is used as an offset from the end of the value of @var{parameter}. +If @var{length} evaluates to a number less than zero, and @var{parameter} +is not @samp{@@} and not an indexed or associative array, it is interpreted +as an offset from the end of the value of @var{parameter} rather than +a number of characters, and the expansion is the characters between the +two offsets. If @var{parameter} is @samp{@@}, the result is @var{length} positional parameters beginning at @var{offset}. If @var{parameter} is an indexed array name subscripted @@ -2931,7 +2935,7 @@ The return status is zero unless @var{n} is not greater than or equal to 1. @item cd @btindex cd @example -cd [-L|-P] [@var{directory}] +cd [-L|[-P [-e]]] [@var{directory}] @end example Change the current working directory to @var{directory}. If @var{directory} is not given, the value of the @env{HOME} shell @@ -2941,6 +2945,10 @@ If @var{directory} begins with a slash, @env{CDPATH} is not used. The @option{-P} option means to not follow symbolic links; symbolic links are followed by default or with the @option{-L} option. +If the @option{-e} option is supplied with @option{-P} +and the current working directory cannot be successfully determined +after a successful directory change, @code{cd} will return an unsuccessful +status. If @var{directory} is @samp{-}, it is equivalent to @env{$OLDPWD}. If a non-empty directory name from @env{CDPATH} is used, or if @@ -4501,6 +4509,12 @@ changes its behavior to that of version 4.0 with respect to locale-specific string comparison when using the conditional command's < and > operators and the effect of interrupting a command list. +@item compat41 +If set, Bash, when in posix mode, treats a single quote in a double-quoted +parameter expansion as a special character. The single quotes must match +(an even number) and the characters between the single quotes are considered +quoted. This is the behavior of @sc{posix} mode through version 4.1. + @item dirspell If set, Bash attempts spelling correction on directory names during word completion @@ -6193,8 +6207,11 @@ name[@var{subscript}]=@var{value} @noindent The @var{subscript} -is treated as an arithmetic expression that must evaluate to a number -greater than or equal to zero. To explicitly declare an array, use +is treated as an arithmetic expression that must evaluate to a number. +If @var{subscript} evaluates to a number less than zero, it is used as +an offset from one greater than the array's maximum index (so a subcript +of -1 refers to the last element of the array). +To explicitly declare an array, use @example declare -a @var{name} @end example diff --git a/doc/builtins.0 b/doc/builtins.0 index bb908243..1841c582 100644 --- a/doc/builtins.0 +++ b/doc/builtins.0 @@ -140,7 +140,7 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS routine call or _e_x_p_r does not correspond to a valid position in the call stack. - ccdd [--LL||--PP] [_d_i_r] + ccdd [--LL|[--PP [--ee]]] [_d_i_r] Change the current directory to _d_i_r. The variable HHOOMMEE is the default _d_i_r. The variable CCDDPPAATTHH defines the search path for the directory containing _d_i_r. Alternative directory names in @@ -150,104 +150,107 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS option says to use the physical directory structure instead of following symbolic links (see also the --PP option to the sseett builtin command); the --LL option forces symbolic links to be fol- - lowed. An argument of -- is equivalent to $$OOLLDDPPWWDD. If a non- - empty directory name from CCDDPPAATTHH is used, or if -- is the first - argument, and the directory change is successful, the absolute - pathname of the new working directory is written to the standard - output. The return value is true if the directory was success- + lowed. If the --ee option is supplied with --PP, and the current + working directory cannot be successfully determined after a suc- + cessful directory change, ccdd will return an unsuccessful status. + An argument of -- is equivalent to $$OOLLDDPPWWDD. If a non-empty + directory name from CCDDPPAATTHH is used, or if -- is the first argu- + ment, and the directory change is successful, the absolute path- + name of the new working directory is written to the standard + output. The return value is true if the directory was success- fully changed; false otherwise. ccoommmmaanndd [--ppVVvv] _c_o_m_m_a_n_d [_a_r_g ...] - Run _c_o_m_m_a_n_d with _a_r_g_s suppressing the normal shell function - lookup. Only builtin commands or commands found in the PPAATTHH are - executed. If the --pp option is given, the search for _c_o_m_m_a_n_d is - performed using a default value for PPAATTHH that is guaranteed to - find all of the standard utilities. If either the --VV or --vv + Run _c_o_m_m_a_n_d with _a_r_g_s suppressing the normal shell function + lookup. Only builtin commands or commands found in the PPAATTHH are + executed. If the --pp option is given, the search for _c_o_m_m_a_n_d is + performed using a default value for PPAATTHH that is guaranteed to + find all of the standard utilities. If either the --VV or --vv option is supplied, a description of _c_o_m_m_a_n_d is printed. The --vv - option causes a single word indicating the command or file name + option causes a single word indicating the command or file name used to invoke _c_o_m_m_a_n_d to be displayed; the --VV option produces a - more verbose description. If the --VV or --vv option is supplied, - the exit status is 0 if _c_o_m_m_a_n_d was found, and 1 if not. If + more verbose description. If the --VV or --vv option is supplied, + the exit status is 0 if _c_o_m_m_a_n_d was found, and 1 if not. If neither option is supplied and an error occurred or _c_o_m_m_a_n_d can- - not be found, the exit status is 127. Otherwise, the exit sta- + not be found, the exit status is 127. Otherwise, the exit sta- tus of the ccoommmmaanndd builtin is the exit status of _c_o_m_m_a_n_d. ccoommppggeenn [_o_p_t_i_o_n] [_w_o_r_d] - Generate possible completion matches for _w_o_r_d according to the - _o_p_t_i_o_ns, which may be any option accepted by the ccoommpplleettee - builtin with the exception of --pp and --rr, and write the matches - to the standard output. When using the --FF or --CC options, the - various shell variables set by the programmable completion + Generate possible completion matches for _w_o_r_d according to the + _o_p_t_i_o_ns, which may be any option accepted by the ccoommpplleettee + builtin with the exception of --pp and --rr, and write the matches + to the standard output. When using the --FF or --CC options, the + various shell variables set by the programmable completion facilities, while available, will not have useful values. - The matches will be generated in the same way as if the pro- - grammable completion code had generated them directly from a + The matches will be generated in the same way as if the pro- + grammable completion code had generated them directly from a completion specification with the same flags. If _w_o_r_d is speci- fied, only those completions matching _w_o_r_d will be displayed. - The return value is true unless an invalid option is supplied, + The return value is true unless an invalid option is supplied, or no matches were generated. - ccoommpplleettee [--aabbccddeeffggjjkkssuuvv] [--oo _c_o_m_p_-_o_p_t_i_o_n] [--DDEE] [--AA _a_c_t_i_o_n] [--GG _g_l_o_b_- + ccoommpplleettee [--aabbccddeeffggjjkkssuuvv] [--oo _c_o_m_p_-_o_p_t_i_o_n] [--DDEE] [--AA _a_c_t_i_o_n] [--GG _g_l_o_b_- _p_a_t] [--WW _w_o_r_d_l_i_s_t] [--FF _f_u_n_c_t_i_o_n] [--CC _c_o_m_m_a_n_d] [--XX _f_i_l_t_e_r_p_a_t] [--PP _p_r_e_f_i_x] [--SS _s_u_f_f_i_x] _n_a_m_e [_n_a_m_e _._._.] ccoommpplleettee --pprr [--DDEE] [_n_a_m_e ...] - Specify how arguments to each _n_a_m_e should be completed. If the - --pp option is supplied, or if no options are supplied, existing - completion specifications are printed in a way that allows them + Specify how arguments to each _n_a_m_e should be completed. If the + --pp option is supplied, or if no options are supplied, existing + completion specifications are printed in a way that allows them to be reused as input. The --rr option removes a completion spec- - ification for each _n_a_m_e, or, if no _n_a_m_es are supplied, all com- + ification for each _n_a_m_e, or, if no _n_a_m_es are supplied, all com- pletion specifications. The --DD option indicates that the - remaining options and actions should apply to the ``default'' - command completion; that is, completion attempted on a command - for which no completion has previously been defined. The --EE - option indicates that the remaining options and actions should - apply to ``empty'' command completion; that is, completion + remaining options and actions should apply to the ``default'' + command completion; that is, completion attempted on a command + for which no completion has previously been defined. The --EE + option indicates that the remaining options and actions should + apply to ``empty'' command completion; that is, completion attempted on a blank line. - The process of applying these completion specifications when - word completion is attempted is described above under PPrroo-- + The process of applying these completion specifications when + word completion is attempted is described above under PPrroo-- ggrraammmmaabbllee CCoommpplleettiioonn. - Other options, if specified, have the following meanings. The - arguments to the --GG, --WW, and --XX options (and, if necessary, the - --PP and --SS options) should be quoted to protect them from expan- + Other options, if specified, have the following meanings. The + arguments to the --GG, --WW, and --XX options (and, if necessary, the + --PP and --SS options) should be quoted to protect them from expan- sion before the ccoommpplleettee builtin is invoked. --oo _c_o_m_p_-_o_p_t_i_o_n - The _c_o_m_p_-_o_p_t_i_o_n controls several aspects of the comp- - spec's behavior beyond the simple generation of comple- + The _c_o_m_p_-_o_p_t_i_o_n controls several aspects of the comp- + spec's behavior beyond the simple generation of comple- tions. _c_o_m_p_-_o_p_t_i_o_n may be one of: bbaasshhddeeffaauulltt Perform the rest of the default bbaasshh completions if the compspec generates no matches. - ddeeffaauulltt Use readline's default filename completion if + ddeeffaauulltt Use readline's default filename completion if the compspec generates no matches. ddiirrnnaammeess - Perform directory name completion if the comp- + Perform directory name completion if the comp- spec generates no matches. ffiilleennaammeess - Tell readline that the compspec generates file- - names, so it can perform any filename-specific - processing (like adding a slash to directory - names, quoting special characters, or suppress- - ing trailing spaces). Intended to be used with + Tell readline that the compspec generates file- + names, so it can perform any filename-specific + processing (like adding a slash to directory + names, quoting special characters, or suppress- + ing trailing spaces). Intended to be used with shell functions. - nnoossppaaccee Tell readline not to append a space (the - default) to words completed at the end of the + nnoossppaaccee Tell readline not to append a space (the + default) to words completed at the end of the line. pplluussddiirrss - After any matches defined by the compspec are - generated, directory name completion is - attempted and any matches are added to the + After any matches defined by the compspec are + generated, directory name completion is + attempted and any matches are added to the results of the other actions. --AA _a_c_t_i_o_n - The _a_c_t_i_o_n may be one of the following to generate a + The _a_c_t_i_o_n may be one of the following to generate a list of possible completions: aalliiaass Alias names. May also be specified as --aa. aarrrraayyvvaarr Array variable names. bbiinnddiinngg RReeaaddlliinnee key binding names. - bbuuiillttiinn Names of shell builtin commands. May also be + bbuuiillttiinn Names of shell builtin commands. May also be specified as --bb. ccoommmmaanndd Command names. May also be specified as --cc. ddiirreeccttoorryy @@ -255,7 +258,7 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS ddiissaabblleedd Names of disabled shell builtins. eennaabblleedd Names of enabled shell builtins. - eexxppoorrtt Names of exported shell variables. May also be + eexxppoorrtt Names of exported shell variables. May also be specified as --ee. ffiillee File names. May also be specified as --ff. ffuunnccttiioonn @@ -264,17 +267,17 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS hheellppttooppiicc Help topics as accepted by the hheellpp builtin. hhoossttnnaammee - Hostnames, as taken from the file specified by + Hostnames, as taken from the file specified by the HHOOSSTTFFIILLEE shell variable. - jjoobb Job names, if job control is active. May also + jjoobb Job names, if job control is active. May also be specified as --jj. - kkeeyywwoorrdd Shell reserved words. May also be specified as + kkeeyywwoorrdd Shell reserved words. May also be specified as --kk. rruunnnniinngg Names of running jobs, if job control is active. sseerrvviiccee Service names. May also be specified as --ss. - sseettoopptt Valid arguments for the --oo option to the sseett + sseettoopptt Valid arguments for the --oo option to the sseett builtin. - sshhoopptt Shell option names as accepted by the sshhoopptt + sshhoopptt Shell option names as accepted by the sshhoopptt builtin. ssiiggnnaall Signal names. ssttooppppeedd Names of stopped jobs, if job control is active. @@ -283,173 +286,173 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS Names of all shell variables. May also be spec- ified as --vv. --CC _c_o_m_m_a_n_d - _c_o_m_m_a_n_d is executed in a subshell environment, and its + _c_o_m_m_a_n_d is executed in a subshell environment, and its output is used as the possible completions. --FF _f_u_n_c_t_i_o_n - The shell function _f_u_n_c_t_i_o_n is executed in the current - shell environment. When it finishes, the possible com- - pletions are retrieved from the value of the CCOOMMPPRREEPPLLYY + The shell function _f_u_n_c_t_i_o_n is executed in the current + shell environment. When it finishes, the possible com- + pletions are retrieved from the value of the CCOOMMPPRREEPPLLYY array variable. --GG _g_l_o_b_p_a_t - The pathname expansion pattern _g_l_o_b_p_a_t is expanded to + The pathname expansion pattern _g_l_o_b_p_a_t is expanded to generate the possible completions. --PP _p_r_e_f_i_x - _p_r_e_f_i_x is added at the beginning of each possible com- + _p_r_e_f_i_x is added at the beginning of each possible com- pletion after all other options have been applied. --SS _s_u_f_f_i_x _s_u_f_f_i_x is appended to each possible completion after all other options have been applied. --WW _w_o_r_d_l_i_s_t - The _w_o_r_d_l_i_s_t is split using the characters in the IIFFSS - special variable as delimiters, and each resultant word - is expanded. The possible completions are the members - of the resultant list which match the word being com- + The _w_o_r_d_l_i_s_t is split using the characters in the IIFFSS + special variable as delimiters, and each resultant word + is expanded. The possible completions are the members + of the resultant list which match the word being com- pleted. --XX _f_i_l_t_e_r_p_a_t - _f_i_l_t_e_r_p_a_t is a pattern as used for pathname expansion. + _f_i_l_t_e_r_p_a_t is a pattern as used for pathname expansion. It is applied to the list of possible completions gener- - ated by the preceding options and arguments, and each - completion matching _f_i_l_t_e_r_p_a_t is removed from the list. - A leading !! in _f_i_l_t_e_r_p_a_t negates the pattern; in this - case, any completion not matching _f_i_l_t_e_r_p_a_t is removed. - - The return value is true unless an invalid option is supplied, - an option other than --pp or --rr is supplied without a _n_a_m_e argu- - ment, an attempt is made to remove a completion specification + ated by the preceding options and arguments, and each + completion matching _f_i_l_t_e_r_p_a_t is removed from the list. + A leading !! in _f_i_l_t_e_r_p_a_t negates the pattern; in this + case, any completion not matching _f_i_l_t_e_r_p_a_t is removed. + + The return value is true unless an invalid option is supplied, + an option other than --pp or --rr is supplied without a _n_a_m_e argu- + ment, an attempt is made to remove a completion specification for a _n_a_m_e for which no specification exists, or an error occurs adding a completion specification. ccoommppoopptt [--oo _o_p_t_i_o_n] [--DDEE] [++oo _o_p_t_i_o_n] [_n_a_m_e] Modify completion options for each _n_a_m_e according to the - _o_p_t_i_o_ns, or for the currently-executing completion if no _n_a_m_es - are supplied. If no _o_p_t_i_o_ns are given, display the completion - options for each _n_a_m_e or the current completion. The possible - values of _o_p_t_i_o_n are those valid for the ccoommpplleettee builtin - described above. The --DD option indicates that the remaining + _o_p_t_i_o_ns, or for the currently-executing completion if no _n_a_m_es + are supplied. If no _o_p_t_i_o_ns are given, display the completion + options for each _n_a_m_e or the current completion. The possible + values of _o_p_t_i_o_n are those valid for the ccoommpplleettee builtin + described above. The --DD option indicates that the remaining options should apply to the ``default'' command completion; that - is, completion attempted on a command for which no completion - has previously been defined. The --EE option indicates that the - remaining options should apply to ``empty'' command completion; + is, completion attempted on a command for which no completion + has previously been defined. The --EE option indicates that the + remaining options should apply to ``empty'' command completion; that is, completion attempted on a blank line. - The return value is true unless an invalid option is supplied, + The return value is true unless an invalid option is supplied, an attempt is made to modify the options for a _n_a_m_e for which no completion specification exists, or an output error occurs. ccoonnttiinnuuee [_n] Resume the next iteration of the enclosing ffoorr, wwhhiillee, uunnttiill, or - sseelleecctt loop. If _n is specified, resume at the _nth enclosing - loop. _n must be >= 1. If _n is greater than the number of - enclosing loops, the last enclosing loop (the ``top-level'' + sseelleecctt loop. If _n is specified, resume at the _nth enclosing + loop. _n must be >= 1. If _n is greater than the number of + enclosing loops, the last enclosing loop (the ``top-level'' loop) is resumed. The return value is 0 unless _n is not greater than or equal to 1. ddeeccllaarree [--aaAAffFFggiillrrttuuxx] [--pp] [_n_a_m_e[=_v_a_l_u_e] ...] ttyyppeesseett [--aaAAffFFggiillrrttuuxx] [--pp] [_n_a_m_e[=_v_a_l_u_e] ...] - Declare variables and/or give them attributes. If no _n_a_m_es are - given then display the values of variables. The --pp option will + Declare variables and/or give them attributes. If no _n_a_m_es are + given then display the values of variables. The --pp option will display the attributes and values of each _n_a_m_e. When --pp is used with _n_a_m_e arguments, additional options are ignored. When --pp is - supplied without _n_a_m_e arguments, it will display the attributes - and values of all variables having the attributes specified by - the additional options. If no other options are supplied with - --pp, ddeeccllaarree will display the attributes and values of all shell - variables. The --ff option will restrict the display to shell + supplied without _n_a_m_e arguments, it will display the attributes + and values of all variables having the attributes specified by + the additional options. If no other options are supplied with + --pp, ddeeccllaarree will display the attributes and values of all shell + variables. The --ff option will restrict the display to shell functions. The --FF option inhibits the display of function defi- - nitions; only the function name and attributes are printed. If - the eexxttddeebbuugg shell option is enabled using sshhoopptt, the source + nitions; only the function name and attributes are printed. If + the eexxttddeebbuugg shell option is enabled using sshhoopptt, the source file name and line number where the function is defined are dis- played as well. The --FF option implies --ff. The --gg option forces - variables to be created or modified at the global scope, even - when ddeeccllaarree is executed in a shell function. It is ignored in - all other cases. The following options can be used to restrict - output to variables with the specified attribute or to give + variables to be created or modified at the global scope, even + when ddeeccllaarree is executed in a shell function. It is ignored in + all other cases. The following options can be used to restrict + output to variables with the specified attribute or to give variables attributes: - --aa Each _n_a_m_e is an indexed array variable (see AArrrraayyss + --aa Each _n_a_m_e is an indexed array variable (see AArrrraayyss above). - --AA Each _n_a_m_e is an associative array variable (see AArrrraayyss + --AA Each _n_a_m_e is an associative array variable (see AArrrraayyss above). --ff Use function names only. --ii The variable is treated as an integer; arithmetic evalua- - tion (see AARRIITTHHMMEETTIICC EEVVAALLUUAATTIIOONN above) is performed when + tion (see AARRIITTHHMMEETTIICC EEVVAALLUUAATTIIOONN above) is performed when the variable is assigned a value. - --ll When the variable is assigned a value, all upper-case - characters are converted to lower-case. The upper-case + --ll When the variable is assigned a value, all upper-case + characters are converted to lower-case. The upper-case attribute is disabled. --rr Make _n_a_m_es readonly. These names cannot then be assigned values by subsequent assignment statements or unset. - --tt Give each _n_a_m_e the _t_r_a_c_e attribute. Traced functions - inherit the DDEEBBUUGG and RREETTUURRNN traps from the calling - shell. The trace attribute has no special meaning for + --tt Give each _n_a_m_e the _t_r_a_c_e attribute. Traced functions + inherit the DDEEBBUUGG and RREETTUURRNN traps from the calling + shell. The trace attribute has no special meaning for variables. - --uu When the variable is assigned a value, all lower-case - characters are converted to upper-case. The lower-case + --uu When the variable is assigned a value, all lower-case + characters are converted to upper-case. The lower-case attribute is disabled. - --xx Mark _n_a_m_es for export to subsequent commands via the + --xx Mark _n_a_m_es for export to subsequent commands via the environment. - Using `+' instead of `-' turns off the attribute instead, with + Using `+' instead of `-' turns off the attribute instead, with the exceptions that ++aa may not be used to destroy an array vari- - able and ++rr will not remove the readonly attribute. When used + able and ++rr will not remove the readonly attribute. When used in a function, makes each _n_a_m_e local, as with the llooccaall command, - unless the --ggPP ooppttiioonn iiss ssuupppplliieedd,, IIff aa vvaarriiaabbllee nnaammee iiss ffooll-- + unless the --ggPP ooppttiioonn iiss ssuupppplliieedd,, IIff aa vvaarriiaabbllee nnaammee iiss ffooll-- lloowweedd bbyy ==_v_a_l_u_e,, tthhee vvaalluuee ooff tthhee vvaarriiaabbllee iiss sseett ttoo _v_a_l_u_e.. TThhee - rreettuurrnn vvaalluuee iiss 00 uunnlleessss aann iinnvvaalliidd ooppttiioonn iiss eennccoouunntteerreedd,, aann - aatttteemmpptt iiss mmaaddee ttoo ddeeffiinnee aa ffuunnccttiioonn uussiinngg ````--ff ffoooo==bbaarr'''',, aann - aatttteemmpptt iiss mmaaddee ttoo aassssiiggnn aa vvaalluuee ttoo aa rreeaaddoonnllyy vvaarriiaabbllee,, aann - aatttteemmpptt iiss mmaaddee ttoo aassssiiggnn aa vvaalluuee ttoo aann aarrrraayy vvaarriiaabbllee wwiitthhoouutt - uussiinngg tthhee ccoommppoouunndd aassssiiggnnmmeenntt ssyynnttaaxx ((sseeee AArrrraayyss above), one of + rreettuurrnn vvaalluuee iiss 00 uunnlleessss aann iinnvvaalliidd ooppttiioonn iiss eennccoouunntteerreedd,, aann + aatttteemmpptt iiss mmaaddee ttoo ddeeffiinnee aa ffuunnccttiioonn uussiinngg ````--ff ffoooo==bbaarr'''',, aann + aatttteemmpptt iiss mmaaddee ttoo aassssiiggnn aa vvaalluuee ttoo aa rreeaaddoonnllyy vvaarriiaabbllee,, aann + aatttteemmpptt iiss mmaaddee ttoo aassssiiggnn aa vvaalluuee ttoo aann aarrrraayy vvaarriiaabbllee wwiitthhoouutt + uussiinngg tthhee ccoommppoouunndd aassssiiggnnmmeenntt ssyynnttaaxx ((sseeee AArrrraayyss above), one of the _n_a_m_e_s is not a valid shell variable name, an attempt is made - to turn off readonly status for a readonly variable, an attempt - is made to turn off array status for an array variable, or an + to turn off readonly status for a readonly variable, an attempt + is made to turn off array status for an array variable, or an attempt is made to display a non-existent function with --ff. ddiirrss [[++_n]] [[--_n]] [[--ccllppvv]] - Without options, displays the list of currently remembered - directories. The default display is on a single line with - directory names separated by spaces. Directories are added to - the list with the ppuusshhdd command; the ppooppdd command removes + Without options, displays the list of currently remembered + directories. The default display is on a single line with + directory names separated by spaces. Directories are added to + the list with the ppuusshhdd command; the ppooppdd command removes entries from the list. ++_n Displays the _nth entry counting from the left of the list shown by ddiirrss when invoked without options, starting with zero. - --_n Displays the _nth entry counting from the right of the + --_n Displays the _nth entry counting from the right of the list shown by ddiirrss when invoked without options, starting with zero. --cc Clears the directory stack by deleting all of the entries. - --ll Produces a longer listing; the default listing format + --ll Produces a longer listing; the default listing format uses a tilde to denote the home directory. --pp Print the directory stack with one entry per line. - --vv Print the directory stack with one entry per line, pre- + --vv Print the directory stack with one entry per line, pre- fixing each entry with its index in the stack. - The return value is 0 unless an invalid option is supplied or _n + The return value is 0 unless an invalid option is supplied or _n indexes beyond the end of the directory stack. ddiissoowwnn [--aarr] [--hh] [_j_o_b_s_p_e_c ...] - Without options, each _j_o_b_s_p_e_c is removed from the table of - active jobs. If _j_o_b_s_p_e_c is not present, and neither --aa nor --rr - is supplied, the shell's notion of the _c_u_r_r_e_n_t _j_o_b is used. If + Without options, each _j_o_b_s_p_e_c is removed from the table of + active jobs. If _j_o_b_s_p_e_c is not present, and neither --aa nor --rr + is supplied, the shell's notion of the _c_u_r_r_e_n_t _j_o_b is used. If the --hh option is given, each _j_o_b_s_p_e_c is not removed from the ta- - ble, but is marked so that SSIIGGHHUUPP is not sent to the job if the - shell receives a SSIIGGHHUUPP. If no _j_o_b_s_p_e_c is present, and neither - the --aa nor the --rr option is supplied, the _c_u_r_r_e_n_t _j_o_b is used. + ble, but is marked so that SSIIGGHHUUPP is not sent to the job if the + shell receives a SSIIGGHHUUPP. If no _j_o_b_s_p_e_c is present, and neither + the --aa nor the --rr option is supplied, the _c_u_r_r_e_n_t _j_o_b is used. If no _j_o_b_s_p_e_c is supplied, the --aa option means to remove or mark - all jobs; the --rr option without a _j_o_b_s_p_e_c argument restricts - operation to running jobs. The return value is 0 unless a _j_o_b_- + all jobs; the --rr option without a _j_o_b_s_p_e_c argument restricts + operation to running jobs. The return value is 0 unless a _j_o_b_- _s_p_e_c does not specify a valid job. eecchhoo [--nneeEE] [_a_r_g ...] - Output the _a_r_gs, separated by spaces, followed by a newline. + Output the _a_r_gs, separated by spaces, followed by a newline. The return status is always 0. If --nn is specified, the trailing - newline is suppressed. If the --ee option is given, interpreta- - tion of the following backslash-escaped characters is enabled. - The --EE option disables the interpretation of these escape char- - acters, even on systems where they are interpreted by default. - The xxppgg__eecchhoo shell option may be used to dynamically determine - whether or not eecchhoo expands these escape characters by default. - eecchhoo does not interpret ---- to mean the end of options. eecchhoo + newline is suppressed. If the --ee option is given, interpreta- + tion of the following backslash-escaped characters is enabled. + The --EE option disables the interpretation of these escape char- + acters, even on systems where they are interpreted by default. + The xxppgg__eecchhoo shell option may be used to dynamically determine + whether or not eecchhoo expands these escape characters by default. + eecchhoo does not interpret ---- to mean the end of options. eecchhoo interprets the following escape sequences: \\aa alert (bell) \\bb backspace @@ -461,190 +464,190 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS \\tt horizontal tab \\vv vertical tab \\\\ backslash - \\00_n_n_n the eight-bit character whose value is the octal value + \\00_n_n_n the eight-bit character whose value is the octal value _n_n_n (zero to three octal digits) - \\xx_H_H the eight-bit character whose value is the hexadecimal + \\xx_H_H the eight-bit character whose value is the hexadecimal value _H_H (one or two hex digits) - \\uu_H_H_H_H the Unicode (ISO/IEC 10646) character whose value is the + \\uu_H_H_H_H the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value _H_H_H_H (one to four hex digits) \\UU_H_H_H_H_H_H_H_H - the Unicode (ISO/IEC 10646) character whose value is the + the Unicode (ISO/IEC 10646) character whose value is the hexadecimal value _H_H_H_H_H_H_H_H (one to eight hex digits) eennaabbllee [--aa] [--ddnnppss] [--ff _f_i_l_e_n_a_m_e] [_n_a_m_e ...] - Enable and disable builtin shell commands. Disabling a builtin + Enable and disable builtin shell commands. Disabling a builtin allows a disk command which has the same name as a shell builtin - to be executed without specifying a full pathname, even though - the shell normally searches for builtins before disk commands. - If --nn is used, each _n_a_m_e is disabled; otherwise, _n_a_m_e_s are + to be executed without specifying a full pathname, even though + the shell normally searches for builtins before disk commands. + If --nn is used, each _n_a_m_e is disabled; otherwise, _n_a_m_e_s are enabled. For example, to use the tteesstt binary found via the PPAATTHH - instead of the shell builtin version, run ``enable -n test''. - The --ff option means to load the new builtin command _n_a_m_e from + instead of the shell builtin version, run ``enable -n test''. + The --ff option means to load the new builtin command _n_a_m_e from shared object _f_i_l_e_n_a_m_e, on systems that support dynamic loading. - The --dd option will delete a builtin previously loaded with --ff. + The --dd option will delete a builtin previously loaded with --ff. If no _n_a_m_e arguments are given, or if the --pp option is supplied, a list of shell builtins is printed. With no other option argu- - ments, the list consists of all enabled shell builtins. If --nn - is supplied, only disabled builtins are printed. If --aa is sup- - plied, the list printed includes all builtins, with an indica- - tion of whether or not each is enabled. If --ss is supplied, the - output is restricted to the POSIX _s_p_e_c_i_a_l builtins. The return - value is 0 unless a _n_a_m_e is not a shell builtin or there is an + ments, the list consists of all enabled shell builtins. If --nn + is supplied, only disabled builtins are printed. If --aa is sup- + plied, the list printed includes all builtins, with an indica- + tion of whether or not each is enabled. If --ss is supplied, the + output is restricted to the POSIX _s_p_e_c_i_a_l builtins. The return + value is 0 unless a _n_a_m_e is not a shell builtin or there is an error loading a new builtin from a shared object. eevvaall [_a_r_g ...] - The _a_r_gs are read and concatenated together into a single com- - mand. This command is then read and executed by the shell, and - its exit status is returned as the value of eevvaall. If there are + The _a_r_gs are read and concatenated together into a single com- + mand. This command is then read and executed by the shell, and + its exit status is returned as the value of eevvaall. If there are no _a_r_g_s, or only null arguments, eevvaall returns 0. eexxeecc [--ccll] [--aa _n_a_m_e] [_c_o_m_m_a_n_d [_a_r_g_u_m_e_n_t_s]] - If _c_o_m_m_a_n_d is specified, it replaces the shell. No new process - is created. The _a_r_g_u_m_e_n_t_s become the arguments to _c_o_m_m_a_n_d. If + If _c_o_m_m_a_n_d is specified, it replaces the shell. No new process + is created. The _a_r_g_u_m_e_n_t_s become the arguments to _c_o_m_m_a_n_d. If the --ll option is supplied, the shell places a dash at the begin- - ning of the zeroth argument passed to _c_o_m_m_a_n_d. This is what + ning of the zeroth argument passed to _c_o_m_m_a_n_d. This is what _l_o_g_i_n(1) does. The --cc option causes _c_o_m_m_a_n_d to be executed with - an empty environment. If --aa is supplied, the shell passes _n_a_m_e + an empty environment. If --aa is supplied, the shell passes _n_a_m_e as the zeroth argument to the executed command. If _c_o_m_m_a_n_d can- - not be executed for some reason, a non-interactive shell exits, - unless the shell option eexxeeccffaaiill is enabled, in which case it - returns failure. An interactive shell returns failure if the + not be executed for some reason, a non-interactive shell exits, + unless the shell option eexxeeccffaaiill is enabled, in which case it + returns failure. An interactive shell returns failure if the file cannot be executed. If _c_o_m_m_a_n_d is not specified, any redi- rections take effect in the current shell, and the return status - is 0. If there is a redirection error, the return status is 1. + is 0. If there is a redirection error, the return status is 1. eexxiitt [_n] - Cause the shell to exit with a status of _n. If _n is omitted, + Cause the shell to exit with a status of _n. If _n is omitted, the exit status is that of the last command executed. A trap on EEXXIITT is executed before the shell terminates. eexxppoorrtt [--ffnn] [_n_a_m_e[=_w_o_r_d]] ... eexxppoorrtt --pp - The supplied _n_a_m_e_s are marked for automatic export to the envi- - ronment of subsequently executed commands. If the --ff option is - given, the _n_a_m_e_s refer to functions. If no _n_a_m_e_s are given, or - if the --pp option is supplied, a list of all names that are - exported in this shell is printed. The --nn option causes the - export property to be removed from each _n_a_m_e. If a variable - name is followed by =_w_o_r_d, the value of the variable is set to - _w_o_r_d. eexxppoorrtt returns an exit status of 0 unless an invalid - option is encountered, one of the _n_a_m_e_s is not a valid shell + The supplied _n_a_m_e_s are marked for automatic export to the envi- + ronment of subsequently executed commands. If the --ff option is + given, the _n_a_m_e_s refer to functions. If no _n_a_m_e_s are given, or + if the --pp option is supplied, a list of all names that are + exported in this shell is printed. The --nn option causes the + export property to be removed from each _n_a_m_e. If a variable + name is followed by =_w_o_r_d, the value of the variable is set to + _w_o_r_d. eexxppoorrtt returns an exit status of 0 unless an invalid + option is encountered, one of the _n_a_m_e_s is not a valid shell variable name, or --ff is supplied with a _n_a_m_e that is not a func- tion. ffcc [--ee _e_n_a_m_e] [--llnnrr] [_f_i_r_s_t] [_l_a_s_t] ffcc --ss [_p_a_t=_r_e_p] [_c_m_d] - Fix Command. In the first form, a range of commands from _f_i_r_s_t - to _l_a_s_t is selected from the history list. _F_i_r_s_t and _l_a_s_t may - be specified as a string (to locate the last command beginning - with that string) or as a number (an index into the history + Fix Command. In the first form, a range of commands from _f_i_r_s_t + to _l_a_s_t is selected from the history list. _F_i_r_s_t and _l_a_s_t may + be specified as a string (to locate the last command beginning + with that string) or as a number (an index into the history list, where a negative number is used as an offset from the cur- rent command number). If _l_a_s_t is not specified it is set to the - current command for listing (so that ``fc -l -10'' prints the + current command for listing (so that ``fc -l -10'' prints the last 10 commands) and to _f_i_r_s_t otherwise. If _f_i_r_s_t is not spec- - ified it is set to the previous command for editing and -16 for + ified it is set to the previous command for editing and -16 for listing. - The --nn option suppresses the command numbers when listing. The - --rr option reverses the order of the commands. If the --ll option - is given, the commands are listed on standard output. Other- - wise, the editor given by _e_n_a_m_e is invoked on a file containing - those commands. If _e_n_a_m_e is not given, the value of the FFCCEEDDIITT - variable is used, and the value of EEDDIITTOORR if FFCCEEDDIITT is not set. - If neither variable is set, is used. When editing is complete, + The --nn option suppresses the command numbers when listing. The + --rr option reverses the order of the commands. If the --ll option + is given, the commands are listed on standard output. Other- + wise, the editor given by _e_n_a_m_e is invoked on a file containing + those commands. If _e_n_a_m_e is not given, the value of the FFCCEEDDIITT + variable is used, and the value of EEDDIITTOORR if FFCCEEDDIITT is not set. + If neither variable is set, is used. When editing is complete, the edited commands are echoed and executed. - In the second form, _c_o_m_m_a_n_d is re-executed after each instance - of _p_a_t is replaced by _r_e_p. A useful alias to use with this is - ``r="fc -s"'', so that typing ``r cc'' runs the last command + In the second form, _c_o_m_m_a_n_d is re-executed after each instance + of _p_a_t is replaced by _r_e_p. A useful alias to use with this is + ``r="fc -s"'', so that typing ``r cc'' runs the last command beginning with ``cc'' and typing ``r'' re-executes the last com- mand. - If the first form is used, the return value is 0 unless an - invalid option is encountered or _f_i_r_s_t or _l_a_s_t specify history - lines out of range. If the --ee option is supplied, the return + If the first form is used, the return value is 0 unless an + invalid option is encountered or _f_i_r_s_t or _l_a_s_t specify history + lines out of range. If the --ee option is supplied, the return value is the value of the last command executed or failure if an error occurs with the temporary file of commands. If the second - form is used, the return status is that of the command re-exe- - cuted, unless _c_m_d does not specify a valid history line, in + form is used, the return status is that of the command re-exe- + cuted, unless _c_m_d does not specify a valid history line, in which case ffcc returns failure. ffgg [_j_o_b_s_p_e_c] - Resume _j_o_b_s_p_e_c in the foreground, and make it the current job. + Resume _j_o_b_s_p_e_c in the foreground, and make it the current job. If _j_o_b_s_p_e_c is not present, the shell's notion of the _c_u_r_r_e_n_t _j_o_b - is used. The return value is that of the command placed into - the foreground, or failure if run when job control is disabled + is used. The return value is that of the command placed into + the foreground, or failure if run when job control is disabled or, when run with job control enabled, if _j_o_b_s_p_e_c does not spec- - ify a valid job or _j_o_b_s_p_e_c specifies a job that was started + ify a valid job or _j_o_b_s_p_e_c specifies a job that was started without job control. ggeettooppttss _o_p_t_s_t_r_i_n_g _n_a_m_e [_a_r_g_s] - ggeettooppttss is used by shell procedures to parse positional parame- - ters. _o_p_t_s_t_r_i_n_g contains the option characters to be recog- - nized; if a character is followed by a colon, the option is - expected to have an argument, which should be separated from it - by white space. The colon and question mark characters may not - be used as option characters. Each time it is invoked, ggeettooppttss - places the next option in the shell variable _n_a_m_e, initializing + ggeettooppttss is used by shell procedures to parse positional parame- + ters. _o_p_t_s_t_r_i_n_g contains the option characters to be recog- + nized; if a character is followed by a colon, the option is + expected to have an argument, which should be separated from it + by white space. The colon and question mark characters may not + be used as option characters. Each time it is invoked, ggeettooppttss + places the next option in the shell variable _n_a_m_e, initializing _n_a_m_e if it does not exist, and the index of the next argument to be processed into the variable OOPPTTIINNDD. OOPPTTIINNDD is initialized to - 1 each time the shell or a shell script is invoked. When an - option requires an argument, ggeettooppttss places that argument into - the variable OOPPTTAARRGG. The shell does not reset OOPPTTIINNDD automati- - cally; it must be manually reset between multiple calls to + 1 each time the shell or a shell script is invoked. When an + option requires an argument, ggeettooppttss places that argument into + the variable OOPPTTAARRGG. The shell does not reset OOPPTTIINNDD automati- + cally; it must be manually reset between multiple calls to ggeettooppttss within the same shell invocation if a new set of parame- ters is to be used. - When the end of options is encountered, ggeettooppttss exits with a - return value greater than zero. OOPPTTIINNDD is set to the index of + When the end of options is encountered, ggeettooppttss exits with a + return value greater than zero. OOPPTTIINNDD is set to the index of the first non-option argument, and nnaammee is set to ?. - ggeettooppttss normally parses the positional parameters, but if more + ggeettooppttss normally parses the positional parameters, but if more arguments are given in _a_r_g_s, ggeettooppttss parses those instead. - ggeettooppttss can report errors in two ways. If the first character - of _o_p_t_s_t_r_i_n_g is a colon, _s_i_l_e_n_t error reporting is used. In - normal operation diagnostic messages are printed when invalid - options or missing option arguments are encountered. If the - variable OOPPTTEERRRR is set to 0, no error messages will be dis- + ggeettooppttss can report errors in two ways. If the first character + of _o_p_t_s_t_r_i_n_g is a colon, _s_i_l_e_n_t error reporting is used. In + normal operation diagnostic messages are printed when invalid + options or missing option arguments are encountered. If the + variable OOPPTTEERRRR is set to 0, no error messages will be dis- played, even if the first character of _o_p_t_s_t_r_i_n_g is not a colon. If an invalid option is seen, ggeettooppttss places ? into _n_a_m_e and, if - not silent, prints an error message and unsets OOPPTTAARRGG. If - ggeettooppttss is silent, the option character found is placed in + not silent, prints an error message and unsets OOPPTTAARRGG. If + ggeettooppttss is silent, the option character found is placed in OOPPTTAARRGG and no diagnostic message is printed. - If a required argument is not found, and ggeettooppttss is not silent, - a question mark (??) is placed in _n_a_m_e, OOPPTTAARRGG is unset, and a - diagnostic message is printed. If ggeettooppttss is silent, then a - colon (::) is placed in _n_a_m_e and OOPPTTAARRGG is set to the option + If a required argument is not found, and ggeettooppttss is not silent, + a question mark (??) is placed in _n_a_m_e, OOPPTTAARRGG is unset, and a + diagnostic message is printed. If ggeettooppttss is silent, then a + colon (::) is placed in _n_a_m_e and OOPPTTAARRGG is set to the option character found. - ggeettooppttss returns true if an option, specified or unspecified, is + ggeettooppttss returns true if an option, specified or unspecified, is found. It returns false if the end of options is encountered or an error occurs. hhaasshh [--llrr] [--pp _f_i_l_e_n_a_m_e] [--ddtt] [_n_a_m_e] Each time hhaasshh is invoked, the full pathname of the command _n_a_m_e - is determined by searching the directories in $$PPAATTHH and remem- + is determined by searching the directories in $$PPAATTHH and remem- bered. Any previously-remembered pathname is discarded. If the --pp option is supplied, no path search is performed, and _f_i_l_e_n_a_m_e - is used as the full file name of the command. The --rr option - causes the shell to forget all remembered locations. The --dd - option causes the shell to forget the remembered location of - each _n_a_m_e. If the --tt option is supplied, the full pathname to - which each _n_a_m_e corresponds is printed. If multiple _n_a_m_e argu- - ments are supplied with --tt, the _n_a_m_e is printed before the - hashed full pathname. The --ll option causes output to be dis- + is used as the full file name of the command. The --rr option + causes the shell to forget all remembered locations. The --dd + option causes the shell to forget the remembered location of + each _n_a_m_e. If the --tt option is supplied, the full pathname to + which each _n_a_m_e corresponds is printed. If multiple _n_a_m_e argu- + ments are supplied with --tt, the _n_a_m_e is printed before the + hashed full pathname. The --ll option causes output to be dis- played in a format that may be reused as input. If no arguments - are given, or if only --ll is supplied, information about remem- - bered commands is printed. The return status is true unless a + are given, or if only --ll is supplied, information about remem- + bered commands is printed. The return status is true unless a _n_a_m_e is not found or an invalid option is supplied. hheellpp [--ddmmss] [_p_a_t_t_e_r_n] - Display helpful information about builtin commands. If _p_a_t_t_e_r_n - is specified, hheellpp gives detailed help on all commands matching - _p_a_t_t_e_r_n; otherwise help for all the builtins and shell control + Display helpful information about builtin commands. If _p_a_t_t_e_r_n + is specified, hheellpp gives detailed help on all commands matching + _p_a_t_t_e_r_n; otherwise help for all the builtins and shell control structures is printed. --dd Display a short description of each _p_a_t_t_e_r_n --mm Display the description of each _p_a_t_t_e_r_n in a manpage-like @@ -660,44 +663,44 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS hhiissttoorryy --ss _a_r_g [_a_r_g _._._.] With no options, display the command history list with line num- bers. Lines listed with a ** have been modified. An argument of - _n lists only the last _n lines. If the shell variable HHIISSTTTTIIMMEE-- - FFOORRMMAATT is set and not null, it is used as a format string for - _s_t_r_f_t_i_m_e(3) to display the time stamp associated with each dis- - played history entry. No intervening blank is printed between - the formatted time stamp and the history line. If _f_i_l_e_n_a_m_e is - supplied, it is used as the name of the history file; if not, - the value of HHIISSTTFFIILLEE is used. Options, if supplied, have the + _n lists only the last _n lines. If the shell variable HHIISSTTTTIIMMEE-- + FFOORRMMAATT is set and not null, it is used as a format string for + _s_t_r_f_t_i_m_e(3) to display the time stamp associated with each dis- + played history entry. No intervening blank is printed between + the formatted time stamp and the history line. If _f_i_l_e_n_a_m_e is + supplied, it is used as the name of the history file; if not, + the value of HHIISSTTFFIILLEE is used. Options, if supplied, have the following meanings: --cc Clear the history list by deleting all the entries. --dd _o_f_f_s_e_t Delete the history entry at position _o_f_f_s_e_t. - --aa Append the ``new'' history lines (history lines entered - since the beginning of the current bbaasshh session) to the + --aa Append the ``new'' history lines (history lines entered + since the beginning of the current bbaasshh session) to the history file. - --nn Read the history lines not already read from the history - file into the current history list. These are lines - appended to the history file since the beginning of the + --nn Read the history lines not already read from the history + file into the current history list. These are lines + appended to the history file since the beginning of the current bbaasshh session. --rr Read the contents of the history file and use them as the current history. - --ww Write the current history to the history file, overwrit- + --ww Write the current history to the history file, overwrit- ing the history file's contents. - --pp Perform history substitution on the following _a_r_g_s and - display the result on the standard output. Does not - store the results in the history list. Each _a_r_g must be + --pp Perform history substitution on the following _a_r_g_s and + display the result on the standard output. Does not + store the results in the history list. Each _a_r_g must be quoted to disable normal history expansion. - --ss Store the _a_r_g_s in the history list as a single entry. - The last command in the history list is removed before + --ss Store the _a_r_g_s in the history list as a single entry. + The last command in the history list is removed before the _a_r_g_s are added. - If the HHIISSTTTTIIMMEEFFOORRMMAATT variable is set, the time stamp informa- - tion associated with each history entry is written to the his- - tory file, marked with the history comment character. When the - history file is read, lines beginning with the history comment - character followed immediately by a digit are interpreted as + If the HHIISSTTTTIIMMEEFFOORRMMAATT variable is set, the time stamp informa- + tion associated with each history entry is written to the his- + tory file, marked with the history comment character. When the + history file is read, lines beginning with the history comment + character followed immediately by a digit are interpreted as timestamps for the previous history line. The return value is 0 - unless an invalid option is encountered, an error occurs while - reading or writing the history file, an invalid _o_f_f_s_e_t is sup- + unless an invalid option is encountered, an error occurs while + reading or writing the history file, an invalid _o_f_f_s_e_t is sup- plied as an argument to --dd, or the history expansion supplied as an argument to --pp fails. @@ -706,195 +709,195 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS The first form lists the active jobs. The options have the fol- lowing meanings: --ll List process IDs in addition to the normal information. - --nn Display information only about jobs that have changed - status since the user was last notified of their status. - --pp List only the process ID of the job's process group + --nn Display information only about jobs that have changed + status since the user was last notified of their status. + --pp List only the process ID of the job's process group leader. --rr Restrict output to running jobs. --ss Restrict output to stopped jobs. - If _j_o_b_s_p_e_c is given, output is restricted to information about - that job. The return status is 0 unless an invalid option is + If _j_o_b_s_p_e_c is given, output is restricted to information about + that job. The return status is 0 unless an invalid option is encountered or an invalid _j_o_b_s_p_e_c is supplied. If the --xx option is supplied, jjoobbss replaces any _j_o_b_s_p_e_c found in - _c_o_m_m_a_n_d or _a_r_g_s with the corresponding process group ID, and + _c_o_m_m_a_n_d or _a_r_g_s with the corresponding process group ID, and executes _c_o_m_m_a_n_d passing it _a_r_g_s, returning its exit status. kkiillll [--ss _s_i_g_s_p_e_c | --nn _s_i_g_n_u_m | --_s_i_g_s_p_e_c] [_p_i_d | _j_o_b_s_p_e_c] ... kkiillll --ll [_s_i_g_s_p_e_c | _e_x_i_t___s_t_a_t_u_s] - Send the signal named by _s_i_g_s_p_e_c or _s_i_g_n_u_m to the processes - named by _p_i_d or _j_o_b_s_p_e_c. _s_i_g_s_p_e_c is either a case-insensitive - signal name such as SSIIGGKKIILLLL (with or without the SSIIGG prefix) or - a signal number; _s_i_g_n_u_m is a signal number. If _s_i_g_s_p_e_c is not - present, then SSIIGGTTEERRMM is assumed. An argument of --ll lists the - signal names. If any arguments are supplied when --ll is given, - the names of the signals corresponding to the arguments are + Send the signal named by _s_i_g_s_p_e_c or _s_i_g_n_u_m to the processes + named by _p_i_d or _j_o_b_s_p_e_c. _s_i_g_s_p_e_c is either a case-insensitive + signal name such as SSIIGGKKIILLLL (with or without the SSIIGG prefix) or + a signal number; _s_i_g_n_u_m is a signal number. If _s_i_g_s_p_e_c is not + present, then SSIIGGTTEERRMM is assumed. An argument of --ll lists the + signal names. If any arguments are supplied when --ll is given, + the names of the signals corresponding to the arguments are listed, and the return status is 0. The _e_x_i_t___s_t_a_t_u_s argument to - --ll is a number specifying either a signal number or the exit - status of a process terminated by a signal. kkiillll returns true - if at least one signal was successfully sent, or false if an + --ll is a number specifying either a signal number or the exit + status of a process terminated by a signal. kkiillll returns true + if at least one signal was successfully sent, or false if an error occurs or an invalid option is encountered. lleett _a_r_g [_a_r_g ...] Each _a_r_g is an arithmetic expression to be evaluated (see AARRIITTHH-- - MMEETTIICC EEVVAALLUUAATTIIOONN above). If the last _a_r_g evaluates to 0, lleett + MMEETTIICC EEVVAALLUUAATTIIOONN above). If the last _a_r_g evaluates to 0, lleett returns 1; 0 is returned otherwise. llooccaall [_o_p_t_i_o_n] [_n_a_m_e[=_v_a_l_u_e] ...] - For each argument, a local variable named _n_a_m_e is created, and - assigned _v_a_l_u_e. The _o_p_t_i_o_n can be any of the options accepted + For each argument, a local variable named _n_a_m_e is created, and + assigned _v_a_l_u_e. The _o_p_t_i_o_n can be any of the options accepted by ddeeccllaarree. When llooccaall is used within a function, it causes the - variable _n_a_m_e to have a visible scope restricted to that func- + variable _n_a_m_e to have a visible scope restricted to that func- tion and its children. With no operands, llooccaall writes a list of - local variables to the standard output. It is an error to use + local variables to the standard output. It is an error to use llooccaall when not within a function. The return status is 0 unless - llooccaall is used outside a function, an invalid _n_a_m_e is supplied, + llooccaall is used outside a function, an invalid _n_a_m_e is supplied, or _n_a_m_e is a readonly variable. llooggoouutt Exit a login shell. - mmaappffiillee [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u_n_t] [--tt] [--uu _f_d] [--CC _c_a_l_l_b_a_c_k] + mmaappffiillee [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u_n_t] [--tt] [--uu _f_d] [--CC _c_a_l_l_b_a_c_k] [--cc _q_u_a_n_t_u_m] [_a_r_r_a_y] - rreeaaddaarrrraayy [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u_n_t] [--tt] [--uu _f_d] [--CC _c_a_l_l_b_a_c_k] + rreeaaddaarrrraayy [--nn _c_o_u_n_t] [--OO _o_r_i_g_i_n] [--ss _c_o_u_n_t] [--tt] [--uu _f_d] [--CC _c_a_l_l_b_a_c_k] [--cc _q_u_a_n_t_u_m] [_a_r_r_a_y] - Read lines from the standard input into the indexed array vari- - able _a_r_r_a_y, or from file descriptor _f_d if the --uu option is sup- - plied. The variable MMAAPPFFIILLEE is the default _a_r_r_a_y. Options, if + Read lines from the standard input into the indexed array vari- + able _a_r_r_a_y, or from file descriptor _f_d if the --uu option is sup- + plied. The variable MMAAPPFFIILLEE is the default _a_r_r_a_y. Options, if supplied, have the following meanings: - --nn Copy at most _c_o_u_n_t lines. If _c_o_u_n_t is 0, all lines are + --nn Copy at most _c_o_u_n_t lines. If _c_o_u_n_t is 0, all lines are copied. - --OO Begin assigning to _a_r_r_a_y at index _o_r_i_g_i_n. The default + --OO Begin assigning to _a_r_r_a_y at index _o_r_i_g_i_n. The default index is 0. --ss Discard the first _c_o_u_n_t lines read. --tt Remove a trailing newline from each line read. - --uu Read lines from file descriptor _f_d instead of the stan- + --uu Read lines from file descriptor _f_d instead of the stan- dard input. - --CC Evaluate _c_a_l_l_b_a_c_k each time _q_u_a_n_t_u_m lines are read. The + --CC Evaluate _c_a_l_l_b_a_c_k each time _q_u_a_n_t_u_m lines are read. The --cc option specifies _q_u_a_n_t_u_m. - --cc Specify the number of lines read between each call to + --cc Specify the number of lines read between each call to _c_a_l_l_b_a_c_k. - If --CC is specified without --cc, the default quantum is 5000. + If --CC is specified without --cc, the default quantum is 5000. When _c_a_l_l_b_a_c_k is evaluated, it is supplied the index of the next array element to be assigned and the line to be assigned to that - element as additional arguments. _c_a_l_l_b_a_c_k is evaluated after + element as additional arguments. _c_a_l_l_b_a_c_k is evaluated after the line is read but before the array element is assigned. - If not supplied with an explicit origin, mmaappffiillee will clear + If not supplied with an explicit origin, mmaappffiillee will clear _a_r_r_a_y before assigning to it. - mmaappffiillee returns successfully unless an invalid option or option - argument is supplied, _a_r_r_a_y is invalid or unassignable, or if + mmaappffiillee returns successfully unless an invalid option or option + argument is supplied, _a_r_r_a_y is invalid or unassignable, or if _a_r_r_a_y is not an indexed array. ppooppdd [-nn] [+_n] [-_n] - Removes entries from the directory stack. With no arguments, - removes the top directory from the stack, and performs a ccdd to + Removes entries from the directory stack. With no arguments, + removes the top directory from the stack, and performs a ccdd to the new top directory. Arguments, if supplied, have the follow- ing meanings: - --nn Suppresses the normal change of directory when removing - directories from the stack, so that only the stack is + --nn Suppresses the normal change of directory when removing + directories from the stack, so that only the stack is manipulated. - ++_n Removes the _nth entry counting from the left of the list - shown by ddiirrss, starting with zero. For example: ``popd + ++_n Removes the _nth entry counting from the left of the list + shown by ddiirrss, starting with zero. For example: ``popd +0'' removes the first directory, ``popd +1'' the second. --_n Removes the _nth entry counting from the right of the list - shown by ddiirrss, starting with zero. For example: ``popd - -0'' removes the last directory, ``popd -1'' the next to + shown by ddiirrss, starting with zero. For example: ``popd + -0'' removes the last directory, ``popd -1'' the next to last. - If the ppooppdd command is successful, a ddiirrss is performed as well, - and the return status is 0. ppooppdd returns false if an invalid + If the ppooppdd command is successful, a ddiirrss is performed as well, + and the return status is 0. ppooppdd returns false if an invalid option is encountered, the directory stack is empty, a non-exis- tent directory stack entry is specified, or the directory change fails. pprriinnttff [--vv _v_a_r] _f_o_r_m_a_t [_a_r_g_u_m_e_n_t_s] - Write the formatted _a_r_g_u_m_e_n_t_s to the standard output under the - control of the _f_o_r_m_a_t. The --vv option causes the output to be - assigned to the variable _v_a_r rather than being printed to the + Write the formatted _a_r_g_u_m_e_n_t_s to the standard output under the + control of the _f_o_r_m_a_t. The --vv option causes the output to be + assigned to the variable _v_a_r rather than being printed to the standard output. - The _f_o_r_m_a_t is a character string which contains three types of - objects: plain characters, which are simply copied to standard - output, character escape sequences, which are converted and - copied to the standard output, and format specifications, each - of which causes printing of the next successive _a_r_g_u_m_e_n_t. In + The _f_o_r_m_a_t is a character string which contains three types of + objects: plain characters, which are simply copied to standard + output, character escape sequences, which are converted and + copied to the standard output, and format specifications, each + of which causes printing of the next successive _a_r_g_u_m_e_n_t. In addition to the standard _p_r_i_n_t_f(1) format specifications, pprriinnttff interprets the following extensions: %%bb causes pprriinnttff to expand backslash escape sequences in the corresponding _a_r_g_u_m_e_n_t (except that \\cc terminates output, - backslashes in \\'', \\"", and \\?? are not removed, and octal + backslashes in \\'', \\"", and \\?? are not removed, and octal escapes beginning with \\00 may contain up to four digits). - %%qq causes pprriinnttff to output the corresponding _a_r_g_u_m_e_n_t in a + %%qq causes pprriinnttff to output the corresponding _a_r_g_u_m_e_n_t in a format that can be reused as shell input. %%((_d_a_t_e_f_m_t))TT - causes pprriinnttff to output the date-time string resulting - from using _d_a_t_e_f_m_t as a format string for _s_t_r_f_t_i_m_e(3). + causes pprriinnttff to output the date-time string resulting + from using _d_a_t_e_f_m_t as a format string for _s_t_r_f_t_i_m_e(3). The corresponding _a_r_g_u_m_e_n_t is an integer representing the - number of seconds since the epoch. Two special argument - values may be used: -1 represents the current time, and + number of seconds since the epoch. Two special argument + values may be used: -1 represents the current time, and -2 represents the time the shell was invoked. - Arguments to non-string format specifiers are treated as C con- + Arguments to non-string format specifiers are treated as C con- stants, except that a leading plus or minus sign is allowed, and - if the leading character is a single or double quote, the value + if the leading character is a single or double quote, the value is the ASCII value of the following character. - The _f_o_r_m_a_t is reused as necessary to consume all of the _a_r_g_u_- + The _f_o_r_m_a_t is reused as necessary to consume all of the _a_r_g_u_- _m_e_n_t_s. If the _f_o_r_m_a_t requires more _a_r_g_u_m_e_n_t_s than are supplied, - the extra format specifications behave as if a zero value or - null string, as appropriate, had been supplied. The return + the extra format specifications behave as if a zero value or + null string, as appropriate, had been supplied. The return value is zero on success, non-zero on failure. ppuusshhdd [--nn] [+_n] [-_n] ppuusshhdd [--nn] [_d_i_r] - Adds a directory to the top of the directory stack, or rotates - the stack, making the new top of the stack the current working + Adds a directory to the top of the directory stack, or rotates + the stack, making the new top of the stack the current working directory. With no arguments, exchanges the top two directories - and returns 0, unless the directory stack is empty. Arguments, + and returns 0, unless the directory stack is empty. Arguments, if supplied, have the following meanings: - --nn Suppresses the normal change of directory when adding - directories to the stack, so that only the stack is + --nn Suppresses the normal change of directory when adding + directories to the stack, so that only the stack is manipulated. - ++_n Rotates the stack so that the _nth directory (counting - from the left of the list shown by ddiirrss, starting with + ++_n Rotates the stack so that the _nth directory (counting + from the left of the list shown by ddiirrss, starting with zero) is at the top. - --_n Rotates the stack so that the _nth directory (counting - from the right of the list shown by ddiirrss, starting with + --_n Rotates the stack so that the _nth directory (counting + from the right of the list shown by ddiirrss, starting with zero) is at the top. _d_i_r Adds _d_i_r to the directory stack at the top, making it the new current working directory. If the ppuusshhdd command is successful, a ddiirrss is performed as well. - If the first form is used, ppuusshhdd returns 0 unless the cd to _d_i_r - fails. With the second form, ppuusshhdd returns 0 unless the direc- - tory stack is empty, a non-existent directory stack element is - specified, or the directory change to the specified new current + If the first form is used, ppuusshhdd returns 0 unless the cd to _d_i_r + fails. With the second form, ppuusshhdd returns 0 unless the direc- + tory stack is empty, a non-existent directory stack element is + specified, or the directory change to the specified new current directory fails. ppwwdd [--LLPP] - Print the absolute pathname of the current working directory. + Print the absolute pathname of the current working directory. The pathname printed contains no symbolic links if the --PP option is supplied or the --oo pphhyyssiiccaall option to the sseett builtin command - is enabled. If the --LL option is used, the pathname printed may - contain symbolic links. The return status is 0 unless an error - occurs while reading the name of the current directory or an + is enabled. If the --LL option is used, the pathname printed may + contain symbolic links. The return status is 0 unless an error + occurs while reading the name of the current directory or an invalid option is supplied. rreeaadd [--eerrss] [--aa _a_n_a_m_e] [--dd _d_e_l_i_m] [--ii _t_e_x_t] [--nn _n_c_h_a_r_s] [--NN _n_c_h_a_r_s] [--pp _p_r_o_m_p_t] [--tt _t_i_m_e_o_u_t] [--uu _f_d] [_n_a_m_e ...] - One line is read from the standard input, or from the file - descriptor _f_d supplied as an argument to the --uu option, and the + One line is read from the standard input, or from the file + descriptor _f_d supplied as an argument to the --uu option, and the first word is assigned to the first _n_a_m_e, the second word to the - second _n_a_m_e, and so on, with leftover words and their interven- - ing separators assigned to the last _n_a_m_e. If there are fewer + second _n_a_m_e, and so on, with leftover words and their interven- + ing separators assigned to the last _n_a_m_e. If there are fewer words read from the input stream than names, the remaining names - are assigned empty values. The characters in IIFFSS are used to - split the line into words. The backslash character (\\) may be - used to remove any special meaning for the next character read - and for line continuation. Options, if supplied, have the fol- + are assigned empty values. The characters in IIFFSS are used to + split the line into words. The backslash character (\\) may be + used to remove any special meaning for the next character read + and for line continuation. Options, if supplied, have the fol- lowing meanings: --aa _a_n_a_m_e The words are assigned to sequential indices of the array @@ -902,132 +905,132 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS new values are assigned. Other _n_a_m_e arguments are ignored. --dd _d_e_l_i_m - The first character of _d_e_l_i_m is used to terminate the + The first character of _d_e_l_i_m is used to terminate the input line, rather than newline. --ee If the standard input is coming from a terminal, rreeaaddlliinnee - (see RREEAADDLLIINNEE above) is used to obtain the line. Read- - line uses the current (or default, if line editing was + (see RREEAADDLLIINNEE above) is used to obtain the line. Read- + line uses the current (or default, if line editing was not previously active) editing settings. --ii _t_e_x_t - If rreeaaddlliinnee is being used to read the line, _t_e_x_t is + If rreeaaddlliinnee is being used to read the line, _t_e_x_t is placed into the editing buffer before editing begins. --nn _n_c_h_a_r_s - rreeaadd returns after reading _n_c_h_a_r_s characters rather than - waiting for a complete line of input, but honor a delim- - iter if fewer than _n_c_h_a_r_s characters are read before the + rreeaadd returns after reading _n_c_h_a_r_s characters rather than + waiting for a complete line of input, but honor a delim- + iter if fewer than _n_c_h_a_r_s characters are read before the delimiter. --NN _n_c_h_a_r_s - rreeaadd returns after reading exactly _n_c_h_a_r_s characters - rather than waiting for a complete line of input, unless - EOF is encountered or rreeaadd times out. Delimiter charac- - ters encountered in the input are not treated specially - and do not cause rreeaadd to return until _n_c_h_a_r_s characters + rreeaadd returns after reading exactly _n_c_h_a_r_s characters + rather than waiting for a complete line of input, unless + EOF is encountered or rreeaadd times out. Delimiter charac- + ters encountered in the input are not treated specially + and do not cause rreeaadd to return until _n_c_h_a_r_s characters are read. --pp _p_r_o_m_p_t Display _p_r_o_m_p_t on standard error, without a trailing new- line, before attempting to read any input. The prompt is displayed only if input is coming from a terminal. --rr Backslash does not act as an escape character. The back- - slash is considered to be part of the line. In particu- - lar, a backslash-newline pair may not be used as a line + slash is considered to be part of the line. In particu- + lar, a backslash-newline pair may not be used as a line continuation. --ss Silent mode. If input is coming from a terminal, charac- ters are not echoed. --tt _t_i_m_e_o_u_t - Cause rreeaadd to time out and return failure if a complete - line of input is not read within _t_i_m_e_o_u_t seconds. _t_i_m_e_- - _o_u_t may be a decimal number with a fractional portion - following the decimal point. This option is only effec- - tive if rreeaadd is reading input from a terminal, pipe, or - other special file; it has no effect when reading from - regular files. If _t_i_m_e_o_u_t is 0, rreeaadd returns success if - input is available on the specified file descriptor, - failure otherwise. The exit status is greater than 128 + Cause rreeaadd to time out and return failure if a complete + line of input is not read within _t_i_m_e_o_u_t seconds. _t_i_m_e_- + _o_u_t may be a decimal number with a fractional portion + following the decimal point. This option is only effec- + tive if rreeaadd is reading input from a terminal, pipe, or + other special file; it has no effect when reading from + regular files. If _t_i_m_e_o_u_t is 0, rreeaadd returns success if + input is available on the specified file descriptor, + failure otherwise. The exit status is greater than 128 if the timeout is exceeded. --uu _f_d Read input from file descriptor _f_d. If no _n_a_m_e_s are supplied, the line read is assigned to the vari- - able RREEPPLLYY. The return code is zero, unless end-of-file is - encountered, rreeaadd times out (in which case the return code is - greater than 128), or an invalid file descriptor is supplied as + able RREEPPLLYY. The return code is zero, unless end-of-file is + encountered, rreeaadd times out (in which case the return code is + greater than 128), or an invalid file descriptor is supplied as the argument to --uu. rreeaaddoonnllyy [--aaAAppff] [_n_a_m_e[=_w_o_r_d] ...] - The given _n_a_m_e_s are marked readonly; the values of these _n_a_m_e_s - may not be changed by subsequent assignment. If the --ff option - is supplied, the functions corresponding to the _n_a_m_e_s are so - marked. The --aa option restricts the variables to indexed - arrays; the --AA option restricts the variables to associative - arrays. If no _n_a_m_e arguments are given, or if the --pp option is - supplied, a list of all readonly names is printed. The --pp - option causes output to be displayed in a format that may be - reused as input. If a variable name is followed by =_w_o_r_d, the - value of the variable is set to _w_o_r_d. The return status is 0 + The given _n_a_m_e_s are marked readonly; the values of these _n_a_m_e_s + may not be changed by subsequent assignment. If the --ff option + is supplied, the functions corresponding to the _n_a_m_e_s are so + marked. The --aa option restricts the variables to indexed + arrays; the --AA option restricts the variables to associative + arrays. If no _n_a_m_e arguments are given, or if the --pp option is + supplied, a list of all readonly names is printed. The --pp + option causes output to be displayed in a format that may be + reused as input. If a variable name is followed by =_w_o_r_d, the + value of the variable is set to _w_o_r_d. The return status is 0 unless an invalid option is encountered, one of the _n_a_m_e_s is not - a valid shell variable name, or --ff is supplied with a _n_a_m_e that + a valid shell variable name, or --ff is supplied with a _n_a_m_e that is not a function. rreettuurrnn [_n] - Causes a function to exit with the return value specified by _n. - If _n is omitted, the return status is that of the last command - executed in the function body. If used outside a function, but - during execution of a script by the .. (ssoouurrccee) command, it + Causes a function to exit with the return value specified by _n. + If _n is omitted, the return status is that of the last command + executed in the function body. If used outside a function, but + during execution of a script by the .. (ssoouurrccee) command, it causes the shell to stop executing that script and return either - _n or the exit status of the last command executed within the - script as the exit status of the script. If used outside a - function and not during execution of a script by .., the return + _n or the exit status of the last command executed within the + script as the exit status of the script. If used outside a + function and not during execution of a script by .., the return status is false. Any command associated with the RREETTUURRNN trap is - executed before execution resumes after the function or script. + executed before execution resumes after the function or script. sseett [----aabbeeffhhkkmmnnppttuuvvxxBBCCEEHHPPTT] [--oo _o_p_t_i_o_n] [_a_r_g ...] sseett [++aabbeeffhhkkmmnnppttuuvvxxBBCCEEHHPPTT] [++oo _o_p_t_i_o_n] [_a_r_g ...] - Without options, the name and value of each shell variable are + Without options, the name and value of each shell variable are displayed in a format that can be reused as input for setting or resetting the currently-set variables. Read-only variables can- - not be reset. In _p_o_s_i_x _m_o_d_e, only shell variables are listed. - The output is sorted according to the current locale. When - options are specified, they set or unset shell attributes. Any - arguments remaining after option processing are treated as val- + not be reset. In _p_o_s_i_x _m_o_d_e, only shell variables are listed. + The output is sorted according to the current locale. When + options are specified, they set or unset shell attributes. Any + arguments remaining after option processing are treated as val- ues for the positional parameters and are assigned, in order, to - $$11, $$22, ...... $$_n. Options, if specified, have the following + $$11, $$22, ...... $$_n. Options, if specified, have the following meanings: - --aa Automatically mark variables and functions which are - modified or created for export to the environment of + --aa Automatically mark variables and functions which are + modified or created for export to the environment of subsequent commands. - --bb Report the status of terminated background jobs immedi- + --bb Report the status of terminated background jobs immedi- ately, rather than before the next primary prompt. This is effective only when job control is enabled. - --ee Exit immediately if a _p_i_p_e_l_i_n_e (which may consist of a - single _s_i_m_p_l_e _c_o_m_m_a_n_d), a _s_u_b_s_h_e_l_l command enclosed in - parentheses, or one of the commands executed as part of - a command list enclosed by braces (see SSHHEELLLL GGRRAAMMMMAARR + --ee Exit immediately if a _p_i_p_e_l_i_n_e (which may consist of a + single _s_i_m_p_l_e _c_o_m_m_a_n_d), a _s_u_b_s_h_e_l_l command enclosed in + parentheses, or one of the commands executed as part of + a command list enclosed by braces (see SSHHEELLLL GGRRAAMMMMAARR above) exits with a non-zero status. The shell does not - exit if the command that fails is part of the command - list immediately following a wwhhiillee or uunnttiill keyword, - part of the test following the iiff or eelliiff reserved - words, part of any 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 with !!. A trap on EERRRR, + exit if the command that fails is part of the command + list immediately following a wwhhiillee or uunnttiill keyword, + part of the test following the iiff or eelliiff reserved + words, part of any 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 with !!. A trap on EERRRR, if set, is executed before the shell exits. This option applies to the shell environment and each subshell envi- - ronment separately (see CCOOMMMMAANNDD EEXXEECCUUTTIIOONN EENNVVIIRROONNMMEENNTT + ronment separately (see CCOOMMMMAANNDD EEXXEECCUUTTIIOONN EENNVVIIRROONNMMEENNTT above), and may cause subshells to exit before executing all the commands in the subshell. --ff Disable pathname expansion. - --hh Remember the location of commands as they are looked up + --hh Remember the location of commands as they are looked up for execution. This is enabled by default. - --kk All arguments in the form of assignment statements are - placed in the environment for a command, not just those + --kk All arguments in the form of assignment statements are + placed in the environment for a command, not just those that precede the command name. - --mm Monitor mode. Job control is enabled. This option is - on by default for interactive shells on systems that - support it (see JJOOBB CCOONNTTRROOLL above). Background pro- - cesses run in a separate process group and a line con- - taining their exit status is printed upon their comple- + --mm Monitor mode. Job control is enabled. This option is + on by default for interactive shells on systems that + support it (see JJOOBB CCOONNTTRROOLL above). Background pro- + cesses run in a separate process group and a line con- + taining their exit status is printed upon their comple- tion. --nn Read commands but do not execute them. This may be used - to check a shell script for syntax errors. This is + to check a shell script for syntax errors. This is ignored by interactive shells. --oo _o_p_t_i_o_n_-_n_a_m_e The _o_p_t_i_o_n_-_n_a_m_e can be one of the following: @@ -1035,10 +1038,10 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS Same as --aa. bbrraacceeeexxppaanndd Same as --BB. - eemmaaccss Use an emacs-style command line editing inter- + eemmaaccss Use an emacs-style command line editing inter- face. This is enabled by default when the shell is interactive, unless the shell is started with - the ----nnooeeddiittiinngg option. This also affects the + the ----nnooeeddiittiinngg option. This also affects the editing interface used for rreeaadd --ee. eerrrreexxiitt Same as --ee. eerrrrttrraaccee @@ -1052,8 +1055,8 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS HHIISSTTOORRYY. This option is on by default in inter- active shells. iiggnnoorreeeeooff - The effect is as if the shell command - ``IGNOREEOF=10'' had been executed (see SShheellll + The effect is as if the shell command + ``IGNOREEOF=10'' had been executed (see SShheellll VVaarriiaabblleess above). kkeeyywwoorrdd Same as --kk. mmoonniittoorr Same as --mm. @@ -1068,158 +1071,158 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS pphhyyssiiccaall Same as --PP. ppiippeeffaaiill - If set, the return value of a pipeline is the - value of the last (rightmost) command to exit - with a non-zero status, or zero if all commands - in the pipeline exit successfully. This option + If set, the return value of a pipeline is the + value of the last (rightmost) command to exit + with a non-zero status, or zero if all commands + in the pipeline exit successfully. This option is disabled by default. - ppoossiixx Change the behavior of bbaasshh where the default - operation differs from the POSIX standard to + ppoossiixx Change the behavior of bbaasshh where the default + operation differs from the POSIX standard to match the standard (_p_o_s_i_x _m_o_d_e). pprriivviilleeggeedd Same as --pp. vveerrbboossee Same as --vv. - vvii Use a vi-style command line editing interface. + vvii Use a vi-style command line editing interface. This also affects the editing interface used for rreeaadd --ee. xxttrraaccee Same as --xx. If --oo is supplied with no _o_p_t_i_o_n_-_n_a_m_e, the values of the - current options are printed. If ++oo is supplied with no - _o_p_t_i_o_n_-_n_a_m_e, a series of sseett commands to recreate the - current option settings is displayed on the standard + current options are printed. If ++oo is supplied with no + _o_p_t_i_o_n_-_n_a_m_e, a series of sseett commands to recreate the + current option settings is displayed on the standard output. - --pp Turn on _p_r_i_v_i_l_e_g_e_d mode. In this mode, the $$EENNVV and - $$BBAASSHH__EENNVV files are not processed, shell functions are - not inherited from the environment, and the SSHHEELLLLOOPPTTSS, - BBAASSHHOOPPTTSS, CCDDPPAATTHH, and GGLLOOBBIIGGNNOORREE variables, if they + --pp Turn on _p_r_i_v_i_l_e_g_e_d mode. In this mode, the $$EENNVV and + $$BBAASSHH__EENNVV files are not processed, shell functions are + not inherited from the environment, and the SSHHEELLLLOOPPTTSS, + BBAASSHHOOPPTTSS, CCDDPPAATTHH, and GGLLOOBBIIGGNNOORREE variables, if they appear in the environment, are ignored. If the shell is - started with the effective user (group) id not equal to - the real user (group) id, and the --pp option is not sup- + started with the effective user (group) id not equal to + the real user (group) id, and the --pp option is not sup- plied, these actions are taken and the effective user id - is set to the real user id. If the --pp option is sup- - plied at startup, the effective user id is not reset. - Turning this option off causes the effective user and + is set to the real user id. If the --pp option is sup- + plied at startup, the effective user id is not reset. + Turning this option off causes the effective user and group ids to be set to the real user and group ids. --tt Exit after reading and executing one command. --uu Treat unset variables and parameters other than the spe- - cial parameters "@" and "*" as an error when performing - parameter expansion. If expansion is attempted on an - unset variable or parameter, the shell prints an error - message, and, if not interactive, exits with a non-zero + cial parameters "@" and "*" as an error when performing + parameter expansion. If expansion is attempted on an + unset variable or parameter, the shell prints an error + message, and, if not interactive, exits with a non-zero status. --vv Print shell input lines as they are read. - --xx After expanding each _s_i_m_p_l_e _c_o_m_m_a_n_d, ffoorr command, ccaassee + --xx After expanding each _s_i_m_p_l_e _c_o_m_m_a_n_d, ffoorr command, ccaassee command, sseelleecctt command, or arithmetic ffoorr command, dis- - play the expanded value of PPSS44, followed by the command + play the expanded value of PPSS44, followed by the command and its expanded arguments or associated word list. - --BB The shell performs brace expansion (see BBrraaccee EExxppaannssiioonn + --BB The shell performs brace expansion (see BBrraaccee EExxppaannssiioonn above). This is on by default. - --CC If set, bbaasshh does not overwrite an existing file with - the >>, >>&&, and <<>> redirection operators. This may be + --CC If set, bbaasshh does not overwrite an existing file with + the >>, >>&&, and <<>> redirection operators. This may be overridden when creating output files by using the redi- rection operator >>|| instead of >>. --EE If set, any trap on EERRRR is inherited by shell functions, - command substitutions, and commands executed in a sub- - shell environment. The EERRRR trap is normally not inher- + command substitutions, and commands executed in a sub- + shell environment. The EERRRR trap is normally not inher- ited in such cases. --HH Enable !! style history substitution. This option is on by default when the shell is interactive. - --PP If set, the shell does not follow symbolic links when - executing commands such as ccdd that change the current + --PP If set, the shell does not follow symbolic links when + executing commands such as ccdd that change the current working directory. It uses the physical directory structure instead. By default, bbaasshh follows the logical - chain of directories when performing commands which + chain of directories when performing commands which change the current directory. - --TT If set, any traps on DDEEBBUUGG and RREETTUURRNN are inherited by - shell functions, command substitutions, and commands - executed in a subshell environment. The DDEEBBUUGG and + --TT If set, any traps on DDEEBBUUGG and RREETTUURRNN are inherited by + shell functions, command substitutions, and commands + executed in a subshell environment. The DDEEBBUUGG and RREETTUURRNN traps are normally not inherited in such cases. - ---- If no arguments follow this option, then the positional + ---- If no arguments follow this option, then the positional parameters are unset. Otherwise, the positional parame- - ters are set to the _a_r_gs, even if some of them begin + ters are set to the _a_r_gs, even if some of them begin with a --. - -- Signal the end of options, cause all remaining _a_r_gs to + -- Signal the end of options, cause all remaining _a_r_gs to be assigned to the positional parameters. The --xx and --vv options are turned off. If there are no _a_r_gs, the posi- tional parameters remain unchanged. - The options are off by default unless otherwise noted. Using + - rather than - causes these options to be turned off. The - options can also be specified as arguments to an invocation of - the shell. The current set of options may be found in $$--. The + The options are off by default unless otherwise noted. Using + + rather than - causes these options to be turned off. The + options can also be specified as arguments to an invocation of + the shell. The current set of options may be found in $$--. The return status is always true unless an invalid option is encoun- tered. sshhiifftt [_n] - The positional parameters from _n+1 ... are renamed to $$11 ........ - Parameters represented by the numbers $$## down to $$##-_n+1 are - unset. _n must be a non-negative number less than or equal to - $$##. If _n is 0, no parameters are changed. If _n is not given, - it is assumed to be 1. If _n is greater than $$##, the positional - parameters are not changed. The return status is greater than + The positional parameters from _n+1 ... are renamed to $$11 ........ + Parameters represented by the numbers $$## down to $$##-_n+1 are + unset. _n must be a non-negative number less than or equal to + $$##. If _n is 0, no parameters are changed. If _n is not given, + it is assumed to be 1. If _n is greater than $$##, the positional + parameters are not changed. The return status is greater than zero if _n is greater than $$## or less than zero; otherwise 0. sshhoopptt [--ppqqssuu] [--oo] [_o_p_t_n_a_m_e ...] Toggle the values of variables controlling optional shell behav- ior. With no options, or with the --pp option, a list of all set- table options is displayed, with an indication of whether or not - each is set. The --pp option causes output to be displayed in a - form that may be reused as input. Other options have the fol- + each is set. The --pp option causes output to be displayed in a + form that may be reused as input. Other options have the fol- lowing meanings: --ss Enable (set) each _o_p_t_n_a_m_e. --uu Disable (unset) each _o_p_t_n_a_m_e. - --qq Suppresses normal output (quiet mode); the return status + --qq Suppresses normal output (quiet mode); the return status indicates whether the _o_p_t_n_a_m_e is set or unset. If multi- - ple _o_p_t_n_a_m_e arguments are given with --qq, the return sta- - tus is zero if all _o_p_t_n_a_m_e_s are enabled; non-zero other- + ple _o_p_t_n_a_m_e arguments are given with --qq, the return sta- + tus is zero if all _o_p_t_n_a_m_e_s are enabled; non-zero other- wise. - --oo Restricts the values of _o_p_t_n_a_m_e to be those defined for + --oo Restricts the values of _o_p_t_n_a_m_e to be those defined for the --oo option to the sseett builtin. - If either --ss or --uu is used with no _o_p_t_n_a_m_e arguments, the dis- + If either --ss or --uu is used with no _o_p_t_n_a_m_e arguments, the dis- play is limited to those options which are set or unset, respec- - tively. Unless otherwise noted, the sshhoopptt options are disabled + tively. Unless otherwise noted, the sshhoopptt options are disabled (unset) by default. - The return status when listing options is zero if all _o_p_t_n_a_m_e_s - are enabled, non-zero otherwise. When setting or unsetting - options, the return status is zero unless an _o_p_t_n_a_m_e is not a + The return status when listing options is zero if all _o_p_t_n_a_m_e_s + are enabled, non-zero otherwise. When setting or unsetting + options, the return status is zero unless an _o_p_t_n_a_m_e is not a valid shell option. The list of sshhoopptt options is: - 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- + 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 file name 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 file name 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 command - and, if necessary, updates the values of LLIINNEESS and CCOOLL-- + If set, bbaasshh checks the window size after each command + and, if necessary, updates the values of LLIINNEESS and CCOOLL-- UUMMNNSS. - ccmmddhhiisstt If set, bbaasshh attempts to save all lines of a multiple- - line command in the same history entry. This allows + 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. ccoommppaatt3311 If set, bbaasshh changes its behavior to that of version 3.1 @@ -1227,65 +1230,65 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS mand's =~ operator. ccoommppaatt3322 If set, bbaasshh changes its behavior to that of version 3.2 - with respect to locale-specific string comparison when + with respect to locale-specific string comparison when using the conditional command's < and > operators. 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 and + with respect to locale-specific string comparison when + using the conditional command's < and > operators and the effect of interrupting a command list. 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 + ddoottgglloobb If set, bbaasshh includes filenames beginning with a `.' in the results of pathname expansion. 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, behavior intended for use by debuggers is + If set, behavior 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), a call to + 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), a call to rreettuurrnn is simulated. - 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. gglloobbssttaarr If set, the pattern **** used in a pathname expansion con- @@ -1296,58 +1299,58 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS 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. 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. - 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. 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. 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-- @@ -1355,47 +1358,47 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS enabled by default. 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 or 1 depending on the evaluation of the - conditional expression _e_x_p_r. Each operator and operand must be - a separate argument. Expressions are composed of the primaries - described above under CCOONNDDIITTIIOONNAALL EEXXPPRREESSSSIIOONNSS. tteesstt does not + Return a status of 0 or 1 depending on the evaluation of the + conditional expression _e_x_p_r. Each operator and operand 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. !! _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. @@ -1412,59 +1415,59 @@ 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 - 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. - 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- @@ -1472,53 +1475,53 @@ BBAASSHH BBUUIILLTTIINN CCOOMMMMAANNDDSS If a _s_i_g_s_p_e_c is EERRRR, the command _a_r_g is executed whenever a sim- ple command has a non-zero exit status, subject to 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, part of a - command executed in a &&&& or |||| list, or if the command's return - value is being inverted via !!. These are the same conditions + 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, part of a + command executed in a &&&& or |||| list, or if the command's return + value is being inverted via !!. These are the same conditions obeyed by the eerrrreexxiitt 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, not necessarily the + hashed, --pp and --PP print the hashed value, not necessarily 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 func- - tion lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true if + 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 func- + tion lookup, as with the ccoommmmaanndd builtin. ttyyppee returns true if all of the arguments are found, false if any are not found. uulliimmiitt [--HHSSTTaabbccddeeffiillmmnnppqqrrssttuuvvxx [_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: @@ -1527,11 +1530,11 @@ 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 --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) @@ -1540,58 +1543,58 @@ 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 --TT The maximum number of threads If _l_i_m_i_t is given, it is the new value of the specified resource (the --aa option is display only). 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, - and --TT, --bb, --nn, and --uu, which are unscaled values. The return + is assumed. Values are in 1024-byte increments, except for --tt, + which is in seconds, --pp, which is in units of 512-byte blocks, + and --TT, --bb, --nn, and --uu, which are unscaled values. The return status is 0 unless an invalid option or argument 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] [_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 no options are supplied, or the --vv option is given, each _n_a_m_e - refers to a shell variable. 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. Each unset vari- - able or function is removed from the environment passed to sub- - sequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANNDDOOMM, SSEECCOONNDDSS, - LLIINNEENNOO, HHIISSTTCCMMDD, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, or DDIIRRSSTTAACCKK are unset, they - lose their special properties, even if they are subsequently + refers to a shell variable. 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. Each unset vari- + able or function is removed from the environment passed to sub- + sequent commands. If any of CCOOMMPP__WWOORRDDBBRREEAAKKSS, RRAANNDDOOMM, SSEECCOONNDDSS, + LLIINNEENNOO, HHIISSTTCCMMDD, FFUUNNCCNNAAMMEE, GGRROOUUPPSS, or DDIIRRSSTTAACCKK are unset, they + lose their special properties, even if they are subsequently reset. The exit status is true unless a _n_a_m_e is readonly. wwaaiitt [_n _._._.] - Wait for each specified process and return its termination sta- - tus. Each _n 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 _n is not given, all currently active child pro- - cesses are waited for, and the return status is zero. If _n - specifies a non-existent process or job, the return status is - 127. Otherwise, the return status is the exit status of the + Wait for each specified process and return its termination sta- + tus. Each _n 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 _n is not given, all currently active child pro- + cesses are waited for, and the return status is zero. If _n + 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 4e25a4da..69f5c558 100644 --- a/doc/builtins.ps +++ b/doc/builtins.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.19.2 -%%CreationDate: Tue Jun 1 11:58:36 2010 +%%CreationDate: Mon Jun 7 16:18:58 2010 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%+ font Times-Italic @@ -459,11 +459,11 @@ ent e)144 559.2 R -.15(xe)-.15 G 1.328(cution call stack.).15 F .001 (cuting a subroutine call or).15 F F1 -.2(ex)3.02 G(pr).2 E F0 .52 (does not corre-)3.02 F(spond to a v)144 595.2 Q (alid position in the call stack.)-.25 E F2(cd)108 612 Q F0([)2.5 E F2 -(\255L|-P)A F0 2.5(][)C F1(dir)-2.5 E F0(])A .21 -(Change the current directory to)144 624 R F1(dir)2.71 E F0 5.21(.T)C -.21(he v)-5.21 F(ariable)-.25 E F3(HOME)2.71 E F0 .21(is the def)2.46 F -(ault)-.1 E F1(dir)2.71 E F0 5.21(.T).73 G .21(he v)-5.21 F(ariable)-.25 -E F3(CDP)2.71 E -.855(AT)-.666 G(H).855 E F0 .776 +<ad4c>A F0(|[)A F2<ad50>A F0([)2.5 E F2<ad65>A F0(]]] [)A F1(dir)A F0(]) +A .21(Change the current directory to)144 624 R F1(dir)2.71 E F0 5.21 +(.T)C .21(he v)-5.21 F(ariable)-.25 E F3(HOME)2.71 E F0 .21(is the def) +2.46 F(ault)-.1 E F1(dir)2.71 E F0 5.21(.T).73 G .21(he v)-5.21 F +(ariable)-.25 E F3(CDP)2.71 E -.855(AT)-.666 G(H).855 E F0 .776 (de\214nes the search path for the directory containing)144 636 R F1 (dir)3.276 E F0 5.777(.A).73 G(lternati)-5.777 E 1.077 -.15(ve d)-.25 H .777(irectory names in).15 F F3(CDP)3.277 E -.855(AT)-.666 G(H).855 E F0 @@ -477,1208 +477,1209 @@ F0 .764(is the same as the current direc-)3.014 F(tory)144 660 Q 2.973 (option says to use)2.974 F .58(the ph)144 672 R .58 (ysical directory structure instead of follo)-.05 F .579 (wing symbolic links \(see also the)-.25 F F2<ad50>3.079 E F0 .579 -(option to the)3.079 F F2(set)144 684 Q F0 -.2(bu)3.383 G .883 -(iltin command\); the).2 F F2<ad4c>3.383 E F0 .884 -(option forces symbolic links to be follo)3.384 F 3.384(wed. An)-.25 F -(ar)3.384 E .884(gument of)-.18 F F2<ad>3.384 E F0(is)3.384 E(equi)144 -696 Q -.25(va)-.25 G .316(lent to).25 F F3($OLDPWD)2.816 E F4(.)A F0 -.316(If a non-empty directory name from)4.816 F F3(CDP)2.815 E -.855(AT) --.666 G(H).855 E F0 .315(is used, or if)2.565 F F2<ad>2.815 E F0 .315 -(is the \214rst)2.815 F(ar)144 708 Q .116(gument, and the directory cha\ -nge is successful, the absolute pathname of the ne)-.18 F 2.616(ww)-.25 -G .116(orking direc-)-2.716 F 1.165 -(tory is written to the standard output.)144 720 R 1.164(The return v) -6.164 F 1.164(alue is true if the directory w)-.25 F 1.164 -(as successfully)-.1 F(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(2) -203.725 E 0 Cg EP +(option to the)3.079 F F2(set)144 684 Q F0 -.2(bu)2.716 G .216 +(iltin command\); the).2 F F2<ad4c>2.716 E F0 .216 +(option forces symbolic links to be follo)2.716 F 2.717(wed. If)-.25 F +(the)2.717 E F2<ad65>2.717 E F0 .217(option is sup-)2.717 F 1.087 +(plied with)144 696 R F2<ad50>3.587 E F0 3.587(,a)C 1.087 +(nd the current w)-3.587 F 1.086 +(orking directory cannot be successfully determined after a suc-)-.1 F +.44(cessful directory change,)144 708 R F2(cd)2.94 E F0 .44 +(will return an unsuccessful status.)2.94 F .44(An ar)5.44 F .44 +(gument of)-.18 F F2<ad>2.94 E F0 .44(is equi)2.94 F -.25(va)-.25 G .44 +(lent to).25 F F3($OLDPWD)144 720 Q F4(.)A F0 1.045 +(If a non-empty directory name from)5.545 F F3(CDP)3.545 E -.855(AT) +-.666 G(H).855 E F0 1.044(is used, or if)3.295 F F2<ad>3.544 E F0 1.044 +(is the \214rst ar)3.544 F(gument,)-.18 E(GNU Bash-4.0)72 768 Q +(2004 Apr 20)148.735 E(2)203.725 E 0 Cg EP %%Page: 3 3 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E(changed; f) -144 84 Q(alse otherwise.)-.1 E/F1 10/Times-Bold@0 SF(command)108 100.8 Q -F0([)2.5 E F1(\255pVv)A F0(])A/F2 10/Times-Italic@0 SF(command)2.5 E F0 -([)2.5 E F2(ar)A(g)-.37 E F0(...])2.5 E(Run)144 112.8 Q F2(command)2.956 -E F0(with)3.527 E F2(ar)3.087 E(gs)-.37 E F0 .257 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E .021(and th\ +e directory change is successful, the absolute pathname of the ne)144 84 +R 2.522(ww)-.25 G .022(orking directory is writ-)-2.622 F .165 +(ten to the standard output.)144 96 R .165(The return v)5.165 F .165 +(alue is true if the directory w)-.25 F .165(as successfully changed; f) +-.1 F(alse)-.1 E(otherwise.)144 108 Q/F1 10/Times-Bold@0 SF(command)108 +124.8 Q F0([)2.5 E F1(\255pVv)A F0(])A/F2 10/Times-Italic@0 SF(command) +2.5 E F0([)2.5 E F2(ar)A(g)-.37 E F0(...])2.5 E(Run)144 136.8 Q F2 +(command)2.956 E F0(with)3.527 E F2(ar)3.087 E(gs)-.37 E F0 .257 (suppressing the normal shell function lookup. Only b)3.027 F .257 -(uiltin commands or)-.2 F .502(commands found in the)144 124.8 R/F3 9 +(uiltin commands or)-.2 F .502(commands found in the)144 148.8 R/F3 9 /Times-Bold@0 SF -.666(PA)3.002 G(TH)-.189 E F0 .502(are e)2.752 F -.15 (xe)-.15 G 3.002(cuted. If).15 F(the)3.002 E F1<ad70>3.002 E F0 .502 (option is gi)3.002 F -.15(ve)-.25 G .501(n, the search for).15 F F2 -(command)3.201 E F0(is)3.771 E .399(performed using a def)144 136.8 R +(command)3.201 E F0(is)3.771 E .399(performed using a def)144 160.8 R .399(ault v)-.1 F .399(alue for)-.25 F F3 -.666(PA)2.899 G(TH)-.189 E F0 .4(that is guaranteed to \214nd all of the standard utilities.)2.649 F -(If)5.4 E .175(either the)144 148.8 R F1<ad56>2.675 E F0(or)2.675 E F1 +(If)5.4 E .175(either the)144 172.8 R F1<ad56>2.675 E F0(or)2.675 E F1 <ad76>2.675 E F0 .175(option is supplied, a description of)2.675 F F2 (command)2.875 E F0 .174(is printed.)3.445 F(The)5.174 E F1<ad76>2.674 E -F0 .174(option causes)2.674 F 3.11(as)144 160.8 S .61(ingle w)-3.11 F +F0 .174(option causes)2.674 F 3.11(as)144 184.8 S .61(ingle w)-3.11 F .61(ord indicating the command or \214le name used to in)-.1 F -.2(vo) -.4 G -.1(ke).2 G F2(command)3.41 E F0 .61(to be displayed; the)3.88 F -F1<ad56>144 172.8 Q F0 .25(option produces a more v)2.75 F .25 +F1<ad56>144 196.8 Q F0 .25(option produces a more v)2.75 F .25 (erbose description.)-.15 F .249(If the)5.25 F F1<ad56>2.749 E F0(or) 2.749 E F1<ad76>2.749 E F0 .249(option is supplied, the e)2.749 F .249 -(xit status)-.15 F 1.004(is 0 if)144 184.8 R F2(command)3.704 E F0 -.1 +(xit status)-.15 F 1.004(is 0 if)144 208.8 R F2(command)3.704 E F0 -.1 (wa)4.274 G 3.504(sf).1 G 1.005(ound, and 1 if not.)-3.504 F 1.005 (If neither option is supplied and an error occurred or)6.005 F F2 -(command)144.2 196.8 Q F0 1.599(cannot be found, the e)4.869 F 1.599 +(command)144.2 220.8 Q F0 1.599(cannot be found, the e)4.869 F 1.599 (xit status is 127.)-.15 F 1.599(Otherwise, the e)6.599 F 1.598 -(xit status of the)-.15 F F1(command)4.098 E F0 -.2(bu)144 208.8 S +(xit status of the)-.15 F F1(command)4.098 E F0 -.2(bu)144 232.8 S (iltin is the e).2 E(xit status of)-.15 E F2(command)2.5 E F0(.).77 E F1 -(compgen)108 225.6 Q F0([)2.5 E F2(option)A F0 2.5(][)C F2(wor)-2.5 E(d) --.37 E F0(])A .012(Generate possible completion matches for)144 237.6 R +(compgen)108 249.6 Q F0([)2.5 E F2(option)A F0 2.5(][)C F2(wor)-2.5 E(d) +-.37 E F0(])A .012(Generate possible completion matches for)144 261.6 R F2(wor)2.513 E(d)-.37 E F0 .013(according to the)2.513 F F2(option)2.513 E F0 .013(s, which may be an)B 2.513(yo)-.15 G(ption)-2.513 E .982 -(accepted by the)144 249.6 R F1(complete)3.482 E F0 -.2(bu)3.481 G .981 +(accepted by the)144 273.6 R F1(complete)3.482 E F0 -.2(bu)3.481 G .981 (iltin with the e).2 F .981(xception of)-.15 F F1<ad70>3.481 E F0(and) 3.481 E F1<ad72>3.481 E F0 3.481(,a)C .981(nd write the matches to the) --3.481 F 1.415(standard output.)144 261.6 R 1.415(When using the)6.415 F +-3.481 F 1.415(standard output.)144 285.6 R 1.415(When using the)6.415 F F1<ad46>3.915 E F0(or)3.915 E F1<ad43>3.915 E F0 1.415(options, the v) 3.915 F 1.415(arious shell v)-.25 F 1.415(ariables set by the pro-)-.25 -F(grammable completion f)144 273.6 Q(acilities, while a)-.1 E -.25(va) +F(grammable completion f)144 297.6 Q(acilities, while a)-.1 E -.25(va) -.2 G(ilable, will not ha).25 E .3 -.15(ve u)-.2 H(seful v).15 E(alues.) --.25 E .352(The matches will be generated in the same w)144 297.6 R .352 +-.25 E .352(The matches will be generated in the same w)144 321.6 R .352 (ay as if the programmable completion code had gen-)-.1 F .02(erated th\ em directly from a completion speci\214cation with the same \215ags.)144 -309.6 R(If)5.02 E F2(wor)2.52 E(d)-.37 E F0 .02(is speci\214ed, only) -2.52 F(those completions matching)144 321.6 Q F2(wor)2.5 E(d)-.37 E F0 -(will be displayed.)2.5 E(The return v)144 345.6 Q +333.6 R(If)5.02 E F2(wor)2.52 E(d)-.37 E F0 .02(is speci\214ed, only) +2.52 F(those completions matching)144 345.6 Q F2(wor)2.5 E(d)-.37 E F0 +(will be displayed.)2.5 E(The return v)144 369.6 Q (alue is true unless an in)-.25 E -.25(va)-.4 G (lid option is supplied, or no matches were generated.).25 E F1 -(complete)108 362.4 Q F0([)3.729 E F1(\255abcdefgjksuv)A F0 3.729(][)C +(complete)108 386.4 Q F0([)3.729 E F1(\255abcdefgjksuv)A F0 3.729(][)C F1<ad6f>-3.729 E F2(comp-option)3.729 E F0 3.729(][)C F1(\255DE)-3.729 E F0 3.728(][)C F1<ad41>-3.728 E F2(action)3.728 E F0 3.728(][)C F1<ad47> -3.728 E F2(globpat)3.728 E F0 3.728(][)C F1<ad57>-3.728 E F2(wor)3.728 E(dlist)-.37 E F0 3.728(][)C F1<ad46>-3.728 E F2(func-)3.728 E(tion)108 -374.4 Q F0 2.5(][)C F1<ad43>-2.5 E F2(command)2.5 E F0(])A([)144 386.4 Q +398.4 Q F0 2.5(][)C F1<ad43>-2.5 E F2(command)2.5 E F0(])A([)144 410.4 Q F1<ad58>A F2(\214lterpat)2.5 E F0 2.5(][)C F1<ad50>-2.5 E F2(pr)2.5 E (e\214x)-.37 E F0 2.5(][)C F1<ad53>-2.5 E F2(suf)2.5 E<8c78>-.18 E F0(]) A F2(name)2.5 E F0([)2.5 E F2(name ...)A F0(])A F1(complete \255pr)108 -398.4 Q F0([)2.5 E F1(\255DE)A F0 2.5(][)C F2(name)-2.5 E F0(...])2.5 E -.634(Specify ho)144 410.4 R 3.134(wa)-.25 G -.18(rg)-3.134 G .634 +422.4 Q F0([)2.5 E F1(\255DE)A F0 2.5(][)C F2(name)-2.5 E F0(...])2.5 E +.634(Specify ho)144 434.4 R 3.134(wa)-.25 G -.18(rg)-3.134 G .634 (uments to each).18 F F2(name)3.134 E F0 .634(should be completed.)3.134 F .633(If the)5.634 F F1<ad70>3.133 E F0 .633 (option is supplied, or if no)3.133 F .139(options are supplied, e)144 -422.4 R .139(xisting completion speci\214cations are printed in a w)-.15 +446.4 R .139(xisting completion speci\214cations are printed in a w)-.15 F .14(ay that allo)-.1 F .14(ws them to be)-.25 F .31(reused as input.) -144 434.4 R(The)5.31 E F1<ad72>2.81 E F0 .31(option remo)2.81 F -.15(ve) +144 458.4 R(The)5.31 E F1<ad72>2.81 E F0 .31(option remo)2.81 F -.15(ve) -.15 G 2.81(sac).15 G .31(ompletion speci\214cation for each)-2.81 F F2 (name)2.81 E F0 2.81(,o)C 1.11 -.4(r, i)-2.81 H 2.81(fn).4 G(o)-2.81 E F2(name)2.81 E F0(s)A 1.346 -(are supplied, all completion speci\214cations.)144 446.4 R(The)6.347 E +(are supplied, all completion speci\214cations.)144 470.4 R(The)6.347 E F1<ad44>3.847 E F0 1.347(option indicates that the remaining options) -3.847 F .5(and actions should apply to the `)144 458.4 R(`def)-.74 E +3.847 F .5(and actions should apply to the `)144 482.4 R(`def)-.74 E (ault')-.1 E 3('c)-.74 G .5 (ommand completion; that is, completion attempted on)-3 F 3.455(ac)144 -470.4 S .955(ommand for which no completion has pre)-3.455 F .955 +494.4 S .955(ommand for which no completion has pre)-3.455 F .955 (viously been de\214ned.)-.25 F(The)5.955 E F1<ad45>3.455 E F0 .955 (option indicates that)3.455 F .065 -(the remaining options and actions should apply to `)144 482.4 R +(the remaining options and actions should apply to `)144 506.4 R (`empty')-.74 E 2.564('c)-.74 G .064 (ommand completion; that is, comple-)-2.564 F -(tion attempted on a blank line.)144 494.4 Q 1.437 +(tion attempted on a blank line.)144 518.4 Q 1.437 (The process of applying these completion speci\214cations when w)144 -518.4 R 1.438(ord completion is attempted is)-.1 F(described abo)144 -530.4 Q .3 -.15(ve u)-.15 H(nder).15 E F1(Pr)2.5 E +542.4 R 1.438(ord completion is attempted is)-.1 F(described abo)144 +554.4 Q .3 -.15(ve u)-.15 H(nder).15 E F1(Pr)2.5 E (ogrammable Completion)-.18 E F0(.)A .556 -(Other options, if speci\214ed, ha)144 554.4 R .856 -.15(ve t)-.2 H .555 +(Other options, if speci\214ed, ha)144 578.4 R .856 -.15(ve t)-.2 H .555 (he follo).15 F .555(wing meanings.)-.25 F .555(The ar)5.555 F .555 (guments to the)-.18 F F1<ad47>3.055 E F0(,)A F1<ad57>3.055 E F0 3.055 (,a)C(nd)-3.055 E F1<ad58>3.055 E F0 .722(options \(and, if necessary) -144 566.4 R 3.222(,t)-.65 G(he)-3.222 E F1<ad50>3.222 E F0(and)3.222 E +144 590.4 R 3.222(,t)-.65 G(he)-3.222 E F1<ad50>3.222 E F0(and)3.222 E F1<ad53>3.222 E F0 .723 (options\) should be quoted to protect them from e)3.222 F(xpan-)-.15 E -(sion before the)144 578.4 Q F1(complete)2.5 E F0 -.2(bu)2.5 G -(iltin is in).2 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E F1<ad6f>144 590.4 Q -F2(comp-option)2.5 E F0(The)184 602.4 Q F2(comp-option)2.791 E F0 .291 +(sion before the)144 602.4 Q F1(complete)2.5 E F0 -.2(bu)2.5 G +(iltin is in).2 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E F1<ad6f>144 614.4 Q +F2(comp-option)2.5 E F0(The)184 626.4 Q F2(comp-option)2.791 E F0 .291 (controls se)2.791 F -.15(ve)-.25 G .291(ral aspects of the compspec') .15 F 2.791(sb)-.55 G(eha)-2.791 E .291(vior be)-.2 F .291 -(yond the simple)-.15 F(generation of completions.)184 614.4 Q F2 -(comp-option)5 E F0(may be one of:)2.5 E F1(bashdefault)184 626.4 Q F0 -.281(Perform the rest of the def)224 638.4 R(ault)-.1 E F1(bash)2.781 E +(yond the simple)-.15 F(generation of completions.)184 638.4 Q F2 +(comp-option)5 E F0(may be one of:)2.5 E F1(bashdefault)184 650.4 Q F0 +.281(Perform the rest of the def)224 662.4 R(ault)-.1 E F1(bash)2.781 E F0 .281(completions if the compspec generates no)2.781 F(matches.)224 -650.4 Q F1(default)184 662.4 Q F0 2.876(Use readline')10 F 5.376(sd)-.55 +674.4 Q F1(default)184 686.4 Q F0 2.876(Use readline')10 F 5.376(sd)-.55 G(ef)-5.376 E 2.875 (ault \214lename completion if the compspec generates no)-.1 F(matches.) -224 674.4 Q F1(dir)184 686.4 Q(names)-.15 E F0(Perform directory name c\ -ompletion if the compspec generates no matches.)224 698.4 Q -(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(3)203.725 E 0 Cg EP +224 698.4 Q(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(3)203.725 E 0 Cg +EP %%Page: 4 4 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 (TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF(\214lenames)184 84 Q F0 -.7(Te)224 96 S .137(ll readli\ -ne that the compspec generates \214lenames, so it can perform an).7 F -2.637<798c>-.15 G(le-)-2.637 E .134(name\255speci\214c processing \(lik) -224 108 R 2.634(ea)-.1 G .134 +/Times-Bold@0 SF(dir)184 84 Q(names)-.15 E F0(Perform directory name co\ +mpletion if the compspec generates no matches.)224 96 Q F1(\214lenames) +184 108 Q F0 -.7(Te)224 120 S .137(ll readline that the compspec genera\ +tes \214lenames, so it can perform an).7 F 2.637<798c>-.15 G(le-)-2.637 +E .134(name\255speci\214c processing \(lik)224 132 R 2.634(ea)-.1 G .134 (dding a slash to directory names, quoting spe-)-2.634 F .45 -(cial characters, or suppressing trailing spaces\).)224 120 R .45 -(Intended to be used with shell)5.45 F(functions.)224 132 Q F1(nospace) -184 144 Q F0 -.7(Te)6.11 G .22 +(cial characters, or suppressing trailing spaces\).)224 144 R .45 +(Intended to be used with shell)5.45 F(functions.)224 156 Q F1(nospace) +184 168 Q F0 -.7(Te)6.11 G .22 (ll readline not to append a space \(the def).7 F .22(ault\) to w)-.1 F -.22(ords completed at the end)-.1 F(of the line.)224 156 Q F1(plusdirs) -184 168 Q F0 1.985(After an)5.54 F 4.485(ym)-.15 G 1.985 +.22(ords completed at the end)-.1 F(of the line.)224 180 Q F1(plusdirs) +184 192 Q F0 1.985(After an)5.54 F 4.485(ym)-.15 G 1.985 (atches de\214ned by the compspec are generated, directory name)-4.485 F -.584(completion is attempted and an)224 180 R 3.084(ym)-.15 G .584 -(atches are added to the results of the other)-3.084 F(actions.)224 192 -Q F1<ad41>144 204 Q/F2 10/Times-Italic@0 SF(action)2.5 E F0(The)184 216 +.584(completion is attempted and an)224 204 R 3.084(ym)-.15 G .584 +(atches are added to the results of the other)-3.084 F(actions.)224 216 +Q F1<ad41>144 228 Q/F2 10/Times-Italic@0 SF(action)2.5 E F0(The)184 240 Q F2(action)2.5 E F0(may be one of the follo)2.5 E (wing to generate a list of possible completions:)-.25 E F1(alias)184 -228 Q F0(Alias names.)20.55 E(May also be speci\214ed as)5 E F1<ad61>2.5 -E F0(.)A F1(arrayv)184 240 Q(ar)-.1 E F0(Array v)224 252 Q -(ariable names.)-.25 E F1 4.7(binding Readline)184 264 R F0 -.1(ke)2.5 G -2.5(yb)-.05 G(inding names.)-2.5 E F1 -.2(bu)184 276 S(iltin).2 E F0 +252 Q F0(Alias names.)20.55 E(May also be speci\214ed as)5 E F1<ad61>2.5 +E F0(.)A F1(arrayv)184 264 Q(ar)-.1 E F0(Array v)224 276 Q +(ariable names.)-.25 E F1 4.7(binding Readline)184 288 R F0 -.1(ke)2.5 G +2.5(yb)-.05 G(inding names.)-2.5 E F1 -.2(bu)184 300 S(iltin).2 E F0 (Names of shell b)11.85 E(uiltin commands.)-.2 E -(May also be speci\214ed as)5 E F1<ad62>2.5 E F0(.)A F1(command)184 288 -Q F0(Command names.)224 300 Q(May also be speci\214ed as)5 E F1<ad63>2.5 -E F0(.)A F1(dir)184 312 Q(ectory)-.18 E F0(Directory names.)224 324 Q -(May also be speci\214ed as)5 E F1<ad64>2.5 E F0(.)A F1(disabled)184 336 -Q F0(Names of disabled shell b)224 348 Q(uiltins.)-.2 E F1(enabled)184 -360 Q F0(Names of enabled shell b)6.66 E(uiltins.)-.2 E F1(export)184 -372 Q F0(Names of e)12.23 E(xported shell v)-.15 E 2.5(ariables. May) +(May also be speci\214ed as)5 E F1<ad62>2.5 E F0(.)A F1(command)184 312 +Q F0(Command names.)224 324 Q(May also be speci\214ed as)5 E F1<ad63>2.5 +E F0(.)A F1(dir)184 336 Q(ectory)-.18 E F0(Directory names.)224 348 Q +(May also be speci\214ed as)5 E F1<ad64>2.5 E F0(.)A F1(disabled)184 360 +Q F0(Names of disabled shell b)224 372 Q(uiltins.)-.2 E F1(enabled)184 +384 Q F0(Names of enabled shell b)6.66 E(uiltins.)-.2 E F1(export)184 +396 Q F0(Names of e)12.23 E(xported shell v)-.15 E 2.5(ariables. May) -.25 F(also be speci\214ed as)2.5 E F1<ad65>2.5 E F0(.)A F1(\214le)184 -384 Q F0(File names.)27.22 E(May also be speci\214ed as)5 E F1<ad66>2.5 -E F0(.)A F1(function)184 396 Q F0(Names of shell functions.)224 408 Q F1 -(gr)184 420 Q(oup)-.18 E F0(Group names.)14.62 E +408 Q F0(File names.)27.22 E(May also be speci\214ed as)5 E F1<ad66>2.5 +E F0(.)A F1(function)184 420 Q F0(Names of shell functions.)224 432 Q F1 +(gr)184 444 Q(oup)-.18 E F0(Group names.)14.62 E (May also be speci\214ed as)5 E F1<ad67>2.5 E F0(.)A F1(helptopic)184 -432 Q F0(Help topics as accepted by the)224 444 Q F1(help)2.5 E F0 -.2 -(bu)2.5 G(iltin.).2 E F1(hostname)184 456 Q F0(Hostnames, as tak)224 468 +456 Q F0(Help topics as accepted by the)224 468 Q F1(help)2.5 E F0 -.2 +(bu)2.5 G(iltin.).2 E F1(hostname)184 480 Q F0(Hostnames, as tak)224 492 Q(en from the \214le speci\214ed by the)-.1 E/F3 9/Times-Bold@0 SF -(HOSTFILE)2.5 E F0(shell v)2.25 E(ariable.)-.25 E F1(job)184 480 Q F0 +(HOSTFILE)2.5 E F0(shell v)2.25 E(ariable.)-.25 E F1(job)184 504 Q F0 (Job names, if job control is acti)26.11 E -.15(ve)-.25 G 5(.M).15 G -(ay also be speci\214ed as)-5 E F1<ad6a>2.5 E F0(.)A F1 -.1(ke)184 492 S -(yw).1 E(ord)-.1 E F0(Shell reserv)224 504 Q(ed w)-.15 E 2.5(ords. May) +(ay also be speci\214ed as)-5 E F1<ad6a>2.5 E F0(.)A F1 -.1(ke)184 516 S +(yw).1 E(ord)-.1 E F0(Shell reserv)224 528 Q(ed w)-.15 E 2.5(ords. May) -.1 F(also be speci\214ed as)2.5 E F1<ad6b>2.5 E F0(.)A F1(running)184 -516 Q F0(Names of running jobs, if job control is acti)5.54 E -.15(ve) --.25 G(.).15 E F1(ser)184 528 Q(vice)-.1 E F0(Service names.)10.67 E -(May also be speci\214ed as)5 E F1<ad73>2.5 E F0(.)A F1(setopt)184 540 Q +540 Q F0(Names of running jobs, if job control is acti)5.54 E -.15(ve) +-.25 G(.).15 E F1(ser)184 552 Q(vice)-.1 E F0(Service names.)10.67 E +(May also be speci\214ed as)5 E F1<ad73>2.5 E F0(.)A F1(setopt)184 564 Q F0 -1.11(Va)14.45 G(lid ar)1.11 E(guments for the)-.18 E F1<ad6f>2.5 E F0(option to the)2.5 E F1(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E F1 -(shopt)184 552 Q F0(Shell option names as accepted by the)16.66 E F1 -(shopt)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E F1(signal)184 564 Q F0 -(Signal names.)14.99 E F1(stopped)184 576 Q F0 +(shopt)184 576 Q F0(Shell option names as accepted by the)16.66 E F1 +(shopt)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E F1(signal)184 588 Q F0 +(Signal names.)14.99 E F1(stopped)184 600 Q F0 (Names of stopped jobs, if job control is acti)6.66 E -.15(ve)-.25 G(.) -.15 E F1(user)184 588 Q F0(User names.)21.67 E -(May also be speci\214ed as)5 E F1<ad75>2.5 E F0(.)A F1 -.1(va)184 600 S +.15 E F1(user)184 612 Q F0(User names.)21.67 E +(May also be speci\214ed as)5 E F1<ad75>2.5 E F0(.)A F1 -.1(va)184 624 S (riable).1 E F0(Names of all shell v)5.1 E 2.5(ariables. May)-.25 F -(also be speci\214ed as)2.5 E F1<ad76>2.5 E F0(.)A F1<ad43>144 612 Q F2 -(command)2.5 E(command)184 624 Q F0 1.055(is e)3.555 F -.15(xe)-.15 G +(also be speci\214ed as)2.5 E F1<ad76>2.5 E F0(.)A F1<ad43>144 636 Q F2 +(command)2.5 E(command)184 648 Q F0 1.055(is e)3.555 F -.15(xe)-.15 G 1.055(cuted in a subshell en).15 F 1.056 (vironment, and its output is used as the possible)-.4 F(completions.) -184 636 Q F1<ad46>144 648 Q F2(function)2.5 E F0 1.181 -(The shell function)184 660 R F2(function)3.681 E F0 1.181(is e)3.681 F +184 660 Q F1<ad46>144 672 Q F2(function)2.5 E F0 1.181 +(The shell function)184 684 R F2(function)3.681 E F0 1.181(is e)3.681 F -.15(xe)-.15 G 1.181(cuted in the current shell en).15 F 3.68 (vironment. When)-.4 F 1.18(it \214n-)3.68 F .932 -(ishes, the possible completions are retrie)184 672 R -.15(ve)-.25 G +(ishes, the possible completions are retrie)184 696 R -.15(ve)-.25 G 3.432(df).15 G .932(rom the v)-3.432 F .932(alue of the)-.25 F F3 -(COMPREPL)3.432 E(Y)-.828 E F0(array)3.182 E -.25(va)184 684 S(riable.) -.25 E F1<ad47>144 696 Q F2(globpat)2.5 E F0 1.008(The pathname e)184 708 -R 1.008(xpansion pattern)-.15 F F2(globpat)3.507 E F0 1.007(is e)3.507 F -1.007(xpanded to generate the possible comple-)-.15 F(tions.)184 720 Q -(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(4)203.725 E 0 Cg EP +(COMPREPL)3.432 E(Y)-.828 E F0(array)3.182 E -.25(va)184 708 S(riable.) +.25 E(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(4)203.725 E 0 Cg EP %%Page: 5 5 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 (TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF<ad50>144 84 Q/F2 10/Times-Italic@0 SF(pr)2.5 E(e\214x) --.37 E(pr)184 96 Q(e\214x)-.37 E F0 .534(is added at the be)3.034 F .534 +/Times-Bold@0 SF<ad47>144 84 Q/F2 10/Times-Italic@0 SF(globpat)2.5 E F0 +1.008(The pathname e)184 96 R 1.008(xpansion pattern)-.15 F F2(globpat) +3.507 E F0 1.007(is e)3.507 F 1.007 +(xpanded to generate the possible comple-)-.15 F(tions.)184 108 Q F1 +<ad50>144 120 Q F2(pr)2.5 E(e\214x)-.37 E(pr)184 132 Q(e\214x)-.37 E F0 +.534(is added at the be)3.034 F .534 (ginning of each possible completion after all other options ha)-.15 F --.15(ve)-.2 G(been applied.)184 108 Q F1<ad53>144 120 Q F2(suf)2.5 E +-.15(ve)-.2 G(been applied.)184 144 Q F1<ad53>144 156 Q F2(suf)2.5 E 2.81(\214x suf)-.18 F<8c78>-.18 E F0 (is appended to each possible completion after all other options ha)2.5 -E .3 -.15(ve b)-.2 H(een applied.).15 E F1<ad57>144 132 Q F2(wor)2.5 E -(dlist)-.37 E F0(The)184 144 Q F2(wor)3.64 E(dlist)-.37 E F0 1.14 +E .3 -.15(ve b)-.2 H(een applied.).15 E F1<ad57>144 168 Q F2(wor)2.5 E +(dlist)-.37 E F0(The)184 180 Q F2(wor)3.64 E(dlist)-.37 E F0 1.14 (is split using the characters in the)3.64 F/F3 9/Times-Bold@0 SF(IFS) 3.64 E F0 1.139(special v)3.39 F 1.139(ariable as delimiters, and)-.25 F -2.007(each resultant w)184 156 R 2.007(ord is e)-.1 F 4.507 +2.007(each resultant w)184 192 R 2.007(ord is e)-.1 F 4.507 (xpanded. The)-.15 F 2.008(possible completions are the members of the) -4.507 F(resultant list which match the w)184 168 Q(ord being completed.) --.1 E F1<ad58>144 180 Q F2(\214lterpat)2.5 E(\214lterpat)184 192 Q F0 +4.507 F(resultant list which match the w)184 204 Q(ord being completed.) +-.1 E F1<ad58>144 216 Q F2(\214lterpat)2.5 E(\214lterpat)184 228 Q F0 .456(is a pattern as used for pathname e)2.956 F 2.956(xpansion. It)-.15 F .455(is applied to the list of possible)2.956 F 1.596 -(completions generated by the preceding options and ar)184 204 R 1.596 -(guments, and each completion)-.18 F(matching)184 216 Q F2(\214lterpat) +(completions generated by the preceding options and ar)184 240 R 1.596 +(guments, and each completion)-.18 F(matching)184 252 Q F2(\214lterpat) 3.205 E F0 .705(is remo)3.205 F -.15(ve)-.15 G 3.205(df).15 G .704 (rom the list.)-3.205 F 3.204(Al)5.704 G(eading)-3.204 E F1(!)3.204 E F0 (in)3.204 E F2(\214lterpat)3.204 E F0(ne)3.204 E -.05(ga)-.15 G .704 -(tes the pattern;).05 F(in this case, an)184 228 Q 2.5(yc)-.15 G +(tes the pattern;).05 F(in this case, an)184 264 Q 2.5(yc)-.15 G (ompletion not matching)-2.5 E F2(\214lterpat)2.5 E F0(is remo)2.5 E --.15(ve)-.15 G(d.).15 E .466(The return v)144 244.8 R .466 +-.15(ve)-.15 G(d.).15 E .466(The return v)144 280.8 R .466 (alue is true unless an in)-.25 F -.25(va)-.4 G .466 (lid option is supplied, an option other than).25 F F1<ad70>2.967 E F0 (or)2.967 E F1<ad72>2.967 E F0 .467(is sup-)2.967 F 1.362 -(plied without a)144 256.8 R F2(name)3.862 E F0(ar)3.862 E 1.361 +(plied without a)144 292.8 R F2(name)3.862 E F0(ar)3.862 E 1.361 (gument, an attempt is made to remo)-.18 F 1.661 -.15(ve a c)-.15 H -1.361(ompletion speci\214cation for a).15 F F2(name)144 268.8 Q F0 +1.361(ompletion speci\214cation for a).15 F F2(name)144 304.8 Q F0 (for which no speci\214cation e)2.5 E (xists, or an error occurs adding a completion speci\214cation.)-.15 E -F1(compopt)108 285.6 Q F0([)2.5 E F1<ad6f>A F2(option)2.5 E F0 2.5(][)C +F1(compopt)108 321.6 Q F0([)2.5 E F1<ad6f>A F2(option)2.5 E F0 2.5(][)C F1(\255DE)-2.5 E F0 2.5(][)C F1(+o)-2.5 E F2(option)2.5 E F0 2.5(][)C F2 -(name)-2.5 E F0(])A .447(Modify completion options for each)144 297.6 R +(name)-2.5 E F0(])A .447(Modify completion options for each)144 333.6 R F2(name)2.947 E F0 .447(according to the)2.947 F F2(option)2.947 E F0 .447(s, or for the currently-e)B -.15(xe)-.15 G(cuting).15 E .726 -(completion if no)144 309.6 R F2(name)3.226 E F0 3.226(sa)C .726 +(completion if no)144 345.6 R F2(name)3.226 E F0 3.226(sa)C .726 (re supplied.)-3.226 F .725(If no)5.725 F F2(option)3.225 E F0 3.225(sa) C .725(re gi)-3.225 F -.15(ve)-.25 G .725 -(n, display the completion options for).15 F(each)144 321.6 Q F2(name) +(n, display the completion options for).15 F(each)144 357.6 Q F2(name) 3.223 E F0 .723(or the current completion.)3.223 F .724(The possible v) 5.724 F .724(alues of)-.25 F F2(option)3.224 E F0 .724(are those v)3.224 -F .724(alid for the)-.25 F F1(com-)3.224 E(plete)144 333.6 Q F0 -.2(bu) +F .724(alid for the)-.25 F F1(com-)3.224 E(plete)144 369.6 Q F0 -.2(bu) 2.798 G .298(iltin described abo).2 F -.15(ve)-.15 G 5.297(.T).15 G(he) -5.297 E F1<ad44>2.797 E F0 .297 (option indicates that the remaining options should apply to)2.797 F -1.227(the `)144 345.6 R(`def)-.74 E(ault')-.1 E 3.727('c)-.74 G 1.228(o\ +1.227(the `)144 381.6 R(`def)-.74 E(ault')-.1 E 3.727('c)-.74 G 1.228(o\ mmand completion; that is, completion attempted on a command for which \ -no)-3.727 F 2.178(completion has pre)144 357.6 R 2.178 +no)-3.727 F 2.178(completion has pre)144 393.6 R 2.178 (viously been de\214ned.)-.25 F(The)7.178 E F1<ad45>4.678 E F0 2.177 (option indicates that the remaining options)4.677 F(should apply to `) -144 369.6 Q(`empty')-.74 E 2.5('c)-.74 G +144 405.6 Q(`empty')-.74 E 2.5('c)-.74 G (ommand completion; that is, completion attempted on a blank line.)-2.5 -E 1.387(The return v)144 393.6 R 1.387(alue is true unless an in)-.25 F +E 1.387(The return v)144 429.6 R 1.387(alue is true unless an in)-.25 F -.25(va)-.4 G 1.388 (lid option is supplied, an attempt is made to modify the).25 F -(options for a)144 405.6 Q F2(name)2.5 E F0 +(options for a)144 441.6 Q F2(name)2.5 E F0 (for which no completion speci\214cation e)2.5 E -(xists, or an output error occurs.)-.15 E F1(continue)108 422.4 Q F0([) -2.5 E F2(n)A F0(])A 1.754(Resume the ne)144 434.4 R 1.754 +(xists, or an output error occurs.)-.15 E F1(continue)108 458.4 Q F0([) +2.5 E F2(n)A F0(])A 1.754(Resume the ne)144 470.4 R 1.754 (xt iteration of the enclosing)-.15 F F1 -.25(fo)4.254 G(r).25 E F0(,)A F1(while)4.254 E F0(,)A F1(until)4.254 E F0 4.254(,o)C(r)-4.254 E F1 (select)4.254 E F0 4.253(loop. If)4.254 F F2(n)4.613 E F0 1.753 -(is speci\214ed,)4.493 F 1.208(resume at the)144 446.4 R F2(n)3.709 E F0 +(is speci\214ed,)4.493 F 1.208(resume at the)144 482.4 R F2(n)3.709 E F0 1.209(th enclosing loop.)B F2(n)6.569 E F0 1.209(must be)3.949 F/F4 10 /Symbol SF<b3>3.709 E F0 3.709(1. If)3.709 F F2(n)4.069 E F0 1.209 (is greater than the number of enclosing)3.949 F .514 -(loops, the last enclosing loop \(the `)144 458.4 R(`top-le)-.74 E -.15 +(loops, the last enclosing loop \(the `)144 494.4 R(`top-le)-.74 E -.15 (ve)-.25 G(l').15 E 3.014('l)-.74 G .514(oop\) is resumed.)-3.014 F .513 (The return v)5.513 F .513(alue is 0 unless)-.25 F F2(n)3.013 E F0(is) -3.013 E(not greater than or equal to 1.)144 470.4 Q F1(declar)108 487.2 +3.013 E(not greater than or equal to 1.)144 506.4 Q F1(declar)108 523.2 Q(e)-.18 E F0([)2.5 E F1(\255aAfFgilrtux)A F0 2.5(][)C F1<ad70>-2.5 E F0 2.5(][)C F2(name)-2.5 E F0([=)A F2(value)A F0 2.5(].)C(..])-2.5 E F1 -(typeset)108 499.2 Q F0([)2.5 E F1(\255aAfFgilrtux)A F0 2.5(][)C F1 +(typeset)108 535.2 Q F0([)2.5 E F1(\255aAfFgilrtux)A F0 2.5(][)C F1 <ad70>-2.5 E F0 2.5(][)C F2(name)-2.5 E F0([=)A F2(value)A F0 2.5(].)C -(..])-2.5 E 1.264(Declare v)144 511.2 R 1.264(ariables and/or gi)-.25 F +(..])-2.5 E 1.264(Declare v)144 547.2 R 1.264(ariables and/or gi)-.25 F 1.564 -.15(ve t)-.25 H 1.264(hem attrib).15 F 3.765(utes. If)-.2 F(no) 3.765 E F2(name)3.765 E F0 3.765(sa)C 1.265(re gi)-3.765 F -.15(ve)-.25 G 3.765(nt).15 G 1.265(hen display the v)-3.765 F 1.265(alues of)-.25 F --.25(va)144 523.2 S 3.483(riables. The).25 F F1<ad70>3.483 E F0 .983 +-.25(va)144 559.2 S 3.483(riables. The).25 F F1<ad70>3.483 E F0 .983 (option will display the attrib)3.483 F .983(utes and v)-.2 F .982 (alues of each)-.25 F F2(name)3.482 E F0 5.982(.W).18 G(hen)-5.982 E F1 -<ad70>3.482 E F0 .982(is used)3.482 F(with)144 535.2 Q F2(name)3.579 E +<ad70>3.482 E F0 .982(is used)3.482 F(with)144 571.2 Q F2(name)3.579 E F0(ar)3.579 E 1.079(guments, additional options are ignored.)-.18 F (When)6.079 E F1<ad70>3.579 E F0 1.079(is supplied without)3.579 F F2 (name)3.58 E F0(ar)3.58 E(gu-)-.18 E .151 -(ments, it will display the attrib)144 547.2 R .151(utes and v)-.2 F +(ments, it will display the attrib)144 583.2 R .151(utes and v)-.2 F .151(alues of all v)-.25 F .15(ariables ha)-.25 F .15(ving the attrib) -.2 F .15(utes speci\214ed by the)-.2 F .046(additional options.)144 -559.2 R .046(If no other options are supplied with)5.046 F F1<ad70>2.547 +595.2 R .046(If no other options are supplied with)5.046 F F1<ad70>2.547 E F0(,)A F1(declar)2.547 E(e)-.18 E F0 .047(will display the attrib) -2.547 F .047(utes and)-.2 F -.25(va)144 571.2 S 1.363 +2.547 F .047(utes and)-.2 F -.25(va)144 607.2 S 1.363 (lues of all shell v).25 F 3.863(ariables. The)-.25 F F1<ad66>3.863 E F0 1.362(option will restrict the display to shell functions.)3.863 F(The) 6.362 E F1<ad46>3.862 E F0 2.422(option inhibits the display of functio\ -n de\214nitions; only the function name and attrib)144 583.2 R 2.423 -(utes are)-.2 F 2.664(printed. If)144 595.2 R(the)2.664 E F1(extdeb) +n de\214nitions; only the function name and attrib)144 619.2 R 2.423 +(utes are)-.2 F 2.664(printed. If)144 631.2 R(the)2.664 E F1(extdeb) 2.664 E(ug)-.2 E F0 .164(shell option is enabled using)2.664 F F1(shopt) 2.664 E F0 2.664(,t)C .163(he source \214le name and line number)-2.664 -F 1.288(where the function is de\214ned are displayed as well.)144 607.2 +F 1.288(where the function is de\214ned are displayed as well.)144 643.2 R(The)6.288 E F1<ad46>3.788 E F0 1.288(option implies)3.788 F F1<ad66> 3.788 E F0 6.288(.T)C(he)-6.288 E F1<ad67>3.789 E F0(option)3.789 E .491 -(forces v)144 619.2 R .491 +(forces v)144 655.2 R .491 (ariables to be created or modi\214ed at the global scope, e)-.25 F -.15 (ve)-.25 G 2.99(nw).15 G(hen)-2.99 E F1(declar)2.99 E(e)-.18 E F0 .49 (is e)2.99 F -.15(xe)-.15 G .49(cuted in a).15 F .124(shell function.) -144 631.2 R .124(It is ignored in all other cases.)5.124 F .125 +144 667.2 R .124(It is ignored in all other cases.)5.124 F .125 (The follo)5.125 F .125(wing options can be used to restrict output)-.25 -F(to v)144 643.2 Q(ariables with the speci\214ed attrib)-.25 E +F(to v)144 679.2 Q(ariables with the speci\214ed attrib)-.25 E (ute or to gi)-.2 E .3 -.15(ve v)-.25 H(ariables attrib)-.1 E(utes:)-.2 -E F1<ad61>144 655.2 Q F0(Each)25.3 E F2(name)2.5 E F0(is an inde)2.5 E +E F1<ad61>144 691.2 Q F0(Each)25.3 E F2(name)2.5 E F0(is an inde)2.5 E -.15(xe)-.15 G 2.5(da).15 G(rray v)-2.5 E(ariable \(see)-.25 E F1 -(Arrays)2.5 E F0(abo)2.5 E -.15(ve)-.15 G(\).).15 E F1<ad41>144 667.2 Q +(Arrays)2.5 E F0(abo)2.5 E -.15(ve)-.15 G(\).).15 E F1<ad41>144 703.2 Q F0(Each)23.08 E F2(name)2.5 E F0(is an associati)2.5 E .3 -.15(ve a)-.25 H(rray v).15 E(ariable \(see)-.25 E F1(Arrays)2.5 E F0(abo)2.5 E -.15 -(ve)-.15 G(\).).15 E F1<ad66>144 679.2 Q F0(Use function names only) -26.97 E(.)-.65 E F1<ad69>144 691.2 Q F0 .558(The v)27.52 F .558 -(ariable is treated as an inte)-.25 F .558(ger; arithmetic e)-.15 F -.25 -(va)-.25 G .558(luation \(see).25 F F3 .557(ARITHMETIC EV)3.058 F(ALU) --1.215 E(A-)-.54 E(TION)180 703.2 Q F0(abo)2.25 E -.15(ve)-.15 G 2.5 -(\)i).15 G 2.5(sp)-2.5 G(erformed when the v)-2.5 E -(ariable is assigned a v)-.25 E(alue.)-.25 E F1<ad6c>144 715.2 Q F0 .909 -(When the v)27.52 F .909(ariable is assigned a v)-.25 F .909 -(alue, all upper)-.25 F .909(-case characters are con)-.2 F -.15(ve)-.4 -G .91(rted to lo).15 F(wer)-.25 E(-)-.2 E 2.5(case. The)180 727.2 R -(upper)2.5 E(-case attrib)-.2 E(ute is disabled.)-.2 E(GNU Bash-4.0)72 -768 Q(2004 Apr 20)148.735 E(5)203.725 E 0 Cg EP +(ve)-.15 G(\).).15 E F1<ad66>144 715.2 Q F0(Use function names only) +26.97 E(.)-.65 E(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(5)203.725 E +0 Cg EP %%Page: 6 6 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 (TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF<ad72>144 84 Q F0(Mak)25.86 E(e)-.1 E/F2 10 -/Times-Italic@0 SF(name)5.047 E F0 5.047(sr)C(eadonly)-5.047 E 7.547(.T) --.65 G 2.546(hese names cannot then be assigned v)-7.547 F 2.546 -(alues by subsequent)-.25 F(assignment statements or unset.)180 96 Q F1 -<ad74>144 108 Q F0(Gi)26.97 E .729 -.15(ve e)-.25 H(ach).15 E F2(name) -2.929 E F0(the)2.929 E F2(tr)2.929 E(ace)-.15 E F0(attrib)2.929 E 2.929 +/Times-Bold@0 SF<ad69>144 84 Q F0 .558(The v)27.52 F .558 +(ariable is treated as an inte)-.25 F .558(ger; arithmetic e)-.15 F -.25 +(va)-.25 G .558(luation \(see).25 F/F2 9/Times-Bold@0 SF .557 +(ARITHMETIC EV)3.058 F(ALU)-1.215 E(A-)-.54 E(TION)180 96 Q F0(abo)2.25 +E -.15(ve)-.15 G 2.5(\)i).15 G 2.5(sp)-2.5 G(erformed when the v)-2.5 E +(ariable is assigned a v)-.25 E(alue.)-.25 E F1<ad6c>144 108 Q F0 .909 +(When the v)27.52 F .909(ariable is assigned a v)-.25 F .909 +(alue, all upper)-.25 F .909(-case characters are con)-.2 F -.15(ve)-.4 +G .91(rted to lo).15 F(wer)-.25 E(-)-.2 E 2.5(case. The)180 120 R(upper) +2.5 E(-case attrib)-.2 E(ute is disabled.)-.2 E F1<ad72>144 132 Q F0 +(Mak)25.86 E(e)-.1 E/F3 10/Times-Italic@0 SF(name)5.047 E F0 5.047(sr)C +(eadonly)-5.047 E 7.547(.T)-.65 G 2.546 +(hese names cannot then be assigned v)-7.547 F 2.546 +(alues by subsequent)-.25 F(assignment statements or unset.)180 144 Q F1 +<ad74>144 156 Q F0(Gi)26.97 E .729 -.15(ve e)-.25 H(ach).15 E F3(name) +2.929 E F0(the)2.929 E F3(tr)2.929 E(ace)-.15 E F0(attrib)2.929 E 2.929 (ute. T)-.2 F .429(raced functions inherit the)-.35 F F1(DEB)2.929 E(UG) -.1 E F0(and)2.93 E F1(RETURN)2.93 E F0(traps from the calling shell.) -180 120 Q(The trace attrib)5 E(ute has no special meaning for v)-.2 E -(ariables.)-.25 E F1<ad75>144 132 Q F0 .91(When the v)24.74 F .909 +180 168 Q(The trace attrib)5 E(ute has no special meaning for v)-.2 E +(ariables.)-.25 E F1<ad75>144 180 Q F0 .91(When the v)24.74 F .909 (ariable is assigned a v)-.25 F .909(alue, all lo)-.25 F(wer)-.25 E .909 (-case characters are con)-.2 F -.15(ve)-.4 G .909(rted to upper).15 F -(-)-.2 E 2.5(case. The)180 144 R(lo)2.5 E(wer)-.25 E(-case attrib)-.2 E -(ute is disabled.)-.2 E F1<ad78>144 156 Q F0(Mark)25.3 E F2(name)2.5 E +(-)-.2 E 2.5(case. The)180 192 R(lo)2.5 E(wer)-.25 E(-case attrib)-.2 E +(ute is disabled.)-.2 E F1<ad78>144 204 Q F0(Mark)25.3 E F3(name)2.5 E F0 2.5(sf)C(or e)-2.5 E(xport to subsequent commands via the en)-.15 E -(vironment.)-.4 E .12(Using `+' instead of `\255' turns of)144 172.8 R +(vironment.)-.4 E .12(Using `+' instead of `\255' turns of)144 220.8 R 2.62(ft)-.25 G .12(he attrib)-2.62 F .121(ute instead, with the e)-.2 F .121(xceptions that)-.15 F F1(+a)2.621 E F0 .121(may not be used)2.621 F -.645(to destro)144 184.8 R 3.145(ya)-.1 G 3.145(na)-3.145 G .645(rray v) +.645(to destro)144 232.8 R 3.145(ya)-.1 G 3.145(na)-3.145 G .645(rray v) -3.145 F .645(ariable and)-.25 F F1(+r)3.145 E F0 .645(will not remo) 3.145 F .945 -.15(ve t)-.15 H .645(he readonly attrib).15 F 3.144 -(ute. When)-.2 F .644(used in a func-)3.144 F .53(tion, mak)144 196.8 R -.53(es each)-.1 F F2(name)3.03 E F0 .53(local, as with the)3.03 F F1 +(ute. When)-.2 F .644(used in a func-)3.144 F .53(tion, mak)144 244.8 R +.53(es each)-.1 F F3(name)3.03 E F0 .53(local, as with the)3.03 F F1 (local)3.031 E F0 .531(command, unless the)3.031 F F1 .531 -(\255gP option is supplied, If a)3.031 F -.1(va)144 208.8 S 1.558 -(riable name is f).1 F(ollo)-.25 E 1.558(wed by =)-.1 F F2(value)A F1 +(\255gP option is supplied, If a)3.031 F -.1(va)144 256.8 S 1.558 +(riable name is f).1 F(ollo)-.25 E 1.558(wed by =)-.1 F F3(value)A F1 4.058(,t)C 1.558(he v)-4.058 F 1.557(alue of the v)-.1 F 1.557 -(ariable is set to)-.1 F F2(value)4.057 E F1 6.557(.T)C 1.557(he r) --6.557 F(etur)-.18 E(n)-.15 E -.1(va)144 220.8 S 1.168 +(ariable is set to)-.1 F F3(value)4.057 E F1 6.557(.T)C 1.557(he r) +-6.557 F(etur)-.18 E(n)-.15 E -.1(va)144 268.8 S 1.168 (lue is 0 unless an in).1 F -.1(va)-.4 G 1.168(lid option is encounter) .1 F 1.168(ed, an attempt is made to de\214ne a function)-.18 F(using) -144 232.8 Q/F3 10/Courier@0 SF .312(\255f foo=bar)2.812 F F1 2.812(,a)C +144 280.8 Q/F4 10/Courier@0 SF .312(\255f foo=bar)2.812 F F1 2.812(,a)C 2.812(na)-2.812 G .312(ttempt is made to assign a v)-2.812 F .312 (alue to a r)-.1 F .312(eadonly v)-.18 F .311(ariable, an attempt)-.1 F -.615(is made to assign a v)144 244.8 R .615(alue to an array v)-.1 F +.615(is made to assign a v)144 292.8 R .615(alue to an array v)-.1 F .616(ariable without using the compound assignment syn-)-.1 F .26 -(tax \(see Arrays)144 256.8 R F0(abo)2.76 E -.15(ve)-.15 G .26 -(\), one of the).15 F F2(names)2.76 E F0 .259(is not a v)2.76 F .259 +(tax \(see Arrays)144 304.8 R F0(abo)2.76 E -.15(ve)-.15 G .26 +(\), one of the).15 F F3(names)2.76 E F0 .259(is not a v)2.76 F .259 (alid shell v)-.25 F .259(ariable name, an attempt is made to)-.25 F -.703(turn of)144 268.8 R 3.203(fr)-.25 G .704 +.703(turn of)144 316.8 R 3.203(fr)-.25 G .704 (eadonly status for a readonly v)-3.203 F .704 (ariable, an attempt is made to turn of)-.25 F 3.204(fa)-.25 G .704 -(rray status for an)-3.204 F(array v)144 280.8 Q +(rray status for an)-3.204 F(array v)144 328.8 Q (ariable, or an attempt is made to display a non-e)-.25 E -(xistent function with)-.15 E F1<ad66>2.5 E F0(.)A F1(dirs [+)108 297.6 -Q F2(n)A F1 2.5(][)C<ad>-2.5 E F2(n)A F1 2.5(][)C(\255clpv])-2.5 E F0 --.4(Wi)144 309.6 S .329 +(xistent function with)-.15 E F1<ad66>2.5 E F0(.)A F1(dirs [+)108 345.6 +Q F3(n)A F1 2.5(][)C<ad>-2.5 E F3(n)A F1 2.5(][)C(\255clpv])-2.5 E F0 +-.4(Wi)144 357.6 S .329 (thout options, displays the list of currently remembered directories.) .4 F .328(The def)5.328 F .328(ault display is on a)-.1 F 1.238 -(single line with directory names separated by spaces.)144 321.6 R 1.238 -(Directories are added to the list with the)6.238 F F1(pushd)144 333.6 Q +(single line with directory names separated by spaces.)144 369.6 R 1.238 +(Directories are added to the list with the)6.238 F F1(pushd)144 381.6 Q F0(command; the)2.5 E F1(popd)2.5 E F0(command remo)2.5 E -.15(ve)-.15 G -2.5(se).15 G(ntries from the list.)-2.5 E F1(+)144 345.6 Q F2(n)A F0 -1.565(Displays the)25.3 F F2(n)4.065 E F0 1.565 +2.5(se).15 G(ntries from the list.)-2.5 E F1(+)144 393.6 Q F3(n)A F0 +1.565(Displays the)25.3 F F3(n)4.065 E F0 1.565 (th entry counting from the left of the list sho)B 1.564(wn by)-.25 F F1 (dirs)4.064 E F0 1.564(when in)4.064 F -.2(vo)-.4 G -.1(ke).2 G(d).1 E -(without options, starting with zero.)180 357.6 Q F1<ad>144 369.6 Q F2 -(n)A F0 1.194(Displays the)25.3 F F2(n)3.694 E F0 1.194 +(without options, starting with zero.)180 405.6 Q F1<ad>144 417.6 Q F3 +(n)A F0 1.194(Displays the)25.3 F F3(n)3.694 E F0 1.194 (th entry counting from the right of the list sho)B 1.194(wn by)-.25 F F1(dirs)3.694 E F0 1.194(when in)3.694 F -.2(vo)-.4 G -.1(ke).2 G(d).1 E -(without options, starting with zero.)180 381.6 Q F1<ad63>144 393.6 Q F0 +(without options, starting with zero.)180 429.6 Q F1<ad63>144 441.6 Q F0 (Clears the directory stack by deleting all of the entries.)25.86 E F1 -<ad6c>144 405.6 Q F0 .324(Produces a longer listing; the def)27.52 F +<ad6c>144 453.6 Q F0 .324(Produces a longer listing; the def)27.52 F .324(ault listing format uses a tilde to denote the home direc-)-.1 F -(tory)180 417.6 Q(.)-.65 E F1<ad70>144 429.6 Q F0 +(tory)180 465.6 Q(.)-.65 E F1<ad70>144 477.6 Q F0 (Print the directory stack with one entry per line.)24.74 E F1<ad76>144 -441.6 Q F0 .272(Print the directory stack with one entry per line, pre\ +489.6 Q F0 .272(Print the directory stack with one entry per line, pre\ \214xing each entry with its inde)25.3 F 2.773(xi)-.15 G 2.773(nt)-2.773 -G(he)-2.773 E(stack.)180 453.6 Q .258(The return v)144 470.4 R .258 +G(he)-2.773 E(stack.)180 501.6 Q .258(The return v)144 518.4 R .258 (alue is 0 unless an in)-.25 F -.25(va)-.4 G .258 -(lid option is supplied or).25 F F2(n)2.758 E F0(inde)2.758 E -.15(xe) +(lid option is supplied or).25 F F3(n)2.758 E F0(inde)2.758 E -.15(xe) -.15 G 2.758(sb).15 G -.15(ey)-2.758 G .258(ond the end of the direc-) -.15 F(tory stack.)144 482.4 Q F1(diso)108 499.2 Q(wn)-.1 E F0([)2.5 E F1 -(\255ar)A F0 2.5(][)C F1<ad68>-2.5 E F0 2.5(][)C F2(jobspec)-2.5 E F0 -(...])2.5 E -.4(Wi)144 511.2 S .295(thout options, each).4 F F2(jobspec) +.15 F(tory stack.)144 530.4 Q F1(diso)108 547.2 Q(wn)-.1 E F0([)2.5 E F1 +(\255ar)A F0 2.5(][)C F1<ad68>-2.5 E F0 2.5(][)C F3(jobspec)-2.5 E F0 +(...])2.5 E -.4(Wi)144 559.2 S .295(thout options, each).4 F F3(jobspec) 4.535 E F0 .295(is remo)3.105 F -.15(ve)-.15 G 2.795(df).15 G .295 (rom the table of acti)-2.795 F .595 -.15(ve j)-.25 H 2.795(obs. If).15 -F F2(jobspec)4.535 E F0 .295(is not present,)3.105 F .423(and neither) -144 523.2 R F1<ad61>2.923 E F0(nor)2.923 E F1<ad72>2.923 E F0 .423 +F F3(jobspec)4.535 E F0 .295(is not present,)3.105 F .423(and neither) +144 571.2 R F1<ad61>2.923 E F0(nor)2.923 E F1<ad72>2.923 E F0 .423 (is supplied, the shell')2.923 F 2.923(sn)-.55 G .423(otion of the) --2.923 F F2(curr)2.922 E .422(ent job)-.37 F F0 .422(is used.)2.922 F +-2.923 F F3(curr)2.922 E .422(ent job)-.37 F F0 .422(is used.)2.922 F .422(If the)5.422 F F1<ad68>2.922 E F0 .422(option is)2.922 F(gi)144 -535.2 Q -.15(ve)-.25 G .14(n, each).15 F F2(jobspec)4.38 E F0 .14 +583.2 Q -.15(ve)-.25 G .14(n, each).15 F F3(jobspec)4.38 E F0 .14 (is not remo)2.95 F -.15(ve)-.15 G 2.641(df).15 G .141(rom the table, b) --2.641 F .141(ut is mark)-.2 F .141(ed so that)-.1 F/F4 9/Times-Bold@0 -SF(SIGHUP)2.641 E F0 .141(is not sent to the)2.391 F .005 -(job if the shell recei)144 547.2 R -.15(ve)-.25 G 2.504(sa).15 G F4 -(SIGHUP)A/F5 9/Times-Roman@0 SF(.)A F0 .004(If no)4.504 F F2(jobspec) -4.244 E F0 .004(is present, and neither the)2.814 F F1<ad61>2.504 E F0 -.004(nor the)2.504 F F1<ad72>2.504 E F0 .004(option is)2.504 F 1.228 -(supplied, the)144 559.2 R F2(curr)3.728 E 1.228(ent job)-.37 F F0 1.229 -(is used.)3.729 F 1.229(If no)6.229 F F2(jobspec)5.469 E F0 1.229 -(is supplied, the)4.039 F F1<ad61>3.729 E F0 1.229(option means to remo) -3.729 F 1.529 -.15(ve o)-.15 H(r).15 E .657(mark all jobs; the)144 571.2 -R F1<ad72>3.157 E F0 .657(option without a)3.157 F F2(jobspec)4.897 E F0 -(ar)3.467 E .656(gument restricts operation to running jobs.)-.18 F(The) -5.656 E(return v)144 583.2 Q(alue is 0 unless a)-.25 E F2(jobspec)4.24 E -F0(does not specify a v)2.81 E(alid job)-.25 E(.)-.4 E F1(echo)108 600 Q -F0([)2.5 E F1(\255neE)A F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E -.394(Output the)144 612 R F2(ar)2.894 E(g)-.37 E F0 .394 +-2.641 F .141(ut is mark)-.2 F .141(ed so that)-.1 F F2(SIGHUP)2.641 E +F0 .141(is not sent to the)2.391 F .005(job if the shell recei)144 595.2 +R -.15(ve)-.25 G 2.504(sa).15 G F2(SIGHUP)A/F5 9/Times-Roman@0 SF(.)A F0 +.004(If no)4.504 F F3(jobspec)4.244 E F0 .004 +(is present, and neither the)2.814 F F1<ad61>2.504 E F0 .004(nor the) +2.504 F F1<ad72>2.504 E F0 .004(option is)2.504 F 1.228(supplied, the) +144 607.2 R F3(curr)3.728 E 1.228(ent job)-.37 F F0 1.229(is used.)3.729 +F 1.229(If no)6.229 F F3(jobspec)5.469 E F0 1.229(is supplied, the)4.039 +F F1<ad61>3.729 E F0 1.229(option means to remo)3.729 F 1.529 -.15(ve o) +-.15 H(r).15 E .657(mark all jobs; the)144 619.2 R F1<ad72>3.157 E F0 +.657(option without a)3.157 F F3(jobspec)4.897 E F0(ar)3.467 E .656 +(gument restricts operation to running jobs.)-.18 F(The)5.656 E +(return v)144 631.2 Q(alue is 0 unless a)-.25 E F3(jobspec)4.24 E F0 +(does not specify a v)2.81 E(alid job)-.25 E(.)-.4 E F1(echo)108 648 Q +F0([)2.5 E F1(\255neE)A F0 2.5(][)C F3(ar)-2.5 E(g)-.37 E F0(...])2.5 E +.394(Output the)144 660 R F3(ar)2.894 E(g)-.37 E F0 .394 (s, separated by spaces, follo)B .395(wed by a ne)-.25 F 2.895 (wline. The)-.25 F .395(return status is al)2.895 F -.1(wa)-.1 G .395 (ys 0.).1 F(If)5.395 E F1<ad6e>2.895 E F0 .549 -(is speci\214ed, the trailing ne)144 624 R .548(wline is suppressed.) +(is speci\214ed, the trailing ne)144 672 R .548(wline is suppressed.) -.25 F .548(If the)5.548 F F1<ad65>3.048 E F0 .548(option is gi)3.048 F --.15(ve)-.25 G .548(n, interpretation of the fol-).15 F(lo)144 636 Q +-.15(ve)-.25 G .548(n, interpretation of the fol-).15 F(lo)144 684 Q .052(wing backslash-escaped characters is enabled.)-.25 F(The)5.052 E F1 <ad45>2.552 E F0 .053(option disables the interpretation of these)2.553 -F 1.503(escape characters, e)144 648 R -.15(ve)-.25 G 4.003(no).15 G +F 1.503(escape characters, e)144 696 R -.15(ve)-.25 G 4.003(no).15 G 4.003(ns)-4.003 G 1.502(ystems where the)-4.003 F 4.002(ya)-.15 G 1.502 (re interpreted by def)-4.002 F 4.002(ault. The)-.1 F F1(xpg_echo)4.002 E F0(shell)4.002 E .009 -(option may be used to dynamically determine whether or not)144 660 R F1 +(option may be used to dynamically determine whether or not)144 708 R F1 (echo)2.509 E F0 -.15(ex)2.51 G .01(pands these escape characters).15 F -.66(by def)144 672 R(ault.)-.1 E F1(echo)5.66 E F0 .66 +.66(by def)144 720 R(ault.)-.1 E F1(echo)5.66 E F0 .66 (does not interpret)3.16 F F1<adad>3.16 E F0 .659 (to mean the end of options.)3.159 F F1(echo)5.659 E F0 .659 -(interprets the follo)3.159 F(wing)-.25 E(escape sequences:)144 684 Q F1 -(\\a)144 696 Q F0(alert \(bell\))28.22 E F1(\\b)144 708 Q F0(backspace) -27.66 E(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(6)203.725 E 0 Cg EP +(interprets the follo)3.159 F(wing)-.25 E(GNU Bash-4.0)72 768 Q +(2004 Apr 20)148.735 E(6)203.725 E 0 Cg EP %%Page: 7 7 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF(\\c)144 84 Q F0(suppress further output)28.78 E F1(\\e) -144 96 Q F0(an escape character)28.78 E F1(\\f)144 108 Q F0(form feed) -29.89 E F1(\\n)144 120 Q F0(ne)27.66 E 2.5(wl)-.25 G(ine)-2.5 E F1(\\r) -144 132 Q F0(carriage return)28.78 E F1(\\t)144 144 Q F0(horizontal tab) -29.89 E F1(\\v)144 156 Q F0 -.15(ve)28.22 G(rtical tab).15 E F1(\\\\)144 -168 Q F0(backslash)30.44 E F1(\\0)144 180 Q/F2 10/Times-Italic@0 SF(nnn) -A F0(the eight-bit character whose v)13.22 E(alue is the octal v)-.25 E +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E +(escape sequences:)144 84 Q/F1 10/Times-Bold@0 SF(\\a)144 96 Q F0 +(alert \(bell\))28.22 E F1(\\b)144 108 Q F0(backspace)27.66 E F1(\\c)144 +120 Q F0(suppress further output)28.78 E F1(\\e)144 132 Q F0 +(an escape character)28.78 E F1(\\f)144 144 Q F0(form feed)29.89 E F1 +(\\n)144 156 Q F0(ne)27.66 E 2.5(wl)-.25 G(ine)-2.5 E F1(\\r)144 168 Q +F0(carriage return)28.78 E F1(\\t)144 180 Q F0(horizontal tab)29.89 E F1 +(\\v)144 192 Q F0 -.15(ve)28.22 G(rtical tab).15 E F1(\\\\)144 204 Q F0 +(backslash)30.44 E F1(\\0)144 216 Q/F2 10/Times-Italic@0 SF(nnn)A F0 +(the eight-bit character whose v)13.22 E(alue is the octal v)-.25 E (alue)-.25 E F2(nnn)2.5 E F0(\(zero to three octal digits\))2.5 E F1 -(\\x)144 192 Q F2(HH)A F0(the eight-bit character whose v)13.78 E +(\\x)144 228 Q F2(HH)A F0(the eight-bit character whose v)13.78 E (alue is the he)-.25 E(xadecimal v)-.15 E(alue)-.25 E F2(HH)2.5 E F0 (\(one or tw)2.5 E 2.5(oh)-.1 G .3 -.15(ex d)-2.5 H(igits\)).15 E F1 -(\\u)144 204 Q F2(HHHH)A F0 1.506 -(the Unicode \(ISO/IEC 10646\) character whose v)180 216 R 1.507 +(\\u)144 240 Q F2(HHHH)A F0 1.506 +(the Unicode \(ISO/IEC 10646\) character whose v)180 252 R 1.507 (alue is the he)-.25 F 1.507(xadecimal v)-.15 F(alue)-.25 E F2(HHHH) -4.007 E F0(\(one to four he)180 228 Q 2.5(xd)-.15 G(igits\))-2.5 E F1 -(\\U)144 240 Q F2(HHHHHHHH)A F0 .548 -(the Unicode \(ISO/IEC 10646\) character whose v)180 252 R .547 +4.007 E F0(\(one to four he)180 264 Q 2.5(xd)-.15 G(igits\))-2.5 E F1 +(\\U)144 276 Q F2(HHHHHHHH)A F0 .548 +(the Unicode \(ISO/IEC 10646\) character whose v)180 288 R .547 (alue is the he)-.25 F .547(xadecimal v)-.15 F(alue)-.25 E F2(HHHHH-) -3.047 E(HHH)180 264 Q F0(\(one to eight he)2.5 E 2.5(xd)-.15 G(igits\)) --2.5 E F1(enable)108 280.8 Q F0([)2.5 E F1<ad61>A F0 2.5(][)C F1 +3.047 E(HHH)180 300 Q F0(\(one to eight he)2.5 E 2.5(xd)-.15 G(igits\)) +-2.5 E F1(enable)108 316.8 Q F0([)2.5 E F1<ad61>A F0 2.5(][)C F1 (\255dnps)-2.5 E F0 2.5(][)C F1<ad66>-2.5 E F2(\214lename)2.5 E F0 2.5 -(][)C F2(name)-2.5 E F0(...])2.5 E .277(Enable and disable b)144 292.8 R +(][)C F2(name)-2.5 E F0(...])2.5 E .277(Enable and disable b)144 328.8 R .278(uiltin shell commands.)-.2 F .278(Disabling a b)5.278 F .278 (uiltin allo)-.2 F .278(ws a disk command which has)-.25 F .834 -(the same name as a shell b)144 304.8 R .834(uiltin to be e)-.2 F -.15 +(the same name as a shell b)144 340.8 R .834(uiltin to be e)-.2 F -.15 (xe)-.15 G .834(cuted without specifying a full pathname, e).15 F -.15 (ve)-.25 G 3.333(nt).15 G(hough)-3.333 E .989 -(the shell normally searches for b)144 316.8 R .989 +(the shell normally searches for b)144 352.8 R .989 (uiltins before disk commands.)-.2 F(If)5.989 E F1<ad6e>3.489 E F0 .99 (is used, each)3.49 F F2(name)3.49 E F0 .99(is dis-)3.49 F 1.582 -(abled; otherwise,)144 328.8 R F2(names)4.082 E F0 1.582(are enabled.) +(abled; otherwise,)144 364.8 R F2(names)4.082 E F0 1.582(are enabled.) 4.082 F -.15(Fo)6.582 G 4.082(re).15 G 1.582(xample, to use the)-4.232 F F1(test)4.082 E F0 1.582(binary found via the)4.082 F/F3 9/Times-Bold@0 -SF -.666(PA)4.081 G(TH)-.189 E F0 .08(instead of the shell b)144 340.8 R +SF -.666(PA)4.081 G(TH)-.189 E F0 .08(instead of the shell b)144 376.8 R .08(uiltin v)-.2 F .08(ersion, run)-.15 F/F4 10/Courier@0 SF .081 (enable -n test)2.58 F F0 5.081(.T)C(he)-5.081 E F1<ad66>2.581 E F0 .081 -(option means to load the ne)2.581 F(w)-.25 E -.2(bu)144 352.8 S 1.525 +(option means to load the ne)2.581 F(w)-.25 E -.2(bu)144 388.8 S 1.525 (iltin command).2 F F2(name)4.385 E F0 1.524(from shared object)4.204 F F2(\214lename)4.024 E F0 4.024(,o).18 G 4.024(ns)-4.024 G 1.524 -(ystems that support dynamic loading.)-4.024 F(The)144 364.8 Q F1<ad64> +(ystems that support dynamic loading.)-4.024 F(The)144 400.8 Q F1<ad64> 2.866 E F0 .366(option will delete a b)2.866 F .366(uiltin pre)-.2 F .366(viously loaded with)-.25 F F1<ad66>2.867 E F0 5.367(.I)C 2.867(fn) -5.367 G(o)-2.867 E F2(name)2.867 E F0(ar)2.867 E .367(guments are gi) --.18 F -.15(ve)-.25 G .367(n, or).15 F .399(if the)144 376.8 R F1<ad70> +-.18 F -.15(ve)-.25 G .367(n, or).15 F .399(if the)144 412.8 R F1<ad70> 2.899 E F0 .399(option is supplied, a list of shell b)2.899 F .399 (uiltins is printed.)-.2 F -.4(Wi)5.399 G .399(th no other option ar).4 F .398(guments, the)-.18 F .098(list consists of all enabled shell b)144 -388.8 R 2.598(uiltins. If)-.2 F F1<ad6e>2.598 E F0 .098 +424.8 R 2.598(uiltins. If)-.2 F F1<ad6e>2.598 E F0 .098 (is supplied, only disabled b)2.598 F .099(uiltins are printed.)-.2 F (If)5.099 E F1<ad61>2.599 E F0 1.917 -(is supplied, the list printed includes all b)144 400.8 R 1.916 +(is supplied, the list printed includes all b)144 436.8 R 1.916 (uiltins, with an indication of whether or not each is)-.2 F 2.878 -(enabled. If)144 412.8 R F1<ad73>2.878 E F0 .379 +(enabled. If)144 448.8 R F1<ad73>2.878 E F0 .379 (is supplied, the output is restricted to the POSIX)2.878 F F2(special) 2.879 E F0 -.2(bu)2.879 G 2.879(iltins. The).2 F .379(return v)2.879 F -(alue)-.25 E .995(is 0 unless a)144 424.8 R F2(name)3.855 E F0 .994 +(alue)-.25 E .995(is 0 unless a)144 460.8 R F2(name)3.855 E F0 .994 (is not a shell b)3.675 F .994(uiltin or there is an error loading a ne) -.2 F 3.494(wb)-.25 G .994(uiltin from a shared)-3.694 F(object.)144 -436.8 Q F1 -2.3 -.15(ev a)108 453.6 T(l).15 E F0([)2.5 E F2(ar)A(g)-.37 -E F0(...])2.5 E(The)144 465.6 Q F2(ar)3.17 E(g)-.37 E F0 3.17(sa)C .671 +472.8 Q F1 -2.3 -.15(ev a)108 489.6 T(l).15 E F0([)2.5 E F2(ar)A(g)-.37 +E F0(...])2.5 E(The)144 501.6 Q F2(ar)3.17 E(g)-.37 E F0 3.17(sa)C .671 (re read and concatenated together into a single command.)-3.17 F .671 -(This command is then read)5.671 F .495(and e)144 477.6 R -.15(xe)-.15 G +(This command is then read)5.671 F .495(and e)144 513.6 R -.15(xe)-.15 G .495(cuted by the shell, and its e).15 F .495 (xit status is returned as the v)-.15 F .495(alue of)-.25 F F1 -2.3 -.15 (ev a)2.995 H(l).15 E F0 5.495(.I)C 2.995(ft)-5.495 G .495(here are no) --2.995 F F2(ar)2.995 E(gs)-.37 E F0(,).27 E(or only null ar)144 489.6 Q +-2.995 F F2(ar)2.995 E(gs)-.37 E F0(,).27 E(or only null ar)144 525.6 Q (guments,)-.18 E F1 -2.3 -.15(ev a)2.5 H(l).15 E F0(returns 0.)2.5 E F1 -(exec)108 506.4 Q F0([)2.5 E F1(\255cl)A F0 2.5(][)C F1<ad61>-2.5 E F2 +(exec)108 542.4 Q F0([)2.5 E F1(\255cl)A F0 2.5(][)C F1<ad61>-2.5 E F2 (name)2.5 E F0 2.5(][)C F2(command)-2.5 E F0([)2.5 E F2(ar)A(guments) --.37 E F0(]])A(If)144 518.4 Q F2(command)3.005 E F0 .305 +-.37 E F0(]])A(If)144 554.4 Q F2(command)3.005 E F0 .305 (is speci\214ed, it replaces the shell.)3.575 F .305(No ne)5.305 F 2.805 (wp)-.25 G .306(rocess is created.)-2.805 F(The)5.306 E F2(ar)3.136 E -(guments)-.37 E F0(become)3.076 E .177(the ar)144 530.4 R .177 +(guments)-.37 E F0(become)3.076 E .177(the ar)144 566.4 R .177 (guments to)-.18 F F2(command)2.676 E F0 5.176(.I)C 2.676(ft)-5.176 G (he)-2.676 E F1<ad6c>2.676 E F0 .176 (option is supplied, the shell places a dash at the be)2.676 F .176 -(ginning of)-.15 F .499(the zeroth ar)144 542.4 R .499(gument passed to) +(ginning of)-.15 F .499(the zeroth ar)144 578.4 R .499(gument passed to) -.18 F F2(command)2.999 E F0 5.499(.T).77 G .499(his is what)-5.499 F F2 (lo)2.999 E(gin)-.1 E F0 .499(\(1\) does.).24 F(The)5.5 E F1<ad63>3 E F0 -.5(option causes)3 F F2(com-)3.2 E(mand)144 554.4 Q F0 .639(to be e) +.5(option causes)3 F F2(com-)3.2 E(mand)144 590.4 Q F0 .639(to be e) 3.909 F -.15(xe)-.15 G .638(cuted with an empty en).15 F 3.138 (vironment. If)-.4 F F1<ad61>3.138 E F0 .638 (is supplied, the shell passes)3.138 F F2(name)3.498 E F0 .638(as the) -3.318 F 1.077(zeroth ar)144 566.4 R 1.077(gument to the e)-.18 F -.15 +3.318 F 1.077(zeroth ar)144 602.4 R 1.077(gument to the e)-.18 F -.15 (xe)-.15 G 1.077(cuted command.).15 F(If)6.077 E F2(command)3.777 E F0 1.077(cannot be e)4.347 F -.15(xe)-.15 G 1.077(cuted for some reason, a) -.15 F(non-interacti)144 578.4 Q .618 -.15(ve s)-.25 H .318(hell e).15 F +.15 F(non-interacti)144 614.4 Q .618 -.15(ve s)-.25 H .318(hell e).15 F .318(xits, unless the shell option)-.15 F F1(execfail)2.817 E F0 .317 (is enabled, in which case it returns f)2.817 F(ail-)-.1 E 2.505 -(ure. An)144 590.4 R(interacti)2.505 E .305 -.15(ve s)-.25 H .005 +(ure. An)144 626.4 R(interacti)2.505 E .305 -.15(ve s)-.25 H .005 (hell returns f).15 F .005(ailure if the \214le cannot be e)-.1 F -.15 (xe)-.15 G 2.505(cuted. If).15 F F2(command)2.705 E F0 .005 -(is not speci\214ed,)3.275 F(an)144 602.4 Q 3.037(yr)-.15 G .537 +(is not speci\214ed,)3.275 F(an)144 638.4 Q 3.037(yr)-.15 G .537 (edirections tak)-3.037 F 3.036(ee)-.1 G -.25(ff)-3.036 G .536 (ect in the current shell, and the return status is 0.).25 F .536 -(If there is a redirection)5.536 F(error)144 614.4 Q 2.5(,t)-.4 G -(he return status is 1.)-2.5 E F1(exit)108 631.2 Q F0([)2.5 E F2(n)A F0 +(If there is a redirection)5.536 F(error)144 650.4 Q 2.5(,t)-.4 G +(he return status is 1.)-2.5 E F1(exit)108 667.2 Q F0([)2.5 E F2(n)A F0 6.29(]C)C .095(ause the shell to e)-6.29 F .095(xit with a status of) -.15 F F2(n)2.595 E F0 5.095(.I)C(f)-5.095 E F2(n)2.955 E F0 .096 (is omitted, the e)2.835 F .096(xit status is that of the last command) --.15 F -.15(exe)144 643.2 S 2.5(cuted. A).15 F(trap on)2.5 E F3(EXIT)2.5 +-.15 F -.15(exe)144 679.2 S 2.5(cuted. A).15 F(trap on)2.5 E F3(EXIT)2.5 E F0(is e)2.25 E -.15(xe)-.15 G(cuted before the shell terminates.).15 E -F1(export)108 660 Q F0([)2.5 E F1(\255fn)A F0 2.5(][).833 G F2(name)-2.5 -E F0([=)A F2(wor)A(d)-.37 E F0(]] ...)A F1(export \255p)108 672 Q F0 -.257(The supplied)144 684 R F2(names)3.117 E F0 .257(are mark)3.027 F -.257(ed for automatic e)-.1 F .257(xport to the en)-.15 F .257 +F1(export)108 696 Q F0([)2.5 E F1(\255fn)A F0 2.5(][).833 G F2(name)-2.5 +E F0([=)A F2(wor)A(d)-.37 E F0(]] ...)A(GNU Bash-4.0)72 768 Q +(2004 Apr 20)148.735 E(7)203.725 E 0 Cg EP +%%Page: 8 8 +%%BeginPageSetup +BP +%%EndPageSetup +/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 +/Times-Bold@0 SF(export \255p)108 84 Q F0 .257(The supplied)144 96 R/F2 +10/Times-Italic@0 SF(names)3.117 E F0 .257(are mark)3.027 F .257 +(ed for automatic e)-.1 F .257(xport to the en)-.15 F .257 (vironment of subsequently e)-.4 F -.15(xe)-.15 G(cuted).15 E 2.626 -(commands. If)144 696 R(the)2.626 E F1<ad66>2.626 E F0 .127 +(commands. If)144 108 R(the)2.626 E F1<ad66>2.626 E F0 .127 (option is gi)2.627 F -.15(ve)-.25 G .127(n, the).15 F F2(names)2.987 E F0 .127(refer to functions.)2.897 F .127(If no)5.127 F F2(names)2.987 E F0 .127(are gi)2.897 F -.15(ve)-.25 G .127(n, or if the).15 F F1<ad70> -144 708 Q F0 .66(option is supplied, a list of all names that are e)3.16 +144 120 Q F0 .66(option is supplied, a list of all names that are e)3.16 F .659(xported in this shell is printed.)-.15 F(The)5.659 E F1<ad6e> -3.159 E F0(option)3.159 E 1.586(causes the e)144 720 R 1.586 +3.159 E F0(option)3.159 E 1.586(causes the e)144 132 R 1.586 (xport property to be remo)-.15 F -.15(ve)-.15 G 4.086(df).15 G 1.586 (rom each)-4.086 F F2(name)4.086 E F0 6.586(.I)C 4.086(fav)-6.586 G -1.587(ariable name is follo)-4.336 F 1.587(wed by)-.25 F(GNU Bash-4.0)72 -768 Q(2004 Apr 20)148.735 E(7)203.725 E 0 Cg EP -%%Page: 8 8 -%%BeginPageSetup -BP -%%EndPageSetup -/F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E(=)144 84 Q -/F1 10/Times-Italic@0 SF(wor)A(d)-.37 E F0 2.804(,t)C .304(he v)-2.804 F -.304(alue of the v)-.25 F .304(ariable is set to)-.25 F F1(wor)2.804 E -(d)-.37 E F0(.)A/F2 10/Times-Bold@0 SF(export)5.304 E F0 .304 -(returns an e)2.804 F .303(xit status of 0 unless an in)-.15 F -.25(va) --.4 G(lid).25 E .293(option is encountered, one of the)144 96 R F1 -(names)2.793 E F0 .293(is not a v)2.793 F .293(alid shell v)-.25 F .293 -(ariable name, or)-.25 F F2<ad66>2.793 E F0 .294(is supplied with a) -2.793 F F1(name)144.36 108 Q F0(that is not a function.)2.68 E F2(fc)108 -124.8 Q F0([)2.5 E F2<ad65>A F1(ename)2.5 E F0 2.5(][)C F2(\255lnr)-2.5 -E F0 2.5(][)C F1<8c72>-2.5 E(st)-.1 E F0 2.5(][)C F1(last)-2.5 E F0(])A -F2(fc \255s)108 136.8 Q F0([)2.5 E F1(pat)A F0(=)A F1 -.37(re)C(p).37 E -F0 2.5(][)C F1(cmd)-2.5 E F0(])A .478(Fix Command.)144 148.8 R .478 -(In the \214rst form, a range of commands from)5.478 F F1<8c72>4.888 E -(st)-.1 E F0(to)3.658 E F1(last)3.068 E F0 .477 -(is selected from the his-)3.658 F .881(tory list.)144 160.8 R F1 -.45 -(Fi)5.881 G -.1(rs).45 G(t).1 E F0(and)4.061 E F1(last)3.471 E F0 .882 +1.587(ariable name is follo)-4.336 F 1.587(wed by)-.25 F(=)144 144 Q F2 +(wor)A(d)-.37 E F0 2.804(,t)C .304(he v)-2.804 F .304(alue of the v)-.25 +F .304(ariable is set to)-.25 F F2(wor)2.804 E(d)-.37 E F0(.)A F1 +(export)5.304 E F0 .304(returns an e)2.804 F .303 +(xit status of 0 unless an in)-.15 F -.25(va)-.4 G(lid).25 E .293 +(option is encountered, one of the)144 156 R F2(names)2.793 E F0 .293 +(is not a v)2.793 F .293(alid shell v)-.25 F .293(ariable name, or)-.25 +F F1<ad66>2.793 E F0 .294(is supplied with a)2.793 F F2(name)144.36 168 +Q F0(that is not a function.)2.68 E F1(fc)108 184.8 Q F0([)2.5 E F1 +<ad65>A F2(ename)2.5 E F0 2.5(][)C F1(\255lnr)-2.5 E F0 2.5(][)C F2 +<8c72>-2.5 E(st)-.1 E F0 2.5(][)C F2(last)-2.5 E F0(])A F1(fc \255s)108 +196.8 Q F0([)2.5 E F2(pat)A F0(=)A F2 -.37(re)C(p).37 E F0 2.5(][)C F2 +(cmd)-2.5 E F0(])A .478(Fix Command.)144 208.8 R .478 +(In the \214rst form, a range of commands from)5.478 F F2<8c72>4.888 E +(st)-.1 E F0(to)3.658 E F2(last)3.068 E F0 .477 +(is selected from the his-)3.658 F .881(tory list.)144 220.8 R F2 -.45 +(Fi)5.881 G -.1(rs).45 G(t).1 E F0(and)4.061 E F2(last)3.471 E F0 .882 (may be speci\214ed as a string \(to locate the last command be)4.062 F .882(ginning with)-.15 F .797(that string\) or as a number \(an inde)144 -172.8 R 3.297(xi)-.15 G .797(nto the history list, where a ne)-3.297 F +232.8 R 3.297(xi)-.15 G .797(nto the history list, where a ne)-3.297 F -.05(ga)-.15 G(ti).05 E 1.097 -.15(ve n)-.25 H .796(umber is used as an) -.15 F(of)144 184.8 Q .276(fset from the current command number\).)-.25 F -(If)5.276 E F1(last)2.866 E F0 .277 +.15 F(of)144 244.8 Q .276(fset from the current command number\).)-.25 F +(If)5.276 E F2(last)2.866 E F0 .277 (is not speci\214ed it is set to the current command)3.456 F .093 -(for listing \(so that)144 196.8 R/F3 10/Courier@0 SF .092 +(for listing \(so that)144 256.8 R/F3 10/Courier@0 SF .092 (fc \255l \25510)2.592 F F0 .092(prints the last 10 commands\) and to) -2.592 F F1<8c72>4.502 E(st)-.1 E F0 2.592(otherwise. If)3.272 F F1<8c72> +2.592 F F2<8c72>4.502 E(st)-.1 E F0 2.592(otherwise. If)3.272 F F2<8c72> 4.502 E(st)-.1 E F0 .092(is not)3.272 F -(speci\214ed it is set to the pre)144 208.8 Q -(vious command for editing and \25516 for listing.)-.25 E(The)144 232.8 -Q F2<ad6e>2.522 E F0 .022 +(speci\214ed it is set to the pre)144 268.8 Q +(vious command for editing and \25516 for listing.)-.25 E(The)144 292.8 +Q F1<ad6e>2.522 E F0 .022 (option suppresses the command numbers when listing.)2.522 F(The)5.022 E -F2<ad72>2.522 E F0 .022(option re)2.522 F -.15(ve)-.25 G .022 -(rses the order of).15 F .438(the commands.)144 244.8 R .438(If the) -5.438 F F2<ad6c>2.938 E F0 .438(option is gi)2.938 F -.15(ve)-.25 G .438 +F1<ad72>2.522 E F0 .022(option re)2.522 F -.15(ve)-.25 G .022 +(rses the order of).15 F .438(the commands.)144 304.8 R .438(If the) +5.438 F F1<ad6c>2.938 E F0 .438(option is gi)2.938 F -.15(ve)-.25 G .438 (n, the commands are listed on standard output.).15 F(Otherwise,)5.438 E -.334(the editor gi)144 256.8 R -.15(ve)-.25 G 2.834(nb).15 G(y)-2.834 E -F1(ename)3.024 E F0 .335(is in)3.014 F -.2(vo)-.4 G -.1(ke).2 G 2.835 +.334(the editor gi)144 316.8 R -.15(ve)-.25 G 2.834(nb).15 G(y)-2.834 E +F2(ename)3.024 E F0 .335(is in)3.014 F -.2(vo)-.4 G -.1(ke).2 G 2.835 (do).1 G 2.835(na\214)-2.835 G .335(le containing those commands.)-2.835 -F(If)5.335 E F1(ename)3.025 E F0 .335(is not gi)3.015 F -.15(ve)-.25 G -(n,).15 E .631(the v)144 268.8 R .631(alue of the)-.25 F/F4 9 +F(If)5.335 E F2(ename)3.025 E F0 .335(is not gi)3.015 F -.15(ve)-.25 G +(n,).15 E .631(the v)144 328.8 R .631(alue of the)-.25 F/F4 9 /Times-Bold@0 SF(FCEDIT)3.131 E F0 -.25(va)2.881 G .631 (riable is used, and the v).25 F .631(alue of)-.25 F F4(EDIT)3.131 E(OR) -.162 E F0(if)2.881 E F4(FCEDIT)3.13 E F0 .63(is not set.)2.88 F .63 -(If nei-)5.63 F 1.884(ther v)144 280.8 R 1.884(ariable is set, is used.) +(If nei-)5.63 F 1.884(ther v)144 340.8 R 1.884(ariable is set, is used.) -.25 F 1.884 (When editing is complete, the edited commands are echoed and)6.884 F --.15(exe)144 292.8 S(cuted.).15 E .04(In the second form,)144 316.8 R F1 +-.15(exe)144 352.8 S(cuted.).15 E .04(In the second form,)144 376.8 R F2 (command)2.54 E F0 .04(is re-e)2.54 F -.15(xe)-.15 G .039 -(cuted after each instance of).15 F F1(pat)2.539 E F0 .039 -(is replaced by)2.539 F F1 -.37(re)2.539 G(p).37 E F0 5.039(.A)C(useful) --2.5 E .406(alias to use with this is)144 328.8 R F3 .406(r='fc \255s') +(cuted after each instance of).15 F F2(pat)2.539 E F0 .039 +(is replaced by)2.539 F F2 -.37(re)2.539 G(p).37 E F0 5.039(.A)C(useful) +-2.5 E .406(alias to use with this is)144 388.8 R F3 .406(r='fc \255s') 2.906 F F0 2.906(,s)C 2.906(ot)-2.906 G .406(hat typing)-2.906 F F3 6.406(rc)2.906 G(c)-6.406 E F0 .406(runs the last command be)2.906 F -.407(ginning with)-.15 F F3(cc)144 340.8 Q F0(and typing)2.5 E F3(r)2.5 +.407(ginning with)-.15 F F3(cc)144 400.8 Q F0(and typing)2.5 E F3(r)2.5 E F0(re-e)2.5 E -.15(xe)-.15 G(cutes the last command.).15 E .142 -(If the \214rst form is used, the return v)144 364.8 R .142 +(If the \214rst form is used, the return v)144 424.8 R .142 (alue is 0 unless an in)-.25 F -.25(va)-.4 G .142 -(lid option is encountered or).25 F F1<8c72>4.552 E(st)-.1 E F0(or)3.322 -E F1(last)2.732 E F0 .454(specify history lines out of range.)144 376.8 -R .454(If the)5.454 F F2<ad65>2.954 E F0 .454 +(lid option is encountered or).25 F F2<8c72>4.552 E(st)-.1 E F0(or)3.322 +E F2(last)2.732 E F0 .454(specify history lines out of range.)144 436.8 +R .454(If the)5.454 F F1<ad65>2.954 E F0 .454 (option is supplied, the return v)2.954 F .455(alue is the v)-.25 F .455 -(alue of the)-.25 F .788(last command e)144 388.8 R -.15(xe)-.15 G .788 +(alue of the)-.25 F .788(last command e)144 448.8 R -.15(xe)-.15 G .788 (cuted or f).15 F .787 (ailure if an error occurs with the temporary \214le of commands.)-.1 F .787(If the)5.787 F 1.135 (second form is used, the return status is that of the command re-e)144 -400.8 R -.15(xe)-.15 G 1.136(cuted, unless).15 F F1(cmd)3.836 E F0 1.136 -(does not)4.406 F(specify a v)144 412.8 Q -(alid history line, in which case)-.25 E F2(fc)2.5 E F0(returns f)2.5 E -(ailure.)-.1 E F2(fg)108 429.6 Q F0([)2.5 E F1(jobspec)A F0(])A(Resume) -144 441.6 Q F1(jobspec)5.654 E F0 1.413(in the fore)4.224 F 1.413 +460.8 R -.15(xe)-.15 G 1.136(cuted, unless).15 F F2(cmd)3.836 E F0 1.136 +(does not)4.406 F(specify a v)144 472.8 Q +(alid history line, in which case)-.25 E F1(fc)2.5 E F0(returns f)2.5 E +(ailure.)-.1 E F1(fg)108 489.6 Q F0([)2.5 E F2(jobspec)A F0(])A(Resume) +144 501.6 Q F2(jobspec)5.654 E F0 1.413(in the fore)4.224 F 1.413 (ground, and mak)-.15 F 3.913(ei)-.1 G 3.913(tt)-3.913 G 1.413 -(he current job)-3.913 F 6.413(.I)-.4 G(f)-6.413 E F1(jobspec)5.653 E F0 -1.413(is not present, the)4.223 F(shell')144 453.6 Q 3.116(sn)-.55 G -.616(otion of the)-3.116 F F1(curr)3.116 E .616(ent job)-.37 F F0 .617 +(he current job)-3.913 F 6.413(.I)-.4 G(f)-6.413 E F2(jobspec)5.653 E F0 +1.413(is not present, the)4.223 F(shell')144 513.6 Q 3.116(sn)-.55 G +.616(otion of the)-3.116 F F2(curr)3.116 E .616(ent job)-.37 F F0 .617 (is used.)3.116 F .617(The return v)5.617 F .617 -(alue is that of the command placed into the)-.25 F(fore)144 465.6 Q +(alue is that of the command placed into the)-.25 F(fore)144 525.6 Q .363(ground, or f)-.15 F .363 (ailure if run when job control is disabled or)-.1 F 2.862(,w)-.4 G .362 -(hen run with job control enabled, if)-2.862 F F1(jobspec)145.74 477.6 Q -F0 .004(does not specify a v)2.814 F .004(alid job or)-.25 F F1(jobspec) +(hen run with job control enabled, if)-2.862 F F2(jobspec)145.74 537.6 Q +F0 .004(does not specify a v)2.814 F .004(alid job or)-.25 F F2(jobspec) 4.244 E F0 .004(speci\214es a job that w)2.814 F .004 -(as started without job control.)-.1 F F2(getopts)108 494.4 Q F1 -(optstring name)2.5 E F0([)2.5 E F1(ar)A(gs)-.37 E F0(])A F2(getopts)144 -506.4 Q F0 .793 -(is used by shell procedures to parse positional parameters.)3.294 F F1 +(as started without job control.)-.1 F F1(getopts)108 554.4 Q F2 +(optstring name)2.5 E F0([)2.5 E F2(ar)A(gs)-.37 E F0(])A F1(getopts)144 +566.4 Q F0 .793 +(is used by shell procedures to parse positional parameters.)3.294 F F2 (optstring)6.023 E F0 .793(contains the option)3.513 F .149 -(characters to be recognized; if a character is follo)144 518.4 R .15 +(characters to be recognized; if a character is follo)144 578.4 R .15 (wed by a colon, the option is e)-.25 F .15(xpected to ha)-.15 F .45 --.15(ve a)-.2 H(n).15 E(ar)144 530.4 Q .579 +-.15(ve a)-.2 H(n).15 E(ar)144 590.4 Q .579 (gument, which should be separated from it by white space.)-.18 F .578 (The colon and question mark char)5.579 F(-)-.2 E 1.665 -(acters may not be used as option characters.)144 542.4 R 1.665 -(Each time it is in)6.665 F -.2(vo)-.4 G -.1(ke).2 G(d,).1 E F2(getopts) +(acters may not be used as option characters.)144 602.4 R 1.665 +(Each time it is in)6.665 F -.2(vo)-.4 G -.1(ke).2 G(d,).1 E F1(getopts) 4.165 E F0 1.665(places the ne)4.165 F(xt)-.15 E .797 -(option in the shell v)144 554.4 R(ariable)-.25 E F1(name)3.297 E F0 -3.297(,i).18 G(nitializing)-3.297 E F1(name)3.657 E F0 .797 +(option in the shell v)144 614.4 R(ariable)-.25 E F2(name)3.297 E F0 +3.297(,i).18 G(nitializing)-3.297 E F2(name)3.657 E F0 .797 (if it does not e)3.477 F .796(xist, and the inde)-.15 F 3.296(xo)-.15 G -3.296(ft)-3.296 G .796(he ne)-3.296 F(xt)-.15 E(ar)144 566.4 Q .085 +3.296(ft)-3.296 G .796(he ne)-3.296 F(xt)-.15 E(ar)144 626.4 Q .085 (gument to be processed into the v)-.18 F(ariable)-.25 E F4(OPTIND)2.585 E/F5 9/Times-Roman@0 SF(.)A F4(OPTIND)4.585 E F0 .085 (is initialized to 1 each time the shell)2.335 F .846 -(or a shell script is in)144 578.4 R -.2(vo)-.4 G -.1(ke).2 G 3.345 -(d. When).1 F .845(an option requires an ar)3.345 F(gument,)-.18 E F2 +(or a shell script is in)144 638.4 R -.2(vo)-.4 G -.1(ke).2 G 3.345 +(d. When).1 F .845(an option requires an ar)3.345 F(gument,)-.18 E F1 (getopts)3.345 E F0 .845(places that ar)3.345 F(gument)-.18 E .803 -(into the v)144 590.4 R(ariable)-.25 E F4(OPT)3.303 E(ARG)-.81 E F5(.)A +(into the v)144 650.4 R(ariable)-.25 E F4(OPT)3.303 E(ARG)-.81 E F5(.)A F0 .803(The shell does not reset)5.303 F F4(OPTIND)3.303 E F0 .804 (automatically; it must be manually)3.054 F .294 -(reset between multiple calls to)144 602.4 R F2(getopts)2.793 E F0 .293 +(reset between multiple calls to)144 662.4 R F1(getopts)2.793 E F0 .293 (within the same shell in)2.793 F -.2(vo)-.4 G .293(cation if a ne).2 F -2.793(ws)-.25 G .293(et of parameters)-2.793 F(is to be used.)144 614.4 -Q 2.043(When the end of options is encountered,)144 638.4 R F2(getopts) +2.793(ws)-.25 G .293(et of parameters)-2.793 F(is to be used.)144 674.4 +Q 2.043(When the end of options is encountered,)144 698.4 R F1(getopts) 4.543 E F0 -.15(ex)4.543 G 2.043(its with a return v).15 F 2.044 -(alue greater than zero.)-.25 F F4(OPTIND)144 650.4 Q F0 +(alue greater than zero.)-.25 F F4(OPTIND)144 710.4 Q F0 (is set to the inde)2.25 E 2.5(xo)-.15 G 2.5(ft)-2.5 G -(he \214rst non-option ar)-2.5 E(gument, and)-.18 E F2(name)2.5 E F0 -(is set to ?.)2.5 E F2(getopts)144 674.4 Q F0 2.393 -(normally parses the positional parameters, b)4.893 F 2.392 -(ut if more ar)-.2 F 2.392(guments are gi)-.18 F -.15(ve)-.25 G 4.892 -(ni).15 G(n)-4.892 E F1(ar)4.892 E(gs)-.37 E F0(,).27 E F2(getopts)144 -686.4 Q F0(parses those instead.)2.5 E F2(getopts)144 710.4 Q F0 1.165 -(can report errors in tw)3.665 F 3.665(ow)-.1 G 3.665(ays. If)-3.765 F -1.165(the \214rst character of)3.665 F F1(optstring)3.895 E F0 1.166 -(is a colon,)3.886 F F1(silent)4.006 E F0(error)4.346 E 1.264 -(reporting is used.)144 722.4 R 1.263 -(In normal operation diagnostic messages are printed when in)6.263 F --.25(va)-.4 G 1.263(lid options or).25 F(GNU Bash-4.0)72 768 Q -(2004 Apr 20)148.735 E(8)203.725 E 0 Cg EP +(he \214rst non-option ar)-2.5 E(gument, and)-.18 E F1(name)2.5 E F0 +(is set to ?.)2.5 E(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(8) +203.725 E 0 Cg EP %%Page: 9 9 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E .393 -(missing option ar)144 84 R .393(guments are encountered.)-.18 F .394 -(If the v)5.394 F(ariable)-.25 E/F1 9/Times-Bold@0 SF(OPTERR)2.894 E F0 -.394(is set to 0, no error messages)2.644 F(will be displayed, e)144 96 -Q -.15(ve)-.25 G 2.5(ni).15 G 2.5(ft)-2.5 G(he \214rst character of)-2.5 -E/F2 10/Times-Italic@0 SF(optstring)2.73 E F0(is not a colon.)2.72 E -.667(If an in)144 120 R -.25(va)-.4 G .667(lid option is seen,).25 F/F3 -10/Times-Bold@0 SF(getopts)3.167 E F0 .667(places ? into)3.167 F F2 -(name)3.527 E F0 .666(and, if not silent, prints an error message)3.347 -F .399(and unsets)144 132 R F1(OPT)2.899 E(ARG)-.81 E/F4 9/Times-Roman@0 -SF(.)A F0(If)4.899 E F3(getopts)2.899 E F0 .399 -(is silent, the option character found is placed in)2.899 F F1(OPT)2.899 -E(ARG)-.81 E F0 .4(and no)2.65 F(diagnostic message is printed.)144 144 -Q 1.242(If a required ar)144 168 R 1.242(gument is not found, and)-.18 F -F3(getopts)3.741 E F0 1.241(is not silent, a question mark \()3.741 F F3 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 +/Times-Bold@0 SF(getopts)144 84 Q F0 2.393 +(normally parses the positional parameters, b)4.893 F 2.392 +(ut if more ar)-.2 F 2.392(guments are gi)-.18 F -.15(ve)-.25 G 4.892 +(ni).15 G(n)-4.892 E/F2 10/Times-Italic@0 SF(ar)4.892 E(gs)-.37 E F0(,) +.27 E F1(getopts)144 96 Q F0(parses those instead.)2.5 E F1(getopts)144 +120 Q F0 1.165(can report errors in tw)3.665 F 3.665(ow)-.1 G 3.665 +(ays. If)-3.765 F 1.165(the \214rst character of)3.665 F F2(optstring) +3.895 E F0 1.166(is a colon,)3.886 F F2(silent)4.006 E F0(error)4.346 E +1.264(reporting is used.)144 132 R 1.263 +(In normal operation diagnostic messages are printed when in)6.263 F +-.25(va)-.4 G 1.263(lid options or).25 F .393(missing option ar)144 144 +R .393(guments are encountered.)-.18 F .394(If the v)5.394 F(ariable) +-.25 E/F3 9/Times-Bold@0 SF(OPTERR)2.894 E F0 .394 +(is set to 0, no error messages)2.644 F(will be displayed, e)144 156 Q +-.15(ve)-.25 G 2.5(ni).15 G 2.5(ft)-2.5 G(he \214rst character of)-2.5 E +F2(optstring)2.73 E F0(is not a colon.)2.72 E .667(If an in)144 180 R +-.25(va)-.4 G .667(lid option is seen,).25 F F1(getopts)3.167 E F0 .667 +(places ? into)3.167 F F2(name)3.527 E F0 .666 +(and, if not silent, prints an error message)3.347 F .399(and unsets)144 +192 R F3(OPT)2.899 E(ARG)-.81 E/F4 9/Times-Roman@0 SF(.)A F0(If)4.899 E +F1(getopts)2.899 E F0 .399 +(is silent, the option character found is placed in)2.899 F F3(OPT)2.899 +E(ARG)-.81 E F0 .4(and no)2.65 F(diagnostic message is printed.)144 204 +Q 1.242(If a required ar)144 228 R 1.242(gument is not found, and)-.18 F +F1(getopts)3.741 E F0 1.241(is not silent, a question mark \()3.741 F F1 (?).833 E F0 3.741(\)i).833 G 3.741(sp)-3.741 G 1.241(laced in)-3.741 F -F2(name)144 180 Q F0(,).18 E F1(OPT)2.734 E(ARG)-.81 E F0 .234 -(is unset, and a diagnostic message is printed.)2.484 F(If)5.234 E F3 -(getopts)2.734 E F0 .235(is silent, then a colon \()2.734 F F3(:).833 E -F0(\)).833 E(is placed in)144 192 Q F2(name)2.86 E F0(and)2.68 E F1(OPT) -2.5 E(ARG)-.81 E F0(is set to the option character found.)2.25 E F3 -(getopts)144 216 Q F0 .902 +F2(name)144 240 Q F0(,).18 E F3(OPT)2.734 E(ARG)-.81 E F0 .234 +(is unset, and a diagnostic message is printed.)2.484 F(If)5.234 E F1 +(getopts)2.734 E F0 .235(is silent, then a colon \()2.734 F F1(:).833 E +F0(\)).833 E(is placed in)144 252 Q F2(name)2.86 E F0(and)2.68 E F3(OPT) +2.5 E(ARG)-.81 E F0(is set to the option character found.)2.25 E F1 +(getopts)144 276 Q F0 .902 (returns true if an option, speci\214ed or unspeci\214ed, is found.) 3.402 F .902(It returns f)5.902 F .901(alse if the end of)-.1 F -(options is encountered or an error occurs.)144 228 Q F3(hash)108 244.8 -Q F0([)2.5 E F3(\255lr)A F0 2.5(][)C F3<ad70>-2.5 E F2(\214lename)2.5 E -F0 2.5(][)C F3(\255dt)-2.5 E F0 2.5(][)C F2(name)-2.5 E F0(])A .858 -(Each time)144 256.8 R F3(hash)3.358 E F0 .858(is in)3.358 F -.2(vo)-.4 +(options is encountered or an error occurs.)144 288 Q F1(hash)108 304.8 +Q F0([)2.5 E F1(\255lr)A F0 2.5(][)C F1<ad70>-2.5 E F2(\214lename)2.5 E +F0 2.5(][)C F1(\255dt)-2.5 E F0 2.5(][)C F2(name)-2.5 E F0(])A .858 +(Each time)144 316.8 R F1(hash)3.358 E F0 .858(is in)3.358 F -.2(vo)-.4 G -.1(ke).2 G .858(d, the full pathname of the command).1 F F2(name) 3.718 E F0 .858(is determined by searching)3.538 F .956 -(the directories in)144 268.8 R F3($P)3.456 E -.95(AT)-.74 G(H).95 E F0 +(the directories in)144 328.8 R F1($P)3.456 E -.95(AT)-.74 G(H).95 E F0 .956(and remembered.)3.456 F(An)5.956 E 3.456(yp)-.15 G(re)-3.456 E .956 -(viously-remembered pathname is discarded.)-.25 F .098(If the)144 280.8 -R F3<ad70>2.598 E F0 .098 +(viously-remembered pathname is discarded.)-.25 F .098(If the)144 340.8 +R F1<ad70>2.598 E F0 .098 (option is supplied, no path search is performed, and)2.598 F F2 (\214lename)4.509 E F0 .099(is used as the full \214le name)2.779 F -1.712(of the command.)144 292.8 R(The)6.712 E F3<ad72>4.212 E F0 1.711 +1.712(of the command.)144 352.8 R(The)6.712 E F1<ad72>4.212 E F0 1.711 (option causes the shell to for)4.212 F 1.711 -(get all remembered locations.)-.18 F(The)6.711 E F3<ad64>4.211 E F0 -.833(option causes the shell to for)144 304.8 R .833 +(get all remembered locations.)-.18 F(The)6.711 E F1<ad64>4.211 E F0 +.833(option causes the shell to for)144 364.8 R .833 (get the remembered location of each)-.18 F F2(name)3.333 E F0 5.833(.I) -C 3.333(ft)-5.833 G(he)-3.333 E F3<ad74>3.333 E F0 .833(option is sup-) -3.333 F .704(plied, the full pathname to which each)144 316.8 R F2(name) +C 3.333(ft)-5.833 G(he)-3.333 E F1<ad74>3.333 E F0 .833(option is sup-) +3.333 F .704(plied, the full pathname to which each)144 376.8 R F2(name) 3.204 E F0 .703(corresponds is printed.)3.204 F .703(If multiple)5.703 F F2(name)3.203 E F0(ar)3.203 E(guments)-.18 E .795(are supplied with)144 -328.8 R F3<ad74>3.295 E F0 3.295(,t)C(he)-3.295 E F2(name)3.295 E F0 -.795(is printed before the hashed full pathname.)3.295 F(The)5.795 E F3 +388.8 R F1<ad74>3.295 E F0 3.295(,t)C(he)-3.295 E F2(name)3.295 E F0 +.795(is printed before the hashed full pathname.)3.295 F(The)5.795 E F1 <ad6c>3.295 E F0 .795(option causes)3.295 F .934 (output to be displayed in a format that may be reused as input.)144 -340.8 R .934(If no ar)5.934 F .934(guments are gi)-.18 F -.15(ve)-.25 G -.934(n, or if).15 F(only)144 352.8 Q F3<ad6c>2.821 E F0 .321 +400.8 R .934(If no ar)5.934 F .934(guments are gi)-.18 F -.15(ve)-.25 G +.934(n, or if).15 F(only)144 412.8 Q F1<ad6c>2.821 E F0 .321 (is supplied, information about remembered commands is printed.)2.821 F -.322(The return status is true)5.322 F(unless a)144 364.8 Q F2(name)2.86 +.322(The return status is true)5.322 F(unless a)144 424.8 Q F2(name)2.86 E F0(is not found or an in)2.68 E -.25(va)-.4 G(lid option is supplied.) -.25 E F3(help)108 381.6 Q F0([)2.5 E F3(\255dms)A F0 2.5(][)C F2 +.25 E F1(help)108 441.6 Q F0([)2.5 E F1(\255dms)A F0 2.5(][)C F2 (pattern)-2.5 E F0(])A .867(Display helpful information about b)144 -393.6 R .867(uiltin commands.)-.2 F(If)5.867 E F2(pattern)4.617 E F0 -.866(is speci\214ed,)3.607 F F3(help)3.366 E F0(gi)3.366 E -.15(ve)-.25 +453.6 R .867(uiltin commands.)-.2 F(If)5.867 E F2(pattern)4.617 E F0 +.866(is speci\214ed,)3.607 F F1(help)3.366 E F0(gi)3.366 E -.15(ve)-.25 G 3.366(sd).15 G(etailed)-3.366 E .306(help on all commands matching)144 -405.6 R F2(pattern)2.806 E F0 2.807(;o).24 G .307 +465.6 R F2(pattern)2.806 E F0 2.807(;o).24 G .307 (therwise help for all the b)-2.807 F .307 -(uiltins and shell control struc-)-.2 F(tures is printed.)144 417.6 Q F3 -<ad64>144 429.6 Q F0(Display a short description of each)24.74 E F2 -(pattern)2.5 E F3<ad6d>144 441.6 Q F0(Display the description of each) +(uiltins and shell control struc-)-.2 F(tures is printed.)144 477.6 Q F1 +<ad64>144 489.6 Q F0(Display a short description of each)24.74 E F2 +(pattern)2.5 E F1<ad6d>144 501.6 Q F0(Display the description of each) 21.97 E F2(pattern)2.5 E F0(in a manpage-lik)2.5 E 2.5(ef)-.1 G(ormat) --2.5 E F3<ad73>144 453.6 Q F0 +-2.5 E F1<ad73>144 513.6 Q F0 (Display only a short usage synopsis for each)26.41 E F2(pattern)2.5 E -F0(The return status is 0 unless no command matches)108 465.6 Q F2 -(pattern)2.5 E F0(.).24 E F3(history [)108 482.4 Q F2(n)A F3(])A -(history \255c)108 494.4 Q(history \255d)108 506.4 Q F2(of)2.5 E(fset) --.18 E F3(history \255anrw)108 518.4 Q F0([)2.5 E F2(\214lename)A F0(])A -F3(history \255p)108 530.4 Q F2(ar)2.5 E(g)-.37 E F0([)2.5 E F2(ar)A 2.5 -(g.)-.37 G(..)-2.5 E F0(])A F3(history \255s)108 542.4 Q F2(ar)2.5 E(g) +F0(The return status is 0 unless no command matches)108 525.6 Q F2 +(pattern)2.5 E F0(.).24 E F1(history [)108 542.4 Q F2(n)A F1(])A +(history \255c)108 554.4 Q(history \255d)108 566.4 Q F2(of)2.5 E(fset) +-.18 E F1(history \255anrw)108 578.4 Q F0([)2.5 E F2(\214lename)A F0(])A +F1(history \255p)108 590.4 Q F2(ar)2.5 E(g)-.37 E F0([)2.5 E F2(ar)A 2.5 +(g.)-.37 G(..)-2.5 E F0(])A F1(history \255s)108 602.4 Q F2(ar)2.5 E(g) -.37 E F0([)2.5 E F2(ar)A 2.5(g.)-.37 G(..)-2.5 E F0(])A -.4(Wi)144 -554.4 S .752 +614.4 S .752 (th no options, display the command history list with line numbers.).4 F -.752(Lines listed with a)5.752 F F3(*)3.251 E F0(ha)3.251 E -.15(ve)-.2 -G .38(been modi\214ed.)144 566.4 R .38(An ar)5.38 F .38(gument of)-.18 F +.752(Lines listed with a)5.752 F F1(*)3.251 E F0(ha)3.251 E -.15(ve)-.2 +G .38(been modi\214ed.)144 626.4 R .38(An ar)5.38 F .38(gument of)-.18 F F2(n)3.24 E F0 .38(lists only the last)3.12 F F2(n)3.24 E F0 2.88 -(lines. If)3.12 F .38(the shell v)2.88 F(ariable)-.25 E F1(HISTTIMEFOR-) -2.881 E(MA)144 578.4 Q(T)-.855 E F0 .265 +(lines. If)3.12 F .38(the shell v)2.88 F(ariable)-.25 E F3(HISTTIMEFOR-) +2.881 E(MA)144 638.4 Q(T)-.855 E F0 .265 (is set and not null, it is used as a format string for)2.515 F F2 (strftime)2.764 E F0 .264(\(3\) to display the time stamp asso-)B 1.019 -(ciated with each displayed history entry)144 590.4 R 6.019(.N)-.65 G +(ciated with each displayed history entry)144 650.4 R 6.019(.N)-.65 G 3.519(oi)-6.019 G(nterv)-3.519 E 1.019 (ening blank is printed between the formatted)-.15 F .176 -(time stamp and the history line.)144 602.4 R(If)5.176 E F2(\214lename) +(time stamp and the history line.)144 662.4 R(If)5.176 E F2(\214lename) 2.676 E F0 .176 (is supplied, it is used as the name of the history \214le; if)2.676 F -(not, the v)144 614.4 Q(alue of)-.25 E F1(HISTFILE)2.5 E F0(is used.) +(not, the v)144 674.4 Q(alue of)-.25 E F3(HISTFILE)2.5 E F0(is used.) 2.25 E(Options, if supplied, ha)5 E .3 -.15(ve t)-.2 H(he follo).15 E -(wing meanings:)-.25 E F3<ad63>144 626.4 Q F0 -(Clear the history list by deleting all the entries.)25.86 E F3<ad64>144 -638.4 Q F2(of)2.5 E(fset)-.18 E F0(Delete the history entry at position) -180 650.4 Q F2(of)2.5 E(fset)-.18 E F0(.)A F3<ad61>144 662.4 Q F0 .598 -(Append the `)25.3 F(`ne)-.74 E(w')-.25 E 3.098('h)-.74 G .598 -(istory lines \(history lines entered since the be)-3.098 F .599 -(ginning of the current)-.15 F F3(bash)180 674.4 Q F0 -(session\) to the history \214le.)2.5 E F3<ad6e>144 686.4 Q F0 .854(Rea\ -d the history lines not already read from the history \214le into the c\ -urrent history list.)24.74 F .772 -(These are lines appended to the history \214le since the be)180 698.4 R -.773(ginning of the current)-.15 F F3(bash)3.273 E F0(ses-)3.273 E -(sion.)180 710.4 Q(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(9)203.725 -E 0 Cg EP +(wing meanings:)-.25 E F1<ad63>144 686.4 Q F0 +(Clear the history list by deleting all the entries.)25.86 E F1<ad64>144 +698.4 Q F2(of)2.5 E(fset)-.18 E F0(Delete the history entry at position) +180 710.4 Q F2(of)2.5 E(fset)-.18 E F0(.)A(GNU Bash-4.0)72 768 Q +(2004 Apr 20)148.735 E(9)203.725 E 0 Cg EP %%Page: 10 10 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 (TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF<ad72>144 84 Q F0(Read the contents of the history \214\ -le and use them as the current history)25.86 E(.)-.65 E F1<ad77>144 96 Q -F0(Write the current history to the history \214le, o)23.08 E -.15(ve) --.15 G(rwriting the history \214le').15 E 2.5(sc)-.55 G(ontents.)-2.5 E -F1<ad70>144 108 Q F0 .626(Perform history substitution on the follo) -24.74 F(wing)-.25 E/F2 10/Times-Italic@0 SF(ar)3.125 E(gs)-.37 E F0 .625 +/Times-Bold@0 SF<ad61>144 84 Q F0 .598(Append the `)25.3 F(`ne)-.74 E +(w')-.25 E 3.098('h)-.74 G .598 +(istory lines \(history lines entered since the be)-3.098 F .599 +(ginning of the current)-.15 F F1(bash)180 96 Q F0 +(session\) to the history \214le.)2.5 E F1<ad6e>144 108 Q F0 .854(Read \ +the history lines not already read from the history \214le into the cur\ +rent history list.)24.74 F .772 +(These are lines appended to the history \214le since the be)180 120 R +.773(ginning of the current)-.15 F F1(bash)3.273 E F0(ses-)3.273 E +(sion.)180 132 Q F1<ad72>144 144 Q F0(Read the contents of the history \ +\214le and use them as the current history)25.86 E(.)-.65 E F1<ad77>144 +156 Q F0(Write the current history to the history \214le, o)23.08 E -.15 +(ve)-.15 G(rwriting the history \214le').15 E 2.5(sc)-.55 G(ontents.) +-2.5 E F1<ad70>144 168 Q F0 .626 +(Perform history substitution on the follo)24.74 F(wing)-.25 E/F2 10 +/Times-Italic@0 SF(ar)3.125 E(gs)-.37 E F0 .625 (and display the result on the standard)3.125 F 2.975(output. Does)180 -120 R .475(not store the results in the history list.)2.975 F(Each)5.475 +180 R .475(not store the results in the history list.)2.975 F(Each)5.475 E F2(ar)2.975 E(g)-.37 E F0 .475(must be quoted to disable)2.975 F -(normal history e)180 132 Q(xpansion.)-.15 E F1<ad73>144 144 Q F0 .363 +(normal history e)180 192 Q(xpansion.)-.15 E F1<ad73>144 204 Q F0 .363 (Store the)26.41 F F2(ar)3.193 E(gs)-.37 E F0 .363 (in the history list as a single entry)3.133 F 5.363(.T)-.65 G .362 -(he last command in the history list is)-5.363 F(remo)180 156 Q -.15(ve) +(he last command in the history list is)-5.363 F(remo)180 216 Q -.15(ve) -.15 G 2.5(db).15 G(efore the)-2.5 E F2(ar)2.83 E(gs)-.37 E F0 -(are added.)2.77 E .145(If the)144 172.8 R/F3 9/Times-Bold@0 SF +(are added.)2.77 E .145(If the)144 232.8 R/F3 9/Times-Bold@0 SF (HISTTIMEFORMA)2.645 E(T)-.855 E F0 -.25(va)2.395 G .145 (riable is set, the time stamp information associated with each history) -.25 F .669(entry is written to the history \214le, mark)144 184.8 R .669 +.25 F .669(entry is written to the history \214le, mark)144 244.8 R .669 (ed with the history comment character)-.1 F 5.668(.W)-.55 G .668 -(hen the history)-5.668 F .955(\214le is read, lines be)144 196.8 R .956 +(hen the history)-5.668 F .955(\214le is read, lines be)144 256.8 R .956 (ginning with the history comment character follo)-.15 F .956 (wed immediately by a digit)-.25 F .416 -(are interpreted as timestamps for the pre)144 208.8 R .416 +(are interpreted as timestamps for the pre)144 268.8 R .416 (vious history line.)-.25 F .416(The return v)5.416 F .415 (alue is 0 unless an in)-.25 F -.25(va)-.4 G(lid).25 E .499(option is e\ ncountered, an error occurs while reading or writing the history \214le\ -, an in)144 220.8 R -.25(va)-.4 G(lid).25 E F2(of)3 E(fset)-.18 E F0(is) -3 E(supplied as an ar)144 232.8 Q(gument to)-.18 E F1<ad64>2.5 E F0 2.5 +, an in)144 280.8 R -.25(va)-.4 G(lid).25 E F2(of)3 E(fset)-.18 E F0(is) +3 E(supplied as an ar)144 292.8 Q(gument to)-.18 E F1<ad64>2.5 E F0 2.5 (,o)C 2.5(rt)-2.5 G(he history e)-2.5 E(xpansion supplied as an ar)-.15 E(gument to)-.18 E F1<ad70>2.5 E F0 -.1(fa)2.5 G(ils.).1 E F1(jobs)108 -249.6 Q F0([)2.5 E F1(\255lnprs)A F0 2.5(][)C F2(jobspec)A F0(... ])2.5 -E F1(jobs \255x)108 261.6 Q F2(command)2.5 E F0([)2.5 E F2(ar)2.5 E(gs) --.37 E F0(... ])2.5 E(The \214rst form lists the acti)144 273.6 Q .3 +309.6 Q F0([)2.5 E F1(\255lnprs)A F0 2.5(][)C F2(jobspec)A F0(... ])2.5 +E F1(jobs \255x)108 321.6 Q F2(command)2.5 E F0([)2.5 E F2(ar)2.5 E(gs) +-.37 E F0(... ])2.5 E(The \214rst form lists the acti)144 333.6 Q .3 -.15(ve j)-.25 H 2.5(obs. The).15 F(options ha)2.5 E .3 -.15(ve t)-.2 H -(he follo).15 E(wing meanings:)-.25 E F1<ad6c>144 285.6 Q F0 +(he follo).15 E(wing meanings:)-.25 E F1<ad6c>144 345.6 Q F0 (List process IDs in addition to the normal information.)27.52 E F1 -<ad6e>144 297.6 Q F0 .194(Display information only about jobs that ha) +<ad6e>144 357.6 Q F0 .194(Display information only about jobs that ha) 24.74 F .494 -.15(ve c)-.2 H .193(hanged status since the user w).15 F -.193(as last noti-)-.1 F(\214ed of their status.)180 309.6 Q F1<ad70>144 -321.6 Q F0(List only the process ID of the job')24.74 E 2.5(sp)-.55 G -(rocess group leader)-2.5 E(.)-.55 E F1<ad72>144 333.6 Q F0 -(Restrict output to running jobs.)25.86 E F1<ad73>144 345.6 Q F0 -(Restrict output to stopped jobs.)26.41 E(If)144 362.4 Q F2(jobspec) +.193(as last noti-)-.1 F(\214ed of their status.)180 369.6 Q F1<ad70>144 +381.6 Q F0(List only the process ID of the job')24.74 E 2.5(sp)-.55 G +(rocess group leader)-2.5 E(.)-.55 E F1<ad72>144 393.6 Q F0 +(Restrict output to running jobs.)25.86 E F1<ad73>144 405.6 Q F0 +(Restrict output to stopped jobs.)26.41 E(If)144 422.4 Q F2(jobspec) 4.553 E F0 .313(is gi)3.123 F -.15(ve)-.25 G .313 (n, output is restricted to information about that job).15 F 5.314(.T) --.4 G .314(he return status is 0 unless)-5.314 F(an in)144 374.4 Q -.25 +-.4 G .314(he return status is 0 unless)-5.314 F(an in)144 434.4 Q -.25 (va)-.4 G(lid option is encountered or an in).25 E -.25(va)-.4 G(lid).25 -E F2(jobspec)4.24 E F0(is supplied.)2.81 E .395(If the)144 391.2 R F1 +E F2(jobspec)4.24 E F0(is supplied.)2.81 E .395(If the)144 451.2 R F1 <ad78>2.895 E F0 .394(option is supplied,)2.894 F F1(jobs)2.894 E F0 .394(replaces an)2.894 F(y)-.15 E F2(jobspec)4.634 E F0 .394(found in) 3.204 F F2(command)3.094 E F0(or)3.664 E F2(ar)3.224 E(gs)-.37 E F0 .394 -(with the corre-)3.164 F(sponding process group ID, and e)144 403.2 Q +(with the corre-)3.164 F(sponding process group ID, and e)144 463.2 Q -.15(xe)-.15 G(cutes).15 E F2(command)2.7 E F0(passing it)3.27 E F2(ar) 2.5 E(gs)-.37 E F0 2.5(,r).27 G(eturning its e)-2.5 E(xit status.)-.15 E -F1(kill)108 420 Q F0([)2.5 E F1<ad73>A F2(sigspec)2.5 E F0(|)2.5 E F1 +F1(kill)108 480 Q F0([)2.5 E F1<ad73>A F2(sigspec)2.5 E F0(|)2.5 E F1 <ad6e>2.5 E F2(signum)2.5 E F0(|)2.5 E F1<ad>2.5 E F2(sigspec)A F0 2.5 (][)C F2(pid)-2.5 E F0(|)2.5 E F2(jobspec)2.5 E F0 2.5(].)C(..)-2.5 E F1 -(kill \255l)108 432 Q F0([)2.5 E F2(sigspec)A F0(|)2.5 E F2 -.2(ex)2.5 G -(it_status).2 E F0(])A .119(Send the signal named by)144 444 R F2 +(kill \255l)108 492 Q F0([)2.5 E F2(sigspec)A F0(|)2.5 E F2 -.2(ex)2.5 G +(it_status).2 E F0(])A .119(Send the signal named by)144 504 R F2 (sigspec)2.959 E F0(or)2.929 E F2(signum)2.959 E F0 .119 (to the processes named by)2.939 F F2(pid)3.87 E F0(or)3.39 E F2 (jobspec)2.62 E F0(.).31 E F2(sigspec)5.46 E F0(is)2.93 E .319 -(either a case-insensiti)144 456 R .619 -.15(ve s)-.25 H .319 +(either a case-insensiti)144 516 R .619 -.15(ve s)-.25 H .319 (ignal name such as).15 F F3(SIGKILL)2.819 E F0 .318 (\(with or without the)2.569 F F3(SIG)2.818 E F0 .318 -(pre\214x\) or a signal)2.568 F(number;)144 468 Q F2(signum)4.188 E F0 +(pre\214x\) or a signal)2.568 F(number;)144 528 Q F2(signum)4.188 E F0 1.349(is a signal number)4.168 F 6.349(.I)-.55 G(f)-6.349 E F2(sigspec) 4.189 E F0 1.349(is not present, then)4.159 F F3(SIGTERM)3.849 E F0 -1.349(is assumed.)3.599 F(An)6.349 E(ar)144 480 Q .523(gument of)-.18 F +1.349(is assumed.)3.599 F(An)6.349 E(ar)144 540 Q .523(gument of)-.18 F F1<ad6c>3.023 E F0 .523(lists the signal names.)3.023 F .523(If an)5.523 F 3.023(ya)-.15 G -.18(rg)-3.023 G .523(uments are supplied when).18 F F1<ad6c>3.023 E F0 .523(is gi)3.023 F -.15(ve)-.25 G .523(n, the names) -.15 F .28(of the signals corresponding to the ar)144 492 R .28 +.15 F .28(of the signals corresponding to the ar)144 552 R .28 (guments are listed, and the return status is 0.)-.18 F(The)5.28 E F2 --.2(ex)2.78 G(it_status).2 E F0(ar)144 504 Q .378(gument to)-.18 F F1 +-.2(ex)2.78 G(it_status).2 E F0(ar)144 564 Q .378(gument to)-.18 F F1 <ad6c>2.878 E F0 .378 (is a number specifying either a signal number or the e)2.878 F .377 -(xit status of a process termi-)-.15 F .593(nated by a signal.)144 516 R +(xit status of a process termi-)-.15 F .593(nated by a signal.)144 576 R F1(kill)5.593 E F0 .593(returns true if at least one signal w)3.093 F .593(as successfully sent, or f)-.1 F .594(alse if an error)-.1 F -(occurs or an in)144 528 Q -.25(va)-.4 G(lid option is encountered.).25 -E F1(let)108 544.8 Q F2(ar)2.5 E(g)-.37 E F0([)2.5 E F2(ar)A(g)-.37 E F0 -(...])2.5 E(Each)144 556.8 Q F2(ar)3.027 E(g)-.37 E F0 .197 +(occurs or an in)144 588 Q -.25(va)-.4 G(lid option is encountered.).25 +E F1(let)108 604.8 Q F2(ar)2.5 E(g)-.37 E F0([)2.5 E F2(ar)A(g)-.37 E F0 +(...])2.5 E(Each)144 616.8 Q F2(ar)3.027 E(g)-.37 E F0 .197 (is an arithmetic e)2.917 F .197(xpression to be e)-.15 F -.25(va)-.25 G .196(luated \(see).25 F F3 .196(ARITHMETIC EV)2.696 F(ALU)-1.215 E -.855 (AT)-.54 G(ION).855 E F0(abo)2.446 E -.15(ve)-.15 G 2.696(\). If).15 F -(the last)144 568.8 Q F2(ar)2.83 E(g)-.37 E F0 -.25(eva)2.72 G +(the last)144 628.8 Q F2(ar)2.83 E(g)-.37 E F0 -.25(eva)2.72 G (luates to 0,).25 E F1(let)2.5 E F0(returns 1; 0 is returned otherwise.) -2.5 E F1(local)108 585.6 Q F0([)2.5 E F2(option)A F0 2.5(][)C F2(name) --2.5 E F0([=)A F2(value)A F0 2.5(].)C(..])-2.5 E -.15(Fo)144 597.6 S +2.5 E F1(local)108 645.6 Q F0([)2.5 E F2(option)A F0 2.5(][)C F2(name) +-2.5 E F0([=)A F2(value)A F0 2.5(].)C(..])-2.5 E -.15(Fo)144 657.6 S 2.56(re).15 G .06(ach ar)-2.56 F .06(gument, a local v)-.18 F .06 (ariable named)-.25 F F2(name)2.92 E F0 .06(is created, and assigned) 2.74 F F2(value)2.56 E F0 5.06(.T).18 G(he)-5.06 E F2(option)2.56 E F0 -.06(can be)2.56 F(an)144 609.6 Q 3.153(yo)-.15 G 3.153(ft)-3.153 G .653 +.06(can be)2.56 F(an)144 669.6 Q 3.153(yo)-.15 G 3.153(ft)-3.153 G .653 (he options accepted by)-3.153 F F1(declar)3.153 E(e)-.18 E F0 5.652(.W) C(hen)-5.652 E F1(local)3.152 E F0 .652 (is used within a function, it causes the v)3.152 F(ari-)-.25 E(able)144 -621.6 Q F2(name)3.72 E F0 .86(to ha)3.54 F 1.16 -.15(ve a v)-.2 H .861 +681.6 Q F2(name)3.72 E F0 .86(to ha)3.54 F 1.16 -.15(ve a v)-.2 H .861 (isible scope restricted to that function and its children.).15 F -.4 -(Wi)5.861 G .861(th no operands,).4 F F1(local)144 633.6 Q F0 1.165 +(Wi)5.861 G .861(th no operands,).4 F F1(local)144 693.6 Q F0 1.165 (writes a list of local v)3.665 F 1.165 (ariables to the standard output.)-.25 F 1.165(It is an error to use) 6.165 F F1(local)3.664 E F0 1.164(when not)3.664 F .232 -(within a function.)144 645.6 R .233(The return status is 0 unless)5.232 +(within a function.)144 705.6 R .233(The return status is 0 unless)5.232 F F1(local)2.733 E F0 .233(is used outside a function, an in)2.733 F -.25(va)-.4 G(lid).25 E F2(name)3.093 E F0(is)2.913 E(supplied, or)144 -657.6 Q F2(name)2.5 E F0(is a readonly v)2.5 E(ariable.)-.25 E F1 -(logout)108 674.4 Q F0(Exit a login shell.)9.33 E F1(map\214le)108 691.2 -Q F0([)2.5 E F1<ad6e>A F2(count)2.5 E F0 2.5(][)C F1<ad4f>-2.5 E F2 -(origin)2.5 E F0 2.5(][)C F1<ad73>-2.5 E F2(count)2.5 E F0 2.5(][)C F1 -<ad74>-2.5 E F0 2.5(][)C F1<ad75>-2.5 E F2(fd)2.5 E F0 2.5(][)C F1<ad43> --2.5 E F2(callbac)2.5 E(k)-.2 E F0 2.5(][)C F1<ad63>-2.5 E F2(quantum) -2.5 E F0 2.5(][)C F2(arr)-2.5 E(ay)-.15 E F0(])A F1 -.18(re)108 703.2 S -(adarray).18 E F0([)2.5 E F1<ad6e>A F2(count)2.5 E F0 2.5(][)C F1<ad4f> --2.5 E F2(origin)2.5 E F0 2.5(][)C F1<ad73>-2.5 E F2(count)2.5 E F0 2.5 -(][)C F1<ad74>-2.5 E F0 2.5(][)C F1<ad75>-2.5 E F2(fd)2.5 E F0 2.5(][)C -F1<ad43>-2.5 E F2(callbac)2.5 E(k)-.2 E F0 2.5(][)C F1<ad63>-2.5 E F2 -(quantum)2.5 E F0 2.5(][)C F2(arr)-2.5 E(ay)-.15 E F0(])A .351 -(Read lines from the standard input into the inde)144 715.2 R -.15(xe) --.15 G 2.851(da).15 G .351(rray v)-2.851 F(ariable)-.25 E F2(arr)2.85 E -(ay)-.15 E F0 2.85(,o).32 G 2.85(rf)-2.85 G .35(rom \214le descriptor) --2.85 F F2(fd)2.85 E F0 1.248(if the)144 727.2 R F1<ad75>3.748 E F0 -1.248(option is supplied.)3.748 F 1.249(The v)6.249 F(ariable)-.25 E F3 -(MAPFILE)3.749 E F0 1.249(is the def)3.499 F(ault)-.1 E F2(arr)3.749 E -(ay)-.15 E F0 6.249(.O)C 1.249(ptions, if supplied,)-6.249 F +717.6 Q F2(name)2.5 E F0(is a readonly v)2.5 E(ariable.)-.25 E (GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(10)198.725 E 0 Cg EP %%Page: 11 11 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E(ha)144 84 Q -.3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E/F1 10 -/Times-Bold@0 SF<ad6e>144 96 Q F0(Cop)24.74 E 2.5(ya)-.1 G 2.5(tm)-2.5 G -(ost)-2.5 E/F2 10/Times-Italic@0 SF(count)2.7 E F0 2.5(lines. If)3.18 F -F2(count)2.5 E F0(is 0, all lines are copied.)2.5 E F1<ad4f>144 108 Q F0 -(Be)22.52 E(gin assigning to)-.15 E F2(arr)2.83 E(ay)-.15 E F0(at inde) -2.82 E(x)-.15 E F2(origin)2.5 E F0 5(.T).24 G(he def)-5 E(ault inde)-.1 -E 2.5(xi)-.15 G 2.5(s0)-2.5 G(.)-2.5 E F1<ad73>144 120 Q F0 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 +/Times-Bold@0 SF(logout)108 84 Q F0(Exit a login shell.)9.33 E F1 +(map\214le)108 100.8 Q F0([)2.5 E F1<ad6e>A/F2 10/Times-Italic@0 SF +(count)2.5 E F0 2.5(][)C F1<ad4f>-2.5 E F2(origin)2.5 E F0 2.5(][)C F1 +<ad73>-2.5 E F2(count)2.5 E F0 2.5(][)C F1<ad74>-2.5 E F0 2.5(][)C F1 +<ad75>-2.5 E F2(fd)2.5 E F0 2.5(][)C F1<ad43>-2.5 E F2(callbac)2.5 E(k) +-.2 E F0 2.5(][)C F1<ad63>-2.5 E F2(quantum)2.5 E F0 2.5(][)C F2(arr) +-2.5 E(ay)-.15 E F0(])A F1 -.18(re)108 112.8 S(adarray).18 E F0([)2.5 E +F1<ad6e>A F2(count)2.5 E F0 2.5(][)C F1<ad4f>-2.5 E F2(origin)2.5 E F0 +2.5(][)C F1<ad73>-2.5 E F2(count)2.5 E F0 2.5(][)C F1<ad74>-2.5 E F0 2.5 +(][)C F1<ad75>-2.5 E F2(fd)2.5 E F0 2.5(][)C F1<ad43>-2.5 E F2(callbac) +2.5 E(k)-.2 E F0 2.5(][)C F1<ad63>-2.5 E F2(quantum)2.5 E F0 2.5(][)C F2 +(arr)-2.5 E(ay)-.15 E F0(])A .351 +(Read lines from the standard input into the inde)144 124.8 R -.15(xe) +-.15 G 2.851(da).15 G .351(rray v)-2.851 F(ariable)-.25 E F2(arr)2.85 E +(ay)-.15 E F0 2.85(,o).32 G 2.85(rf)-2.85 G .35(rom \214le descriptor) +-2.85 F F2(fd)2.85 E F0 1.248(if the)144 136.8 R F1<ad75>3.748 E F0 +1.248(option is supplied.)3.748 F 1.249(The v)6.249 F(ariable)-.25 E/F3 +9/Times-Bold@0 SF(MAPFILE)3.749 E F0 1.249(is the def)3.499 F(ault)-.1 E +F2(arr)3.749 E(ay)-.15 E F0 6.249(.O)C 1.249(ptions, if supplied,)-6.249 +F(ha)144 148.8 Q .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E +F1<ad6e>144 160.8 Q F0(Cop)24.74 E 2.5(ya)-.1 G 2.5(tm)-2.5 G(ost)-2.5 E +F2(count)2.7 E F0 2.5(lines. If)3.18 F F2(count)2.5 E F0 +(is 0, all lines are copied.)2.5 E F1<ad4f>144 172.8 Q F0(Be)22.52 E +(gin assigning to)-.15 E F2(arr)2.83 E(ay)-.15 E F0(at inde)2.82 E(x) +-.15 E F2(origin)2.5 E F0 5(.T).24 G(he def)-5 E(ault inde)-.1 E 2.5(xi) +-.15 G 2.5(s0)-2.5 G(.)-2.5 E F1<ad73>144 184.8 Q F0 (Discard the \214rst)26.41 E F2(count)2.5 E F0(lines read.)2.5 E F1 -<ad74>144 132 Q F0(Remo)26.97 E .3 -.15(ve a t)-.15 H(railing ne).15 E -(wline from each line read.)-.25 E F1<ad75>144 144 Q F0 +<ad74>144 196.8 Q F0(Remo)26.97 E .3 -.15(ve a t)-.15 H(railing ne).15 E +(wline from each line read.)-.25 E F1<ad75>144 208.8 Q F0 (Read lines from \214le descriptor)24.74 E F2(fd)2.5 E F0 -(instead of the standard input.)2.5 E F1<ad43>144 156 Q F0(Ev)23.08 E +(instead of the standard input.)2.5 E F1<ad43>144 220.8 Q F0(Ev)23.08 E (aluate)-.25 E F2(callbac)2.7 E(k)-.2 E F0(each time)3.17 E F2(quantum) 2.5 E F0(lines are read.)2.5 E(The)5 E F1<ad63>2.5 E F0 -(option speci\214es)2.5 E F2(quantum)2.5 E F0(.).32 E F1<ad63>144 168 Q -F0(Specify the number of lines read between each call to)25.86 E F2 -(callbac)2.5 E(k)-.2 E F0(.).67 E(If)144 184.8 Q F1<ad43>2.968 E F0 .467 +(option speci\214es)2.5 E F2(quantum)2.5 E F0(.).32 E F1<ad63>144 232.8 +Q F0(Specify the number of lines read between each call to)25.86 E F2 +(callbac)2.5 E(k)-.2 E F0(.).67 E(If)144 249.6 Q F1<ad43>2.968 E F0 .467 (is speci\214ed without)2.967 F F1<ad63>2.967 E F0 2.967(,t)C .467 (he def)-2.967 F .467(ault quantum is 5000.)-.1 F(When)5.467 E F2 (callbac)2.967 E(k)-.2 E F0 .467(is e)2.967 F -.25(va)-.25 G .467 -(luated, it is sup-).25 F .261(plied the inde)144 196.8 R 2.761(xo)-.15 +(luated, it is sup-).25 F .261(plied the inde)144 261.6 R 2.761(xo)-.15 G 2.761(ft)-2.761 G .261(he ne)-2.761 F .262(xt array element to be ass\ igned and the line to be assigned to that element)-.15 F .275 -(as additional ar)144 208.8 R(guments.)-.18 E F2(callbac)5.275 E(k)-.2 E +(as additional ar)144 273.6 R(guments.)-.18 E F2(callbac)5.275 E(k)-.2 E F0 .275(is e)2.775 F -.25(va)-.25 G .274 (luated after the line is read b).25 F .274 -(ut before the array element is)-.2 F(assigned.)144 220.8 Q -(If not supplied with an e)144 237.6 Q(xplicit origin,)-.15 E F1 +(ut before the array element is)-.2 F(assigned.)144 285.6 Q +(If not supplied with an e)144 302.4 Q(xplicit origin,)-.15 E F1 (map\214le)2.5 E F0(will clear)2.5 E F2(arr)2.5 E(ay)-.15 E F0 -(before assigning to it.)2.5 E F1(map\214le)144 254.4 Q F0 1.905 +(before assigning to it.)2.5 E F1(map\214le)144 319.2 Q F0 1.905 (returns successfully unless an in)4.405 F -.25(va)-.4 G 1.905 (lid option or option ar).25 F 1.906(gument is supplied,)-.18 F F2(arr) -4.406 E(ay)-.15 E F0(is)4.406 E(in)144 266.4 Q -.25(va)-.4 G +4.406 E(ay)-.15 E F0(is)4.406 E(in)144 331.2 Q -.25(va)-.4 G (lid or unassignable, or if).25 E F2(arr)2.5 E(ay)-.15 E F0 (is not an inde)2.5 E -.15(xe)-.15 G 2.5(da).15 G(rray)-2.5 E(.)-.65 E -F1(popd)108 283.2 Q F0<5bad>2.5 E F1(n)A F0 2.5(][)C(+)-2.5 E F2(n)A F0 -2.5(][)C<ad>-2.5 E F2(n)A F0(])A(Remo)144 295.2 Q -.15(ve)-.15 G 2.8(se) +F1(popd)108 348 Q F0<5bad>2.5 E F1(n)A F0 2.5(][)C(+)-2.5 E F2(n)A F0 +2.5(][)C<ad>-2.5 E F2(n)A F0(])A(Remo)144 360 Q -.15(ve)-.15 G 2.8(se) .15 G .3(ntries from the directory stack.)-2.8 F -.4(Wi)5.299 G .299 (th no ar).4 F .299(guments, remo)-.18 F -.15(ve)-.15 G 2.799(st).15 G .299(he top directory from the)-2.799 F 1.478(stack, and performs a)144 -307.2 R F1(cd)3.978 E F0 1.479(to the ne)3.978 F 3.979(wt)-.25 G 1.479 +372 R F1(cd)3.978 E F0 1.479(to the ne)3.978 F 3.979(wt)-.25 G 1.479 (op directory)-3.979 F 6.479(.A)-.65 G -.18(rg)-6.479 G 1.479 (uments, if supplied, ha).18 F 1.779 -.15(ve t)-.2 H 1.479(he follo).15 -F(wing)-.25 E(meanings:)144 319.2 Q F1<ad6e>144 331.2 Q F0 .551 +F(wing)-.25 E(meanings:)144 384 Q F1<ad6e>144 396 Q F0 .551 (Suppresses the normal change of directory when remo)24.74 F .551 (ving directories from the stack, so)-.15 F -(that only the stack is manipulated.)180 343.2 Q F1(+)144 355.2 Q F2(n)A -F0(Remo)25.3 E -.15(ve)-.15 G 2.64(st).15 G(he)-2.64 E F2(n)2.64 E F0 -.14(th entry counting from the left of the list sho)B .14(wn by)-.25 F -F1(dirs)2.64 E F0 2.64(,s)C .14(tarting with zero.)-2.64 F -.15(Fo)180 -367.2 S 2.5(re).15 G(xample:)-2.65 E/F3 10/Courier@0 SF(popd +0)2.5 E F0 -(remo)2.5 E -.15(ve)-.15 G 2.5(st).15 G(he \214rst directory)-2.5 E(,) --.65 E F3(popd +1)2.5 E F0(the second.)2.5 E F1<ad>144 379.2 Q F2(n)A F0 -(Remo)25.3 E -.15(ve)-.15 G 3.76(st).15 G(he)-3.76 E F2(n)3.76 E F0 -1.259(th entry counting from the right of the list sho)B 1.259(wn by) --.25 F F1(dirs)3.759 E F0 3.759(,s)C 1.259(tarting with)-3.759 F 2.5 -(zero. F)180 391.2 R(or e)-.15 E(xample:)-.15 E F3(popd -0)2.5 E F0 -(remo)2.5 E -.15(ve)-.15 G 2.5(st).15 G(he last directory)-2.5 E(,)-.65 -E F3(popd -1)2.5 E F0(the ne)2.5 E(xt to last.)-.15 E .643(If the)144 -408 R F1(popd)3.143 E F0 .643(command is successful, a)3.143 F F1(dirs) -3.143 E F0 .644(is performed as well, and the return status is 0.)3.143 -F F1(popd)5.644 E F0 .416(returns f)144 420 R .416(alse if an in)-.1 F --.25(va)-.4 G .415 -(lid option is encountered, the directory stack is empty).25 F 2.915 +(that only the stack is manipulated.)180 408 Q F1(+)144 420 Q F2(n)A F0 +(Remo)25.3 E -.15(ve)-.15 G 2.64(st).15 G(he)-2.64 E F2(n)2.64 E F0 .14 +(th entry counting from the left of the list sho)B .14(wn by)-.25 F F1 +(dirs)2.64 E F0 2.64(,s)C .14(tarting with zero.)-2.64 F -.15(Fo)180 432 +S 2.5(re).15 G(xample:)-2.65 E/F4 10/Courier@0 SF(popd +0)2.5 E F0(remo) +2.5 E -.15(ve)-.15 G 2.5(st).15 G(he \214rst directory)-2.5 E(,)-.65 E +F4(popd +1)2.5 E F0(the second.)2.5 E F1<ad>144 444 Q F2(n)A F0(Remo) +25.3 E -.15(ve)-.15 G 3.76(st).15 G(he)-3.76 E F2(n)3.76 E F0 1.259 +(th entry counting from the right of the list sho)B 1.259(wn by)-.25 F +F1(dirs)3.759 E F0 3.759(,s)C 1.259(tarting with)-3.759 F 2.5(zero. F) +180 456 R(or e)-.15 E(xample:)-.15 E F4(popd -0)2.5 E F0(remo)2.5 E -.15 +(ve)-.15 G 2.5(st).15 G(he last directory)-2.5 E(,)-.65 E F4(popd -1)2.5 +E F0(the ne)2.5 E(xt to last.)-.15 E .643(If the)144 472.8 R F1(popd) +3.143 E F0 .643(command is successful, a)3.143 F F1(dirs)3.143 E F0 .644 +(is performed as well, and the return status is 0.)3.143 F F1(popd)5.644 +E F0 .416(returns f)144 484.8 R .416(alse if an in)-.1 F -.25(va)-.4 G +.415(lid option is encountered, the directory stack is empty).25 F 2.915 (,an)-.65 G(on-e)-2.915 E .415(xistent direc-)-.15 F -(tory stack entry is speci\214ed, or the directory change f)144 432 Q -(ails.)-.1 E F1(printf)108 448.8 Q F0([)2.5 E F1<ad76>A F2(var)2.5 E F0 +(tory stack entry is speci\214ed, or the directory change f)144 496.8 Q +(ails.)-.1 E F1(printf)108 513.6 Q F0([)2.5 E F1<ad76>A F2(var)2.5 E F0 (])A F2(format)2.5 E F0([)2.5 E F2(ar)A(guments)-.37 E F0(])A 1.436 -(Write the formatted)144 460.8 R F2(ar)3.936 E(guments)-.37 E F0 1.437 +(Write the formatted)144 525.6 R F2(ar)3.936 E(guments)-.37 E F0 1.437 (to the standard output under the control of the)3.936 F F2(format)3.937 E F0 6.437(.T)C(he)-6.437 E F1<ad76>3.937 E F0 .126 -(option causes the output to be assigned to the v)144 472.8 R(ariable) +(option causes the output to be assigned to the v)144 537.6 R(ariable) -.25 E F2(var)2.626 E F0 .126(rather than being printed to the standard) -2.626 F(output.)144 484.8 Q(The)144 508.8 Q F2(format)3.017 E F0 .517(i\ +2.626 F(output.)144 549.6 Q(The)144 573.6 Q F2(format)3.017 E F0 .517(i\ s a character string which contains three types of objects: plain chara\ cters, which are)3.017 F .704(simply copied to standard output, charact\ -er escape sequences, which are con)144 520.8 R -.15(ve)-.4 G .703 +er escape sequences, which are con)144 585.6 R -.15(ve)-.4 G .703 (rted and copied to).15 F .036(the standard output, and format speci\ -\214cations, each of which causes printing of the ne)144 532.8 R .037 -(xt successi)-.15 F -.15(ve)-.25 G F2(ar)144 544.8 Q(gument)-.37 E F0 +\214cations, each of which causes printing of the ne)144 597.6 R .037 +(xt successi)-.15 F -.15(ve)-.25 G F2(ar)144 609.6 Q(gument)-.37 E F0 5.532(.I)C 3.032(na)-5.532 G .532(ddition to the standard)-3.032 F F2 (printf)3.032 E F0 .532(\(1\) format speci\214cations,)B F1(printf)3.031 -E F0 .531(interprets the follo)3.031 F(w-)-.25 E(ing e)144 556.8 Q -(xtensions:)-.15 E F1(%b)144 568.8 Q F0(causes)20.44 E F1(printf)5.115 E +E F0 .531(interprets the follo)3.031 F(w-)-.25 E(ing e)144 621.6 Q +(xtensions:)-.15 E F1(%b)144 633.6 Q F0(causes)20.44 E F1(printf)5.115 E F0 2.615(to e)5.115 F 2.615 (xpand backslash escape sequences in the corresponding)-.15 F F2(ar) -5.115 E(gument)-.37 E F0(\(e)180 580.8 Q .608(xcept that)-.15 F F1(\\c) +5.115 E(gument)-.37 E F0(\(e)180 645.6 Q .608(xcept that)-.15 F F1(\\c) 3.108 E F0 .608(terminates output, backslashes in)3.108 F F1<5c08>3.108 E F0(,)A F1(\\")3.108 E F0 3.108(,a)C(nd)-3.108 E F1(\\?)3.108 E F0 .608 (are not remo)3.108 F -.15(ve)-.15 G .608(d, and octal).15 F(escapes be) -180 592.8 Q(ginning with)-.15 E F1(\\0)2.5 E F0 -(may contain up to four digits\).)2.5 E F1(%q)144 604.8 Q F0(causes) +180 657.6 Q(ginning with)-.15 E F1(\\0)2.5 E F0 +(may contain up to four digits\).)2.5 E F1(%q)144 669.6 Q F0(causes) 20.44 E F1(printf)2.51 E F0 .01(to output the corresponding)2.51 F F2 (ar)2.51 E(gument)-.37 E F0 .01(in a format that can be reused as shell) -2.51 F(input.)180 616.8 Q F1(%\()144 628.8 Q F2(datefmt)A F1(\)T)A F0 -(causes)180 640.8 Q F1(printf)4.404 E F0 1.904 +2.51 F(input.)180 681.6 Q F1(%\()144 693.6 Q F2(datefmt)A F1(\)T)A F0 +(causes)180 705.6 Q F1(printf)4.404 E F0 1.904 (to output the date-time string resulting from using)4.404 F F2(datefmt) -4.404 E F0 1.903(as a format)4.404 F .38(string for)180 652.8 R F2 +4.404 E F0 1.903(as a format)4.404 F .38(string for)180 717.6 R F2 (strftime)2.881 E F0 2.881(\(3\). The)B(corresponding)2.881 E F2(ar) 2.881 E(gument)-.37 E F0 .381(is an inte)2.881 F .381 (ger representing the number)-.15 F .458(of seconds since the epoch.)180 -664.8 R -1 -.8(Tw o)5.458 H .458(special ar)3.758 F .458(gument v)-.18 F -.458(alues may be used: -1 represents the)-.25 F -(current time, and -2 represents the time the shell w)180 676.8 Q(as in) --.1 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E(Ar)144 693.6 Q .463(guments to n\ -on-string format speci\214ers are treated as C constants, e)-.18 F .464 -(xcept that a leading plus or)-.15 F 1.259(minus sign is allo)144 705.6 -R 1.259 -(wed, and if the leading character is a single or double quote, the v) --.25 F 1.258(alue is the)-.25 F(ASCII v)144 717.6 Q(alue of the follo) --.25 E(wing character)-.25 E(.)-.55 E(GNU Bash-4.0)72 768 Q(2004 Apr 20) -148.735 E(11)198.725 E 0 Cg EP +729.6 R -1 -.8(Tw o)5.458 H .458(special ar)3.758 F .458(gument v)-.18 F +.458(alues may be used: -1 represents the)-.25 F(GNU Bash-4.0)72 768 Q +(2004 Apr 20)148.735 E(11)198.725 E 0 Cg EP %%Page: 12 12 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E(The)144 84 Q -/F1 10/Times-Italic@0 SF(format)3.423 E F0 .923 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E +(current time, and -2 represents the time the shell w)180 84 Q(as in)-.1 +E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E(Ar)144 100.8 Q .463(guments to non-s\ +tring format speci\214ers are treated as C constants, e)-.18 F .464 +(xcept that a leading plus or)-.15 F 1.259(minus sign is allo)144 112.8 +R 1.259 +(wed, and if the leading character is a single or double quote, the v) +-.25 F 1.258(alue is the)-.25 F(ASCII v)144 124.8 Q(alue of the follo) +-.25 E(wing character)-.25 E(.)-.55 E(The)144 141.6 Q/F1 10 +/Times-Italic@0 SF(format)3.423 E F0 .923 (is reused as necessary to consume all of the)3.423 F F1(ar)3.423 E (guments)-.37 E F0 5.923(.I)C 3.423(ft)-5.923 G(he)-3.423 E F1(format) -3.423 E F0 .924(requires more)3.424 F F1(ar)144 96 Q(guments)-.37 E F0 -.033(than are supplied, the e)2.534 F .033 +3.423 E F0 .924(requires more)3.424 F F1(ar)144 153.6 Q(guments)-.37 E +F0 .033(than are supplied, the e)2.534 F .033 (xtra format speci\214cations beha)-.15 F .333 -.15(ve a)-.2 H 2.533(si) .15 G 2.533(faz)-2.533 G .033(ero v)-2.533 F .033(alue or null string,) --.25 F(as appropriate, had been supplied.)144 108 Q(The return v)5 E +-.25 F(as appropriate, had been supplied.)144 165.6 Q(The return v)5 E (alue is zero on success, non-zero on f)-.25 E(ailure.)-.1 E/F2 10 -/Times-Bold@0 SF(pushd)108 124.8 Q F0([)2.5 E F2<ad6e>A F0 2.5(][)C(+) --2.5 E F1(n)A F0 2.5(][)C<ad>-2.5 E F1(n)A F0(])A F2(pushd)108 136.8 Q +/Times-Bold@0 SF(pushd)108 182.4 Q F0([)2.5 E F2<ad6e>A F0 2.5(][)C(+) +-2.5 E F1(n)A F0 2.5(][)C<ad>-2.5 E F1(n)A F0(])A F2(pushd)108 194.4 Q F0([)2.5 E F2<ad6e>A F0 2.5(][)C F1(dir)-2.5 E F0(])A .639(Adds a direc\ tory to the top of the directory stack, or rotates the stack, making th\ -e ne)144 148.8 R 3.14(wt)-.25 G .64(op of the)-3.14 F 1.316 -(stack the current w)144 160.8 R 1.316(orking directory)-.1 F 6.316(.W) +e ne)144 206.4 R 3.14(wt)-.25 G .64(op of the)-3.14 F 1.316 +(stack the current w)144 218.4 R 1.316(orking directory)-.1 F 6.316(.W) -.65 G 1.315(ith no ar)-6.716 F 1.315(guments, e)-.18 F 1.315 (xchanges the top tw)-.15 F 3.815(od)-.1 G 1.315(irectories and)-3.815 F -.871(returns 0, unless the directory stack is empty)144 172.8 R 5.871 +.871(returns 0, unless the directory stack is empty)144 230.4 R 5.871 (.A)-.65 G -.18(rg)-5.871 G .872(uments, if supplied, ha).18 F 1.172 -.15(ve t)-.2 H .872(he follo).15 F .872(wing mean-)-.25 F(ings:)144 -184.8 Q F2<ad6e>144 196.8 Q F0 .902(Suppresses the normal change of dir\ +242.4 Q F2<ad6e>144 254.4 Q F0 .902(Suppresses the normal change of dir\ ectory when adding directories to the stack, so that)24.74 F -(only the stack is manipulated.)180 208.8 Q F2(+)144 220.8 Q F1(n)A F0 +(only the stack is manipulated.)180 266.4 Q F2(+)144 278.4 Q F1(n)A F0 1.267(Rotates the stack so that the)25.3 F F1(n)3.767 E F0 1.268 (th directory \(counting from the left of the list sho)B 1.268(wn by) --.25 F F2(dirs)180 232.8 Q F0 2.5(,s)C -(tarting with zero\) is at the top.)-2.5 E F2<ad>144 244.8 Q F1(n)A F0 +-.25 F F2(dirs)180 290.4 Q F0 2.5(,s)C +(tarting with zero\) is at the top.)-2.5 E F2<ad>144 302.4 Q F1(n)A F0 .92(Rotates the stack so that the)25.3 F F1(n)3.42 E F0 .92 (th directory \(counting from the right of the list sho)B .92(wn by)-.25 -F F2(dirs)180 256.8 Q F0 2.5(,s)C(tarting with zero\) is at the top.) --2.5 E F1(dir)144.35 268.8 Q F0(Adds)23.98 E F1(dir)2.85 E F0 +F F2(dirs)180 314.4 Q F0 2.5(,s)C(tarting with zero\) is at the top.) +-2.5 E F1(dir)144.35 326.4 Q F0(Adds)23.98 E F1(dir)2.85 E F0 (to the directory stack at the top, making it the ne)3.23 E 2.5(wc)-.25 -G(urrent w)-2.5 E(orking directory)-.1 E(.)-.65 E .488(If the)144 285.6 +G(urrent w)-2.5 E(orking directory)-.1 E(.)-.65 E .488(If the)144 343.2 R F2(pushd)2.988 E F0 .488(command is successful, a)2.988 F F2(dirs) 2.988 E F0 .488(is performed as well.)2.988 F .489 (If the \214rst form is used,)5.488 F F2(pushd)2.989 E F0 1.04 -(returns 0 unless the cd to)144 297.6 R F1(dir)3.89 E F0 -.1(fa)4.27 G +(returns 0 unless the cd to)144 355.2 R F1(dir)3.89 E F0 -.1(fa)4.27 G 3.539(ils. W).1 F 1.039(ith the second form,)-.4 F F2(pushd)3.539 E F0 1.039(returns 0 unless the directory)3.539 F .846(stack is empty)144 -309.6 R 3.346(,an)-.65 G(on-e)-3.346 E .847(xistent directory stack ele\ +367.2 R 3.346(,an)-.65 G(on-e)-3.346 E .847(xistent directory stack ele\ ment is speci\214ed, or the directory change to the)-.15 F -(speci\214ed ne)144 321.6 Q 2.5(wc)-.25 G(urrent directory f)-2.5 E -(ails.)-.1 E F2(pwd)108 338.4 Q F0([)2.5 E F2(\255LP)A F0(])A .845 -(Print the absolute pathname of the current w)144 350.4 R .845 +(speci\214ed ne)144 379.2 Q 2.5(wc)-.25 G(urrent directory f)-2.5 E +(ails.)-.1 E F2(pwd)108 396 Q F0([)2.5 E F2(\255LP)A F0(])A .845 +(Print the absolute pathname of the current w)144 408 R .845 (orking directory)-.1 F 5.844(.T)-.65 G .844 (he pathname printed contains no)-5.844 F .181(symbolic links if the)144 -362.4 R F2<ad50>2.681 E F0 .181(option is supplied or the)2.681 F F2 -.181(\255o ph)2.681 F(ysical)-.15 E F0 .181(option to the)2.681 F F2 -(set)2.681 E F0 -.2(bu)2.681 G .182(iltin command is).2 F 3.264 -(enabled. If)144 374.4 R(the)3.264 E F2<ad4c>3.264 E F0 .763 +420 R F2<ad50>2.681 E F0 .181(option is supplied or the)2.681 F F2 .181 +(\255o ph)2.681 F(ysical)-.15 E F0 .181(option to the)2.681 F F2(set) +2.681 E F0 -.2(bu)2.681 G .182(iltin command is).2 F 3.264(enabled. If) +144 432 R(the)3.264 E F2<ad4c>3.264 E F0 .763 (option is used, the pathname printed may contain symbolic links.)3.264 F .763(The return)5.763 F 1.36(status is 0 unless an error occurs while\ - reading the name of the current directory or an in)144 386.4 R -.25(va) --.4 G(lid).25 E(option is supplied.)144 398.4 Q F2 -.18(re)108 415.2 S -(ad).18 E F0([)3.817 E F2(\255ers)A F0 3.817(][)C F2<ad61>-3.817 E F1 -(aname)3.817 E F0 3.817(][)C F2<ad64>-3.817 E F1(delim)3.817 E F0 3.817 -(][)C F2<ad69>-3.817 E F1(te)3.817 E(xt)-.2 E F0 3.817(][)C F2<ad6e> --3.817 E F1(nc)3.816 E(har)-.15 E(s)-.1 E F0 3.816(][)C F2<ad4e>-3.816 E -F1(nc)3.816 E(har)-.15 E(s)-.1 E F0 3.816(][)C F2<ad70>-3.816 E F1(pr) -3.816 E(ompt)-.45 E F0 3.816(][)C F2<ad74>-3.816 E F1(timeout)3.816 E F0 -3.816(][)C F2<ad75>-3.816 E F1(fd)3.816 E F0(])A([)108 427.2 Q F1(name)A -F0(...])2.5 E .516(One line is read from the standard input, or from th\ -e \214le descriptor)144 439.2 R F1(fd)3.016 E F0 .516(supplied as an ar) -3.016 F .516(gument to)-.18 F(the)144 451.2 Q F2<ad75>2.538 E F0 .038 + reading the name of the current directory or an in)144 444 R -.25(va) +-.4 G(lid).25 E(option is supplied.)144 456 Q F2 -.18(re)108 472.8 S(ad) +.18 E F0([)3.817 E F2(\255ers)A F0 3.817(][)C F2<ad61>-3.817 E F1(aname) +3.817 E F0 3.817(][)C F2<ad64>-3.817 E F1(delim)3.817 E F0 3.817(][)C F2 +<ad69>-3.817 E F1(te)3.817 E(xt)-.2 E F0 3.817(][)C F2<ad6e>-3.817 E F1 +(nc)3.816 E(har)-.15 E(s)-.1 E F0 3.816(][)C F2<ad4e>-3.816 E F1(nc) +3.816 E(har)-.15 E(s)-.1 E F0 3.816(][)C F2<ad70>-3.816 E F1(pr)3.816 E +(ompt)-.45 E F0 3.816(][)C F2<ad74>-3.816 E F1(timeout)3.816 E F0 3.816 +(][)C F2<ad75>-3.816 E F1(fd)3.816 E F0(])A([)108 484.8 Q F1(name)A F0 +(...])2.5 E .516(One line is read from the standard input, or from the \ +\214le descriptor)144 496.8 R F1(fd)3.016 E F0 .516(supplied as an ar) +3.016 F .516(gument to)-.18 F(the)144 508.8 Q F2<ad75>2.538 E F0 .038 (option, and the \214rst w)2.538 F .038(ord is assigned to the \214rst) -.1 F F1(name)2.539 E F0 2.539(,t).18 G .039(he second w)-2.539 F .039 (ord to the second)-.1 F F1(name)2.539 E F0(,).18 E .42 -(and so on, with lefto)144 463.2 R -.15(ve)-.15 G 2.92(rw).15 G .42 +(and so on, with lefto)144 520.8 R -.15(ve)-.15 G 2.92(rw).15 G .42 (ords and their interv)-3.02 F .42 (ening separators assigned to the last)-.15 F F1(name)2.92 E F0 5.42(.I) -.18 G 2.92(ft)-5.42 G(here)-2.92 E .54(are fe)144 475.2 R .54(wer w)-.25 +.18 G 2.92(ft)-5.42 G(here)-2.92 E .54(are fe)144 532.8 R .54(wer w)-.25 F .541(ords read from the input stream than names, the remaining names \ -are assigned empty)-.1 F -.25(va)144 487.2 S 2.511(lues. The).25 F .011 +are assigned empty)-.1 F -.25(va)144 544.8 S 2.511(lues. The).25 F .011 (characters in)2.511 F/F3 9/Times-Bold@0 SF(IFS)2.511 E F0 .011 (are used to split the line into w)2.261 F 2.511(ords. The)-.1 F .011 (backslash character \()2.511 F F2(\\)A F0 2.51(\)m)C(ay)-2.51 E 1.89 -(be used to remo)144 499.2 R 2.19 -.15(ve a)-.15 H 2.19 -.15(ny s).15 H +(be used to remo)144 556.8 R 2.19 -.15(ve a)-.15 H 2.19 -.15(ny s).15 H 1.891(pecial meaning for the ne).15 F 1.891 (xt character read and for line continuation.)-.15 F -(Options, if supplied, ha)144 511.2 Q .3 -.15(ve t)-.2 H(he follo).15 E -(wing meanings:)-.25 E F2<ad61>144 523.2 Q F1(aname)2.5 E F0 1.05(The w) -180 535.2 R 1.049 +(Options, if supplied, ha)144 568.8 Q .3 -.15(ve t)-.2 H(he follo).15 E +(wing meanings:)-.25 E F2<ad61>144 580.8 Q F1(aname)2.5 E F0 1.05(The w) +180 592.8 R 1.049 (ords are assigned to sequential indices of the array v)-.1 F(ariable) -.25 E F1(aname)3.549 E F0 3.549(,s).18 G 1.049(tarting at 0.)-3.549 F -F1(aname)180.33 547.2 Q F0(is unset before an)2.68 E 2.5(yn)-.15 G .5 +F1(aname)180.33 604.8 Q F0(is unset before an)2.68 E 2.5(yn)-.15 G .5 -.25(ew va)-2.5 H(lues are assigned.).25 E(Other)5 E F1(name)2.5 E F0 -(ar)2.5 E(guments are ignored.)-.18 E F2<ad64>144 559.2 Q F1(delim)2.5 E -F0(The \214rst character of)180 571.2 Q F1(delim)2.5 E F0 +(ar)2.5 E(guments are ignored.)-.18 E F2<ad64>144 616.8 Q F1(delim)2.5 E +F0(The \214rst character of)180 628.8 Q F1(delim)2.5 E F0 (is used to terminate the input line, rather than ne)2.5 E(wline.)-.25 E -F2<ad65>144 583.2 Q F0 .372 +F2<ad65>144 640.8 Q F0 .372 (If the standard input is coming from a terminal,)25.86 F F2 -.18(re) 2.873 G(adline).18 E F0(\(see)2.873 E F3(READLINE)2.873 E F0(abo)2.623 E -.15(ve)-.15 G 2.873(\)i).15 G 2.873(su)-2.873 G(sed)-2.873 E .218 -(to obtain the line.)180 595.2 R .218 +(to obtain the line.)180 652.8 R .218 (Readline uses the current \(or def)5.218 F .218 (ault, if line editing w)-.1 F .218(as not pre)-.1 F(viously)-.25 E -(acti)180 607.2 Q -.15(ve)-.25 G 2.5(\)e).15 G(diting settings.)-2.5 E -F2<ad69>144 619.2 Q F1(te)2.5 E(xt)-.2 E F0(If)10.78 E F2 -.18(re)2.715 +(acti)180 664.8 Q -.15(ve)-.25 G 2.5(\)e).15 G(diting settings.)-2.5 E +F2<ad69>144 676.8 Q F1(te)2.5 E(xt)-.2 E F0(If)10.78 E F2 -.18(re)2.715 G(adline).18 E F0 .216(is being used to read the line,)2.715 F F1(te) 2.716 E(xt)-.2 E F0 .216(is placed into the editing b)2.716 F(uf)-.2 E -.216(fer before edit-)-.25 F(ing be)180 631.2 Q(gins.)-.15 E F2<ad6e>144 -643.2 Q F1(nc)2.5 E(har)-.15 E(s)-.1 E F2 -.18(re)180 655.2 S(ad).18 E +.216(fer before edit-)-.25 F(ing be)180 688.8 Q(gins.)-.15 E F2<ad6e>144 +700.8 Q F1(nc)2.5 E(har)-.15 E(s)-.1 E F2 -.18(re)180 712.8 S(ad).18 E F0 1.395(returns after reading)3.895 F F1(nc)3.895 E(har)-.15 E(s)-.1 E F0 1.395(characters rather than w)3.895 F 1.394 -(aiting for a complete line of)-.1 F(input, b)180 667.2 Q +(aiting for a complete line of)-.1 F(input, b)180 724.8 Q (ut honor a delimiter if fe)-.2 E(wer than)-.25 E F1(nc)2.5 E(har)-.15 E -(s)-.1 E F0(characters are read before the delimiter)2.5 E(.)-.55 E F2 -<ad4e>144 679.2 Q F1(nc)2.5 E(har)-.15 E(s)-.1 E F2 -.18(re)180 691.2 S -(ad).18 E F0 1.269(returns after reading e)3.769 F(xactly)-.15 E F1(nc) -3.769 E(har)-.15 E(s)-.1 E F0 1.269(characters rather than w)3.769 F -1.27(aiting for a complete)-.1 F .275 -(line of input, unless EOF is encountered or)180 703.2 R F2 -.18(re) -2.775 G(ad).18 E F0 .274(times out.)2.774 F .274 -(Delimiter characters encoun-)5.274 F 1.002 -(tered in the input are not treated specially and do not cause)180 715.2 -R F2 -.18(re)3.503 G(ad).18 E F0 1.003(to return until)3.503 F F1(nc) -3.503 E(har)-.15 E(s)-.1 E F0(characters are read.)180 727.2 Q +(s)-.1 E F0(characters are read before the delimiter)2.5 E(.)-.55 E (GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(12)198.725 E 0 Cg EP %%Page: 13 13 %%BeginPageSetup @@ -1686,1001 +1687,1005 @@ BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 (TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF<ad70>144 84 Q/F2 10/Times-Italic@0 SF(pr)2.5 E(ompt) --.45 E F0(Display)180 96 Q F2(pr)3.661 E(ompt)-.45 E F0 1.161 -(on standard error)3.661 F 3.661(,w)-.4 G 1.161(ithout a trailing ne) --3.661 F 1.161(wline, before attempting to read)-.25 F(an)180 108 Q 2.5 -(yi)-.15 G 2.5(nput. The)-2.5 F +/Times-Bold@0 SF<ad4e>144 84 Q/F2 10/Times-Italic@0 SF(nc)2.5 E(har)-.15 +E(s)-.1 E F1 -.18(re)180 96 S(ad).18 E F0 1.269(returns after reading e) +3.769 F(xactly)-.15 E F2(nc)3.769 E(har)-.15 E(s)-.1 E F0 1.269 +(characters rather than w)3.769 F 1.27(aiting for a complete)-.1 F .275 +(line of input, unless EOF is encountered or)180 108 R F1 -.18(re)2.775 +G(ad).18 E F0 .274(times out.)2.774 F .274(Delimiter characters encoun-) +5.274 F 1.002 +(tered in the input are not treated specially and do not cause)180 120 R +F1 -.18(re)3.503 G(ad).18 E F0 1.003(to return until)3.503 F F2(nc)3.503 +E(har)-.15 E(s)-.1 E F0(characters are read.)180 132 Q F1<ad70>144 144 Q +F2(pr)2.5 E(ompt)-.45 E F0(Display)180 156 Q F2(pr)3.661 E(ompt)-.45 E +F0 1.161(on standard error)3.661 F 3.661(,w)-.4 G 1.161 +(ithout a trailing ne)-3.661 F 1.161(wline, before attempting to read) +-.25 F(an)180 168 Q 2.5(yi)-.15 G 2.5(nput. The)-2.5 F (prompt is displayed only if input is coming from a terminal.)2.5 E F1 -<ad72>144 120 Q F0 .543(Backslash does not act as an escape character) +<ad72>144 180 Q F0 .543(Backslash does not act as an escape character) 25.86 F 5.543(.T)-.55 G .544(he backslash is considered to be part of) --5.543 F(the line.)180 132 Q(In particular)5 E 2.5(,ab)-.4 G +-5.543 F(the line.)180 192 Q(In particular)5 E 2.5(,ab)-.4 G (ackslash-ne)-2.5 E(wline pair may not be used as a line continuation.) --.25 E F1<ad73>144 144 Q F0(Silent mode.)26.41 E +-.25 E F1<ad73>144 204 Q F0(Silent mode.)26.41 E (If input is coming from a terminal, characters are not echoed.)5 E F1 -<ad74>144 156 Q F2(timeout)2.5 E F0(Cause)180 168 Q F1 -.18(re)3.549 G +<ad74>144 216 Q F2(timeout)2.5 E F0(Cause)180 228 Q F1 -.18(re)3.549 G (ad).18 E F0 1.048(to time out and return f)3.549 F 1.048 (ailure if a complete line of input is not read within)-.1 F F2(timeout) -180 180 Q F0(seconds.)3.496 E F2(timeout)5.996 E F0 .997 +180 240 Q F0(seconds.)3.496 E F2(timeout)5.996 E F0 .997 (may be a decimal number with a fractional portion follo)3.496 F(wing) --.25 E .576(the decimal point.)180 192 R .576(This option is only ef) +-.25 E .576(the decimal point.)180 252 R .576(This option is only ef) 5.576 F(fecti)-.25 E .876 -.15(ve i)-.25 H(f).15 E F1 -.18(re)3.076 G (ad).18 E F0 .576(is reading input from a terminal,)3.076 F .141 -(pipe, or other special \214le; it has no ef)180 204 R .142 +(pipe, or other special \214le; it has no ef)180 264 R .142 (fect when reading from re)-.25 F .142(gular \214les.)-.15 F(If)5.142 E -F2(timeout)2.642 E F0 .142(is 0,)2.642 F F1 -.18(re)180 216 S(ad).18 E +F2(timeout)2.642 E F0 .142(is 0,)2.642 F F1 -.18(re)180 276 S(ad).18 E F0 .113(returns success if input is a)2.614 F -.25(va)-.2 G .113 (ilable on the speci\214ed \214le descriptor).25 F 2.613(,f)-.4 G .113 -(ailure otherwise.)-2.713 F(The e)180 228 Q +(ailure otherwise.)-2.713 F(The e)180 288 Q (xit status is greater than 128 if the timeout is e)-.15 E(xceeded.)-.15 -E F1<ad75>144 240 Q F2(fd)2.5 E F0(Read input from \214le descriptor) -14.46 E F2(fd)2.5 E F0(.)A .191(If no)144 256.8 R F2(names)3.051 E F0 +E F1<ad75>144 300 Q F2(fd)2.5 E F0(Read input from \214le descriptor) +14.46 E F2(fd)2.5 E F0(.)A .191(If no)144 316.8 R F2(names)3.051 E F0 .191(are supplied, the line read is assigned to the v)2.961 F(ariable) -.25 E/F3 9/Times-Bold@0 SF(REPL)2.692 E(Y)-.828 E/F4 9/Times-Roman@0 SF (.)A F0 .192(The return code is zero,)4.692 F 1.344 -(unless end-of-\214le is encountered,)144 268.8 R F1 -.18(re)3.844 G(ad) +(unless end-of-\214le is encountered,)144 328.8 R F1 -.18(re)3.844 G(ad) .18 E F0 1.343 (times out \(in which case the return code is greater than)3.844 F -(128\), or an in)144 280.8 Q -.25(va)-.4 G +(128\), or an in)144 340.8 Q -.25(va)-.4 G (lid \214le descriptor is supplied as the ar).25 E(gument to)-.18 E F1 -<ad75>2.5 E F0(.)A F1 -.18(re)108 297.6 S(adonly).18 E F0([)2.5 E F1 +<ad75>2.5 E F0(.)A F1 -.18(re)108 357.6 S(adonly).18 E F0([)2.5 E F1 (\255aA)A(pf)-.25 E F0 2.5(][)C F2(name)-2.5 E F0([=)A F2(wor)A(d)-.37 E -F0 2.5(].)C(..])-2.5 E .77(The gi)144 309.6 R -.15(ve)-.25 G(n).15 E F2 +F0 2.5(].)C(..])-2.5 E .77(The gi)144 369.6 R -.15(ve)-.25 G(n).15 E F2 (names)3.27 E F0 .77(are mark)3.27 F .77(ed readonly; the v)-.1 F .77 (alues of these)-.25 F F2(names)3.63 E F0 .77 -(may not be changed by subse-)3.54 F 1.097(quent assignment.)144 321.6 R +(may not be changed by subse-)3.54 F 1.097(quent assignment.)144 381.6 R 1.097(If the)6.097 F F1<ad66>3.597 E F0 1.097 (option is supplied, the functions corresponding to the)3.597 F F2 -(names)3.596 E F0 1.096(are so)3.596 F(mark)144 333.6 Q 3.334(ed. The) +(names)3.596 E F0 1.096(are so)3.596 F(mark)144 393.6 Q 3.334(ed. The) -.1 F F1<ad61>3.334 E F0 .834(option restricts the v)3.334 F .834 (ariables to inde)-.25 F -.15(xe)-.15 G 3.334(da).15 G .834(rrays; the) -3.334 F F1<ad41>3.334 E F0 .834(option restricts the v)3.334 F(ari-) --.25 E .538(ables to associati)144 345.6 R .838 -.15(ve a)-.25 H 3.038 +-.25 E .538(ables to associati)144 405.6 R .838 -.15(ve a)-.25 H 3.038 (rrays. If).15 F(no)3.038 E F2(name)3.398 E F0(ar)3.218 E .538 (guments are gi)-.18 F -.15(ve)-.25 G .538(n, or if the).15 F F1<ad70> 3.038 E F0 .537(option is supplied, a list)3.038 F .08 -(of all readonly names is printed.)144 357.6 R(The)5.08 E F1<ad70>2.58 E +(of all readonly names is printed.)144 417.6 R(The)5.08 E F1<ad70>2.58 E F0 .081(option causes output to be displayed in a format that may)2.58 F -1.177(be reused as input.)144 369.6 R 1.177(If a v)6.177 F 1.176 +1.177(be reused as input.)144 429.6 R 1.177(If a v)6.177 F 1.176 (ariable name is follo)-.25 F 1.176(wed by =)-.25 F F2(wor)A(d)-.37 E F0 3.676(,t)C 1.176(he v)-3.676 F 1.176(alue of the v)-.25 F 1.176 -(ariable is set to)-.25 F F2(wor)144 381.6 Q(d)-.37 E F0 6.205(.T)C +(ariable is set to)-.25 F F2(wor)144 441.6 Q(d)-.37 E F0 6.205(.T)C 1.205(he return status is 0 unless an in)-6.205 F -.25(va)-.4 G 1.206 (lid option is encountered, one of the).25 F F2(names)4.066 E F0 1.206 -(is not a)3.976 F -.25(va)144 393.6 S(lid shell v).25 E +(is not a)3.976 F -.25(va)144 453.6 S(lid shell v).25 E (ariable name, or)-.25 E F1<ad66>2.5 E F0(is supplied with a)2.5 E F2 -(name)2.86 E F0(that is not a function.)2.68 E F1 -.18(re)108 410.4 S +(name)2.86 E F0(that is not a function.)2.68 E F1 -.18(re)108 470.4 S (tur).18 E(n)-.15 E F0([)2.5 E F2(n)A F0(])A .587 -(Causes a function to e)144 422.4 R .587(xit with the return v)-.15 F +(Causes a function to e)144 482.4 R .587(xit with the return v)-.15 F .587(alue speci\214ed by)-.25 F F2(n)3.087 E F0 5.587(.I).24 G(f)-5.587 E F2(n)3.447 E F0 .586(is omitted, the return status is)3.327 F 1.335 -(that of the last command e)144 434.4 R -.15(xe)-.15 G 1.335 +(that of the last command e)144 494.4 R -.15(xe)-.15 G 1.335 (cuted in the function body).15 F 6.335(.I)-.65 G 3.835(fu)-6.335 G 1.335(sed outside a function, b)-3.835 F 1.335(ut during)-.2 F -.15(exe) -144 446.4 S .794(cution of a script by the).15 F F1(.)3.294 E F0(\() +144 506.4 S .794(cution of a script by the).15 F F1(.)3.294 E F0(\() 5.794 E F1(sour)A(ce)-.18 E F0 3.294(\)c)C .794 (ommand, it causes the shell to stop e)-3.294 F -.15(xe)-.15 G .794 -(cuting that script).15 F .245(and return either)144 458.4 R F2(n)3.105 +(cuting that script).15 F .245(and return either)144 518.4 R F2(n)3.105 E F0 .246(or the e)2.985 F .246(xit status of the last command e)-.15 F -.15(xe)-.15 G .246(cuted within the script as the e).15 F .246 -(xit sta-)-.15 F .082(tus of the script.)144 470.4 R .082 +(xit sta-)-.15 F .082(tus of the script.)144 530.4 R .082 (If used outside a function and not during e)5.082 F -.15(xe)-.15 G .082 (cution of a script by).15 F F1(.)2.582 E F0 2.581(,t).833 G .081 -(he return sta-)-2.581 F 2.305(tus is f)144 482.4 R 4.805(alse. An)-.1 F +(he return sta-)-2.581 F 2.305(tus is f)144 542.4 R 4.805(alse. An)-.1 F 4.805(yc)-.15 G 2.305(ommand associated with the)-4.805 F F1(RETURN) 4.805 E F0 2.306(trap is e)4.806 F -.15(xe)-.15 G 2.306(cuted before e) .15 F -.15(xe)-.15 G(cution).15 E(resumes after the function or script.) -144 494.4 Q F1(set)108 511.2 Q F0([)2.5 E F1 +144 554.4 Q F1(set)108 571.2 Q F0([)2.5 E F1 (\255\255abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1<ad6f>-2.5 E F2(option)2.5 -E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E F1(set)108 523.2 Q F0 +E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E F1(set)108 583.2 Q F0 ([)2.5 E F1(+abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1(+o)-2.5 E F2(option) -2.5 E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E -.4(Wi)144 535.2 S +2.5 E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E -.4(Wi)144 595.2 S .836(thout options, the name and v).4 F .835(alue of each shell v)-.25 F .835(ariable are displayed in a format that can be)-.25 F .784 -(reused as input for setting or resetting the currently-set v)144 547.2 +(reused as input for setting or resetting the currently-set v)144 607.2 R 3.284(ariables. Read-only)-.25 F -.25(va)3.284 G .784 -(riables cannot be).25 F 2.947(reset. In)144 559.2 R F2 .447(posix mode) +(riables cannot be).25 F 2.947(reset. In)144 619.2 R F2 .447(posix mode) 2.947 F F0 2.947(,o)C .447(nly shell v)-2.947 F .447 (ariables are listed.)-.25 F .447 (The output is sorted according to the current)5.447 F 3.53 -(locale. When)144 571.2 R 1.031(options are speci\214ed, the)3.53 F +(locale. When)144 631.2 R 1.031(options are speci\214ed, the)3.53 F 3.531(ys)-.15 G 1.031(et or unset shell attrib)-3.531 F 3.531(utes. An) -.2 F 3.531(ya)-.15 G -.18(rg)-3.531 G 1.031(uments remaining).18 F -1.624(after option processing are treated as v)144 583.2 R 1.623 +1.624(after option processing are treated as v)144 643.2 R 1.623 (alues for the positional parameters and are assigned, in)-.25 F(order) -144 595.2 Q 2.5(,t)-.4 G(o)-2.5 E F1($1)2.5 E F0(,)A F1($2)2.5 E F0(,)A +144 655.2 Q 2.5(,t)-.4 G(o)-2.5 E F1($1)2.5 E F0(,)A F1($2)2.5 E F0(,)A F1 2.5(... $)2.5 F F2(n)A F0 5(.O)C(ptions, if speci\214ed, ha)-5 E .3 --.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1<ad61>144 607.2 Q +-.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1<ad61>144 667.2 Q F0 .539(Automatically mark v)29.3 F .539 (ariables and functions which are modi\214ed or created for e)-.25 F .54 -(xport to)-.15 F(the en)184 619.2 Q(vironment of subsequent commands.) --.4 E F1<ad62>144 631.2 Q F0 .132 +(xport to)-.15 F(the en)184 679.2 Q(vironment of subsequent commands.) +-.4 E F1<ad62>144 691.2 Q F0 .132 (Report the status of terminated background jobs immediately)28.74 F 2.632(,r)-.65 G .131(ather than before the ne)-2.632 F(xt)-.15 E -(primary prompt.)184 643.2 Q(This is ef)5 E(fecti)-.25 E .3 -.15(ve o) --.25 H(nly when job control is enabled.).15 E F1<ad65>144 655.2 Q F0 .51 +(primary prompt.)184 703.2 Q(This is ef)5 E(fecti)-.25 E .3 -.15(ve o) +-.25 H(nly when job control is enabled.).15 E F1<ad65>144 715.2 Q F0 .51 (Exit immediately if a)29.86 F F2(pipeline)3.01 E F0 .511 (\(which may consist of a single)3.011 F F2 .511(simple command)3.011 F -F0 3.011(\), a)B F2(sub-)3.011 E(shell)184 667.2 Q F0 .872 +F0 3.011(\), a)B F2(sub-)3.011 E(shell)184 727.2 Q F0 .872 (command enclosed in parentheses, or one of the commands e)3.373 F -.15 -(xe)-.15 G .872(cuted as part of a).15 F .399 -(command list enclosed by braces \(see)184 679.2 R F3 .399 -(SHELL GRAMMAR)2.899 F F0(abo)2.649 E -.15(ve)-.15 G 2.899(\)e).15 G -.399(xits with a non-zero)-3.049 F 3.969(status. The)184 691.2 R 1.468 -(shell does not e)3.969 F 1.468(xit if the command that f)-.15 F 1.468 -(ails is part of the command list)-.1 F .569(immediately follo)184 703.2 -R .569(wing a)-.25 F F1(while)3.069 E F0(or)3.069 E F1(until)3.069 E F0 --.1(ke)3.069 G(yw)-.05 E .569(ord, part of the test follo)-.1 F .57 -(wing the)-.25 F F1(if)3.07 E F0(or)3.07 E F1(elif)3.07 E F0(reserv)184 -715.2 Q .544(ed w)-.15 F .544(ords, part of an)-.1 F 3.044(yc)-.15 G -.544(ommand e)-3.044 F -.15(xe)-.15 G .544(cuted in a).15 F F1(&&)3.044 -E F0(or)3.044 E/F5 10/Symbol SF<efef>3.044 E F0 .544(list e)3.044 F .544 -(xcept the command)-.15 F(follo)184 727.2 Q 2.748(wing the \214nal)-.25 -F F1(&&)5.248 E F0(or)5.248 E F5<efef>5.248 E F0 5.248(,a)C 3.048 -.15 -(ny c)-5.248 H 2.748(ommand in a pipeline b).15 F 2.748 -(ut the last, or if the)-.2 F(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 -E(13)198.725 E 0 Cg EP +(xe)-.15 G .872(cuted as part of a).15 F(GNU Bash-4.0)72 768 Q +(2004 Apr 20)148.735 E(13)198.725 E 0 Cg EP %%Page: 14 14 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E(command')184 -84 Q 3.958(sr)-.55 G 1.458(eturn v)-3.958 F 1.458(alue is being in)-.25 -F -.15(ve)-.4 G 1.458(rted with).15 F/F1 10/Times-Bold@0 SF(!)3.958 E F0 -6.458(.A)C 1.458(trap on)-2.5 F F1(ERR)3.958 E F0 3.958(,i)C 3.958(fs) --3.958 G 1.458(et, is e)-3.958 F -.15(xe)-.15 G(cuted).15 E 1.297 -(before the shell e)184 96 R 3.797(xits. This)-.15 F 1.297 -(option applies to the shell en)3.797 F 1.297 -(vironment and each subshell)-.4 F(en)184 108 Q 2.128 -(vironment separately \(see)-.4 F/F2 9/Times-Bold@0 SF 2.127 -(COMMAND EXECUTION ENVIR)4.628 F(ONMENT)-.27 E F0(abo)4.377 E -.15(ve) --.15 G 2.127(\), and).15 F(may cause subshells to e)184 120 Q -(xit before e)-.15 E -.15(xe)-.15 G -(cuting all the commands in the subshell.).15 E F1<ad66>144 132 Q F0 -(Disable pathname e)30.97 E(xpansion.)-.15 E F1<ad68>144 144 Q F0 2.238 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E .399 +(command list enclosed by braces \(see)184 84 R/F1 9/Times-Bold@0 SF +.399(SHELL GRAMMAR)2.899 F F0(abo)2.649 E -.15(ve)-.15 G 2.899(\)e).15 G +.399(xits with a non-zero)-3.049 F 3.969(status. The)184 96 R 1.468 +(shell does not e)3.969 F 1.468(xit if the command that f)-.15 F 1.468 +(ails is part of the command list)-.1 F .569(immediately follo)184 108 R +.569(wing a)-.25 F/F2 10/Times-Bold@0 SF(while)3.069 E F0(or)3.069 E F2 +(until)3.069 E F0 -.1(ke)3.069 G(yw)-.05 E .569 +(ord, part of the test follo)-.1 F .57(wing the)-.25 F F2(if)3.07 E F0 +(or)3.07 E F2(elif)3.07 E F0(reserv)184 120 Q .544(ed w)-.15 F .544 +(ords, part of an)-.1 F 3.044(yc)-.15 G .544(ommand e)-3.044 F -.15(xe) +-.15 G .544(cuted in a).15 F F2(&&)3.044 E F0(or)3.044 E/F3 10/Symbol SF +<efef>3.044 E F0 .544(list e)3.044 F .544(xcept the command)-.15 F +(follo)184 132 Q 1.23(wing the \214nal)-.25 F F2(&&)3.73 E F0(or)3.73 E +F3<efef>3.73 E F0 3.73(,a)C 1.53 -.15(ny c)-3.73 H 1.231 +(ommand in a pipeline b).15 F 1.231(ut the last, or if the com-)-.2 F +(mand')184 144 Q 3.191(sr)-.55 G .691(eturn v)-3.191 F .691 +(alue is being in)-.25 F -.15(ve)-.4 G .691(rted with).15 F F2(!)3.191 E +F0 5.691(.A)C .691(trap on)-2.5 F F2(ERR)3.19 E F0 3.19(,i)C 3.19(fs) +-3.19 G .69(et, is e)-3.19 F -.15(xe)-.15 G .69(cuted before).15 F .686 +(the shell e)184 156 R 3.186(xits. This)-.15 F .686 +(option applies to the shell en)3.186 F .686 +(vironment and each subshell en)-.4 F(viron-)-.4 E .068 +(ment separately \(see)184 168 R F1 .068(COMMAND EXECUTION ENVIR)2.568 F +(ONMENT)-.27 E F0(abo)2.318 E -.15(ve)-.15 G .068(\), and may cause).15 +F(subshells to e)184 180 Q(xit before e)-.15 E -.15(xe)-.15 G +(cuting all the commands in the subshell.).15 E F2<ad66>144 192 Q F0 +(Disable pathname e)30.97 E(xpansion.)-.15 E F2<ad68>144 204 Q F0 2.238 (Remember the location of commands as the)28.74 F 4.738(ya)-.15 G 2.239 (re look)-4.738 F 2.239(ed up for e)-.1 F -.15(xe)-.15 G 4.739 -(cution. This).15 F(is)4.739 E(enabled by def)184 156 Q(ault.)-.1 E F1 -<ad6b>144 168 Q F0 .514(All ar)28.74 F .514 +(cution. This).15 F(is)4.739 E(enabled by def)184 216 Q(ault.)-.1 E F2 +<ad6b>144 228 Q F0 .514(All ar)28.74 F .514 (guments in the form of assignment statements are placed in the en)-.18 F .513(vironment for a)-.4 F -(command, not just those that precede the command name.)184 180 Q F1 -<ad6d>144 192 Q F0 .148(Monitor mode.)25.97 F .148 +(command, not just those that precede the command name.)184 240 Q F2 +<ad6d>144 252 Q F0 .148(Monitor mode.)25.97 F .148 (Job control is enabled.)5.148 F .149(This option is on by def)5.148 F .149(ault for interacti)-.1 F .449 -.15(ve s)-.25 H(hells).15 E .637 -(on systems that support it \(see)184 204 R F2 .636(JOB CONTR)3.136 F +(on systems that support it \(see)184 264 R F1 .636(JOB CONTR)3.136 F (OL)-.27 E F0(abo)2.886 E -.15(ve)-.15 G 3.136(\). Background).15 F .636 (processes run in a)3.136 F .641 -(separate process group and a line containing their e)184 216 R .642 -(xit status is printed upon their com-)-.15 F(pletion.)184 228 Q F1 -<ad6e>144 240 Q F0 .653(Read commands b)28.74 F .653(ut do not e)-.2 F +(separate process group and a line containing their e)184 276 R .642 +(xit status is printed upon their com-)-.15 F(pletion.)184 288 Q F2 +<ad6e>144 300 Q F0 .653(Read commands b)28.74 F .653(ut do not e)-.2 F -.15(xe)-.15 G .653(cute them.).15 F .652 (This may be used to check a shell script for)5.653 F(syntax errors.)184 -252 Q(This is ignored by interacti)5 E .3 -.15(ve s)-.25 H(hells.).15 E -F1<ad6f>144 264 Q/F3 10/Times-Italic@0 SF(option\255name)2.5 E F0(The) -184 276 Q F3(option\255name)2.5 E F0(can be one of the follo)2.5 E -(wing:)-.25 E F1(allexport)184 288 Q F0(Same as)224 300 Q F1<ad61>2.5 E -F0(.)A F1(braceexpand)184 312 Q F0(Same as)224 324 Q F1<ad42>2.5 E F0(.) -A F1(emacs)184 336 Q F0 .089 +312 Q(This is ignored by interacti)5 E .3 -.15(ve s)-.25 H(hells.).15 E +F2<ad6f>144 324 Q/F4 10/Times-Italic@0 SF(option\255name)2.5 E F0(The) +184 336 Q F4(option\255name)2.5 E F0(can be one of the follo)2.5 E +(wing:)-.25 E F2(allexport)184 348 Q F0(Same as)224 360 Q F2<ad61>2.5 E +F0(.)A F2(braceexpand)184 372 Q F0(Same as)224 384 Q F2<ad42>2.5 E F0(.) +A F2(emacs)184 396 Q F0 .089 (Use an emacs-style command line editing interf)13.9 F 2.589(ace. This) -.1 F .089(is enabled by def)2.589 F(ault)-.1 E .95 -(when the shell is interacti)224 348 R -.15(ve)-.25 G 3.45(,u).15 G .95 -(nless the shell is started with the)-3.45 F F1(\255\255noediting)3.45 E -F0 2.5(option. This)224 360 R(also af)2.5 E(fects the editing interf) --.25 E(ace used for)-.1 E F1 -.18(re)2.5 G(ad \255e).18 E F0(.)A F1(err) -184 372 Q(exit)-.18 E F0(Same as)11.31 E F1<ad65>2.5 E F0(.)A F1 -(errtrace)184 384 Q F0(Same as)5.03 E F1<ad45>2.5 E F0(.)A F1(functrace) -184 396 Q F0(Same as)224 408 Q F1<ad54>2.5 E F0(.)A F1(hashall)184 420 Q -F0(Same as)9.43 E F1<ad68>2.5 E F0(.)A F1(histexpand)184 432 Q F0 -(Same as)224 444 Q F1<ad48>2.5 E F0(.)A F1(history)184 456 Q F0 .586 +(when the shell is interacti)224 408 R -.15(ve)-.25 G 3.45(,u).15 G .95 +(nless the shell is started with the)-3.45 F F2(\255\255noediting)3.45 E +F0 2.5(option. This)224 420 R(also af)2.5 E(fects the editing interf) +-.25 E(ace used for)-.1 E F2 -.18(re)2.5 G(ad \255e).18 E F0(.)A F2(err) +184 432 Q(exit)-.18 E F0(Same as)11.31 E F2<ad65>2.5 E F0(.)A F2 +(errtrace)184 444 Q F0(Same as)5.03 E F2<ad45>2.5 E F0(.)A F2(functrace) +184 456 Q F0(Same as)224 468 Q F2<ad54>2.5 E F0(.)A F2(hashall)184 480 Q +F0(Same as)9.43 E F2<ad68>2.5 E F0(.)A F2(histexpand)184 492 Q F0 +(Same as)224 504 Q F2<ad48>2.5 E F0(.)A F2(history)184 516 Q F0 .586 (Enable command history)10 F 3.087(,a)-.65 G 3.087(sd)-3.087 G .587 -(escribed abo)-3.087 F .887 -.15(ve u)-.15 H(nder).15 E F2(HIST)3.087 E -(OR)-.162 E(Y)-.315 E/F4 9/Times-Roman@0 SF(.)A F0 .587(This option is) -5.087 F(on by def)224 468 Q(ault in interacti)-.1 E .3 -.15(ve s)-.25 H -(hells.).15 E F1(ignor)184 480 Q(eeof)-.18 E F0 1.657(The ef)224 492 R -1.657(fect is as if the shell command)-.25 F/F5 10/Courier@0 SF +(escribed abo)-3.087 F .887 -.15(ve u)-.15 H(nder).15 E F1(HIST)3.087 E +(OR)-.162 E(Y)-.315 E/F5 9/Times-Roman@0 SF(.)A F0 .587(This option is) +5.087 F(on by def)224 528 Q(ault in interacti)-.1 E .3 -.15(ve s)-.25 H +(hells.).15 E F2(ignor)184 540 Q(eeof)-.18 E F0 1.657(The ef)224 552 R +1.657(fect is as if the shell command)-.25 F/F6 10/Courier@0 SF (IGNOREEOF=10)4.156 E F0 1.656(had been e)4.156 F -.15(xe)-.15 G(cuted) -.15 E(\(see)224 504 Q F1(Shell V)2.5 E(ariables)-.92 E F0(abo)2.5 E -.15 -(ve)-.15 G(\).).15 E F1 -.1(ke)184 516 S(yw).1 E(ord)-.1 E F0(Same as) -224 528 Q F1<ad6b>2.5 E F0(.)A F1(monitor)184 540 Q F0(Same as)5.56 E F1 -<ad6d>2.5 E F0(.)A F1(noclob)184 552 Q(ber)-.1 E F0(Same as)224 564 Q F1 -<ad43>2.5 E F0(.)A F1(noexec)184 576 Q F0(Same as)11.12 E F1<ad6e>2.5 E -F0(.)A F1(noglob)184 588 Q F0(Same as)11.1 E F1<ad66>2.5 E F0(.)A F1 -(nolog)184 600 Q F0(Currently ignored.)16.66 E F1(notify)184 612 Q F0 -(Same as)15 E F1<ad62>2.5 E F0(.)A F1(nounset)184 624 Q F0(Same as)6.66 -E F1<ad75>2.5 E F0(.)A F1(onecmd)184 636 Q F0(Same as)6.67 E F1<ad74>2.5 -E F0(.)A F1(ph)184 648 Q(ysical)-.15 E F0(Same as)5.14 E F1<ad50>2.5 E -F0(.)A F1(pipefail)184 660 Q F0 1.029(If set, the return v)7.77 F 1.029 -(alue of a pipeline is the v)-.25 F 1.03 -(alue of the last \(rightmost\) com-)-.25 F 1.137(mand to e)224 672 R -1.136 -(xit with a non-zero status, or zero if all commands in the pipeline) --.15 F -.15(ex)224 684 S(it successfully).15 E 5(.T)-.65 G -(his option is disabled by def)-5 E(ault.)-.1 E F1(posix)184 696 Q F0 -2.09(Change the beha)17.77 F 2.091(vior of)-.2 F F1(bash)4.591 E F0 -2.091(where the def)4.591 F 2.091(ault operation dif)-.1 F 2.091 -(fers from the)-.25 F(POSIX standard to match the standard \()224 708 Q -F3(posix mode)A F0(\).)A(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(14) -198.725 E 0 Cg EP +.15 E(\(see)224 564 Q F2(Shell V)2.5 E(ariables)-.92 E F0(abo)2.5 E -.15 +(ve)-.15 G(\).).15 E F2 -.1(ke)184 576 S(yw).1 E(ord)-.1 E F0(Same as) +224 588 Q F2<ad6b>2.5 E F0(.)A F2(monitor)184 600 Q F0(Same as)5.56 E F2 +<ad6d>2.5 E F0(.)A F2(noclob)184 612 Q(ber)-.1 E F0(Same as)224 624 Q F2 +<ad43>2.5 E F0(.)A F2(noexec)184 636 Q F0(Same as)11.12 E F2<ad6e>2.5 E +F0(.)A F2(noglob)184 648 Q F0(Same as)11.1 E F2<ad66>2.5 E F0(.)A F2 +(nolog)184 660 Q F0(Currently ignored.)16.66 E F2(notify)184 672 Q F0 +(Same as)15 E F2<ad62>2.5 E F0(.)A F2(nounset)184 684 Q F0(Same as)6.66 +E F2<ad75>2.5 E F0(.)A F2(onecmd)184 696 Q F0(Same as)6.67 E F2<ad74>2.5 +E F0(.)A F2(ph)184 708 Q(ysical)-.15 E F0(Same as)5.14 E F2<ad50>2.5 E +F0(.)A(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(14)198.725 E 0 Cg EP %%Page: 15 15 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 (TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF(pri)184 84 Q(vileged)-.1 E F0(Same as)224 96 Q F1<ad70> -2.5 E F0(.)A F1 -.1(ve)184 108 S(rbose).1 E F0(Same as)7.33 E F1<ad76> -2.5 E F0(.)A F1(vi)184 120 Q F0 1.466 -(Use a vi-style command line editing interf)32.22 F 3.965(ace. This)-.1 -F 1.465(also af)3.965 F 1.465(fects the editing)-.25 F(interf)224 132 Q -(ace used for)-.1 E F1 -.18(re)2.5 G(ad \255e).18 E F0(.)A F1(xtrace)184 -144 Q F0(Same as)13.35 E F1<ad78>2.5 E F0(.)A(If)184 162 Q F1<ad6f>3.052 -E F0 .552(is supplied with no)3.052 F/F2 10/Times-Italic@0 SF +/Times-Bold@0 SF(pipefail)184 84 Q F0 1.029(If set, the return v)7.77 F +1.029(alue of a pipeline is the v)-.25 F 1.03 +(alue of the last \(rightmost\) com-)-.25 F 1.137(mand to e)224 96 R +1.136 +(xit with a non-zero status, or zero if all commands in the pipeline) +-.15 F -.15(ex)224 108 S(it successfully).15 E 5(.T)-.65 G +(his option is disabled by def)-5 E(ault.)-.1 E F1(posix)184 120 Q F0 +2.09(Change the beha)17.77 F 2.091(vior of)-.2 F F1(bash)4.591 E F0 +2.091(where the def)4.591 F 2.091(ault operation dif)-.1 F 2.091 +(fers from the)-.25 F(POSIX standard to match the standard \()224 132 Q +/F2 10/Times-Italic@0 SF(posix mode)A F0(\).)A F1(pri)184 144 Q(vileged) +-.1 E F0(Same as)224 156 Q F1<ad70>2.5 E F0(.)A F1 -.1(ve)184 168 S +(rbose).1 E F0(Same as)7.33 E F1<ad76>2.5 E F0(.)A F1(vi)184 180 Q F0 +1.466(Use a vi-style command line editing interf)32.22 F 3.965 +(ace. This)-.1 F 1.465(also af)3.965 F 1.465(fects the editing)-.25 F +(interf)224 192 Q(ace used for)-.1 E F1 -.18(re)2.5 G(ad \255e).18 E F0 +(.)A F1(xtrace)184 204 Q F0(Same as)13.35 E F1<ad78>2.5 E F0(.)A(If)184 +222 Q F1<ad6f>3.052 E F0 .552(is supplied with no)3.052 F F2 (option\255name)3.053 E F0 3.053(,t)C .553(he v)-3.053 F .553 (alues of the current options are printed.)-.25 F(If)5.553 E F1(+o)184 -174 Q F0 1.072(is supplied with no)3.572 F F2(option\255name)3.572 E F0 +234 Q F0 1.072(is supplied with no)3.572 F F2(option\255name)3.572 E F0 3.572(,a)C 1.071(series of)-.001 F F1(set)3.571 E F0 1.071 (commands to recreate the current)3.571 F -(option settings is displayed on the standard output.)184 186 Q F1<ad70> -144 198 Q F0 -.45(Tu)28.74 G 1.071(rn on).45 F F2(privile)4.821 E -.1 +(option settings is displayed on the standard output.)184 246 Q F1<ad70> +144 258 Q F0 -.45(Tu)28.74 G 1.071(rn on).45 F F2(privile)4.821 E -.1 (ge)-.4 G(d).1 E F0 3.572(mode. In)4.341 F 1.072(this mode, the)3.572 F /F3 9/Times-Bold@0 SF($ENV)3.572 E F0(and)3.322 E F3($B)3.572 E(ASH_ENV) -.27 E F0 1.072(\214les are not pro-)3.322 F 1.501 -(cessed, shell functions are not inherited from the en)184 210 R 1.5 +(cessed, shell functions are not inherited from the en)184 270 R 1.5 (vironment, and the)-.4 F F3(SHELLOPTS)4 E/F4 9/Times-Roman@0 SF(,)A F3 --.27(BA)184 222 S(SHOPTS).27 E F4(,)A F3(CDP)2.774 E -.855(AT)-.666 G(H) +-.27(BA)184 282 S(SHOPTS).27 E F4(,)A F3(CDP)2.774 E -.855(AT)-.666 G(H) .855 E F4(,)A F0(and)2.774 E F3(GLOBIGNORE)3.024 E F0 -.25(va)2.774 G .524(riables, if the).25 F 3.025(ya)-.15 G .525(ppear in the en)-3.025 F -(vironment,)-.4 E .38(are ignored.)184 234 R .38 +(vironment,)-.4 E .38(are ignored.)184 294 R .38 (If the shell is started with the ef)5.38 F(fecti)-.25 E .679 -.15(ve u) -.25 H .379(ser \(group\) id not equal to the real).15 F .461 -(user \(group\) id, and the)184 246 R F1<ad70>2.961 E F0 .461 +(user \(group\) id, and the)184 306 R F1<ad70>2.961 E F0 .461 (option is not supplied, these actions are tak)2.961 F .462 -(en and the ef)-.1 F(fec-)-.25 E(ti)184 258 Q .695 -.15(ve u)-.25 H .395 +(en and the ef)-.1 F(fec-)-.25 E(ti)184 318 Q .695 -.15(ve u)-.25 H .395 (ser id is set to the real user id.).15 F .395(If the)5.395 F F1<ad70> 2.895 E F0 .394(option is supplied at startup, the ef)2.895 F(fecti)-.25 -E -.15(ve)-.25 G .386(user id is not reset.)184 270 R -.45(Tu)5.386 G +E -.15(ve)-.25 G .386(user id is not reset.)184 330 R -.45(Tu)5.386 G .386(rning this option of).45 F 2.886(fc)-.25 G .387(auses the ef)-2.886 F(fecti)-.25 E .687 -.15(ve u)-.25 H .387(ser and group ids to be).15 F -(set to the real user and group ids.)184 282 Q F1<ad74>144 294 Q F0 +(set to the real user and group ids.)184 342 Q F1<ad74>144 354 Q F0 (Exit after reading and e)30.97 E -.15(xe)-.15 G(cuting one command.).15 -E F1<ad75>144 306 Q F0 -.35(Tr)28.74 G .044(eat unset v).35 F .044(aria\ +E F1<ad75>144 366 Q F0 -.35(Tr)28.74 G .044(eat unset v).35 F .044(aria\ bles and parameters other than the special parameters "@" and "*" as an) --.25 F .182(error when performing parameter e)184 318 R 2.682 +-.25 F .182(error when performing parameter e)184 378 R 2.682 (xpansion. If)-.15 F -.15(ex)2.682 G .183 (pansion is attempted on an unset v).15 F(ari-)-.25 E .746 -(able or parameter)184 330 R 3.246(,t)-.4 G .746 +(able or parameter)184 390 R 3.246(,t)-.4 G .746 (he shell prints an error message, and, if not interacti)-3.246 F -.15 (ve)-.25 G 3.246(,e).15 G .746(xits with a)-3.396 F(non-zero status.)184 -342 Q F1<ad76>144 354 Q F0(Print shell input lines as the)29.3 E 2.5(ya) --.15 G(re read.)-2.5 E F1<ad78>144 366 Q F0 .315(After e)29.3 F .315 +402 Q F1<ad76>144 414 Q F0(Print shell input lines as the)29.3 E 2.5(ya) +-.15 G(re read.)-2.5 E F1<ad78>144 426 Q F0 .315(After e)29.3 F .315 (xpanding each)-.15 F F2 .315(simple command)2.815 F F0(,)A F1 -.25(fo) 2.815 G(r).25 E F0(command,)2.815 E F1(case)2.815 E F0(command,)2.815 E -F1(select)2.815 E F0(command,)2.815 E 1.236(or arithmetic)184 378 R F1 +F1(select)2.815 E F0(command,)2.815 E 1.236(or arithmetic)184 438 R F1 -.25(fo)3.736 G(r).25 E F0 1.236(command, display the e)3.736 F 1.236 (xpanded v)-.15 F 1.236(alue of)-.25 F F3(PS4)3.736 E F4(,)A F0(follo) -3.486 E 1.236(wed by the com-)-.25 F(mand and its e)184 390 Q +3.486 E 1.236(wed by the com-)-.25 F(mand and its e)184 450 Q (xpanded ar)-.15 E(guments or associated w)-.18 E(ord list.)-.1 E F1 -<ad42>144 402 Q F0 2.578(The shell performs brace e)27.63 F 2.578 +<ad42>144 462 Q F0 2.578(The shell performs brace e)27.63 F 2.578 (xpansion \(see)-.15 F F1 2.578(Brace Expansion)5.078 F F0(abo)5.078 E --.15(ve)-.15 G 5.079(\). This).15 F 2.579(is on by)5.079 F(def)184 414 Q -(ault.)-.1 E F1<ad43>144 426 Q F0 .214(If set,)27.08 F F1(bash)2.714 E +-.15(ve)-.15 G 5.079(\). This).15 F 2.579(is on by)5.079 F(def)184 474 Q +(ault.)-.1 E F1<ad43>144 486 Q F0 .214(If set,)27.08 F F1(bash)2.714 E F0 .214(does not o)2.714 F -.15(ve)-.15 G .214(rwrite an e).15 F .214 (xisting \214le with the)-.15 F F1(>)2.714 E F0(,)A F1(>&)2.714 E F0 2.713(,a)C(nd)-2.713 E F1(<>)2.713 E F0 .213(redirection opera-)2.713 F -3.053(tors. This)184 438 R .553(may be o)3.053 F -.15(ve)-.15 G .553 +3.053(tors. This)184 498 R .553(may be o)3.053 F -.15(ve)-.15 G .553 (rridden when creating output \214les by using the redirection opera-) -.15 F(tor)184 450 Q F1(>|)2.5 E F0(instead of)2.5 E F1(>)2.5 E F0(.)A F1 -<ad45>144 462 Q F0 .104(If set, an)27.63 F 2.604(yt)-.15 G .104(rap on) +.15 F(tor)184 510 Q F1(>|)2.5 E F0(instead of)2.5 E F1(>)2.5 E F0(.)A F1 +<ad45>144 522 Q F0 .104(If set, an)27.63 F 2.604(yt)-.15 G .104(rap on) -2.604 F F1(ERR)2.604 E F0 .103 (is inherited by shell functions, command substitutions, and com-)2.604 -F .838(mands e)184 474 R -.15(xe)-.15 G .838(cuted in a subshell en).15 +F .838(mands e)184 534 R -.15(xe)-.15 G .838(cuted in a subshell en).15 F 3.338(vironment. The)-.4 F F1(ERR)3.338 E F0 .839 -(trap is normally not inherited in)3.339 F(such cases.)184 486 Q F1 -<ad48>144 498 Q F0(Enable)26.52 E F1(!)3.032 E F0 .532 +(trap is normally not inherited in)3.339 F(such cases.)184 546 Q F1 +<ad48>144 558 Q F0(Enable)26.52 E F1(!)3.032 E F0 .532 (style history substitution.)5.532 F .531(This option is on by def)5.532 -F .531(ault when the shell is inter)-.1 F(-)-.2 E(acti)184 510 Q -.15 -(ve)-.25 G(.).15 E F1<ad50>144 522 Q F0 1.164 +F .531(ault when the shell is inter)-.1 F(-)-.2 E(acti)184 570 Q -.15 +(ve)-.25 G(.).15 E F1<ad50>144 582 Q F0 1.164 (If set, the shell does not follo)28.19 F 3.664(ws)-.25 G 1.164 (ymbolic links when e)-3.664 F -.15(xe)-.15 G 1.165 (cuting commands such as).15 F F1(cd)3.665 E F0 2.822 -(that change the current w)184 534 R 2.822(orking directory)-.1 F 7.822 +(that change the current w)184 594 R 2.822(orking directory)-.1 F 7.822 (.I)-.65 G 5.322(tu)-7.822 G 2.822(ses the ph)-5.322 F 2.821 -(ysical directory structure)-.05 F 2.685(instead. By)184 546 R(def)2.685 +(ysical directory structure)-.05 F 2.685(instead. By)184 606 R(def)2.685 E(ault,)-.1 E F1(bash)2.686 E F0(follo)2.686 E .186 (ws the logical chain of directories when performing com-)-.25 F -(mands which change the current directory)184 558 Q(.)-.65 E F1<ad54>144 -570 Q F0 .89(If set, an)27.63 F 3.39(yt)-.15 G .89(raps on)-3.39 F F1 +(mands which change the current directory)184 618 Q(.)-.65 E F1<ad54>144 +630 Q F0 .89(If set, an)27.63 F 3.39(yt)-.15 G .89(raps on)-3.39 F F1 (DEB)3.39 E(UG)-.1 E F0(and)3.39 E F1(RETURN)3.39 E F0 .89 (are inherited by shell functions, command)3.39 F 1.932 -(substitutions, and commands e)184 582 R -.15(xe)-.15 G 1.932 +(substitutions, and commands e)184 642 R -.15(xe)-.15 G 1.932 (cuted in a subshell en).15 F 4.432(vironment. The)-.4 F F1(DEB)4.432 E -(UG)-.1 E F0(and)4.432 E F1(RETURN)184 594 Q F0 -(traps are normally not inherited in such cases.)2.5 E F1<adad>144 606 Q +(UG)-.1 E F0(and)4.432 E F1(RETURN)184 654 Q F0 +(traps are normally not inherited in such cases.)2.5 E F1<adad>144 666 Q F0 .401(If no ar)28.6 F .401(guments follo)-.18 F 2.901(wt)-.25 G .401 (his option, then the positional parameters are unset.)-2.901 F -(Otherwise,)5.4 E(the positional parameters are set to the)184 618 Q F2 +(Otherwise,)5.4 E(the positional parameters are set to the)184 678 Q F2 (ar)2.5 E(g)-.37 E F0(s, e)A -.15(ve)-.25 G 2.5(ni).15 G 2.5(fs)-2.5 G (ome of them be)-2.5 E(gin with a)-.15 E F1<ad>2.5 E F0(.)A F1<ad>144 -630 Q F0 1.944(Signal the end of options, cause all remaining)34.3 F F2 +690 Q F0 1.944(Signal the end of options, cause all remaining)34.3 F F2 (ar)4.444 E(g)-.37 E F0 4.444(st)C 4.444(ob)-4.444 G 4.445(ea)-4.444 G -1.945(ssigned to the positional)-4.445 F 3.446(parameters. The)184 642 R +1.945(ssigned to the positional)-4.445 F 3.446(parameters. The)184 702 R F1<ad78>3.446 E F0(and)3.446 E F1<ad76>3.446 E F0 .945 (options are turned of)3.446 F 3.445(f. If)-.25 F .945(there are no) 3.445 F F2(ar)3.445 E(g)-.37 E F0 .945(s, the positional)B -(parameters remain unchanged.)184 654 Q .425(The options are of)144 -670.8 R 2.925(fb)-.25 G 2.925(yd)-2.925 G(ef)-2.925 E .425 +(parameters remain unchanged.)184 714 Q .425(The options are of)144 +730.8 R 2.925(fb)-.25 G 2.925(yd)-2.925 G(ef)-2.925 E .425 (ault unless otherwise noted.)-.1 F .425 -(Using + rather than \255 causes these options)5.425 F .178 -(to be turned of)144 682.8 R 2.678(f. The)-.25 F .178 -(options can also be speci\214ed as ar)2.678 F .178(guments to an in) --.18 F -.2(vo)-.4 G .177(cation of the shell.).2 F(The)5.177 E .066 -(current set of options may be found in)144 694.8 R F1<24ad>2.566 E F0 -5.066(.T)C .066(he return status is al)-5.066 F -.1(wa)-.1 G .066 -(ys true unless an in).1 F -.25(va)-.4 G .067(lid option).25 F -(is encountered.)144 706.8 Q(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E -(15)198.725 E 0 Cg EP +(Using + rather than \255 causes these options)5.425 F(GNU Bash-4.0)72 +768 Q(2004 Apr 20)148.735 E(15)198.725 E 0 Cg EP %%Page: 16 16 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF(shift)108 84 Q F0([)2.5 E/F2 10/Times-Italic@0 SF(n)A -F0(])A .429(The positional parameters from)144 96 R F2(n)2.929 E F0 .429 -(+1 ... are renamed to)B F1 .429($1 ....)2.929 F F0 -.15(Pa)5.428 G .428 -(rameters represented by the num-).15 F(bers)144 108 Q F1($#)2.582 E F0 -(do)2.582 E .082(wn to)-.25 F F1($#)2.582 E F0<ad>A F2(n)A F0 .082 -(+1 are unset.)B F2(n)5.442 E F0 .082(must be a non-ne)2.822 F -.05(ga) --.15 G(ti).05 E .383 -.15(ve n)-.25 H .083(umber less than or equal to) -.15 F F1($#)2.583 E F0 5.083(.I)C(f)-5.083 E F2(n)2.943 E F0 .06 -(is 0, no parameters are changed.)144 120 R(If)5.06 E F2(n)2.92 E F0 .06 -(is not gi)2.8 F -.15(ve)-.25 G .06(n, it is assumed to be 1.).15 F(If) -5.06 E F2(n)2.92 E F0 .06(is greater than)2.8 F F1($#)2.56 E F0 2.56(,t) -C(he)-2.56 E .143(positional parameters are not changed.)144 132 R .144 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E .178 +(to be turned of)144 84 R 2.678(f. The)-.25 F .178 +(options can also be speci\214ed as ar)2.678 F .178(guments to an in) +-.18 F -.2(vo)-.4 G .177(cation of the shell.).2 F(The)5.177 E .066 +(current set of options may be found in)144 96 R/F1 10/Times-Bold@0 SF +<24ad>2.566 E F0 5.066(.T)C .066(he return status is al)-5.066 F -.1(wa) +-.1 G .066(ys true unless an in).1 F -.25(va)-.4 G .067(lid option).25 F +(is encountered.)144 108 Q F1(shift)108 124.8 Q F0([)2.5 E/F2 10 +/Times-Italic@0 SF(n)A F0(])A .429(The positional parameters from)144 +136.8 R F2(n)2.929 E F0 .429(+1 ... are renamed to)B F1 .429($1 ....) +2.929 F F0 -.15(Pa)5.428 G .428(rameters represented by the num-).15 F +(bers)144 148.8 Q F1($#)2.582 E F0(do)2.582 E .082(wn to)-.25 F F1($#) +2.582 E F0<ad>A F2(n)A F0 .082(+1 are unset.)B F2(n)5.442 E F0 .082 +(must be a non-ne)2.822 F -.05(ga)-.15 G(ti).05 E .383 -.15(ve n)-.25 H +.083(umber less than or equal to).15 F F1($#)2.583 E F0 5.083(.I)C(f) +-5.083 E F2(n)2.943 E F0 .06(is 0, no parameters are changed.)144 160.8 +R(If)5.06 E F2(n)2.92 E F0 .06(is not gi)2.8 F -.15(ve)-.25 G .06 +(n, it is assumed to be 1.).15 F(If)5.06 E F2(n)2.92 E F0 .06 +(is greater than)2.8 F F1($#)2.56 E F0 2.56(,t)C(he)-2.56 E .143 +(positional parameters are not changed.)144 172.8 R .144 (The return status is greater than zero if)5.143 F F2(n)3.004 E F0 .144 (is greater than)2.884 F F1($#)2.644 E F0 -(or less than zero; otherwise 0.)144 144 Q F1(shopt)108 160.8 Q F0([)2.5 -E F1(\255pqsu)A F0 2.5(][)C F1<ad6f>-2.5 E F0 2.5(][)C F2(optname)-2.5 E -F0(...])2.5 E -.8(To)144 172.8 S .222(ggle the v).8 F .222(alues of v) --.25 F .222(ariables controlling optional shell beha)-.25 F(vior)-.2 E -5.222(.W)-.55 G .222(ith no options, or with the)-5.622 F F1<ad70>2.722 -E F0 .721(option, a list of all settable options is displayed, with an \ -indication of whether or not each is set.)144 184.8 R(The)144 196.8 Q F1 -<ad70>2.828 E F0 .327(option causes output to be displayed in a form th\ -at may be reused as input.)2.828 F .327(Other options)5.327 F(ha)144 -208.8 Q .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1<ad73> -144 220.8 Q F0(Enable \(set\) each)26.41 E F2(optname)2.5 E F0(.)A F1 -<ad75>144 232.8 Q F0(Disable \(unset\) each)24.74 E F2(optname)2.5 E F0 -(.)A F1<ad71>144 244.8 Q F0 .003(Suppresses normal output \(quiet mode\ -\); the return status indicates whether the)24.74 F F2(optname)2.504 E -F0(is)2.504 E .256(set or unset.)180 256.8 R .256(If multiple)5.256 F F2 -(optname)2.756 E F0(ar)2.756 E .256(guments are gi)-.18 F -.15(ve)-.25 G -2.756(nw).15 G(ith)-2.756 E F1<ad71>2.756 E F0 2.755(,t)C .255 -(he return status is zero if)-2.755 F(all)180 268.8 Q F2(optnames)2.5 E -F0(are enabled; non-zero otherwise.)2.5 E F1<ad6f>144 280.8 Q F0 -(Restricts the v)25.3 E(alues of)-.25 E F2(optname)2.5 E F0 -(to be those de\214ned for the)2.5 E F1<ad6f>2.5 E F0(option to the)2.5 -E F1(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E .127(If either)144 297.6 R F1 -<ad73>2.627 E F0(or)2.627 E F1<ad75>2.627 E F0 .127(is used with no) -2.627 F F2(optname)2.627 E F0(ar)2.627 E .127 +(or less than zero; otherwise 0.)144 184.8 Q F1(shopt)108 201.6 Q F0([) +2.5 E F1(\255pqsu)A F0 2.5(][)C F1<ad6f>-2.5 E F0 2.5(][)C F2(optname) +-2.5 E F0(...])2.5 E -.8(To)144 213.6 S .222(ggle the v).8 F .222 +(alues of v)-.25 F .222(ariables controlling optional shell beha)-.25 F +(vior)-.2 E 5.222(.W)-.55 G .222(ith no options, or with the)-5.622 F F1 +<ad70>2.722 E F0 .721(option, a list of all settable options is display\ +ed, with an indication of whether or not each is set.)144 225.6 R(The) +144 237.6 Q F1<ad70>2.828 E F0 .327(option causes output to be displaye\ +d in a form that may be reused as input.)2.828 F .327(Other options) +5.327 F(ha)144 249.6 Q .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:) +-.25 E F1<ad73>144 261.6 Q F0(Enable \(set\) each)26.41 E F2(optname)2.5 +E F0(.)A F1<ad75>144 273.6 Q F0(Disable \(unset\) each)24.74 E F2 +(optname)2.5 E F0(.)A F1<ad71>144 285.6 Q F0 .003(Suppresses normal out\ +put \(quiet mode\); the return status indicates whether the)24.74 F F2 +(optname)2.504 E F0(is)2.504 E .256(set or unset.)180 297.6 R .256 +(If multiple)5.256 F F2(optname)2.756 E F0(ar)2.756 E .256 +(guments are gi)-.18 F -.15(ve)-.25 G 2.756(nw).15 G(ith)-2.756 E F1 +<ad71>2.756 E F0 2.755(,t)C .255(he return status is zero if)-2.755 F +(all)180 309.6 Q F2(optnames)2.5 E F0(are enabled; non-zero otherwise.) +2.5 E F1<ad6f>144 321.6 Q F0(Restricts the v)25.3 E(alues of)-.25 E F2 +(optname)2.5 E F0(to be those de\214ned for the)2.5 E F1<ad6f>2.5 E F0 +(option to the)2.5 E F1(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E .127 +(If either)144 338.4 R F1<ad73>2.627 E F0(or)2.627 E F1<ad75>2.627 E F0 +.127(is used with no)2.627 F F2(optname)2.627 E F0(ar)2.627 E .127 (guments, the display is limited to those options which)-.18 F 1.024 -(are set or unset, respecti)144 309.6 R -.15(ve)-.25 G(ly).15 E 6.024 +(are set or unset, respecti)144 350.4 R -.15(ve)-.25 G(ly).15 E 6.024 (.U)-.65 G 1.024(nless otherwise noted, the)-6.024 F F1(shopt)3.523 E F0 -1.023(options are disabled \(unset\) by)3.523 F(def)144 321.6 Q(ault.) +1.023(options are disabled \(unset\) by)3.523 F(def)144 362.4 Q(ault.) -.1 E 1.544(The return status when listing options is zero if all)144 -338.4 R F2(optnames)4.044 E F0 1.545(are enabled, non-zero otherwise.) +379.2 R F2(optnames)4.044 E F0 1.545(are enabled, non-zero otherwise.) 4.045 F .696 (When setting or unsetting options, the return status is zero unless an) -144 350.4 R F2(optname)3.196 E F0 .696(is not a v)3.196 F .695 -(alid shell)-.25 F(option.)144 362.4 Q(The list of)144 379.2 Q F1(shopt) -2.5 E F0(options is:)2.5 E F1(autocd)144 397.2 Q F0 .199 +144 391.2 R F2(optname)3.196 E F0 .696(is not a v)3.196 F .695 +(alid shell)-.25 F(option.)144 403.2 Q(The list of)144 420 Q F1(shopt) +2.5 E F0(options is:)2.5 E F1(autocd)144 438 Q F0 .199 (If set, a command name that is the name of a directory is e)11.11 F -.15(xe)-.15 G .2(cuted as if it were the ar).15 F(gu-)-.18 E -(ment to the)184 409.2 Q F1(cd)2.5 E F0 2.5(command. This)2.5 F +(ment to the)184 450 Q F1(cd)2.5 E F0 2.5(command. This)2.5 F (option is only used by interacti)2.5 E .3 -.15(ve s)-.25 H(hells.).15 E -F1(cdable_v)144 421.2 Q(ars)-.1 E F0 .156(If set, an ar)184 433.2 R .156 +F1(cdable_v)144 462 Q(ars)-.1 E F0 .156(If set, an ar)184 474 R .156 (gument to the)-.18 F F1(cd)2.656 E F0 -.2(bu)2.656 G .155 (iltin command that is not a directory is assumed to be the).2 F -(name of a v)184 445.2 Q(ariable whose v)-.25 E -(alue is the directory to change to.)-.25 E F1(cdspell)144 457.2 Q F0 +(name of a v)184 486 Q(ariable whose v)-.25 E +(alue is the directory to change to.)-.25 E F1(cdspell)144 498 Q F0 1.055 (If set, minor errors in the spelling of a directory component in a) 10.55 F F1(cd)3.555 E F0 1.055(command will be)3.555 F 3.988 -(corrected. The)184 469.2 R 1.488(errors check)3.988 F 1.487 +(corrected. The)184 510 R 1.488(errors check)3.988 F 1.487 (ed for are transposed characters, a missing character)-.1 F 3.987(,a) --.4 G(nd)-3.987 E .552(one character too man)184 481.2 R 4.352 -.65 -(y. I)-.15 H 3.052(fac).65 G .552 +-.4 G(nd)-3.987 E .552(one character too man)184 522 R 4.352 -.65(y. I) +-.15 H 3.052(fac).65 G .552 (orrection is found, the corrected \214le name is printed, and)-3.052 F -(the command proceeds.)184 493.2 Q -(This option is only used by interacti)5 E .3 -.15(ve s)-.25 H(hells.) -.15 E F1(checkhash)144 505.2 Q F0 2.08(If set,)184 517.2 R F1(bash)4.58 -E F0 2.079(checks that a command found in the hash table e)4.58 F 2.079 -(xists before trying to)-.15 F -.15(exe)184 529.2 S(cute it.).15 E +(the command proceeds.)184 534 Q(This option is only used by interacti)5 +E .3 -.15(ve s)-.25 H(hells.).15 E F1(checkhash)144 546 Q F0 2.08 +(If set,)184 558 R F1(bash)4.58 E F0 2.079 +(checks that a command found in the hash table e)4.58 F 2.079 +(xists before trying to)-.15 F -.15(exe)184 570 S(cute it.).15 E (If a hashed command no longer e)5 E -(xists, a normal path search is performed.)-.15 E F1(checkjobs)144 541.2 -Q F0 .448(If set,)184 553.2 R F1(bash)2.948 E F0 .448 +(xists, a normal path search is performed.)-.15 E F1(checkjobs)144 582 Q +F0 .448(If set,)184 594 R F1(bash)2.948 E F0 .448 (lists the status of an)2.948 F 2.949(ys)-.15 G .449 (topped and running jobs before e)-2.949 F .449(xiting an interacti)-.15 -F -.15(ve)-.25 G 3.439(shell. If)184 565.2 R(an)3.439 E 3.439(yj)-.15 G +F -.15(ve)-.25 G 3.439(shell. If)184 606 R(an)3.439 E 3.439(yj)-.15 G .938(obs are running, this causes the e)-3.439 F .938 (xit to be deferred until a second e)-.15 F .938(xit is)-.15 F 2.203 -(attempted without an interv)184 577.2 R 2.203(ening command \(see)-.15 -F/F3 9/Times-Bold@0 SF 2.203(JOB CONTR)4.703 F(OL)-.27 E F0(abo)4.453 E --.15(ve)-.15 G 4.703(\). The).15 F(shell)4.704 E(al)184 589.2 Q -.1(wa) --.1 G(ys postpones e).1 E(xiting if an)-.15 E 2.5(yj)-.15 G -(obs are stopped.)-2.5 E F1(checkwinsize)144 601.2 Q F0 .797(If set,)184 -613.2 R F1(bash)3.297 E F0 .797(checks the windo)3.297 F 3.297(ws)-.25 G +(attempted without an interv)184 618 R 2.203(ening command \(see)-.15 F +/F3 9/Times-Bold@0 SF 2.203(JOB CONTR)4.703 F(OL)-.27 E F0(abo)4.453 E +-.15(ve)-.15 G 4.703(\). The).15 F(shell)4.704 E(al)184 630 Q -.1(wa)-.1 +G(ys postpones e).1 E(xiting if an)-.15 E 2.5(yj)-.15 G +(obs are stopped.)-2.5 E F1(checkwinsize)144 642 Q F0 .797(If set,)184 +654 R F1(bash)3.297 E F0 .797(checks the windo)3.297 F 3.297(ws)-.25 G .796(ize after each command and, if necessary)-3.297 F 3.296(,u)-.65 G -.796(pdates the)-3.296 F -.25(va)184 625.2 S(lues of).25 E F3(LINES)2.5 -E F0(and)2.25 E F3(COLUMNS)2.5 E/F4 9/Times-Roman@0 SF(.)A F1(cmdhist) -144 637.2 Q F0 1.202(If set,)6.11 F F1(bash)3.702 E F0 1.202 -(attempts to sa)3.702 F 1.502 -.15(ve a)-.2 H 1.202 +.796(pdates the)-3.296 F -.25(va)184 666 S(lues of).25 E F3(LINES)2.5 E +F0(and)2.25 E F3(COLUMNS)2.5 E/F4 9/Times-Roman@0 SF(.)A F1(cmdhist)144 +678 Q F0 1.202(If set,)6.11 F F1(bash)3.702 E F0 1.202(attempts to sa) +3.702 F 1.502 -.15(ve a)-.2 H 1.202 (ll lines of a multiple-line command in the same history).15 F(entry)184 -649.2 Q 5(.T)-.65 G(his allo)-5 E -(ws easy re-editing of multi-line commands.)-.25 E F1(compat31)144 661.2 -Q F0 .42(If set,)184 673.2 R F1(bash)2.92 E F0 .42(changes its beha)2.92 -F .419(vior to that of v)-.2 F .419 -(ersion 3.1 with respect to quoted ar)-.15 F(guments)-.18 E -(to the conditional command')184 685.2 Q 2.5(s=)-.55 G 2.5(~o)-2.5 G -(perator)-2.5 E(.)-.55 E F1(compat32)144 697.2 Q F0 1.409(If set,)184 -709.2 R F1(bash)3.909 E F0 1.409(changes its beha)3.909 F 1.409 -(vior to that of v)-.2 F 1.41 -(ersion 3.2 with respect to locale-speci\214c)-.15 F -(string comparison when using the conditional command')184 721.2 Q 2.5 -(s<a)-.55 G(nd > operators.)-2.5 E(GNU Bash-4.0)72 768 Q(2004 Apr 20) -148.735 E(16)198.725 E 0 Cg EP +690 Q 5(.T)-.65 G(his allo)-5 E +(ws easy re-editing of multi-line commands.)-.25 E F1(compat31)144 702 Q +F0 .42(If set,)184 714 R F1(bash)2.92 E F0 .42(changes its beha)2.92 F +.419(vior to that of v)-.2 F .419(ersion 3.1 with respect to quoted ar) +-.15 F(guments)-.18 E(to the conditional command')184 726 Q 2.5(s=)-.55 +G 2.5(~o)-2.5 G(perator)-2.5 E(.)-.55 E(GNU Bash-4.0)72 768 Q +(2004 Apr 20)148.735 E(16)198.725 E 0 Cg EP %%Page: 17 17 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 (TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF(compat40)144 84 Q F0 1.41(If set,)184 96 R F1(bash)3.91 -E F0 1.41(changes its beha)3.91 F 1.409(vior to that of v)-.2 F 1.409 +/Times-Bold@0 SF(compat32)144 84 Q F0 1.409(If set,)184 96 R F1(bash) +3.909 E F0 1.409(changes its beha)3.909 F 1.409(vior to that of v)-.2 F +1.41(ersion 3.2 with respect to locale-speci\214c)-.15 F +(string comparison when using the conditional command')184 108 Q 2.5 +(s<a)-.55 G(nd > operators.)-2.5 E F1(compat40)144 120 Q F0 1.41 +(If set,)184 132 R F1(bash)3.91 E F0 1.41(changes its beha)3.91 F 1.409 +(vior to that of v)-.2 F 1.409 (ersion 4.0 with respect to locale-speci\214c)-.15 F 1.692 -(string comparison when using the conditional command')184 108 R 4.193 -(s<a)-.55 G 1.693(nd > operators and the)-4.193 F(ef)184 120 Q -(fect of interrupting a command list.)-.25 E F1(dirspell)144 132 Q F0 +(string comparison when using the conditional command')184 144 R 4.193 +(s<a)-.55 G 1.693(nd > operators and the)-4.193 F(ef)184 156 Q +(fect of interrupting a command list.)-.25 E F1(dirspell)144 168 Q F0 .859(If set,)7.77 F F1(bash)3.359 E F0 .858 (attempts spelling correction on directory names during w)3.359 F .858 (ord completion if)-.1 F -(the directory name initially supplied does not e)184 144 Q(xist.)-.15 E -F1(dotglob)144 156 Q F0 .165(If set,)7.77 F F1(bash)2.665 E F0 .165 +(the directory name initially supplied does not e)184 180 Q(xist.)-.15 E +F1(dotglob)144 192 Q F0 .165(If set,)7.77 F F1(bash)2.665 E F0 .165 (includes \214lenames be)2.665 F .165(ginning with a `.)-.15 F 2.665('i) -.7 G 2.665(nt)-2.665 G .165(he results of pathname e)-2.665 F -(xpansion.)-.15 E F1(execfail)144 168 Q F0 1.387 +(xpansion.)-.15 E F1(execfail)144 204 Q F0 1.387 (If set, a non-interacti)7.79 F 1.687 -.15(ve s)-.25 H 1.386 (hell will not e).15 F 1.386(xit if it cannot e)-.15 F -.15(xe)-.15 G -1.386(cute the \214le speci\214ed as an).15 F(ar)184 180 Q +1.386(cute the \214le speci\214ed as an).15 F(ar)184 216 Q (gument to the)-.18 E F1(exec)2.5 E F0 -.2(bu)2.5 G(iltin command.).2 E (An interacti)5 E .3 -.15(ve s)-.25 H(hell does not e).15 E(xit if)-.15 -E F1(exec)2.5 E F0 -.1(fa)2.5 G(ils.).1 E F1(expand_aliases)144 192 Q F0 -.716(If set, aliases are e)184 204 R .717(xpanded as described abo)-.15 +E F1(exec)2.5 E F0 -.1(fa)2.5 G(ils.).1 E F1(expand_aliases)144 228 Q F0 +.716(If set, aliases are e)184 240 R .717(xpanded as described abo)-.15 F 1.017 -.15(ve u)-.15 H(nder).15 E/F2 9/Times-Bold@0 SF(ALIASES)3.217 E /F3 9/Times-Roman@0 SF(.)A F0 .717(This option is enabled)5.217 F -(by def)184 216 Q(ault for interacti)-.1 E .3 -.15(ve s)-.25 H(hells.) -.15 E F1(extdeb)144 228 Q(ug)-.2 E F0(If set, beha)184 240 Q +(by def)184 252 Q(ault for interacti)-.1 E .3 -.15(ve s)-.25 H(hells.) +.15 E F1(extdeb)144 264 Q(ug)-.2 E F0(If set, beha)184 276 Q (vior intended for use by deb)-.2 E(uggers is enabled:)-.2 E F1(1.)184 -252 Q F0(The)28.5 E F1<ad46>4.251 E F0 1.751(option to the)4.251 F F1 +288 Q F0(The)28.5 E F1<ad46>4.251 E F0 1.751(option to the)4.251 F F1 (declar)4.251 E(e)-.18 E F0 -.2(bu)4.251 G 1.751 (iltin displays the source \214le name and line).2 F -(number corresponding to each function name supplied as an ar)220 264 Q -(gument.)-.18 E F1(2.)184 276 Q F0 1.667(If the command run by the)28.5 +(number corresponding to each function name supplied as an ar)220 300 Q +(gument.)-.18 E F1(2.)184 312 Q F0 1.667(If the command run by the)28.5 F F1(DEB)4.167 E(UG)-.1 E F0 1.667(trap returns a non-zero v)4.167 F -1.667(alue, the ne)-.25 F(xt)-.15 E(command is skipped and not e)220 288 -Q -.15(xe)-.15 G(cuted.).15 E F1(3.)184 300 Q F0 .841 +1.667(alue, the ne)-.25 F(xt)-.15 E(command is skipped and not e)220 324 +Q -.15(xe)-.15 G(cuted.).15 E F1(3.)184 336 Q F0 .841 (If the command run by the)28.5 F F1(DEB)3.341 E(UG)-.1 E F0 .841 (trap returns a v)3.341 F .84(alue of 2, and the shell is)-.25 F -.15 -(exe)220 312 S .488 +(exe)220 348 S .488 (cuting in a subroutine \(a shell function or a shell script e).15 F -.15(xe)-.15 G .488(cuted by the).15 F F1(.)2.988 E F0(or)2.988 E F1 -(sour)220 324 Q(ce)-.18 E F0 -.2(bu)2.5 G(iltins\), a call to).2 E F1 --.18(re)2.5 G(tur).18 E(n)-.15 E F0(is simulated.)2.5 E F1(4.)184 336 Q +(sour)220 360 Q(ce)-.18 E F0 -.2(bu)2.5 G(iltins\), a call to).2 E F1 +-.18(re)2.5 G(tur).18 E(n)-.15 E F0(is simulated.)2.5 E F1(4.)184 372 Q F2 -.27(BA)28.5 G(SH_ARGC).27 E F0(and)3.154 E F2 -.27(BA)3.404 G (SH_ARGV).27 E F0 .904(are updated as described in their descriptions) -3.154 F(abo)220 348 Q -.15(ve)-.15 G(.).15 E F1(5.)184 360 Q F0 1.359 +3.154 F(abo)220 384 Q -.15(ve)-.15 G(.).15 E F1(5.)184 396 Q F0 1.359 (Function tracing is enabled:)28.5 F 1.359 (command substitution, shell functions, and sub-)6.359 F(shells in)220 -372 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(dw).1 G(ith)-2.5 E F1(\()2.5 E/F4 10 +408 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(dw).1 G(ith)-2.5 E F1(\()2.5 E/F4 10 /Times-Italic@0 SF(command)2.5 E F1(\))2.5 E F0(inherit the)2.5 E F1 (DEB)2.5 E(UG)-.1 E F0(and)2.5 E F1(RETURN)2.5 E F0(traps.)2.5 E F1(6.) -184 384 Q F0 .805(Error tracing is enabled:)28.5 F .804 -(command substitution, shell functions, and subshells)5.805 F(in)220 396 +184 420 Q F0 .805(Error tracing is enabled:)28.5 F .804 +(command substitution, shell functions, and subshells)5.805 F(in)220 432 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(dw).1 G(ith)-2.5 E F1(\()2.5 E F4 (command)2.5 E F1(\))2.5 E F0(inherit the)2.5 E F1(ERR)2.5 E F0(trap.) -2.5 E F1(extglob)144 408 Q F0 .4(If set, the e)8.89 F .4 +2.5 E F1(extglob)144 444 Q F0 .4(If set, the e)8.89 F .4 (xtended pattern matching features described abo)-.15 F .7 -.15(ve u) --.15 H(nder).15 E F1 -.1(Pa)2.9 G .4(thname Expan-).1 F(sion)184 420 Q -F0(are enabled.)2.5 E F1(extquote)144 432 Q F0 2.473(If set,)184 444 R +-.15 H(nder).15 E F1 -.1(Pa)2.9 G .4(thname Expan-).1 F(sion)184 456 Q +F0(are enabled.)2.5 E F1(extquote)144 468 Q F0 2.473(If set,)184 480 R F1($)4.973 E F0<08>A F4(string)A F0 4.973<0861>C(nd)-4.973 E F1($)4.973 E F0(")A F4(string)A F0 4.973("q)C 2.473(uoting is performed within) -4.973 F F1(${)4.973 E F4(par)A(ameter)-.15 E F1(})A F0 -.15(ex)4.973 G -(pansions).15 E(enclosed in double quotes.)184 456 Q -(This option is enabled by def)5 E(ault.)-.1 E F1(failglob)144 468 Q F0 +(pansions).15 E(enclosed in double quotes.)184 492 Q +(This option is enabled by def)5 E(ault.)-.1 E F1(failglob)144 504 Q F0 1.424(If set, patterns which f)7.77 F 1.425 (ail to match \214lenames during pathname e)-.1 F 1.425 -(xpansion result in an)-.15 F -.15(ex)184 480 S(pansion error).15 E(.) --.55 E F1 -.25(fo)144 492 S -.18(rc).25 G(e_\214gnor).18 E(e)-.18 E F0 -.937(If set, the suf)184 504 R<8c78>-.25 E .936(es speci\214ed by the) +(xpansion result in an)-.15 F -.15(ex)184 516 S(pansion error).15 E(.) +-.55 E F1 -.25(fo)144 528 S -.18(rc).25 G(e_\214gnor).18 E(e)-.18 E F0 +.937(If set, the suf)184 540 R<8c78>-.25 E .936(es speci\214ed by the) -.15 F F2(FIGNORE)3.436 E F0 .936(shell v)3.186 F .936(ariable cause w) --.25 F .936(ords to be ignored)-.1 F .32(when performing w)184 516 R .32 +-.25 F .936(ords to be ignored)-.1 F .32(when performing w)184 552 R .32 (ord completion e)-.1 F -.15(ve)-.25 G 2.82(ni).15 G 2.82(ft)-2.82 G .32 (he ignored w)-2.82 F .32(ords are the only possible com-)-.1 F 2.948 -(pletions. See)184 528 R F2 .448(SHELL V)2.948 F(ARIABLES)-1.215 E F0 +(pletions. See)184 564 R F2 .448(SHELL V)2.948 F(ARIABLES)-1.215 E F0 (abo)2.698 E .748 -.15(ve f)-.15 H .448(or a description of).15 F F2 (FIGNORE)2.947 E F3(.)A F0 .447(This option is)4.947 F(enabled by def) -184 540 Q(ault.)-.1 E F1(globstar)144 552 Q F0 .178(If set, the pattern) +184 576 Q(ault.)-.1 E F1(globstar)144 588 Q F0 .178(If set, the pattern) 5 F F1(**)2.678 E F0 .178(used in a pathname e)2.678 F .178 (xpansion conte)-.15 F .179(xt will match a \214les and zero or)-.15 F -1.298(more directories and subdirectories.)184 564 R 1.298 +1.298(more directories and subdirectories.)184 600 R 1.298 (If the pattern is follo)6.298 F 1.298(wed by a)-.25 F F1(/)3.797 E F0 3.797(,o)C 1.297(nly directories)-3.797 F(and subdirectories match.)184 -576 Q F1(gnu_errfmt)144 588 Q F0(If set, shell error messages are writt\ -en in the standard GNU error message format.)184 600 Q F1(histappend)144 -612 Q F0 .676 +612 Q F1(gnu_errfmt)144 624 Q F0(If set, shell error messages are writt\ +en in the standard GNU error message format.)184 636 Q F1(histappend)144 +648 Q F0 .676 (If set, the history list is appended to the \214le named by the v)184 -624 R .676(alue of the)-.25 F F2(HISTFILE)3.177 E F0 -.25(va)2.927 G -(ri-).25 E(able when the shell e)184 636 Q(xits, rather than o)-.15 E --.15(ve)-.15 G(rwriting the \214le.).15 E F1(histr)144 648 Q(eedit)-.18 -E F0 .576(If set, and)184 660 R F1 -.18(re)3.076 G(adline).18 E F0 .575 +660 R .676(alue of the)-.25 F F2(HISTFILE)3.177 E F0 -.25(va)2.927 G +(ri-).25 E(able when the shell e)184 672 Q(xits, rather than o)-.15 E +-.15(ve)-.15 G(rwriting the \214le.).15 E F1(histr)144 684 Q(eedit)-.18 +E F0 .576(If set, and)184 696 R F1 -.18(re)3.076 G(adline).18 E F0 .575 (is being used, a user is gi)3.076 F -.15(ve)-.25 G 3.075(nt).15 G .575 (he opportunity to re-edit a f)-3.075 F .575(ailed his-)-.1 F -(tory substitution.)184 672 Q F1(histv)144 684 Q(erify)-.1 E F0 .402 -(If set, and)184 696 R F1 -.18(re)2.903 G(adline).18 E F0 .403 -(is being used, the results of history substitution are not immediately) -2.903 F .662(passed to the shell parser)184 708 R 5.662(.I)-.55 G .661 -(nstead, the resulting line is loaded into the)-5.662 F F1 -.18(re)3.161 -G(adline).18 E F0(editing)3.161 E -.2(bu)184 720 S -.25(ff).2 G(er).25 E -2.5(,a)-.4 G(llo)-2.5 E(wing further modi\214cation.)-.25 E -(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(17)198.725 E 0 Cg EP +(tory substitution.)184 708 Q(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 +E(17)198.725 E 0 Cg EP %%Page: 18 18 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 (TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF(hostcomplete)144 84 Q F0 1.181(If set, and)184 96 R F1 --.18(re)3.681 G(adline).18 E F0 1.181(is being used,)3.681 F F1(bash) -3.682 E F0 1.182(will attempt to perform hostname completion)3.682 F -1.381(when a w)184 108 R 1.381(ord containing a)-.1 F F1(@)3.881 E F0 -1.381(is being completed \(see)3.881 F F1(Completing)3.88 E F0(under) -3.88 E/F2 9/Times-Bold@0 SF(READLINE)3.88 E F0(abo)184 120 Q -.15(ve) --.15 G 2.5(\). This).15 F(is enabled by def)2.5 E(ault.)-.1 E F1 -(huponexit)144 132 Q F0(If set,)184 144 Q F1(bash)2.5 E F0(will send)2.5 -E F2(SIGHUP)2.5 E F0(to all jobs when an interacti)2.25 E .3 -.15(ve l) --.25 H(ogin shell e).15 E(xits.)-.15 E F1(interacti)144 156 Q -.1(ve)-.1 -G(_comments).1 E F0 .33(If set, allo)184 168 R 2.83(waw)-.25 G .33 +/Times-Bold@0 SF(histv)144 84 Q(erify)-.1 E F0 .402(If set, and)184 96 R +F1 -.18(re)2.903 G(adline).18 E F0 .403 +(is being used, the results of history substitution are not immediately) +2.903 F .662(passed to the shell parser)184 108 R 5.662(.I)-.55 G .661 +(nstead, the resulting line is loaded into the)-5.662 F F1 -.18(re)3.161 +G(adline).18 E F0(editing)3.161 E -.2(bu)184 120 S -.25(ff).2 G(er).25 E +2.5(,a)-.4 G(llo)-2.5 E(wing further modi\214cation.)-.25 E F1 +(hostcomplete)144 132 Q F0 1.181(If set, and)184 144 R F1 -.18(re)3.681 +G(adline).18 E F0 1.181(is being used,)3.681 F F1(bash)3.682 E F0 1.182 +(will attempt to perform hostname completion)3.682 F 1.381(when a w)184 +156 R 1.381(ord containing a)-.1 F F1(@)3.881 E F0 1.381 +(is being completed \(see)3.881 F F1(Completing)3.88 E F0(under)3.88 E +/F2 9/Times-Bold@0 SF(READLINE)3.88 E F0(abo)184 168 Q -.15(ve)-.15 G +2.5(\). This).15 F(is enabled by def)2.5 E(ault.)-.1 E F1(huponexit)144 +180 Q F0(If set,)184 192 Q F1(bash)2.5 E F0(will send)2.5 E F2(SIGHUP) +2.5 E F0(to all jobs when an interacti)2.25 E .3 -.15(ve l)-.25 H +(ogin shell e).15 E(xits.)-.15 E F1(interacti)144 204 Q -.1(ve)-.1 G +(_comments).1 E F0 .33(If set, allo)184 216 R 2.83(waw)-.25 G .33 (ord be)-2.93 F .33(ginning with)-.15 F F1(#)2.83 E F0 .33 (to cause that w)2.83 F .33(ord and all remaining characters on)-.1 F -.967(that line to be ignored in an interacti)184 180 R 1.267 -.15(ve s) +.967(that line to be ignored in an interacti)184 228 R 1.267 -.15(ve s) -.25 H .967(hell \(see).15 F F2(COMMENTS)3.467 E F0(abo)3.217 E -.15(ve) -.15 G 3.467(\). This).15 F .967(option is)3.467 F(enabled by def)184 -192 Q(ault.)-.1 E F1(lithist)144 204 Q F0 .654(If set, and the)15.55 F +240 Q(ault.)-.1 E F1(lithist)144 252 Q F0 .654(If set, and the)15.55 F F1(cmdhist)3.154 E F0 .654 (option is enabled, multi-line commands are sa)3.154 F -.15(ve)-.2 G 3.155(dt).15 G 3.155(ot)-3.155 G .655(he history)-3.155 F -(with embedded ne)184 216 Q +(with embedded ne)184 264 Q (wlines rather than using semicolon separators where possible.)-.25 E F1 -(login_shell)144 228 Q F0 .486 +(login_shell)144 276 Q F0 .486 (The shell sets this option if it is started as a login shell \(see)184 -240 R F2(INV)2.986 E(OCA)-.405 E(TION)-.855 E F0(abo)2.736 E -.15(ve) --.15 G 2.986(\). The).15 F -.25(va)184 252 S(lue may not be changed.).25 -E F1(mailwar)144 264 Q(n)-.15 E F0 .814(If set, and a \214le that)184 -276 R F1(bash)3.314 E F0 .815 +288 R F2(INV)2.986 E(OCA)-.405 E(TION)-.855 E F0(abo)2.736 E -.15(ve) +-.15 G 2.986(\). The).15 F -.25(va)184 300 S(lue may not be changed.).25 +E F1(mailwar)144 312 Q(n)-.15 E F0 .814(If set, and a \214le that)184 +324 R F1(bash)3.314 E F0 .815 (is checking for mail has been accessed since the last time it)3.314 F --.1(wa)184 288 S 2.5(sc).1 G(heck)-2.5 E(ed, the message `)-.1 E +-.1(wa)184 336 S 2.5(sc).1 G(heck)-2.5 E(ed, the message `)-.1 E (`The mail in)-.74 E/F3 10/Times-Italic@0 SF(mail\214le)2.5 E F0 (has been read')2.5 E 2.5('i)-.74 G 2.5(sd)-2.5 G(isplayed.)-2.5 E F1 -(no_empty_cmd_completion)144 300 Q F0 .325(If set, and)184 312 R F1 -.18 +(no_empty_cmd_completion)144 348 Q F0 .325(If set, and)184 360 R F1 -.18 (re)2.825 G(adline).18 E F0 .325(is being used,)2.825 F F1(bash)2.824 E F0 .324(will not attempt to search the)2.824 F F2 -.666(PA)2.824 G(TH) -.189 E F0 .324(for possible)2.574 F -(completions when completion is attempted on an empty line.)184 324 Q F1 -(nocaseglob)144 336 Q F0 .436(If set,)184 348 R F1(bash)2.936 E F0 .436 +(completions when completion is attempted on an empty line.)184 372 Q F1 +(nocaseglob)144 384 Q F0 .436(If set,)184 396 R F1(bash)2.936 E F0 .436 (matches \214lenames in a case\255insensiti)2.936 F .737 -.15(ve f)-.25 -H .437(ashion when performing pathname).05 F -.15(ex)184 360 S +H .437(ashion when performing pathname).05 F -.15(ex)184 408 S (pansion \(see).15 E F1 -.1(Pa)2.5 G(thname Expansion).1 E F0(abo)2.5 E --.15(ve)-.15 G(\).).15 E F1(nocasematch)144 372 Q F0 1.194(If set,)184 -384 R F1(bash)3.694 E F0 1.194(matches patterns in a case\255insensiti) +-.15(ve)-.15 G(\).).15 E F1(nocasematch)144 420 Q F0 1.194(If set,)184 +432 R F1(bash)3.694 E F0 1.194(matches patterns in a case\255insensiti) 3.694 F 1.493 -.15(ve f)-.25 H 1.193(ashion when performing matching).05 -F(while e)184 396 Q -.15(xe)-.15 G(cuting).15 E F1(case)2.5 E F0(or)2.5 -E F1([[)2.5 E F0(conditional commands.)2.5 E F1(nullglob)144 408 Q F0 -.854(If set,)184 420 R F1(bash)3.354 E F0(allo)3.354 E .855 +F(while e)184 444 Q -.15(xe)-.15 G(cuting).15 E F1(case)2.5 E F0(or)2.5 +E F1([[)2.5 E F0(conditional commands.)2.5 E F1(nullglob)144 456 Q F0 +.854(If set,)184 468 R F1(bash)3.354 E F0(allo)3.354 E .855 (ws patterns which match no \214les \(see)-.25 F F1 -.1(Pa)3.355 G .855 (thname Expansion).1 F F0(abo)3.355 E -.15(ve)-.15 G 3.355(\)t).15 G(o) --3.355 E -.15(ex)184 432 S(pand to a null string, rather than themselv) -.15 E(es.)-.15 E F1(pr)144 444 Q(ogcomp)-.18 E F0 .677 -(If set, the programmable completion f)184 456 R .677(acilities \(see) +-3.355 E -.15(ex)184 480 S(pand to a null string, rather than themselv) +.15 E(es.)-.15 E F1(pr)144 492 Q(ogcomp)-.18 E F0 .677 +(If set, the programmable completion f)184 504 R .677(acilities \(see) -.1 F F1(Pr)3.176 E .676(ogrammable Completion)-.18 F F0(abo)3.176 E --.15(ve)-.15 G(\)).15 E(are enabled.)184 468 Q -(This option is enabled by def)5 E(ault.)-.1 E F1(pr)144 480 Q(omptv) --.18 E(ars)-.1 E F0 1.447(If set, prompt strings under)184 492 R 1.448 +-.15(ve)-.15 G(\)).15 E(are enabled.)184 516 Q +(This option is enabled by def)5 E(ault.)-.1 E F1(pr)144 528 Q(omptv) +-.18 E(ars)-.1 E F0 1.447(If set, prompt strings under)184 540 R 1.448 (go parameter e)-.18 F 1.448(xpansion, command substitution, arithmetic) --.15 F -.15(ex)184 504 S .171(pansion, and quote remo).15 F -.25(va)-.15 +-.15 F -.15(ex)184 552 S .171(pansion, and quote remo).15 F -.25(va)-.15 G 2.67(la).25 G .17(fter being e)-2.67 F .17(xpanded as described in) -.15 F F2(PR)2.67 E(OMPTING)-.27 E F0(abo)2.42 E -.15(ve)-.15 G(.).15 E -(This option is enabled by def)184 516 Q(ault.)-.1 E F1 -.18(re)144 528 +(This option is enabled by def)184 564 Q(ault.)-.1 E F1 -.18(re)144 576 S(stricted_shell).18 E F0 1.069 (The shell sets this option if it is started in restricted mode \(see) -184 540 R F2 1.069(RESTRICTED SHELL)3.569 F F0(belo)184 552 Q 4.178 +184 588 R F2 1.069(RESTRICTED SHELL)3.569 F F0(belo)184 600 Q 4.178 (w\). The)-.25 F -.25(va)4.178 G 1.678(lue may not be changed.).25 F 1.678(This is not reset when the startup \214les are)6.678 F -.15(exe) -184 564 S(cuted, allo).15 E(wing the startup \214les to disco)-.25 E +184 612 S(cuted, allo).15 E(wing the startup \214les to disco)-.25 E -.15(ve)-.15 G 2.5(rw).15 G(hether or not a shell is restricted.)-2.5 E -F1(shift_v)144 576 Q(erbose)-.1 E F0 .501(If set, the)184 588 R F1 +F1(shift_v)144 624 Q(erbose)-.1 E F0 .501(If set, the)184 636 R F1 (shift)3.001 E F0 -.2(bu)3.001 G .501 (iltin prints an error message when the shift count e).2 F .502 -(xceeds the number)-.15 F(of positional parameters.)184 600 Q F1(sour) -144 612 Q(cepath)-.18 E F0 .771(If set, the)184 624 R F1(sour)3.271 E +(xceeds the number)-.15 F(of positional parameters.)184 648 Q F1(sour) +144 660 Q(cepath)-.18 E F0 .771(If set, the)184 672 R F1(sour)3.271 E (ce)-.18 E F0(\()3.271 E F1(.)A F0 3.271(\)b)C .771(uiltin uses the v) -3.471 F .771(alue of)-.25 F F2 -.666(PA)3.27 G(TH)-.189 E F0 .77 (to \214nd the directory containing the)3.02 F(\214le supplied as an ar) -184 636 Q 2.5(gument. This)-.18 F(option is enabled by def)2.5 E(ault.) --.1 E F1(xpg_echo)144 648 Q F0(If set, the)184 660 Q F1(echo)2.5 E F0 +184 684 Q 2.5(gument. This)-.18 F(option is enabled by def)2.5 E(ault.) +-.1 E F1(xpg_echo)144 696 Q F0(If set, the)184 708 Q F1(echo)2.5 E F0 -.2(bu)2.5 G(iltin e).2 E(xpands backslash-escape sequences by def)-.15 -E(ault.)-.1 E F1(suspend)108 672 Q F0([)2.5 E F1<ad66>A F0(])A 1.001 -(Suspend the e)144 684 R -.15(xe)-.15 G 1.001 -(cution of this shell until it recei).15 F -.15(ve)-.25 G 3.501(sa).15 G -F2(SIGCONT)A F0 3.502(signal. A)3.252 F 1.002(login shell cannot be) -3.502 F .023(suspended; the)144 696 R F1<ad66>2.523 E F0 .023 -(option can be used to o)2.523 F -.15(ve)-.15 G .022 -(rride this and force the suspension.).15 F .022(The return status is) -5.022 F 2.5(0u)144 708 S(nless the shell is a login shell and)-2.5 E F1 -<ad66>2.5 E F0(is not supplied, or if job control is not enabled.)2.5 E -(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(18)198.725 E 0 Cg EP +E(ault.)-.1 E(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(18)198.725 E 0 +Cg EP %%Page: 19 19 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 (TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF(test)108 84 Q/F2 10/Times-Italic@0 SF -.2(ex)2.5 G(pr) -.2 E F1([)108 96 Q F2 -.2(ex)2.5 G(pr).2 E F1(])2.5 E F0 1.15 +/Times-Bold@0 SF(suspend)108 84 Q F0([)2.5 E F1<ad66>A F0(])A 1.001 +(Suspend the e)144 96 R -.15(xe)-.15 G 1.001 +(cution of this shell until it recei).15 F -.15(ve)-.25 G 3.501(sa).15 G +/F2 9/Times-Bold@0 SF(SIGCONT)A F0 3.502(signal. A)3.252 F 1.002 +(login shell cannot be)3.502 F .023(suspended; the)144 108 R F1<ad66> +2.523 E F0 .023(option can be used to o)2.523 F -.15(ve)-.15 G .022 +(rride this and force the suspension.).15 F .022(The return status is) +5.022 F 2.5(0u)144 120 S(nless the shell is a login shell and)-2.5 E F1 +<ad66>2.5 E F0(is not supplied, or if job control is not enabled.)2.5 E +F1(test)108 132 Q/F3 10/Times-Italic@0 SF -.2(ex)2.5 G(pr).2 E F1([)108 +144 Q F3 -.2(ex)2.5 G(pr).2 E F1(])2.5 E F0 1.15 (Return a status of 0 or 1 depending on the e)6.77 F -.25(va)-.25 G 1.15 -(luation of the conditional e).25 F(xpression)-.15 E F2 -.2(ex)3.65 G +(luation of the conditional e).25 F(xpression)-.15 E F3 -.2(ex)3.65 G (pr).2 E F0 6.15(.E).73 G(ach)-6.15 E 1.188 -(operator and operand must be a separate ar)144 108 R 3.688 +(operator and operand must be a separate ar)144 156 R 3.688 (gument. Expressions)-.18 F 1.187(are composed of the primaries)3.688 F -1.889(described abo)144 120 R 2.189 -.15(ve u)-.15 H(nder).15 E/F3 9 -/Times-Bold@0 SF(CONDITION)4.389 E 1.889(AL EXPRESSIONS)-.18 F/F4 9 -/Times-Roman@0 SF(.)A F1(test)6.389 E F0 1.89(does not accept an)4.389 F -4.39(yo)-.15 G 1.89(ptions, nor)-4.39 F(does it accept and ignore an ar) -144 132 Q(gument of)-.18 E F1<adad>2.5 E F0 -(as signifying the end of options.)2.5 E .786 -(Expressions may be combined using the follo)144 150 R .785 +1.889(described abo)144 168 R 2.189 -.15(ve u)-.15 H(nder).15 E F2 +(CONDITION)4.389 E 1.889(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF(.)A +F1(test)6.389 E F0 1.89(does not accept an)4.389 F 4.39(yo)-.15 G 1.89 +(ptions, nor)-4.39 F(does it accept and ignore an ar)144 180 Q +(gument of)-.18 E F1<adad>2.5 E F0(as signifying the end of options.)2.5 +E .786(Expressions may be combined using the follo)144 198 R .785 (wing operators, listed in decreasing order of prece-)-.25 F 2.5 -(dence. The)144 162 R -.25(eva)2.5 G +(dence. The)144 210 R -.25(eva)2.5 G (luation depends on the number of ar).25 E(guments; see belo)-.18 E -.65 -(w.)-.25 G F1(!)144 174 Q F2 -.2(ex)2.5 G(pr).2 E F0 -.35(Tr)12.6 G -(ue if).35 E F2 -.2(ex)2.5 G(pr).2 E F0(is f)3.23 E(alse.)-.1 E F1(\() -144 186 Q F2 -.2(ex)2.5 G(pr).2 E F1(\))2.5 E F0 .26(Returns the v)6.77 -F .26(alue of)-.25 F F2 -.2(ex)2.76 G(pr).2 E F0 5.26(.T)C .26 +(w.)-.25 G F1(!)144 222 Q F3 -.2(ex)2.5 G(pr).2 E F0 -.35(Tr)12.6 G +(ue if).35 E F3 -.2(ex)2.5 G(pr).2 E F0(is f)3.23 E(alse.)-.1 E F1(\() +144 234 Q F3 -.2(ex)2.5 G(pr).2 E F1(\))2.5 E F0 .26(Returns the v)6.77 +F .26(alue of)-.25 F F3 -.2(ex)2.76 G(pr).2 E F0 5.26(.T)C .26 (his may be used to o)-5.26 F -.15(ve)-.15 G .26 -(rride the normal precedence of opera-).15 F(tors.)180 198 Q F2 -.2(ex) -144 210 S(pr1).2 E F0<ad>2.5 E F1(a)A F2 -.2(ex)2.5 G(pr2).2 E F0 -.35 -(Tr)180 222 S(ue if both).35 E F2 -.2(ex)2.5 G(pr1).2 E F0(and)2.5 E F2 --.2(ex)2.5 G(pr2).2 E F0(are true.)2.52 E F2 -.2(ex)144 234 S(pr1).2 E -F0<ad>2.5 E F1(o)A F2 -.2(ex)2.5 G(pr2).2 E F0 -.35(Tr)180 246 S -(ue if either).35 E F2 -.2(ex)2.5 G(pr1).2 E F0(or)2.5 E F2 -.2(ex)2.5 G -(pr2).2 E F0(is true.)2.52 E F1(test)144 262.8 Q F0(and)2.5 E F1([)2.5 E +(rride the normal precedence of opera-).15 F(tors.)180 246 Q F3 -.2(ex) +144 258 S(pr1).2 E F0<ad>2.5 E F1(a)A F3 -.2(ex)2.5 G(pr2).2 E F0 -.35 +(Tr)180 270 S(ue if both).35 E F3 -.2(ex)2.5 G(pr1).2 E F0(and)2.5 E F3 +-.2(ex)2.5 G(pr2).2 E F0(are true.)2.52 E F3 -.2(ex)144 282 S(pr1).2 E +F0<ad>2.5 E F1(o)A F3 -.2(ex)2.5 G(pr2).2 E F0 -.35(Tr)180 294 S +(ue if either).35 E F3 -.2(ex)2.5 G(pr1).2 E F0(or)2.5 E F3 -.2(ex)2.5 G +(pr2).2 E F0(is true.)2.52 E F1(test)144 310.8 Q F0(and)2.5 E F1([)2.5 E F0 -.25(eva)2.5 G(luate conditional e).25 E (xpressions using a set of rules based on the number of ar)-.15 E -(guments.)-.18 E 2.5(0a)144 280.8 S -.18(rg)-2.5 G(uments).18 E(The e) -180 292.8 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 304.8 S -.18 -(rg)-2.5 G(ument).18 E(The e)180 316.8 Q +(guments.)-.18 E 2.5(0a)144 328.8 S -.18(rg)-2.5 G(uments).18 E(The e) +180 340.8 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 352.8 S -.18 +(rg)-2.5 G(ument).18 E(The e)180 364.8 Q (xpression is true if and only if the ar)-.15 E(gument is not null.)-.18 -E 2.5(2a)144 328.8 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar) -180 340.8 R .37(gument is)-.18 F F1(!)2.87 E F0 2.87(,t)C .37(he e)-2.87 +E 2.5(2a)144 376.8 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar) +180 388.8 R .37(gument is)-.18 F F1(!)2.87 E F0 2.87(,t)C .37(he e)-2.87 F .37(xpression is true if and only if the second ar)-.15 F .37 -(gument is null.)-.18 F .379(If the \214rst ar)180 352.8 R .38 +(gument is null.)-.18 F .379(If the \214rst ar)180 400.8 R .38 (gument is one of the unary conditional operators listed abo)-.18 F .68 --.15(ve u)-.15 H(nder).15 E F3(CONDI-)2.88 E(TION)180 364.8 Q .553 +-.15(ve u)-.15 H(nder).15 E F2(CONDI-)2.88 E(TION)180 412.8 Q .553 (AL EXPRESSIONS)-.18 F F4(,)A F0 .552(the e)2.802 F .552 (xpression is true if the unary test is true.)-.15 F .552 -(If the \214rst ar)5.552 F(gu-)-.18 E(ment is not a v)180 376.8 Q +(If the \214rst ar)5.552 F(gu-)-.18 E(ment is not a v)180 424.8 Q (alid unary conditional operator)-.25 E 2.5(,t)-.4 G(he e)-2.5 E -(xpression is f)-.15 E(alse.)-.1 E 2.5(3a)144 388.8 S -.18(rg)-2.5 G -(uments).18 E .023(If the second ar)180 400.8 R .023 +(xpression is f)-.15 E(alse.)-.1 E 2.5(3a)144 436.8 S -.18(rg)-2.5 G +(uments).18 E .023(If the second ar)180 448.8 R .023 (gument is one of the binary conditional operators listed abo)-.18 F -.324 -.15(ve u)-.15 H(nder).15 E F3(CON-)2.524 E(DITION)180 412.8 Q +.324 -.15(ve u)-.15 H(nder).15 E F2(CON-)2.524 E(DITION)180 460.8 Q 1.478(AL EXPRESSIONS)-.18 F F4(,)A F0 1.477(the result of the e)3.727 F 1.477(xpression is the result of the binary test)-.15 F .513 -(using the \214rst and third ar)180 424.8 R .513(guments as operands.) +(using the \214rst and third ar)180 472.8 R .513(guments as operands.) -.18 F(The)5.513 E F1<ad61>3.013 E F0(and)3.013 E F1<ad6f>3.013 E F0 .513(operators are considered)3.013 F .972 -(binary operators when there are three ar)180 436.8 R 3.472(guments. If) +(binary operators when there are three ar)180 484.8 R 3.472(guments. If) -.18 F .972(the \214rst ar)3.472 F .972(gument is)-.18 F F1(!)3.472 E F0 -3.472(,t)C .972(he v)-3.472 F .972(alue is)-.25 F .883(the ne)180 448.8 +3.472(,t)C .972(he v)-3.472 F .972(alue is)-.25 F .883(the ne)180 496.8 R -.05(ga)-.15 G .883(tion of the tw).05 F(o-ar)-.1 E .884 (gument test using the second and third ar)-.18 F 3.384(guments. If)-.18 -F .884(the \214rst)3.384 F(ar)180 460.8 Q .875(gument is e)-.18 F +F .884(the \214rst)3.384 F(ar)180 508.8 Q .875(gument is e)-.18 F (xactly)-.15 E F1(\()3.375 E F0 .875(and the third ar)3.375 F .875 (gument is e)-.18 F(xactly)-.15 E F1(\))3.375 E F0 3.374(,t)C .874 (he result is the one-ar)-3.374 F(gument)-.18 E(test of the second ar) -180 472.8 Q 2.5(gument. Otherwise,)-.18 F(the e)2.5 E(xpression is f) --.15 E(alse.)-.1 E 2.5(4a)144 484.8 S -.18(rg)-2.5 G(uments).18 E .384 -(If the \214rst ar)180 496.8 R .384(gument is)-.18 F F1(!)2.884 E F0 +180 520.8 Q 2.5(gument. Otherwise,)-.18 F(the e)2.5 E(xpression is f) +-.15 E(alse.)-.1 E 2.5(4a)144 532.8 S -.18(rg)-2.5 G(uments).18 E .384 +(If the \214rst ar)180 544.8 R .384(gument is)-.18 F F1(!)2.884 E F0 2.885(,t)C .385(he result is the ne)-2.885 F -.05(ga)-.15 G .385 (tion of the three-ar).05 F .385(gument e)-.18 F .385(xpression com-) --.15 F 1.648(posed of the remaining ar)180 508.8 R 4.147 +-.15 F 1.648(posed of the remaining ar)180 556.8 R 4.147 (guments. Otherwise,)-.18 F 1.647(the e)4.147 F 1.647 (xpression is parsed and e)-.15 F -.25(va)-.25 G(luated).25 E -(according to precedence using the rules listed abo)180 520.8 Q -.15(ve) --.15 G(.).15 E 2.5(5o)144 532.8 S 2.5(rm)-2.5 G(ore ar)-2.5 E(guments) --.18 E 1.635(The e)180 544.8 R 1.635(xpression is parsed and e)-.15 F +(according to precedence using the rules listed abo)180 568.8 Q -.15(ve) +-.15 G(.).15 E 2.5(5o)144 580.8 S 2.5(rm)-2.5 G(ore ar)-2.5 E(guments) +-.18 E 1.635(The e)180 592.8 R 1.635(xpression is parsed and e)-.15 F -.25(va)-.25 G 1.635 (luated according to precedence using the rules listed).25 F(abo)180 -556.8 Q -.15(ve)-.15 G(.).15 E F1(times)108 573.6 Q F0 1.229(Print the \ +604.8 Q -.15(ve)-.15 G(.).15 E F1(times)108 621.6 Q F0 1.229(Print the \ accumulated user and system times for the shell and for processes run f\ -rom the shell.)13.23 F(The return status is 0.)144 585.6 Q F1(trap)108 -602.4 Q F0([)2.5 E F1(\255lp)A F0 2.5(][)C([)-2.5 E F2(ar)A(g)-.37 E F0 -(])A F2(sigspec)2.5 E F0(...])2.5 E .702(The command)144 614.4 R F2(ar) +rom the shell.)13.23 F(The return status is 0.)144 633.6 Q F1(trap)108 +650.4 Q F0([)2.5 E F1(\255lp)A F0 2.5(][)C([)-2.5 E F3(ar)A(g)-.37 E F0 +(])A F3(sigspec)2.5 E F0(...])2.5 E .702(The command)144 662.4 R F3(ar) 3.532 E(g)-.37 E F0 .702(is to be read and e)3.422 F -.15(xe)-.15 G .702 (cuted when the shell recei).15 F -.15(ve)-.25 G 3.203(ss).15 G -(ignal\(s\))-3.203 E F2(sigspec)3.203 E F0 5.703(.I).31 G(f)-5.703 E F2 +(ignal\(s\))-3.203 E F3(sigspec)3.203 E F0 5.703(.I).31 G(f)-5.703 E F3 (ar)3.533 E(g)-.37 E F0(is)3.423 E .609(absent \(and there is a single) -144 626.4 R F2(sigspec)3.108 E F0 3.108(\)o)C(r)-3.108 E F1<ad>3.108 E +144 674.4 R F3(sigspec)3.108 E F0 3.108(\)o)C(r)-3.108 E F1<ad>3.108 E F0 3.108(,e)C .608 (ach speci\214ed signal is reset to its original disposition)-3.108 F -.658(\(the v)144 638.4 R .658(alue it had upon entrance to the shell\).) --.25 F(If)5.658 E F2(ar)3.488 E(g)-.37 E F0 .659 -(is the null string the signal speci\214ed by each)3.378 F F2(sigspec) -144.34 650.4 Q F0 .581 +.658(\(the v)144 686.4 R .658(alue it had upon entrance to the shell\).) +-.25 F(If)5.658 E F3(ar)3.488 E(g)-.37 E F0 .659 +(is the null string the signal speci\214ed by each)3.378 F F3(sigspec) +144.34 698.4 Q F0 .581 (is ignored by the shell and by the commands it in)3.391 F -.2(vo)-.4 G --.1(ke).2 G 3.08(s. If).1 F F2(ar)3.41 E(g)-.37 E F0 .58 +-.1(ke).2 G 3.08(s. If).1 F F3(ar)3.41 E(g)-.37 E F0 .58 (is not present and)3.3 F F1<ad70>3.08 E F0(has)3.08 E 1.214 -(been supplied, then the trap commands associated with each)144 662.4 R -F2(sigspec)4.054 E F0 1.215(are displayed.)4.024 F 1.215(If no ar)6.215 -F(gu-)-.18 E .86(ments are supplied or if only)144 674.4 R F1<ad70>3.36 +(been supplied, then the trap commands associated with each)144 710.4 R +F3(sigspec)4.054 E F0 1.215(are displayed.)4.024 F 1.215(If no ar)6.215 +F(gu-)-.18 E .86(ments are supplied or if only)144 722.4 R F1<ad70>3.36 E F0 .86(is gi)3.36 F -.15(ve)-.25 G(n,).15 E F1(trap)3.36 E F0 .86 -(prints the list of commands associated with each)3.36 F 2.83 -(signal. The)144 686.4 R F1<ad6c>2.83 E F0 .33(option causes the shell \ -to print a list of signal names and their corresponding num-)2.83 F -4.311(bers. Each)144 698.4 R F2(sigspec)4.651 E F0 1.811 -(is either a signal name de\214ned in <)4.621 F F2(signal.h)A F0 1.81 -(>, or a signal number)B 6.81(.S)-.55 G(ignal)-6.81 E -(names are case insensiti)144 710.4 Q .3 -.15(ve a)-.25 H(nd the).15 E -F3(SIG)2.5 E F0(pre\214x is optional.)2.25 E 1.648(If a)144 728.4 R F2 -(sigspec)4.488 E F0(is)4.458 E F3(EXIT)4.148 E F0 1.648 -(\(0\) the command)3.898 F F2(ar)4.479 E(g)-.37 E F0 1.649(is e)4.369 F --.15(xe)-.15 G 1.649(cuted on e).15 F 1.649(xit from the shell.)-.15 F -1.649(If a)6.649 F F2(sigspec)4.489 E F0(is)4.459 E(GNU Bash-4.0)72 768 -Q(2004 Apr 20)148.735 E(19)198.725 E 0 Cg EP +(prints the list of commands associated with each)3.36 F(GNU Bash-4.0)72 +768 Q(2004 Apr 20)148.735 E(19)198.725 E 0 Cg EP %%Page: 20 20 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 -(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 9 -/Times-Bold@0 SF(DEB)144 84 Q(UG)-.09 E/F2 9/Times-Roman@0 SF(,)A F0 -1.168(the command)3.418 F/F3 10/Times-Italic@0 SF(ar)3.998 E(g)-.37 E F0 -1.168(is e)3.888 F -.15(xe)-.15 G 1.167(cuted before e).15 F -.15(ve) --.25 G(ry).15 E F3 1.167(simple command)3.667 F F0(,)A F3(for)3.667 E F0 -(command,)3.667 E F3(case)3.667 E F0(com-)3.667 E(mand,)144 96 Q F3 -(select)2.646 E F0 .146(command, e)2.646 F -.15(ve)-.25 G .146 -(ry arithmetic).15 F F3(for)2.646 E F0 .147 +(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E 2.83 +(signal. The)144 84 R/F1 10/Times-Bold@0 SF<ad6c>2.83 E F0 .33(option c\ +auses the shell to print a list of signal names and their corresponding\ + num-)2.83 F 4.311(bers. Each)144 96 R/F2 10/Times-Italic@0 SF(sigspec) +4.651 E F0 1.811(is either a signal name de\214ned in <)4.621 F F2 +(signal.h)A F0 1.81(>, or a signal number)B 6.81(.S)-.55 G(ignal)-6.81 E +(names are case insensiti)144 108 Q .3 -.15(ve a)-.25 H(nd the).15 E/F3 +9/Times-Bold@0 SF(SIG)2.5 E F0(pre\214x is optional.)2.25 E 1.648(If a) +144 126 R F2(sigspec)4.488 E F0(is)4.458 E F3(EXIT)4.148 E F0 1.648 +(\(0\) the command)3.898 F F2(ar)4.479 E(g)-.37 E F0 1.649(is e)4.369 F +-.15(xe)-.15 G 1.649(cuted on e).15 F 1.649(xit from the shell.)-.15 F +1.649(If a)6.649 F F2(sigspec)4.489 E F0(is)4.459 E F3(DEB)144 138 Q(UG) +-.09 E/F4 9/Times-Roman@0 SF(,)A F0 1.168(the command)3.418 F F2(ar) +3.998 E(g)-.37 E F0 1.168(is e)3.888 F -.15(xe)-.15 G 1.167 +(cuted before e).15 F -.15(ve)-.25 G(ry).15 E F2 1.167(simple command) +3.667 F F0(,)A F2(for)3.667 E F0(command,)3.667 E F2(case)3.667 E F0 +(com-)3.667 E(mand,)144 150 Q F2(select)2.646 E F0 .146(command, e)2.646 +F -.15(ve)-.25 G .146(ry arithmetic).15 F F2(for)2.646 E F0 .147 (command, and before the \214rst command e)2.646 F -.15(xe)-.15 G .147 -(cutes in a).15 F .146(shell function \(see)144 108 R F1 .146 +(cutes in a).15 F .146(shell function \(see)144 162 R F3 .146 (SHELL GRAMMAR)2.646 F F0(abo)2.396 E -.15(ve)-.15 G 2.646(\). Refer).15 -F .146(to the description of the)2.646 F/F4 10/Times-Bold@0 SF(extdeb) -2.645 E(ug)-.2 E F0 .145(option to)2.645 F(the)144 120 Q F4(shopt)3.2 E -F0 -.2(bu)3.2 G .7(iltin for details of its ef).2 F .7(fect on the)-.25 -F F4(DEB)3.2 E(UG)-.1 E F0 3.2(trap. If)3.2 F(a)3.2 E F3(sigspec)3.54 E -F0(is)3.51 E F1(RETURN)3.2 E F2(,)A F0 .701(the com-)2.951 F(mand)144 -132 Q F3(ar)3.474 E(g)-.37 E F0 .644(is e)3.364 F -.15(xe)-.15 G .643 +F .146(to the description of the)2.646 F F1(extdeb)2.645 E(ug)-.2 E F0 +.145(option to)2.645 F(the)144 174 Q F1(shopt)3.2 E F0 -.2(bu)3.2 G .7 +(iltin for details of its ef).2 F .7(fect on the)-.25 F F1(DEB)3.2 E(UG) +-.1 E F0 3.2(trap. If)3.2 F(a)3.2 E F2(sigspec)3.54 E F0(is)3.51 E F3 +(RETURN)3.2 E F4(,)A F0 .701(the com-)2.951 F(mand)144 186 Q F2(ar)3.474 +E(g)-.37 E F0 .644(is e)3.364 F -.15(xe)-.15 G .643 (cuted each time a shell function or a script e).15 F -.15(xe)-.15 G -.643(cuted with the).15 F F4(.)3.143 E F0(or)3.143 E F4(sour)3.143 E(ce) --.18 E F0 -.2(bu)3.143 G(iltins).2 E(\214nishes e)144 144 Q -.15(xe)-.15 -G(cuting.).15 E .928(If a)144 162 R F3(sigspec)3.768 E F0(is)3.738 E F1 -(ERR)3.429 E F2(,)A F0 .929(the command)3.179 F F3(ar)3.759 E(g)-.37 E +.643(cuted with the).15 F F1(.)3.143 E F0(or)3.143 E F1(sour)3.143 E(ce) +-.18 E F0 -.2(bu)3.143 G(iltins).2 E(\214nishes e)144 198 Q -.15(xe)-.15 +G(cuting.).15 E .928(If a)144 216 R F2(sigspec)3.768 E F0(is)3.738 E F3 +(ERR)3.429 E F4(,)A F0 .929(the command)3.179 F F2(ar)3.759 E(g)-.37 E F0 .929(is e)3.649 F -.15(xe)-.15 G .929(cuted whene).15 F -.15(ve)-.25 G 3.429(ras).15 G .929(imple command has a non\255zero)-3.429 F -.15(ex) -144 174 S 1.009(it status, subject to the follo).15 F 1.009 -(wing conditions.)-.25 F(The)6.009 E F1(ERR)3.509 E F0 1.009 +144 228 S 1.009(it status, subject to the follo).15 F 1.009 +(wing conditions.)-.25 F(The)6.009 E F3(ERR)3.509 E F0 1.009 (trap is not e)3.259 F -.15(xe)-.15 G 1.008(cuted if the f).15 F 1.008 (ailed com-)-.1 F .324 -(mand is part of the command list immediately follo)144 186 R .324 -(wing a)-.25 F F4(while)2.824 E F0(or)2.824 E F4(until)2.824 E F0 -.1 +(mand is part of the command list immediately follo)144 240 R .324 +(wing a)-.25 F F1(while)2.824 E F0(or)2.824 E F1(until)2.824 E F0 -.1 (ke)2.824 G(yw)-.05 E .324(ord, part of the test)-.1 F 1.129(in an)144 -198 R F3(if)3.639 E F0 1.129(statement, part of a command e)5.589 F -.15 -(xe)-.15 G 1.129(cuted in a).15 F F4(&&)3.629 E F0(or)3.629 E/F5 10 +252 R F2(if)3.639 E F0 1.129(statement, part of a command e)5.589 F -.15 +(xe)-.15 G 1.129(cuted in a).15 F F1(&&)3.629 E F0(or)3.629 E/F5 10 /Symbol SF<efef>3.629 E F0 1.129(list, or if the command')3.629 F 3.628 -(sr)-.55 G(eturn)-3.628 E -.25(va)144 210 S(lue is being in).25 E -.15 -(ve)-.4 G(rted via).15 E F4(!)2.5 E F0 5(.T)C -(hese are the same conditions obe)-5 E(yed by the)-.15 E F4(err)2.5 E +(sr)-.55 G(eturn)-3.628 E -.25(va)144 264 S(lue is being in).25 E -.15 +(ve)-.4 G(rted via).15 E F1(!)2.5 E F0 5(.T)C +(hese are the same conditions obe)-5 E(yed by the)-.15 E F1(err)2.5 E (exit)-.18 E F0(option.)2.5 E 1.095 (Signals ignored upon entry to the shell cannot be trapped or reset.)144 -228 R -.35(Tr)6.095 G 1.095(apped signals that are not).35 F .662 -(being ignored are reset to their original v)144 240 R .662 +282 R -.35(Tr)6.095 G 1.095(apped signals that are not).35 F .662 +(being ignored are reset to their original v)144 294 R .662 (alues in a subshell or subshell en)-.25 F .661(vironment when one is) --.4 F 2.5(created. The)144 252 R(return status is f)2.5 E(alse if an)-.1 -E(y)-.15 E F3(sigspec)2.84 E F0(is in)2.81 E -.25(va)-.4 G -(lid; otherwise).25 E F4(trap)2.5 E F0(returns true.)2.5 E F4(type)108 -268.8 Q F0([)2.5 E F4(\255aftpP)A F0(])A F3(name)2.5 E F0([)2.5 E F3 -(name)A F0(...])2.5 E -.4(Wi)144 280.8 S .173 -(th no options, indicate ho).4 F 2.673(we)-.25 G(ach)-2.673 E F3(name) +-.4 F 2.5(created. The)144 306 R(return status is f)2.5 E(alse if an)-.1 +E(y)-.15 E F2(sigspec)2.84 E F0(is in)2.81 E -.25(va)-.4 G +(lid; otherwise).25 E F1(trap)2.5 E F0(returns true.)2.5 E F1(type)108 +322.8 Q F0([)2.5 E F1(\255aftpP)A F0(])A F2(name)2.5 E F0([)2.5 E F2 +(name)A F0(...])2.5 E -.4(Wi)144 334.8 S .173 +(th no options, indicate ho).4 F 2.673(we)-.25 G(ach)-2.673 E F2(name) 3.033 E F0 -.1(wo)2.853 G .174 (uld be interpreted if used as a command name.).1 F .174(If the)5.174 F -F4<ad74>144 292.8 Q F0 .843(option is used,)3.343 F F4(type)3.343 E F0 -.843(prints a string which is one of)3.343 F F3(alias)3.343 E F0(,).27 E -F3 -.1(ke)3.343 G(ywor)-.2 E(d)-.37 E F0(,).77 E F3(function)3.343 E F0 -(,).24 E F3 -.2(bu)3.342 G(iltin).2 E F0 3.342(,o).24 G(r)-3.342 E F3 -(\214le)5.252 E F0(if)3.522 E F3(name)144.36 304.8 Q F0 .086 +F1<ad74>144 346.8 Q F0 .843(option is used,)3.343 F F1(type)3.343 E F0 +.843(prints a string which is one of)3.343 F F2(alias)3.343 E F0(,).27 E +F2 -.1(ke)3.343 G(ywor)-.2 E(d)-.37 E F0(,).77 E F2(function)3.343 E F0 +(,).24 E F2 -.2(bu)3.342 G(iltin).2 E F0 3.342(,o).24 G(r)-3.342 E F2 +(\214le)5.252 E F0(if)3.522 E F2(name)144.36 358.8 Q F0 .086 (is an alias, shell reserv)2.766 F .086(ed w)-.15 F .086 (ord, function, b)-.1 F .087(uiltin, or disk \214le, respecti)-.2 F -.15 -(ve)-.25 G(ly).15 E 5.087(.I)-.65 G 2.587(ft)-5.087 G(he)-2.587 E F3 +(ve)-.25 G(ly).15 E 5.087(.I)-.65 G 2.587(ft)-5.087 G(he)-2.587 E F2 (name)2.947 E F0 .087(is not)2.767 F .119 -(found, then nothing is printed, and an e)144 316.8 R .118 +(found, then nothing is printed, and an e)144 370.8 R .118 (xit status of f)-.15 F .118(alse is returned.)-.1 F .118(If the)5.118 F -F4<ad70>2.618 E F0 .118(option is used,)2.618 F F4(type)2.618 E F0 .855 -(either returns the name of the disk \214le that w)144 328.8 R .855 -(ould be e)-.1 F -.15(xe)-.15 G .855(cuted if).15 F F3(name)3.715 E F0 +F1<ad70>2.618 E F0 .118(option is used,)2.618 F F1(type)2.618 E F0 .855 +(either returns the name of the disk \214le that w)144 382.8 R .855 +(ould be e)-.1 F -.15(xe)-.15 G .855(cuted if).15 F F2(name)3.715 E F0 .855(were speci\214ed as a com-)3.535 F .641(mand name, or nothing if) -144 340.8 R/F6 10/Courier@0 SF .641(type -t name)3.141 F F0 -.1(wo)3.141 -G .641(uld not return).1 F F3(\214le)3.14 E F0 5.64(.T).18 G(he)-5.64 E -F4<ad50>3.14 E F0 .64(option forces a)3.14 F F1 -.666(PA)3.14 G(TH)-.189 -E F0 .112(search for each)144 352.8 R F3(name)2.612 E F0 2.612(,e)C -.15 +144 394.8 R/F6 10/Courier@0 SF .641(type -t name)3.141 F F0 -.1(wo)3.141 +G .641(uld not return).1 F F2(\214le)3.14 E F0 5.64(.T).18 G(he)-5.64 E +F1<ad50>3.14 E F0 .64(option forces a)3.14 F F3 -.666(PA)3.14 G(TH)-.189 +E F0 .112(search for each)144 406.8 R F2(name)2.612 E F0 2.612(,e)C -.15 (ve)-2.862 G 2.613(ni).15 G(f)-2.613 E F6 .113(type -t name)2.613 F F0 --.1(wo)2.613 G .113(uld not return).1 F F3(\214le)2.613 E F0 5.113(.I) -.18 G 2.613(fac)-5.113 G .113(ommand is hashed,)-2.613 F F4<ad70>2.613 E -F0(and)144 364.8 Q F4<ad50>2.945 E F0 .445(print the hashed v)2.945 F -.444(alue, not necessarily the \214le that appears \214rst in)-.25 F F1 --.666(PA)2.944 G(TH)-.189 E F2(.)A F0 .444(If the)4.944 F F4<ad61>2.944 -E F0(option)2.944 E .265(is used,)144 376.8 R F4(type)2.765 E F0 .265 +-.1(wo)2.613 G .113(uld not return).1 F F2(\214le)2.613 E F0 5.113(.I) +.18 G 2.613(fac)-5.113 G .113(ommand is hashed,)-2.613 F F1<ad70>2.613 E +F0(and)144 418.8 Q F1<ad50>2.945 E F0 .445(print the hashed v)2.945 F +.444(alue, not necessarily the \214le that appears \214rst in)-.25 F F3 +-.666(PA)2.944 G(TH)-.189 E F4(.)A F0 .444(If the)4.944 F F1<ad61>2.944 +E F0(option)2.944 E .265(is used,)144 430.8 R F1(type)2.765 E F0 .265 (prints all of the places that contain an e)2.765 F -.15(xe)-.15 G .265 -(cutable named).15 F F3(name)2.765 E F0 5.265(.T).18 G .265 +(cutable named).15 F F2(name)2.765 E F0 5.265(.T).18 G .265 (his includes aliases)-5.265 F .427(and functions, if and only if the) -144 388.8 R F4<ad70>2.926 E F0 .426(option is not also used.)2.926 F +144 442.8 R F1<ad70>2.926 E F0 .426(option is not also used.)2.926 F .426(The table of hashed commands is not)5.426 F .548 -(consulted when using)144 400.8 R F4<ad61>3.048 E F0 5.548(.T)C(he) --5.548 E F4<ad66>3.048 E F0 .549 -(option suppresses shell function lookup, as with the)3.048 F F4 -(command)3.049 E F0 -.2(bu)144 412.8 S(iltin.).2 E F4(type)5 E F0 +(consulted when using)144 454.8 R F1<ad61>3.048 E F0 5.548(.T)C(he) +-5.548 E F1<ad66>3.048 E F0 .549 +(option suppresses shell function lookup, as with the)3.048 F F1 +(command)3.049 E F0 -.2(bu)144 466.8 S(iltin.).2 E F1(type)5 E F0 (returns true if all of the ar)2.5 E(guments are found, f)-.18 E -(alse if an)-.1 E 2.5(ya)-.15 G(re not found.)-2.5 E F4(ulimit)108 429.6 -Q F0([)2.5 E F4(\255HST)A(abcde\214lmnpqrstuvx)-.92 E F0([)2.5 E F3 -(limit)A F0(]])A(Pro)144 441.6 Q .244(vides control o)-.15 F -.15(ve) +(alse if an)-.1 E 2.5(ya)-.15 G(re not found.)-2.5 E F1(ulimit)108 483.6 +Q F0([)2.5 E F1(\255HST)A(abcde\214lmnpqrstuvx)-.92 E F0([)2.5 E F2 +(limit)A F0(]])A(Pro)144 495.6 Q .244(vides control o)-.15 F -.15(ve) -.15 G 2.744(rt).15 G .244(he resources a)-2.744 F -.25(va)-.2 G .244 (ilable to the shell and to processes started by it, on systems).25 F -.943(that allo)144 453.6 R 3.443(ws)-.25 G .943(uch control.)-3.443 F -(The)5.943 E F4<ad48>3.443 E F0(and)3.443 E F4<ad53>3.444 E F0 .944 +.943(that allo)144 507.6 R 3.443(ws)-.25 G .943(uch control.)-3.443 F +(The)5.943 E F1<ad48>3.443 E F0(and)3.443 E F1<ad53>3.444 E F0 .944 (options specify that the hard or soft limit is set for the)3.444 F(gi) -144 465.6 Q -.15(ve)-.25 G 2.709(nr).15 G 2.709(esource. A)-2.709 F .208 +144 519.6 Q -.15(ve)-.25 G 2.709(nr).15 G 2.709(esource. A)-2.709 F .208 (hard limit cannot be increased by a non-root user once it is set; a so\ -ft limit may)2.709 F .425(be increased up to the v)144 477.6 R .425 -(alue of the hard limit.)-.25 F .426(If neither)5.425 F F4<ad48>2.926 E -F0(nor)2.926 E F4<ad53>2.926 E F0 .426 +ft limit may)2.709 F .425(be increased up to the v)144 531.6 R .425 +(alue of the hard limit.)-.25 F .426(If neither)5.425 F F1<ad48>2.926 E +F0(nor)2.926 E F1<ad53>2.926 E F0 .426 (is speci\214ed, both the soft and)2.926 F .139(hard limits are set.)144 -489.6 R .139(The v)5.139 F .139(alue of)-.25 F F3(limit)2.729 E F0 .139 +543.6 R .139(The v)5.139 F .139(alue of)-.25 F F2(limit)2.729 E F0 .139 (can be a number in the unit speci\214ed for the resource or one)3.319 F -.741(of the special v)144 501.6 R(alues)-.25 E F4(hard)3.241 E F0(,)A F4 -(soft)3.241 E F0 3.241(,o)C(r)-3.241 E F4(unlimited)3.241 E F0 3.241(,w) +.741(of the special v)144 555.6 R(alues)-.25 E F1(hard)3.241 E F0(,)A F1 +(soft)3.241 E F0 3.241(,o)C(r)-3.241 E F1(unlimited)3.241 E F0 3.241(,w) C .741(hich stand for the current hard limit, the current)-3.241 F .78 -(soft limit, and no limit, respecti)144 513.6 R -.15(ve)-.25 G(ly).15 E -5.78(.I)-.65 G(f)-5.78 E F3(limit)3.37 E F0 .78 +(soft limit, and no limit, respecti)144 567.6 R -.15(ve)-.25 G(ly).15 E +5.78(.I)-.65 G(f)-5.78 E F2(limit)3.37 E F0 .78 (is omitted, the current v)3.96 F .78(alue of the soft limit of the)-.25 -F .498(resource is printed, unless the)144 525.6 R F4<ad48>2.999 E F0 +F .498(resource is printed, unless the)144 579.6 R F1<ad48>2.999 E F0 .499(option is gi)2.999 F -.15(ve)-.25 G 2.999(n. When).15 F .499 (more than one resource is speci\214ed, the)2.999 F -(limit name and unit are printed before the v)144 537.6 Q 2.5 -(alue. Other)-.25 F(options are interpreted as follo)2.5 E(ws:)-.25 E F4 -<ad61>144 549.6 Q F0(All current limits are reported)25.3 E F4<ad62>144 -561.6 Q F0(The maximum sock)24.74 E(et b)-.1 E(uf)-.2 E(fer size)-.25 E -F4<ad63>144 573.6 Q F0(The maximum size of core \214les created)25.86 E -F4<ad64>144 585.6 Q F0(The maximum size of a process')24.74 E 2.5(sd) --.55 G(ata se)-2.5 E(gment)-.15 E F4<ad65>144 597.6 Q F0 -(The maximum scheduling priority \("nice"\))25.86 E F4<ad66>144 609.6 Q +(limit name and unit are printed before the v)144 591.6 Q 2.5 +(alue. Other)-.25 F(options are interpreted as follo)2.5 E(ws:)-.25 E F1 +<ad61>144 603.6 Q F0(All current limits are reported)25.3 E F1<ad62>144 +615.6 Q F0(The maximum sock)24.74 E(et b)-.1 E(uf)-.2 E(fer size)-.25 E +F1<ad63>144 627.6 Q F0(The maximum size of core \214les created)25.86 E +F1<ad64>144 639.6 Q F0(The maximum size of a process')24.74 E 2.5(sd) +-.55 G(ata se)-2.5 E(gment)-.15 E F1<ad65>144 651.6 Q F0 +(The maximum scheduling priority \("nice"\))25.86 E F1<ad66>144 663.6 Q F0(The maximum size of \214les written by the shell and its children) -26.97 E F4<ad69>144 621.6 Q F0(The maximum number of pending signals) -27.52 E F4<ad6c>144 633.6 Q F0(The maximum size that may be lock)27.52 E -(ed into memory)-.1 E F4<ad6d>144 645.6 Q F0 +26.97 E F1<ad69>144 675.6 Q F0(The maximum number of pending signals) +27.52 E F1<ad6c>144 687.6 Q F0(The maximum size that may be lock)27.52 E +(ed into memory)-.1 E F1<ad6d>144 699.6 Q F0 (The maximum resident set size \(man)21.97 E 2.5(ys)-.15 G -(ystems do not honor this limit\))-2.5 E F4<ad6e>144 657.6 Q F0 .791(Th\ +(ystems do not honor this limit\))-2.5 E F1<ad6e>144 711.6 Q F0 .791(Th\ e maximum number of open \214le descriptors \(most systems do not allo) 24.74 F 3.29(wt)-.25 G .79(his v)-3.29 F .79(alue to)-.25 F(be set\))180 -669.6 Q F4<ad70>144 681.6 Q F0 -(The pipe size in 512-byte blocks \(this may not be set\))24.74 E F4 -<ad71>144 693.6 Q F0 -(The maximum number of bytes in POSIX message queues)24.74 E F4<ad72>144 -705.6 Q F0(The maximum real-time scheduling priority)25.86 E F4<ad73>144 -717.6 Q F0(The maximum stack size)26.41 E(GNU Bash-4.0)72 768 Q -(2004 Apr 20)148.735 E(20)198.725 E 0 Cg EP +723.6 Q(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(20)198.725 E 0 Cg EP %%Page: 21 21 %%BeginPageSetup BP %%EndPageSetup /F0 10/Times-Roman@0 SF -.35(BA)72 48 S(SH_B).35 E(UIL)-.1 E 290.48 (TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10 -/Times-Bold@0 SF<ad74>144 84 Q F0 -(The maximum amount of cpu time in seconds)26.97 E F1<ad75>144 96 Q F0 -(The maximum number of processes a)24.74 E -.25(va)-.2 G -(ilable to a single user).25 E F1<ad76>144 108 Q F0 .47 +/Times-Bold@0 SF<ad70>144 84 Q F0 +(The pipe size in 512-byte blocks \(this may not be set\))24.74 E F1 +<ad71>144 96 Q F0(The maximum number of bytes in POSIX message queues) +24.74 E F1<ad72>144 108 Q F0(The maximum real-time scheduling priority) +25.86 E F1<ad73>144 120 Q F0(The maximum stack size)26.41 E F1<ad74>144 +132 Q F0(The maximum amount of cpu time in seconds)26.97 E F1<ad75>144 +144 Q F0(The maximum number of processes a)24.74 E -.25(va)-.2 G +(ilable to a single user).25 E F1<ad76>144 156 Q F0 .47 (The maximum amount of virtual memory a)25.3 F -.25(va)-.2 G .47 -(ilable to the shell and, on some systems, to).25 F(its children)180 120 -Q F1<ad78>144 132 Q F0(The maximum number of \214le locks)25.3 E F1 -<ad54>144 144 Q F0(The maximum number of threads)23.63 E(If)144 160.8 Q +(ilable to the shell and, on some systems, to).25 F(its children)180 168 +Q F1<ad78>144 180 Q F0(The maximum number of \214le locks)25.3 E F1 +<ad54>144 192 Q F0(The maximum number of threads)23.63 E(If)144 208.8 Q /F2 10/Times-Italic@0 SF(limit)2.933 E F0 .343(is gi)3.523 F -.15(ve) -.25 G .343(n, it is the ne).15 F 2.843(wv)-.25 G .343 (alue of the speci\214ed resource \(the)-3.093 F F1<ad61>2.843 E F0 .343 (option is display only\).)2.843 F .343(If no)5.343 F .175(option is gi) -144 172.8 R -.15(ve)-.25 G .175(n, then).15 F F1<ad66>2.675 E F0 .175 +144 220.8 R -.15(ve)-.25 G .175(n, then).15 F F1<ad66>2.675 E F0 .175 (is assumed.)2.675 F -1.11(Va)5.175 G .175 (lues are in 1024-byte increments, e)1.11 F .176(xcept for)-.15 F F1 -<ad74>2.676 E F0 2.676(,w)C .176(hich is in)-2.676 F(seconds,)144 184.8 +<ad74>2.676 E F0 2.676(,w)C .176(hich is in)-2.676 F(seconds,)144 232.8 Q F1<ad70>2.516 E F0 2.516(,w)C .016 (hich is in units of 512-byte blocks, and)-2.516 F F1<ad54>2.516 E F0(,) A F1<ad62>2.515 E F0(,)A F1<ad6e>2.515 E F0 2.515(,a)C(nd)-2.515 E F1 <ad75>2.515 E F0 2.515(,w)C .015(hich are unscaled v)-2.515 F(al-)-.25 E -3.787(ues. The)144 196.8 R 1.287(return status is 0 unless an in)3.787 F +3.787(ues. The)144 244.8 R 1.287(return status is 0 unless an in)3.787 F -.25(va)-.4 G 1.287(lid option or ar).25 F 1.287 (gument is supplied, or an error occurs)-.18 F(while setting a ne)144 -208.8 Q 2.5(wl)-.25 G(imit.)-2.5 E F1(umask)108 225.6 Q F0([)2.5 E F1 +256.8 Q 2.5(wl)-.25 G(imit.)-2.5 E F1(umask)108 273.6 Q F0([)2.5 E F1 <ad70>A F0 2.5(][)C F1<ad53>-2.5 E F0 2.5(][)C F2(mode)-2.5 E F0(])A .2 -(The user \214le-creation mask is set to)144 237.6 R F2(mode)2.7 E F0 +(The user \214le-creation mask is set to)144 285.6 R F2(mode)2.7 E F0 5.2(.I).18 G(f)-5.2 E F2(mode)3.08 E F0(be)2.88 E .2 (gins with a digit, it is interpreted as an octal)-.15 F .066(number; o\ therwise it is interpreted as a symbolic mode mask similar to that acce\ -pted by)144 249.6 R F2 -.15(ch)2.566 G(mod).15 E F0(\(1\).).77 E(If)144 -261.6 Q F2(mode)3.263 E F0 .382(is omitted, the current v)3.063 F .382 +pted by)144 297.6 R F2 -.15(ch)2.566 G(mod).15 E F0(\(1\).).77 E(If)144 +309.6 Q F2(mode)3.263 E F0 .382(is omitted, the current v)3.063 F .382 (alue of the mask is printed.)-.25 F(The)5.382 E F1<ad53>2.882 E F0 .382 (option causes the mask to be)2.882 F .547 -(printed in symbolic form; the def)144 273.6 R .547 +(printed in symbolic form; the def)144 321.6 R .547 (ault output is an octal number)-.1 F 5.547(.I)-.55 G 3.047(ft)-5.547 G (he)-3.047 E F1<ad70>3.047 E F0 .547(option is supplied, and)3.047 F F2 -(mode)144.38 285.6 Q F0 .552 +(mode)144.38 333.6 Q F0 .552 (is omitted, the output is in a form that may be reused as input.)3.232 -F .551(The return status is 0 if the)5.551 F(mode w)144 297.6 Q +F .551(The return status is 0 if the)5.551 F(mode w)144 345.6 Q (as successfully changed or if no)-.1 E F2(mode)2.5 E F0(ar)2.5 E (gument w)-.18 E(as supplied, and f)-.1 E(alse otherwise.)-.1 E F1 -(unalias)108 314.4 Q F0<5bad>2.5 E F1(a)A F0 2.5(][)C F2(name)-2.5 E F0 -(...])2.5 E(Remo)144 326.4 Q 1.955 -.15(ve e)-.15 H(ach).15 E F2(name) +(unalias)108 362.4 Q F0<5bad>2.5 E F1(a)A F0 2.5(][)C F2(name)-2.5 E F0 +(...])2.5 E(Remo)144 374.4 Q 1.955 -.15(ve e)-.15 H(ach).15 E F2(name) 4.155 E F0 1.655(from the list of de\214ned aliases.)4.155 F(If)6.655 E F1<ad61>4.155 E F0 1.655(is supplied, all alias de\214nitions are)4.155 -F(remo)144 338.4 Q -.15(ve)-.15 G 2.5(d. The).15 F(return v)2.5 E +F(remo)144 386.4 Q -.15(ve)-.15 G 2.5(d. The).15 F(return v)2.5 E (alue is true unless a supplied)-.25 E F2(name)2.86 E F0 -(is not a de\214ned alias.)2.68 E F1(unset)108 355.2 Q F0<5bad>2.5 E F1 -(fv)A F0 2.5(][)C F2(name)-2.5 E F0(...])2.5 E -.15(Fo)144 367.2 S 3.107 +(is not a de\214ned alias.)2.68 E F1(unset)108 403.2 Q F0<5bad>2.5 E F1 +(fv)A F0 2.5(][)C F2(name)-2.5 E F0(...])2.5 E -.15(Fo)144 415.2 S 3.107 (re).15 G(ach)-3.107 E F2(name)3.107 E F0 3.107(,r).18 G(emo)-3.107 E .907 -.15(ve t)-.15 H .607(he corresponding v).15 F .607 (ariable or function.)-.25 F .606(If no options are supplied, or the) -5.607 F F1<ad76>144 379.2 Q F0 .304(option is gi)2.804 F -.15(ve)-.25 G +5.607 F F1<ad76>144 427.2 Q F0 .304(option is gi)2.804 F -.15(ve)-.25 G .304(n, each).15 F F2(name)3.164 E F0 .305(refers to a shell v)2.985 F 2.805(ariable. Read-only)-.25 F -.25(va)2.805 G .305 -(riables may not be unset.).25 F(If)5.305 E F1<ad66>144 391.2 Q F0 .46 +(riables may not be unset.).25 F(If)5.305 E F1<ad66>144 439.2 Q F0 .46 (is speci\214ed, each)2.96 F F2(name)3.32 E F0 .459 (refers to a shell function, and the function de\214nition is remo)3.14 -F -.15(ve)-.15 G 2.959(d. Each).15 F .902(unset v)144 403.2 R .902 +F -.15(ve)-.15 G 2.959(d. Each).15 F .902(unset v)144 451.2 R .902 (ariable or function is remo)-.25 F -.15(ve)-.15 G 3.402(df).15 G .902 (rom the en)-3.402 F .903(vironment passed to subsequent commands.)-.4 F -(If)5.903 E(an)144 415.2 Q 6.916(yo)-.15 G(f)-6.916 E/F3 9/Times-Bold@0 +(If)5.903 E(an)144 463.2 Q 6.916(yo)-.15 G(f)-6.916 E/F3 9/Times-Bold@0 SF(COMP_W)6.916 E(ORDBREAKS)-.09 E/F4 9/Times-Roman@0 SF(,)A F3(RANDOM) 6.665 E F4(,)A F3(SECONDS)6.665 E F4(,)A F3(LINENO)6.665 E F4(,)A F3 (HISTCMD)6.665 E F4(,)A F3(FUNCN)6.665 E(AME)-.18 E F4(,)A F3(GR)144 -427.2 Q(OUPS)-.27 E F4(,)A F0(or)2.522 E F3(DIRST)2.772 E -.495(AC)-.81 +475.2 Q(OUPS)-.27 E F4(,)A F0(or)2.522 E F3(DIRST)2.772 E -.495(AC)-.81 G(K).495 E F0 .272(are unset, the)2.522 F 2.772(yl)-.15 G .272 (ose their special properties, e)-2.772 F -.15(ve)-.25 G 2.772(ni).15 G 2.772(ft)-2.772 G(he)-2.772 E 2.773(ya)-.15 G .273(re subsequently) --2.773 F 2.5(reset. The)144 439.2 R -.15(ex)2.5 G +-2.773 F 2.5(reset. The)144 487.2 R -.15(ex)2.5 G (it status is true unless a).15 E F2(name)2.86 E F0(is readonly)2.68 E -(.)-.65 E F1(wait)108 456 Q F0([)2.5 E F2 2.5(n.)C(..)-2.5 E F0(])A -.8 -(Wa)144 468 S .288 +(.)-.65 E F1(wait)108 504 Q F0([)2.5 E F2 2.5(n.)C(..)-2.5 E F0(])A -.8 +(Wa)144 516 S .288 (it for each speci\214ed process and return its termination status.).8 F (Each)5.288 E F2(n)3.148 E F0 .287(may be a process ID or a)3.028 F .722 -(job speci\214cation; if a job spec is gi)144 480 R -.15(ve)-.25 G .722 +(job speci\214cation; if a job spec is gi)144 528 R -.15(ve)-.25 G .722 (n, all processes in that job').15 F 3.222(sp)-.55 G .722(ipeline are w) -3.222 F .722(aited for)-.1 F 5.722(.I)-.55 G(f)-5.722 E F2(n)3.583 E F0 -(is)3.463 E 1.266(not gi)144 492 R -.15(ve)-.25 G 1.266 +(is)3.463 E 1.266(not gi)144 540 R -.15(ve)-.25 G 1.266 (n, all currently acti).15 F 1.566 -.15(ve c)-.25 H 1.265 (hild processes are w).15 F 1.265(aited for)-.1 F 3.765(,a)-.4 G 1.265 (nd the return status is zero.)-3.765 F(If)6.265 E F2(n)4.125 E F0 .456 -(speci\214es a non-e)144 504 R .457 +(speci\214es a non-e)144 552 R .457 (xistent process or job, the return status is 127.)-.15 F .457 -(Otherwise, the return status is the)5.457 F -.15(ex)144 516 S +(Otherwise, the return status is the)5.457 F -.15(ex)144 564 S (it status of the last process or job w).15 E(aited for)-.1 E(.)-.55 E -/F5 10.95/Times-Bold@0 SF(SEE ALSO)72 532.8 Q F0(bash\(1\), sh\(1\))108 -544.8 Q(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(21)198.725 E 0 Cg EP +/F5 10.95/Times-Bold@0 SF(SEE ALSO)72 580.8 Q F0(bash\(1\), sh\(1\))108 +592.8 Q(GNU Bash-4.0)72 768 Q(2004 Apr 20)148.735 E(21)198.725 E 0 Cg EP %%Trailer end %%EOF diff --git a/doc/rbash.ps b/doc/rbash.ps index 1f2c89aa..cc54bc6a 100644 --- a/doc/rbash.ps +++ b/doc/rbash.ps @@ -1,6 +1,6 @@ %!PS-Adobe-3.0 %%Creator: groff version 1.19.2 -%%CreationDate: Tue Jun 1 11:58:36 2010 +%%CreationDate: Mon Jun 7 16:18:58 2010 %%DocumentNeededResources: font Times-Roman %%+ font Times-Bold %%DocumentSuppliedResources: procset grops 1.19 2 diff --git a/doc/version.texi b/doc/version.texi index 16b3c8ed..3f009400 100644 --- a/doc/version.texi +++ b/doc/version.texi @@ -2,9 +2,9 @@ Copyright (C) 1988-2010 Free Software Foundation, Inc. @end ignore -@set LASTCHANGE Sun May 30 17:03:21 EDT 2010 +@set LASTCHANGE Sat Jun 12 15:35:23 EDT 2010 @set EDITION 4.1 @set VERSION 4.1 -@set UPDATED 30 May 2010 -@set UPDATED-MONTH May 2010 +@set UPDATED 12 June 2010 +@set UPDATED-MONTH June 2010 diff --git a/doc/version.texi~ b/doc/version.texi~ index 76d40573..16b3c8ed 100644 --- a/doc/version.texi~ +++ b/doc/version.texi~ @@ -2,9 +2,9 @@ Copyright (C) 1988-2010 Free Software Foundation, Inc. @end ignore -@set LASTCHANGE Sat May 29 21:00:00 EDT 2010 +@set LASTCHANGE Sun May 30 17:03:21 EDT 2010 @set EDITION 4.1 @set VERSION 4.1 -@set UPDATED 29 May 2010 +@set UPDATED 30 May 2010 @set UPDATED-MONTH May 2010 diff --git a/examples/scripts/timeout3 b/examples/scripts/timeout3 index 5c19d2ec..de650be1 100644 --- a/examples/scripts/timeout3 +++ b/examples/scripts/timeout3 @@ -1,56 +1,57 @@ #!/bin/bash # -# The Bash shell script executes a command with a time-out. -# Upon time-out expiration SIGTERM (15) is sent to the process. If the signal +# The Bash script executes a command with a time-out. +# Based on the Bash documentation example. +# +# Upon time-out expiration SIGTERM (15) is sent to the process. If the signal # is blocked, then the subsequent SIGKILL (9) terminates it. +# Dmitry V Golovashkin (E-mail: dvg@ieee.org) # -# Based on the Bash documentation example. +script_name="${0##*/}" -# Hello Chet, -# please find attached a "little easier" :-) to comprehend -# time-out example. If you find it suitable, feel free to include -# anywhere: the very same logic as in the original examples/scripts, a -# little more transparent implementation to my taste. -# -# Dmitry V Golovashkin <Dmitry.Golovashkin@sas.com> +# Default values. +readonly param_timeout=5 +readonly param_interval=1 +readonly param_delay=1 -scriptName="${0##*/}" +declare -i timeout=param_timeout +declare -i interval=param_interval +declare -i delay=param_delay -declare -i DEFAULT_TIMEOUT=9 -declare -i DEFAULT_INTERVAL=1 -declare -i DEFAULT_DELAY=1 +blue="$(tput setaf 4)" +bold_red="$(tput bold; tput setaf 1)" +off="$(tput sgr0)" -# Timeout. -declare -i timeout=DEFAULT_TIMEOUT -# Interval between checks if the process is still alive. -declare -i interval=DEFAULT_INTERVAL -# Delay between posting the SIGTERM signal and destroying the process by SIGKILL. -declare -i delay=DEFAULT_DELAY +function print_usage() { +cat <<EOF -function printUsage() { - cat <<EOF +Synopsis: $script_name [-t timeout] [-i interval] [-d delay] command -Synopsis - $scriptName [-t timeout] [-i interval] [-d delay] command - Execute a command with a time-out. - Upon time-out expiration SIGTERM (15) is sent to the process. If SIGTERM - signal is blocked, then the subsequent SIGKILL (9) terminates it. +Executes the command with a time-out. Upon time-out expiration SIGTERM (15) is +sent to the process. If SIGTERM signal is blocked, then the subsequent SIGKILL +(9) terminates it. - -t timeout - Number of seconds to wait for command completion. - Default value: $DEFAULT_TIMEOUT seconds. +$blue-t timeout$off + Number of seconds to wait for command completion. + Default value: $param_timeout seconds. In some practical situations + this value ${bold_red}must$off be increased (for instance -t 180) to allow + the command to complete. - -i interval - Interval between checks if the process is still alive. - Positive integer, default value: $DEFAULT_INTERVAL seconds. +$blue-i interval$off + Interval between checks if the process is still alive. + Positive integer, default value: $param_interval seconds. + Default value is OK for most situations. - -d delay - Delay between posting the SIGTERM signal and destroying the - process by SIGKILL. Default value: $DEFAULT_DELAY seconds. +$blue-d delay$off + Delay between posting the SIGTERM signal and destroying the process by + SIGKILL. Default value: $param_delay seconds. + Default value is OK for most situations. As of today, Bash does not support floating point arithmetic (sleep does), -therefore all delay/time values must be integers. +therefore all time values must be integers. +Dmitry Golovashkin (E-mail: dvg@ieee.org) EOF +exit 1 # No useful work was done. } # Options. @@ -59,7 +60,7 @@ while getopts ":t:i:d:" option; do t) timeout=$OPTARG ;; i) interval=$OPTARG ;; d) delay=$OPTARG ;; - *) printUsage; exit 1 ;; + *) print_usage ;; esac done shift $((OPTIND - 1)) @@ -67,11 +68,10 @@ shift $((OPTIND - 1)) # $# should be at least 1 (the command to execute), however it may be strictly # greater than 1 if the command itself has options. if (($# == 0 || interval <= 0)); then - printUsage - exit 1 + print_usage fi -# kill -0 pid Exit code indicates if a signal may be sent to $pid process. +# kill -0 pid Exit code indicates if a signal may be sent to "pid" process. ( ((t = timeout)) @@ -89,3 +89,4 @@ fi ) 2> /dev/null & exec "$@" + diff --git a/lib/readline/complete.c b/lib/readline/complete.c index 5b707848..92609447 100644 --- a/lib/readline/complete.c +++ b/lib/readline/complete.c @@ -477,6 +477,14 @@ get_y_or_n (for_pager) { int c; + /* For now, disable pager in callback mode, until we later convert to state + driven functions. Have to wait until next major version to add new + state definition, since it will change value of RL_STATE_DONE. */ +#if defined (READLINE_CALLBACKS) + if (RL_ISSTATE (RL_STATE_CALLBACK)) + return 1; +#endif + for (;;) { RL_SETSTATE(RL_STATE_MOREINPUT); diff --git a/lib/readline/complete.c~ b/lib/readline/complete.c~ index 4a1e8ca4..5b707848 100644 --- a/lib/readline/complete.c~ +++ b/lib/readline/complete.c~ @@ -164,7 +164,7 @@ int _rl_completion_case_fold = 0; /* Non-zero means that `-' and `_' are equivalent when comparing filenames for completion. */ -int _rl_completion_case_map = 1; +int _rl_completion_case_map = 0; /* If zero, don't match hidden files (filenames beginning with a `.' on Unix) when doing filename completion. */ @@ -3256,7 +3256,7 @@ parse_matched_pair (qc, open, close, lenp, flags) within a double-quoted ${...} construct "an even number of unescaped double-quotes or single-quotes, if any, shall occur." */ /* This was changed in Austin Group Interp 221 */ - if MBTEST(posixly_correct && /*shell_compatibility_level > 41 &&*/ dolbrace_state != DOLBRACE_QUOTE && (flags & P_DQUOTE) && (flags & P_DOLBRACE) && ch == '\'') + if MBTEST(posixly_correct && shell_compatibility_level > 41 && dolbrace_state != DOLBRACE_QUOTE && (flags & P_DQUOTE) && (flags & P_DOLBRACE) && ch == '\'') continue; /* Could also check open == '`' if we want to parse grouping constructs @@ -3257,10 +3257,7 @@ parse_matched_pair (qc, open, close, lenp, flags) unescaped double-quotes or single-quotes, if any, shall occur." */ /* This was changed in Austin Group Interp 221 */ if MBTEST(posixly_correct && /*shell_compatibility_level > 41 &&*/ dolbrace_state != DOLBRACE_QUOTE && (flags & P_DQUOTE) && (flags & P_DOLBRACE) && ch == '\'') -{ -itrace("parse_matched_pair: found single quote in double-quoted dolbrace"); continue; -} /* Could also check open == '`' if we want to parse grouping constructs inside old-style command substitution. */ diff --git a/patchlevel.h b/patchlevel.h index 52efbd76..85940d03 100644 --- a/patchlevel.h +++ b/patchlevel.h @@ -25,6 +25,6 @@ regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh looks for to find the patch level (for the sccs version string). */ -#define PATCHLEVEL 7 +#define PATCHLEVEL 0 #endif /* _PATCHLEVEL_H_ */ diff --git a/patchlevel.h~ b/patchlevel.h~ index eab75cf7..52efbd76 100644 --- a/patchlevel.h~ +++ b/patchlevel.h~ @@ -1,6 +1,6 @@ /* patchlevel.h -- current bash patch level */ -/* Copyright (C) 2001-2009 Free Software Foundation, Inc. +/* Copyright (C) 2001-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. diff --git a/po/zh_CN.po b/po/zh_CN.po index 193d6242..823d3edc 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -8,8 +8,8 @@ msgstr "" "Project-Id-Version: bash 4.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-12-30 08:25-0500\n" -"PO-Revision-Date: 2010-03-14 16:16+0800\n" -"Last-Translator: Xin Ye <alyex.ye@gmail.com>\n" +"PO-Revision-Date: 2010-06-13 14:31+0800\n" +"Last-Translator: Alyex.ye <alyex.ye@gmail.com>\n" "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -109,7 +109,7 @@ msgstr "循环计数" #: builtins/break.def:137 msgid "only meaningful in a `for', `while', or `until' loop" -msgstr "仅在`for', `while', 或者`until' 循环中有意义" +msgstr "仅在`for', `while', 或者`until' 循环中有意义" #: builtins/caller.def:133 msgid "" @@ -119,14 +119,14 @@ msgid "" msgstr "" "返回当前子例程调用的上下文\n" " \n" -" 不带 EXPR 时, 返回" +" 不带 EXPR 时, 返回" #: builtins/caller.def:135 msgid "" ". With EXPR, returns\n" " " msgstr "" -". 带有 EXPR 时, 返回\n" +". 带有 EXPR 时, 返回\n" " " #: builtins/caller.def:136 @@ -137,6 +137,11 @@ msgid "" " The value of EXPR indicates how many call frames to go back before the\n" " current one; the top frame is frame 0." msgstr "" +"; 这个额外信息可被用于\n" +" 提供栈追踪.\n" +" \n" +" EXPR 的值显示了回到当前调用帧之前\n" +" 的调用帧书目; 栈顶帧是第0帧." #: builtins/cd.def:215 msgid "HOME not set" @@ -298,7 +303,7 @@ msgstr "%s: 无效的动作名" #: builtins/complete.def:853 #, c-format msgid "%s: no completion specification" -msgstr "%s: 没有补完声名" +msgstr "%s: 没有补完声明" #: builtins/complete.def:696 msgid "warning: -F option may not work as you expect" @@ -478,6 +483,13 @@ msgid "" "A star (*) next to a name means that the command is disabled.\n" "\n" msgstr "" +"这些 shell 命令是内部定义的。请输入 `help' 以获取一个列表.\n" +"输入 `help 名称' 以得到有关函数`名称'的更多信息.\n" +"使用 `info bash' 来获得关于 shell 的更多一般性信息\n" +"使用 `man -k' 或 `info' 来获取不在列表中的命令的更多信息.\n" +"\n" +"名称旁边的星号 (*) 意味着该命令被禁用.\n" +"\n" #: builtins/history.def:154 msgid "cannot use more than one of -anrw" @@ -608,6 +620,24 @@ msgid "" " -N\tDisplays the Nth entry counting from the right of the list shown by\n" "\tdirs when invoked without options, starting with zero." msgstr "" +"显示当前记住的目录列表. 目录\n" +" 通过 `pushd' 命令加入这个列表; 您可以\n" +" 使用 `popd' 命令对列表进行遍历.\n" +" \n" +" 选项:\n" +" -c\t删除所有元素以清除目录栈\n" +" -l\t不打印与家目录相关的以波浪号\n" +" \t为前缀的目录\n" +" -p\t每行一个条目打印目录栈\n" +" -v\t以栈位置为前缀,每行一个条目\n" +" \t打印目录栈\n" +" \n" +" 参数:\n" +" +N\t以 dirs 不带选项输出的顺序显示列表从左起第N个条目,\n" +" \t从 0 开始.\n" +" \n" +" -N\t以 dirs 不带选项输出的顺序显示列表从右起第N个项目,\n" +"\t从 0 开始." #: builtins/pushd.def:705 msgid "" @@ -633,6 +663,27 @@ msgid "" " \n" " The `dirs' builtin displays the directory stack." msgstr "" +"在目录栈顶部加入一个目录, 或者轮转\n" +" 目录栈, 是当前工作目录成为新的栈顶\n" +" 不带参数时,交换栈顶的两个目录.\n" +" \n" +" 选项:\n" +" -n\t抑制增加栈中目录时通常的改变目录的操作,\n" +" \t从而只有栈被操作。\n" +" \n" +" 参数:\n" +" +N\t轮转栈使得第N个目录(`dirs' 的\n" +" \t输出列表中左起,从0开始)\n" +" \t升至栈顶。\n" +" \n" +" -N\t轮转栈使得第N个目录(`dirs' 的\n" +" \t输出列表中右起,从0开始)\n" +" \t升至栈顶\n" +" \n" +" dir\t添加目录至栈顶,并\n" +" \t使其成为新的当前工作目录。\n" +" \n" +" `dirs' 内嵌命令显示目录栈." #: builtins/pushd.def:730 msgid "" @@ -654,6 +705,23 @@ msgid "" " \n" " The `dirs' builtin displays the directory stack." msgstr "" +"从目录栈中删除条目。不带参数时,删除\n" +" 栈顶目录并改变至新的栈顶目录。\n" +" \n" +" 选项:\n" +" -n\t抑制从栈中删除目录时通常的改变目录操作,\n" +" \t从而只有栈被操作。\n" +" \n" +" 参数:\n" +" +N\t从 `dirs' 输出的列表中,\n" +" \t删除左起第N个条目,计数从0开始。例如:`popd +0'\n" +" \t删除第一个目录, `popd +1' 删除第二个。\n" +" \n" +" -N\t从 `dirs' 输出的列表中,\n" +" \t删除右起第N个条目,计数从0开始,例如:`popd -0'\n" +" \t删除最后一个条目, `popd -1' 删除倒数第二个。\n" +" \n" +" `dirs' 内嵌变量显示目录栈。" #: builtins/read.def:252 #, c-format @@ -952,7 +1020,7 @@ msgstr "save_bash_input: 已经存在新的文件描述符 %d 的缓冲区" #: jobs.c:466 msgid "start_pipeline: pgrp pipe" -msgstr "" +msgstr "start_pipeline: 进程组管道" #: jobs.c:887 #, c-format @@ -962,22 +1030,22 @@ msgstr "生成的进程号 %d 显示为运行中的任务 %d" #: jobs.c:1005 #, c-format msgid "deleting stopped job %d with process group %ld" -msgstr "" +msgstr "删除进程组 %2$ld 中已停止的任务 %1$d" #: jobs.c:1110 #, c-format msgid "add_process: process %5ld (%s) in the_pipeline" -msgstr "" +msgstr "add_process: 进程 %5ld(%s) 进入 the_pipeline" #: jobs.c:1113 #, c-format msgid "add_process: pid %5ld (%s) marked as still alive" -msgstr "" +msgstr "add_process: 进程号 %5ld(%s) 标注为仍活着" #: jobs.c:1401 #, c-format msgid "describe_pid: %ld: no such pid" -msgstr "" +msgstr "describe_pid: %ld: 无此进程号" #: jobs.c:1416 #, c-format @@ -1018,32 +1086,32 @@ msgstr "未知状态" #: jobs.c:1549 #, c-format msgid "(core dumped) " -msgstr "" +msgstr "(吐核)" #: jobs.c:1568 #, c-format msgid " (wd: %s)" -msgstr "" +msgstr "(工作目录:%s)" #: jobs.c:1776 #, c-format msgid "child setpgid (%ld to %ld)" -msgstr "" +msgstr "子进程 setpgid (%ld 到 %ld)" #: jobs.c:2104 nojobs.c:585 #, c-format msgid "wait: pid %ld is not a child of this shell" -msgstr "" +msgstr "wait: 进程号 %ld 不是当前 shell 的子进程" #: jobs.c:2331 #, c-format msgid "wait_for: No record of process %ld" -msgstr "" +msgstr "wiat_for: 没有进程 %ld 的记录" #: jobs.c:2607 #, c-format msgid "wait_for_job: job %d is stopped" -msgstr "" +msgstr "wait_for_job: 任务 %d 已停止" #: jobs.c:2829 #, c-format @@ -1057,7 +1125,7 @@ msgstr "%s: 任务 %d 已在后台" #: jobs.c:3059 msgid "waitchld: turning on WNOHANG to avoid indefinite block" -msgstr "" +msgstr "waitchld: 打开 WNOHANG 以避免无限阻塞" #: jobs.c:3508 #, c-format @@ -1067,29 +1135,29 @@ msgstr "%s: 行 %d: " #: jobs.c:3522 nojobs.c:814 #, c-format msgid " (core dumped)" -msgstr "" +msgstr "(吐核)" #: jobs.c:3534 jobs.c:3547 #, c-format msgid "(wd now: %s)\n" -msgstr "" +msgstr "(当前工作目录:%s)\n" #: jobs.c:3579 msgid "initialize_job_control: getpgrp failed" -msgstr "" +msgstr "initialize_job_control: getpgrp 失败" #: jobs.c:3639 msgid "initialize_job_control: line discipline" -msgstr "" +msgstr "initialize_job_control: 行规则" #: jobs.c:3649 msgid "initialize_job_control: setpgid" -msgstr "" +msgstr "initialize_job_control: setpgid" #: jobs.c:3677 #, c-format msgid "cannot set terminal process group (%d)" -msgstr "" +msgstr "无法设定终端进程组 (%d)" #: jobs.c:3682 msgid "no job control in this shell" @@ -1098,7 +1166,7 @@ msgstr "此 shell 中无任务控制" #: lib/malloc/malloc.c:296 #, c-format msgid "malloc: failed assertion: %s\n" -msgstr "" +msgstr "malloc: 断言失败: %s\n" #: lib/malloc/malloc.c:312 #, c-format @@ -1106,6 +1174,8 @@ msgid "" "\r\n" "malloc: %s:%d: assertion botched\r\n" msgstr "" +"\r\n" +"malloc: %s:%d: 断言已修补\r\n" #: lib/malloc/malloc.c:313 msgid "unknown" @@ -1113,7 +1183,7 @@ msgstr "未知" #: lib/malloc/malloc.c:797 msgid "malloc: block on free list clobbered" -msgstr "" +msgstr "malloc: 空闲链表中的块损坏" #: lib/malloc/malloc.c:874 msgid "free: called with already freed block argument" @@ -1125,11 +1195,11 @@ msgstr "free: 用未分配的块作为参数被调用" #: lib/malloc/malloc.c:896 msgid "free: underflow detected; mh_nbytes out of range" -msgstr "" +msgstr "free: 检测到下溢; mh_nbytes越界" #: lib/malloc/malloc.c:902 msgid "free: start and end chunk sizes differ" -msgstr "" +msgstr "free: 起始和终结块大小不一致" #: lib/malloc/malloc.c:1001 msgid "realloc: called with unallocated block argument" @@ -1137,30 +1207,30 @@ msgstr "realloc: 用未分配的块作为参数被调用" #: lib/malloc/malloc.c:1016 msgid "realloc: underflow detected; mh_nbytes out of range" -msgstr "" +msgstr "realloc: 检测到下溢; mh_nbytes越界" #: lib/malloc/malloc.c:1022 msgid "realloc: start and end chunk sizes differ" -msgstr "" +msgstr "realloc: 起始和终结块大小不一致" #: lib/malloc/table.c:177 #, c-format msgid "register_alloc: alloc table is full with FIND_ALLOC?\n" -msgstr "" +msgstr "register_alloc: 分配表已经充满了 FIND_ALLOC?\n" #: lib/malloc/table.c:184 #, c-format msgid "register_alloc: %p already in table as allocated?\n" -msgstr "" +msgstr "register_alloc: %p 在表中显示为已分配?\n" #: lib/malloc/table.c:220 #, c-format msgid "register_free: %p already in table as free?\n" -msgstr "" +msgstr "register_free: %p 在表中显示为已释放?\n" #: lib/sh/fmtulong.c:101 msgid "invalid base" -msgstr "" +msgstr "无效的基" #: lib/sh/netopen.c:168 #, c-format @@ -1170,7 +1240,7 @@ msgstr "%s: 未知主机" #: lib/sh/netopen.c:175 #, c-format msgid "%s: invalid service" -msgstr "" +msgstr "%s: 无效的服务" #: lib/sh/netopen.c:306 #, c-format @@ -1184,22 +1254,22 @@ msgstr "不支持网络操作" #: locale.c:192 #, c-format msgid "setlocale: LC_ALL: cannot change locale (%s)" -msgstr "" +msgstr "setlocale: LC_ALL: 无法改变区域选项 (%s)" #: locale.c:194 #, c-format msgid "setlocale: LC_ALL: cannot change locale (%s): %s" -msgstr "" +msgstr "setlocale: LC_ALL: 无法改变区域选项 (%s): %s" #: locale.c:247 #, c-format msgid "setlocale: %s: cannot change locale (%s)" -msgstr "" +msgstr "setlocale: %s: 无法改变区域选项 (%s)" #: locale.c:249 #, c-format msgid "setlocale: %s: cannot change locale (%s): %s" -msgstr "" +msgstr "setlocale: %s: 无法改变区域选项 (%s): %s" #: mailcheck.c:433 msgid "You have mail in $_" @@ -1216,7 +1286,7 @@ msgstr "%s 中的邮件已被阅读\n" #: make_cmd.c:323 msgid "syntax error: arithmetic expression required" -msgstr "" +msgstr "语法错误: 需要算数表达式" #: make_cmd.c:325 msgid "syntax error: `;' unexpected" @@ -1230,17 +1300,17 @@ msgstr "语法错误: `((%s))'" #: make_cmd.c:575 #, c-format msgid "make_here_document: bad instruction type %d" -msgstr "" +msgstr "make_here_document: 坏的指令类型 %d" #: make_cmd.c:659 #, c-format msgid "here-document at line %d delimited by end-of-file (wanted `%s')" -msgstr "" +msgstr "立即文档在第 %d 行被文件结束符分隔 (需要 `%s')" #: make_cmd.c:756 #, c-format msgid "make_redirection: redirection instruction `%d' out of range" -msgstr "" +msgstr "make_redirection: 重定向指令 `%d' 越界" #: parse.y:3133 parse.y:3369 #, c-format @@ -1346,31 +1416,31 @@ msgstr "补完: 未找到函数 `%s'" #: pcomplib.c:179 #, c-format msgid "progcomp_insert: %s: NULL COMPSPEC" -msgstr "" +msgstr "progcomp_insert: %s: 空的补完声明" #: print_cmd.c:290 #, c-format msgid "print_command: bad connector `%d'" -msgstr "" +msgstr "print_command: 坏的条件连接符 `%d'" #: print_cmd.c:363 #, c-format msgid "xtrace_set: %d: invalid file descriptor" -msgstr "" +msgstr "xtrace_set: %d: 无效的文件描述符" #: print_cmd.c:368 msgid "xtrace_set: NULL file pointer" -msgstr "" +msgstr "xtrace_set: 空的文件指针" #: print_cmd.c:372 #, c-format msgid "xtrace fd (%d) != fileno xtrace fp (%d)" -msgstr "" +msgstr "xtrace fd (%d) != fileno xtrace fp (%d)" #: print_cmd.c:1461 #, c-format msgid "cprintf: `%c': invalid format character" -msgstr "" +msgstr "cprintf: `%c': 无效的格式字符" #: redir.c:110 msgid "file descriptor out of range" @@ -1394,12 +1464,12 @@ msgstr "%s: 受限的: 无法重定向输出" #: redir.c:180 #, c-format msgid "cannot create temp file for here-document: %s" -msgstr "" +msgstr "无法为立即文档创建临时文件: %s" #: redir.c:184 #, c-format msgid "%s: cannot assign fd to variable" -msgstr "" +msgstr "%s: 无法将文件描述符赋值给变量" #: redir.c:544 msgid "/dev/(tcp|udp)/host/port not supported without networking" @@ -1407,7 +1477,7 @@ msgstr "没有网络时不支持 /dev/(tcp|udp)/host/port" #: redir.c:1101 msgid "redirection error: cannot duplicate fd" -msgstr "" +msgstr "重定向错误: 无法复制文件描述符" #: shell.c:332 msgid "could not find /tmp, please create!" @@ -1437,6 +1507,8 @@ msgid "" "Usage:\t%s [GNU long option] [option] ...\n" "\t%s [GNU long option] [option] script-file ...\n" msgstr "" +"用法:\t%s [GNU 长选项] [选项] ...\n" +"\t%s [GNU 长选项] [选项] 脚本文件 ...\n" #: shell.c:1796 msgid "GNU long options:\n" @@ -1448,40 +1520,40 @@ msgstr "Shell 选项:\n" #: shell.c:1801 msgid "\t-irsD or -c command or -O shopt_option\t\t(invocation only)\n" -msgstr "" +msgstr "\t-irsD 或 -c 命令 或 -O shopt选项\t\t(仅适合调用)\n" #: shell.c:1816 #, c-format msgid "\t-%s or -o option\n" -msgstr "" +msgstr "\t-%s 或 -o 选项\n" #: shell.c:1822 #, c-format msgid "Type `%s -c \"help set\"' for more information about shell options.\n" -msgstr "" +msgstr "请输入`%s -c \"help set\"' 以获得关于 shell 选项的更多信息\n" #: shell.c:1823 #, c-format msgid "Type `%s -c help' for more information about shell builtin commands.\n" -msgstr "" +msgstr "请输入 `%s -c help' 以获得关于 shell 内嵌命令的更多信息.\n" #: shell.c:1824 #, c-format msgid "Use the `bashbug' command to report bugs.\n" -msgstr "" +msgstr "请使用`bashbug' 命令来报告错误.\n" #: sig.c:626 #, c-format msgid "sigprocmask: %d: invalid operation" -msgstr "" +msgstr "sigprocmask: %d: 无效的操作" #: siglist.c:48 msgid "Bogus signal" -msgstr "" +msgstr "伪信号" #: siglist.c:51 msgid "Hangup" -msgstr "" +msgstr "挂断" #: siglist.c:55 msgid "Interrupt" @@ -1497,15 +1569,15 @@ msgstr "非法的指令" #: siglist.c:67 msgid "BPT trace/trap" -msgstr "" +msgstr "断点追踪/陷阱" #: siglist.c:75 msgid "ABORT instruction" -msgstr "" +msgstr "放弃指令" #: siglist.c:79 msgid "EMT instruction" -msgstr "" +msgstr "模拟器陷阱指令" #: siglist.c:83 msgid "Floating point exception" @@ -1541,7 +1613,7 @@ msgstr "已终止" #: siglist.c:115 msgid "Urgent IO condition" -msgstr "" +msgstr "紧急输入输出情形" #: siglist.c:119 msgid "Stopped (signal)" @@ -1569,269 +1641,269 @@ msgstr "输入输出准备完毕" #: siglist.c:151 msgid "CPU limit" -msgstr "" +msgstr "CPU 限制" #: siglist.c:155 msgid "File limit" -msgstr "" +msgstr "文件限制" #: siglist.c:159 msgid "Alarm (virtual)" -msgstr "" +msgstr "报警(虚拟)" #: siglist.c:163 msgid "Alarm (profile)" -msgstr "" +msgstr "报警(总结)" #: siglist.c:167 msgid "Window changed" -msgstr "" +msgstr "窗口改变" #: siglist.c:171 msgid "Record lock" -msgstr "" +msgstr "记录锁" #: siglist.c:175 msgid "User signal 1" -msgstr "" +msgstr "用户定义信号1" #: siglist.c:179 msgid "User signal 2" -msgstr "" +msgstr "用户定义信号2" #: siglist.c:183 msgid "HFT input data pending" -msgstr "" +msgstr "HFT输入数据挂起" #: siglist.c:187 msgid "power failure imminent" -msgstr "" +msgstr "即将停电" #: siglist.c:191 msgid "system crash imminent" -msgstr "" +msgstr "系统即将崩溃" #: siglist.c:195 msgid "migrate process to another CPU" -msgstr "" +msgstr "迁移进程至另一个CPU" #: siglist.c:199 msgid "programming error" -msgstr "" +msgstr "程序错误" #: siglist.c:203 msgid "HFT monitor mode granted" -msgstr "" +msgstr "HFT显示器模式授与" #: siglist.c:207 msgid "HFT monitor mode retracted" -msgstr "" +msgstr "HFT显示器模式撤销" #: siglist.c:211 msgid "HFT sound sequence has completed" -msgstr "" +msgstr "HFT声音序列已完成" #: siglist.c:215 msgid "Information request" -msgstr "" +msgstr "状态请求" #: siglist.c:223 msgid "Unknown Signal #" -msgstr "" +msgstr "未知信号 #" #: siglist.c:225 #, c-format msgid "Unknown Signal #%d" -msgstr "" +msgstr "未知信号 #%d" #: subst.c:1333 subst.c:1454 #, c-format msgid "bad substitution: no closing `%s' in %s" -msgstr "" +msgstr "坏的替换:在 %2$s 中没有闭合的 `%1$s'" #: subst.c:2735 #, c-format msgid "%s: cannot assign list to array member" -msgstr "" +msgstr "%s: 无法将链表赋值给数组成员" #: subst.c:4754 subst.c:4770 msgid "cannot make pipe for process substitution" -msgstr "" +msgstr "无法为进程替换创建管道" #: subst.c:4802 msgid "cannot make child for process substitution" -msgstr "" +msgstr "无法为进程替换创建子进程" #: subst.c:4847 #, c-format msgid "cannot open named pipe %s for reading" -msgstr "" +msgstr "无法打开命名管道 %s 进行读取" #: subst.c:4849 #, c-format msgid "cannot open named pipe %s for writing" -msgstr "" +msgstr "无法打开命名管道 %s 进行写入" #: subst.c:4867 #, c-format msgid "cannot duplicate named pipe %s as fd %d" -msgstr "" +msgstr "无法将命名管道 %s 作为文件描述符 %d 复制" #: subst.c:5063 msgid "cannot make pipe for command substitution" -msgstr "" +msgstr "无法为命令替换创建管道" #: subst.c:5097 msgid "cannot make child for command substitution" -msgstr "" +msgstr "无法为命令替换创建子进程" #: subst.c:5114 msgid "command_substitute: cannot duplicate pipe as fd 1" -msgstr "" +msgstr "command_substitute: 无法将管道复制为文件描述符1" #: subst.c:5617 #, c-format msgid "%s: parameter null or not set" -msgstr "" +msgstr "%s: 参数为空或未设置" #: subst.c:5907 #, c-format msgid "%s: substring expression < 0" -msgstr "" +msgstr "%s: 子串表达式 < 0" #: subst.c:6965 #, c-format msgid "%s: bad substitution" -msgstr "" +msgstr "%s: 坏的替换" #: subst.c:7045 #, c-format msgid "$%s: cannot assign in this way" -msgstr "" +msgstr "$%s: 无法这样赋值" #: subst.c:7374 msgid "future versions of the shell will force evaluation as an arithmetic substitution" -msgstr "" +msgstr "未来版本的 shell 会强制估值为算数替换" #: subst.c:7839 #, c-format msgid "bad substitution: no closing \"`\" in %s" -msgstr "" +msgstr "坏的替换:在 %s 中没有闭合的 \"`\"" #: subst.c:8720 #, c-format msgid "no match: %s" -msgstr "" +msgstr "没有匹配: %s" #: test.c:146 msgid "argument expected" -msgstr "" +msgstr "期待参数" #: test.c:155 #, c-format msgid "%s: integer expression expected" -msgstr "" +msgstr "%s: 期待整数表达式" #: test.c:263 msgid "`)' expected" -msgstr "" +msgstr "期待 `)'" #: test.c:265 #, c-format msgid "`)' expected, found %s" -msgstr "" +msgstr "期待`)' , 得到 %s" #: test.c:280 test.c:693 test.c:696 #, c-format msgid "%s: unary operator expected" -msgstr "" +msgstr "%s: 期待一元表达式" #: test.c:449 test.c:736 #, c-format msgid "%s: binary operator expected" -msgstr "" +msgstr "%s: 期待二元表达式" #: test.c:811 msgid "missing `]'" -msgstr "" +msgstr "缺少 `]'" #: trap.c:203 msgid "invalid signal number" -msgstr "" +msgstr "无效的信号编号" #: trap.c:327 #, c-format msgid "run_pending_traps: bad value in trap_list[%d]: %p" -msgstr "" +msgstr "run_pending_traps: trap_list[%d] 中的坏值: %p" #: trap.c:331 #, c-format msgid "run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself" -msgstr "" +msgstr "run_pending_traps: 信号处理器是 SIG_DFL, 重新发送 %d (%s) 给自己" #: trap.c:380 #, c-format msgid "trap_handler: bad signal %d" -msgstr "" +msgstr "trap_handler: 坏的信号 %d" #: variables.c:363 #, c-format msgid "error importing function definition for `%s'" -msgstr "" +msgstr "`%s' 函数定义导入错误" #: variables.c:748 #, c-format msgid "shell level (%d) too high, resetting to 1" -msgstr "" +msgstr "shell 层次 (%d) 太高, 重置为 1" #: variables.c:1915 msgid "make_local_variable: no function context at current scope" -msgstr "" +msgstr "make_local_variable: 当前作用域中没有函数上下文" #: variables.c:3159 msgid "all_local_variables: no function context at current scope" -msgstr "" +msgstr "all_local_variables: 当前作用域中没有函数上下文" #: variables.c:3376 #, c-format msgid "%s has null exportstr" -msgstr "" +msgstr "%s 有空的 exportstr" #: variables.c:3381 variables.c:3390 #, c-format msgid "invalid character %d in exportstr for %s" -msgstr "" +msgstr "%2$s 的 exportstr 中有无效的字符 %1$d" #: variables.c:3396 #, c-format msgid "no `=' in exportstr for %s" -msgstr "" +msgstr "%s 的 exportstr 中没有 `='" #: variables.c:3835 msgid "pop_var_context: head of shell_variables not a function context" -msgstr "" +msgstr "pop_var_context: shell_variables 的头部不是函数上下文" #: variables.c:3848 msgid "pop_var_context: no global_variables context" -msgstr "" +msgstr "pop_var_context: 没有 global_variables 上下文" #: variables.c:3922 msgid "pop_scope: head of shell_variables not a temporary environment scope" -msgstr "" +msgstr "pop_scope: shell_variables 的头部不是临时环境作用域" #: variables.c:4678 #, c-format msgid "%s: %s: cannot open as FILE" -msgstr "" +msgstr "%s: %s: 无法作为文件打开" #: variables.c:4683 #, c-format msgid "%s: %s: invalid value for trace file descriptor" -msgstr "" +msgstr "%s: %s: 追踪文件描述符的值无效" #: version.c:46 msgid "Copyright (C) 2009 Free Software Foundation, Inc." -msgstr "" +msgstr "自由软件基金会 版权所有 2009" #: version.c:47 msgid "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\n" @@ -1840,7 +1912,7 @@ msgstr "许可证 GPLv3+: GNU GPL 许可证版本3或者更高 <http://gnu.org/l #: version.c:86 version2.c:83 #, c-format msgid "GNU bash, version %s (%s)\n" -msgstr "GNU bash, 版本 %s (%s)\n" +msgstr "GNU bash, 版本 %s (%s)\n" #: version.c:91 version2.c:88 #, c-format @@ -1850,12 +1922,12 @@ msgstr "这是自由软件,您可以自由地更改和重新发布。\n" #: version.c:92 version2.c:89 #, c-format msgid "There is NO WARRANTY, to the extent permitted by law.\n" -msgstr "" +msgstr "在法律允许的范围内没有担保.\n" #: version2.c:86 #, c-format msgid "Copyright (C) 2009 Free Software Foundation, Inc.\n" -msgstr "" +msgstr "自由软件基金会 版权所有 2009\n" #: version2.c:87 #, c-format @@ -1865,334 +1937,334 @@ msgstr "许可证 GPLv2+: GNU GPL 许可证版本2或者更高 <http://gnu.org/l #: xmalloc.c:91 #, c-format msgid "%s: cannot allocate %lu bytes (%lu bytes allocated)" -msgstr "" +msgstr "%s: 无法分配 %lu 字节 (%lu 字节已分配)" #: xmalloc.c:93 #, c-format msgid "%s: cannot allocate %lu bytes" -msgstr "" +msgstr "%s: 无法分配 %lu 字节" #: xmalloc.c:163 #, c-format msgid "%s: %s:%d: cannot allocate %lu bytes (%lu bytes allocated)" -msgstr "" +msgstr "%s: %s:%d: 无法分配 %lu 字节 (%lu 字节已分配)" #: xmalloc.c:165 #, c-format msgid "%s: %s:%d: cannot allocate %lu bytes" -msgstr "" +msgstr "%s: %s:%d: 无法分配 %lu 字节" #: builtins.c:43 msgid "alias [-p] [name[=value] ... ]" -msgstr "" +msgstr "alias [-p] [名称[=值] ... ]" #: builtins.c:47 msgid "unalias [-a] name [name ...]" -msgstr "" +msgstr "unalias [-a] 名称 [名称 ...]" #: builtins.c:51 msgid "bind [-lpvsPVS] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-x keyseq:shell-command] [keyseq:readline-function or readline-command]" -msgstr "" +msgstr "bind [-lpvsPVS] [-m 键映射] [-f 文件名] [-q 名称] [-u 名称] [-r 键序列] [-x 键序列:shell命令] [键序列:行读取函数 或 行读取命令]" #: builtins.c:54 msgid "break [n]" -msgstr "" +msgstr "break [n]" #: builtins.c:56 msgid "continue [n]" -msgstr "" +msgstr "continue [n]" #: builtins.c:58 msgid "builtin [shell-builtin [arg ...]]" -msgstr "" +msgstr "builtin [shell 内嵌 [参数 ...]]" #: builtins.c:61 msgid "caller [expr]" -msgstr "" +msgstr "caller [表达式]" #: builtins.c:64 msgid "cd [-L|-P] [dir]" -msgstr "" +msgstr "cd [-L|-P] [目录]" #: builtins.c:66 msgid "pwd [-LP]" -msgstr "" +msgstr "pwd [-LP]" #: builtins.c:68 msgid ":" -msgstr "" +msgstr ":" #: builtins.c:70 msgid "true" -msgstr "" +msgstr "真" #: builtins.c:72 msgid "false" -msgstr "" +msgstr "伪" #: builtins.c:74 msgid "command [-pVv] command [arg ...]" -msgstr "" +msgstr "command [-pVv] 命令 [参数 ...]" #: builtins.c:76 msgid "declare [-aAfFilrtux] [-p] [name[=value] ...]" -msgstr "" +msgstr "declare [-aAfFilrtux] [-p] [名称[=值] ...]" #: builtins.c:78 msgid "typeset [-aAfFilrtux] [-p] name[=value] ..." -msgstr "" +msgstr "typeset [-aAfFilrtux] [-p] 名称[=值] ..." #: builtins.c:80 msgid "local [option] name[=value] ..." -msgstr "" +msgstr "local [option] 名称[=值] ..." #: builtins.c:83 msgid "echo [-neE] [arg ...]" -msgstr "" +msgstr "echo [-neE] [参数 ...]" #: builtins.c:87 msgid "echo [-n] [arg ...]" -msgstr "" +msgstr "echo [-n] [参数 ...]" #: builtins.c:90 msgid "enable [-a] [-dnps] [-f filename] [name ...]" -msgstr "" +msgstr "enable [-a] [-dnps] [-f 文件名] [名称 ...]" #: builtins.c:92 msgid "eval [arg ...]" -msgstr "" +msgstr "eval [参数 ...]" #: builtins.c:94 msgid "getopts optstring name [arg]" -msgstr "" +msgstr "getopts 选项字符串 名称 [参数]" #: builtins.c:96 msgid "exec [-cl] [-a name] [command [arguments ...]] [redirection ...]" -msgstr "" +msgstr "exec [-cl] [-a 名称] [命令 [参数 ...]] [重定向 ...]" #: builtins.c:98 msgid "exit [n]" -msgstr "" +msgstr "exit [n]" #: builtins.c:100 msgid "logout [n]" -msgstr "" +msgstr "logout [n]" #: builtins.c:103 msgid "fc [-e ename] [-lnr] [first] [last] or fc -s [pat=rep] [command]" -msgstr "" +msgstr "fc [-e 编辑器名] [-lnr] [起始] [终结] 或 fc -s [模式=替换串] [命令]" #: builtins.c:107 msgid "fg [job_spec]" -msgstr "" +msgstr "fg [任务声明]" #: builtins.c:111 msgid "bg [job_spec ...]" -msgstr "" +msgstr "bg [任务声明 ...]" #: builtins.c:114 msgid "hash [-lr] [-p pathname] [-dt] [name ...]" -msgstr "" +msgstr "hash [-lr] [-p 路径名] [-dt] [名称 ...]" #: builtins.c:117 msgid "help [-dms] [pattern ...]" -msgstr "" +msgstr "help [-dms] [模式 ...]" #: builtins.c:121 msgid "history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg...]" -msgstr "" +msgstr "history [-c] [-d 偏移量] [n] 或 history -anrw [文件名] 或 history -ps 参数 [参数...]" #: builtins.c:125 msgid "jobs [-lnprs] [jobspec ...] or jobs -x command [args]" -msgstr "" +msgstr "jobs [-lnprs] [任务声明 ...] 或 jobs -x 命令 [参数]" #: builtins.c:129 msgid "disown [-h] [-ar] [jobspec ...]" -msgstr "" +msgstr "disown [-h] [-ar] [任务声明 ...]" #: builtins.c:132 msgid "kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]" -msgstr "" +msgstr "kill [-s 信号声明 | -n 信号编号 | -信号声明] 进程号 | 任务声明 ... 或 kill -l [信号声明]" #: builtins.c:134 msgid "let arg [arg ...]" -msgstr "" +msgstr "let 参数 [参数 ...]" #: builtins.c:136 msgid "read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [name ...]" -msgstr "" +msgstr "read [-ers] [-a 数组] [-d 分隔符] [-i 缓冲区文字] [-n 读取字符数] [-N 读取字符数] [-p 提示符] [-t 超时] [-u 文件描述符] [名称 ...]" #: builtins.c:138 msgid "return [n]" -msgstr "" +msgstr "return [n]" #: builtins.c:140 msgid "set [--abefhkmnptuvxBCHP] [-o option-name] [arg ...]" -msgstr "" +msgstr "set [--abefhkmnptuvxBCHP] [-o 选项名] [参数 ...]" #: builtins.c:142 msgid "unset [-f] [-v] [name ...]" -msgstr "" +msgstr "unset [-f] [-v] [名称 ...]" #: builtins.c:144 msgid "export [-fn] [name[=value] ...] or export -p" -msgstr "" +msgstr "export [-fn] [名称[=值] ...] 或 export -p" #: builtins.c:146 msgid "readonly [-af] [name[=value] ...] or readonly -p" -msgstr "" +msgstr "readonly [-af] [名称[=值] ...] 或 readonly -p" #: builtins.c:148 msgid "shift [n]" -msgstr "" +msgstr "shift [n]" #: builtins.c:150 msgid "source filename [arguments]" -msgstr "" +msgstr "source 文件名 [参数]" #: builtins.c:152 msgid ". filename [arguments]" -msgstr "" +msgstr ". 文件名 [参数]" #: builtins.c:155 msgid "suspend [-f]" -msgstr "" +msgstr "suspend [-f]" #: builtins.c:158 msgid "test [expr]" -msgstr "" +msgstr "test [表达式]" #: builtins.c:160 msgid "[ arg... ]" -msgstr "" +msgstr "[ 参数... ]" #: builtins.c:162 msgid "times" -msgstr "" +msgstr "times" #: builtins.c:164 msgid "trap [-lp] [[arg] signal_spec ...]" -msgstr "" +msgstr "trap [-lp] [[参数] 信号声明 ...]" #: builtins.c:166 msgid "type [-afptP] name [name ...]" -msgstr "" +msgstr "type [-afptP] 名称 [名称 ...]" #: builtins.c:169 msgid "ulimit [-SHacdefilmnpqrstuvx] [limit]" -msgstr "" +msgstr "ulimit [-SHacdefilmnpqrstuvx] [限制]" #: builtins.c:172 msgid "umask [-p] [-S] [mode]" -msgstr "" +msgstr "umask [-p] [-S] [模式]" #: builtins.c:175 msgid "wait [id]" -msgstr "" +msgstr "wait [编号]" #: builtins.c:179 msgid "wait [pid]" -msgstr "" +msgstr "wait [进程号]" #: builtins.c:182 msgid "for NAME [in WORDS ... ] ; do COMMANDS; done" -msgstr "" +msgstr "for 名称 [in 词语 ... ] ; do 命令; done" #: builtins.c:184 msgid "for (( exp1; exp2; exp3 )); do COMMANDS; done" -msgstr "" +msgstr "for (( 表达式1; 表达式2; 表达式3 )); do 命令; done" #: builtins.c:186 msgid "select NAME [in WORDS ... ;] do COMMANDS; done" -msgstr "" +msgstr "select NAME [in 词语 ... ;] do 命令; done" #: builtins.c:188 msgid "time [-p] pipeline" -msgstr "" +msgstr "time [-p] 管道" #: builtins.c:190 msgid "case WORD in [PATTERN [| PATTERN]...) COMMANDS ;;]... esac" -msgstr "" +msgstr "case 词 in [模式 [| 模式]...) 命令 ;;]... esac" #: builtins.c:192 msgid "if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else COMMANDS; ] fi" -msgstr "" +msgstr "if 命令; then 命令; [ elif 命令; then 命令; ]... [ else 命令; ] fi" #: builtins.c:194 msgid "while COMMANDS; do COMMANDS; done" -msgstr "" +msgstr "while 命令; do 命令; done" #: builtins.c:196 msgid "until COMMANDS; do COMMANDS; done" -msgstr "" +msgstr "until 命令; do 命令; done" #: builtins.c:198 msgid "coproc [NAME] command [redirections]" -msgstr "" +msgstr "coproc [名称] 命令 [重定向]" #: builtins.c:200 msgid "function name { COMMANDS ; } or name () { COMMANDS ; }" -msgstr "" +msgstr "function 名称 { 命令 ; } 或 name () { 命令 ; }" #: builtins.c:202 msgid "{ COMMANDS ; }" -msgstr "" +msgstr "{ 命令 ; }" #: builtins.c:204 msgid "job_spec [&]" -msgstr "" +msgstr "job_spec [&]" #: builtins.c:206 msgid "(( expression ))" -msgstr "" +msgstr "(( 表达式 ))" #: builtins.c:208 msgid "[[ expression ]]" -msgstr "" +msgstr "[[ 表达式 ]]" #: builtins.c:210 msgid "variables - Names and meanings of some shell variables" -msgstr "" +msgstr "variables - 一些 shell 变量的名称和含义" #: builtins.c:213 msgid "pushd [-n] [+N | -N | dir]" -msgstr "" +msgstr "pushd [-n] [+N | -N | 目录]" #: builtins.c:217 msgid "popd [-n] [+N | -N]" -msgstr "" +msgstr "popd [-n] [+N | -N]" #: builtins.c:221 msgid "dirs [-clpv] [+N] [-N]" -msgstr "" +msgstr "dirs [-clpv] [+N] [-N]" #: builtins.c:224 msgid "shopt [-pqsu] [-o] [optname ...]" -msgstr "" +msgstr "shopt [-pqsu] [-o] [选项名 ...]" #: builtins.c:226 msgid "printf [-v var] format [arguments]" -msgstr "" +msgstr "printf [-v var] 格式 [参数]" #: builtins.c:229 msgid "complete [-abcdefgjksuv] [-pr] [-DE] [-o option] [-A action] [-G globpat] [-W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [name ...]" -msgstr "" +msgstr "complete [-abcdefgjksuv] [-pr] [-DE] [-o 选项] [-A 动作] [-G 全局模式] [-W 词语列表] [-F 函数] [-C 命令] [-X 过滤模式] [-P 前缀] [-S 后缀] [名称 ...]" #: builtins.c:233 msgid "compgen [-abcdefgjksuv] [-o option] [-A action] [-G globpat] [-W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [word]" -msgstr "" +msgstr "compgen [-abcdefgjksuv] [-o 选项] [-A 动作] [-G 全局模式] [-W 词语列表] [-F 函数] [-C 命令] [-X 过滤模式] [-P 前缀] [-S 后缀] [词语]" #: builtins.c:237 msgid "compopt [-o|+o option] [-DE] [name ...]" -msgstr "" +msgstr "compopt [-o|+o 选项] [-DE] [名称 ...]" #: builtins.c:240 msgid "mapfile [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array]" -msgstr "" +msgstr "mapfile [-n 计数] [-O 起始序号] [-s 计数] [-t] [-u fd] [-C 回调] [-c 量子] [数组]" #: builtins.c:242 msgid "readarray [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array]" -msgstr "" +msgstr "readarray [-n 计数] [-O 起始序号] [-s 计数] [-t] [-u fd] [-C 回调] [-c 量子] [数组]" #: builtins.c:254 msgid "" @@ -2222,6 +2294,12 @@ msgid "" " \n" " Return success unless a NAME is not an existing alias." msgstr "" +"从别名定义列表中删除每一个“名字‘。\n" +" \n" +" 选项:\n" +" -a\t删除所有的别名定义.\n" +" \n" +" 返回成功,除非“名字“不是一个已存在的别名。" #: builtins.c:289 msgid "" @@ -2361,6 +2439,12 @@ msgid "" " Exit Status:\n" " Always succeeds." msgstr "" +"空的命令。\n" +" \n" +" 没有效果; 此命令不做任何操作。\n" +" \n" +" 退出状态:\n" +" 总是成功。" #: builtins.c:439 msgid "" @@ -2369,6 +2453,10 @@ msgid "" " Exit Status:\n" " Always succeeds." msgstr "" +"返回一个成功结果。\n" +" \n" +" 退出状态:\n" +" 总是成功" #: builtins.c:448 msgid "" @@ -2377,6 +2465,10 @@ msgid "" " Exit Status:\n" " Always fails." msgstr "" +"返回一个不成功的结果。\n" +" \n" +" 退出状态:\n" +" 总是失败。" #: builtins.c:457 msgid "" @@ -2437,6 +2529,9 @@ msgid "" " \n" " Obsolete. See `help declare'." msgstr "" +"设置变量的值和属性。\n" +" \n" +" 废弃。参见 `help declare'。" #: builtins.c:520 msgid "" @@ -2603,6 +2698,10 @@ msgid "" " Exits the shell with a status of N. If N is omitted, the exit status\n" " is that of the last command executed." msgstr "" +"退出shell。\n" +" \n" +" 以状态 N 退出 shell。 如果 N 被省略,则退出状态\n" +" 为最后一个执行的命令的退出状态。" #: builtins.c:698 msgid "" @@ -2611,6 +2710,10 @@ msgid "" " Exits a login shell with exit status N. Returns an error if not executed\n" " in a login shell." msgstr "" +"退出一个登录 shell.\n" +" \n" +" 以状态 N 退出一个登录 shell。如果不在登录 shell 中执行,则\n" +" 返回一个错误。" #: builtins.c:708 msgid "" @@ -3160,6 +3263,10 @@ msgid "" " This is a synonym for the \"test\" builtin, but the last argument must\n" " be a literal `]', to match the opening `['." msgstr "" +"估值条件表达式。\n" +" \n" +" 是内嵌命令 \"test\" 的同义词,但是最后一个参数必须是\n" +" 字符 `]',以匹配起始的 `['。" #: builtins.c:1308 msgid "" @@ -3171,6 +3278,13 @@ msgid "" " Exit Status:\n" " Always succeeds." msgstr "" +"显示进程时间\n" +" \n" +" 打印 shell 及其所有子进程的累计用户空间和\n" +" 系统空间执行时间。\n" +" \n" +" 退出状态\n" +" 总是成功。" #: builtins.c:1320 msgid "" @@ -3497,6 +3611,13 @@ msgid "" " Exit Status:\n" " Returns 1 if EXPRESSION evaluates to 0; returns 0 otherwise." msgstr "" +"估值算术表达式。\n" +" \n" +" 表达式按照算术法则进行估值。\n" +" 等价于 \"let 表达式\".\n" +" \n" +" 退出状态\n" +" 如果表达式估值为0则返回 1;否则返回0。" #: builtins.c:1671 msgid "" @@ -3810,3 +3931,6 @@ msgid "" " \n" " A synonym for `mapfile'." msgstr "" +"从一个文件中读取行到数组变量中\n" +" \n" +" 一个 `mapfile'的同义词。" diff --git a/print_cmd.c~ b/print_cmd.c~ index 53d5adb1..01168b03 100644 --- a/print_cmd.c~ +++ b/print_cmd.c~ @@ -1,6 +1,6 @@ /* print_command -- A way to make readable commands from a command tree. */ -/* Copyright (C) 1989-2009 Free Software Foundation, Inc. +/* Copyright (C) 1989-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -363,6 +363,7 @@ xtrace_set (fd, fp) int fd; FILE *fp; { +itrace("xtrace_set: fd = %d fp = 0x%x", fd, fp); if (fd >= 0 && sh_validfd (fd) == 0) { internal_error (_("xtrace_set: %d: invalid file descriptor"), fd); @@ -383,6 +384,7 @@ xtrace_set (fd, fp) void xtrace_init () { +itrace("xtrace_init"); xtrace_set (-1, stderr); } @@ -1462,7 +1462,7 @@ extract_dollar_brace_string (string, sindex, quoted, flags) if (c == '\'') { /*itrace("extract_dollar_brace_string: c == single quote flags = %d quoted = %d dolbrace_state = %d", flags, quoted, dolbrace_state);*/ - if (posixly_correct && /*shell_compatibility_level > 41 &&*/ dolbrace_state != DOLBRACE_QUOTE) + if (posixly_correct && shell_compatibility_level > 41 && dolbrace_state != DOLBRACE_QUOTE) ADVANCE_CHAR (string, slen, i); else { @@ -6057,7 +6057,7 @@ verify_substring_values (v, value, substr, vtype, e1p, e2p) free (temp1); if (expok == 0) return (0); - if (*e2p < 0) + if ((vtype == VT_ARRAYVAR || vtype == VT_POSPARMS) && *e2p < 0) { internal_error (_("%s: substring expression < 0"), t); return (0); @@ -6069,7 +6069,17 @@ verify_substring_values (v, value, substr, vtype, e1p, e2p) if (vtype != VT_ARRAYVAR) #endif { - *e2p += *e1p; /* want E2 chars starting at E1 */ + if (*e2p < 0) + { + *e2p += len; + if (*e2p < 0 || *e2p < *e1p) + { + internal_error (_("%s: substring expression < 0"), t); + return (0); + } + } + else + *e2p += *e1p; /* want E2 chars starting at E1 */ if (*e2p > len) *e2p = len; } @@ -4,7 +4,7 @@ /* ``Have a little faith, there's magic in the night. You ain't a beauty, but, hey, you're alright.'' */ -/* Copyright (C) 1987-2009 Free Software Foundation, Inc. +/* Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -6057,7 +6057,7 @@ verify_substring_values (v, value, substr, vtype, e1p, e2p) free (temp1); if (expok == 0) return (0); - if (*e2p < 0) + if ((vtype == VT_ARRAYVAR || vtype == VT_POSPARMS) && *e2p < 0) { internal_error (_("%s: substring expression < 0"), t); return (0); @@ -6069,7 +6069,17 @@ verify_substring_values (v, value, substr, vtype, e1p, e2p) if (vtype != VT_ARRAYVAR) #endif { - *e2p += *e1p; /* want E2 chars starting at E1 */ + if (*e2p < 0) + { + *e2p += len; + if (*e2p < 0 || *e2p < *e1p) + { + internal_error (_("%s: substring expression < 0"), t); + return (0); + } + } + else + *e2p += *e1p; /* want E2 chars starting at E1 */ if (*e2p > len) *e2p = len; } diff --git a/tests/RUN-ONE-TEST b/tests/RUN-ONE-TEST index 3efcf32d..72ec06a2 100755 --- a/tests/RUN-ONE-TEST +++ b/tests/RUN-ONE-TEST @@ -1,4 +1,4 @@ -BUILD_DIR=/usr/local/build/chet/bash/bash-current +BUILD_DIR=/usr/local/build/bash/bash-current THIS_SH=$BUILD_DIR/bash PATH=$PATH:$BUILD_DIR diff --git a/tests/history.right b/tests/history.right index cb58f988..3bac71a0 100644 --- a/tests/history.right +++ b/tests/history.right @@ -140,7 +140,7 @@ three one two three -4.1 +4.2 echo ${BASH_VERSION%\.*} -4.1 +4.2 echo ${BASH_VERSION%\.*} diff --git a/tests/mapfile.right b/tests/mapfile.right index 1e73eb13..9fd4bb5d 100644 --- a/tests/mapfile.right +++ b/tests/mapfile.right @@ -31,28 +31,49 @@ a[0] Abcdefghijklmnop [e] abcdefghijklmnOp [f] abcdefghijklmnoP a -0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -2 -5 -8 -11 -14 +0 [0] Abcdefghijklmnop + +1 [1] aBcdefghijklmnop + +2 [2] abCdefghijklmnop + +3 [3] abcDefghijklmnop + +4 [4] abcdEfghijklmnop + +5 [5] abcdeFghijklmnop + +6 [6] abcdefGhijklmnop + +7 [7] abcdefgHijklmnop + +8 [8] abcdefghIjklmnop + +9 [9] abcdefghiJklmnop + +10 [a] abcdefghijKlmnop + +11 [b] abcdefghijkLmnop + +12 [c] abcdefghijklMnop + +13 [d] abcdefghijklmNop + +14 [e] abcdefghijklmnOp + +15 [f] abcdefghijklmnoP + +16 a +2 [2] abCdefghijklmnop + +5 [5] abcdeFghijklmnop + +8 [8] abcdefghIjklmnop + +11 [b] abcdefghijkLmnop + +14 [e] abcdefghijklmnOp + [0] Abcdefghijklmnop [1] aBcdefghijklmnop [2] abCdefghijklmnop @@ -131,8 +152,13 @@ a [28] aaa [29] aaa 1 2 3 4 5 -foo 0 -foo 1 -foo 2 -foo 3 -foo 4 +foo 0 1 + +foo 1 2 + +foo 2 3 + +foo 3 4 + +foo 4 5 + diff --git a/tests/shopt.right b/tests/shopt.right index 7bacc0ed..b8e08094 100644 --- a/tests/shopt.right +++ b/tests/shopt.right @@ -11,6 +11,7 @@ shopt -s cmdhist shopt -u compat31 shopt -u compat32 shopt -u compat40 +shopt -u compat41 shopt -u dirspell shopt -u dotglob shopt -u execfail @@ -65,6 +66,7 @@ shopt -u checkwinsize shopt -u compat31 shopt -u compat32 shopt -u compat40 +shopt -u compat41 shopt -u dirspell shopt -u dotglob shopt -u execfail @@ -96,6 +98,7 @@ checkwinsize off compat31 off compat32 off compat40 off +compat41 off dirspell off dotglob off execfail off diff --git a/variables.c b/variables.c index 284731e6..30f35ffa 100644 --- a/variables.c +++ b/variables.c @@ -588,6 +588,10 @@ initialize_shell_variables (env, privmode) /* Get the user's real and effective user ids. */ uidset (); + temp_var = find_variable ("BASH_XTRACEFD"); + if (temp_var && imported_p (temp_var)) + sv_xtracefd (temp_var->name); + /* Initialize the dynamic variables, and seed their values. */ initialize_dynamic_variables (); } diff --git a/variables.c~ b/variables.c~ index baa6c058..47a6bb28 100644 --- a/variables.c~ +++ b/variables.c~ @@ -1,6 +1,6 @@ /* variables.c -- Functions for hacking shell variables. */ -/* Copyright (C) 1987-2009 Free Software Foundation, Inc. +/* Copyright (C) 1987-2010 Free Software Foundation, Inc. This file is part of GNU Bash, the Bourne Again SHell. @@ -588,6 +588,10 @@ initialize_shell_variables (env, privmode) /* Get the user's real and effective user ids. */ uidset (); + temp_var = find_variable ("BASH_XTRACEFD"); + if (temp_var && imported_p (temp_var)) + sv_xtracefd (temp_var->name); + /* Initialize the dynamic variables, and seed their values. */ initialize_dynamic_variables (); } @@ -4729,6 +4733,7 @@ sv_xtracefd (name) int fd; FILE *fp; +itrace("sv_xtracefd: %s", name); v = find_variable (name); if (v == 0) { @@ -1,6 +1,6 @@ /* version.c -- distribution and version numbers. */ -/* Copyright (C) 1989-2009 Free Software Foundation, Inc. +/* Copyright (C) 1989-2010 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) 2009 Free Software Foundation, Inc."); +const char * const bash_copyright = N_("Copyright (C) 2010 Free Software Foundation, Inc."); const char * const bash_license = N_("License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\n"); /* If == 31, shell compatible with bash-3.1, == 32 with bash-3.2, and so on */ diff --git a/version.c~ b/version.c~ new file mode 100644 index 00000000..b97fa069 --- /dev/null +++ b/version.c~ @@ -0,0 +1,94 @@ +/* version.c -- distribution and version numbers. */ + +/* Copyright (C) 1989-2009 Free Software Foundation, Inc. + + This file is part of GNU Bash, the Bourne Again SHell. + + Bash is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Bash is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Bash. If not, see <http://www.gnu.org/licenses/>. +*/ + +#include <config.h> + +#include <stdio.h> + +#include "stdc.h" + +#include "version.h" +#include "patchlevel.h" +#include "conftypes.h" + +#include "bashintl.h" + +extern char *shell_name; + +/* Defines from version.h */ +const char * const dist_version = DISTVERSION; +const int patch_level = PATCHLEVEL; +const int build_version = BUILDVERSION; +#ifdef RELSTATUS +const char * const release_status = RELSTATUS; +#else +const char * const release_status = (char *)0; +#endif +const char * const sccs_version = SCCSVERSION; + +const char * const bash_copyright = N_("Copyright (C) 2009 Free Software Foundation, Inc."); +const char * const bash_license = N_("License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\n"); + +/* If == 31, shell compatible with bash-3.1, == 32 with bash-3.2, and so on */ +int shell_compatibility_level = DEFAULT_COMPAT_LEVEL; + +/* Functions for getting, setting, and displaying the shell version. */ + +/* Forward declarations so we don't have to include externs.h */ +extern char *shell_version_string __P((void)); +extern void show_shell_version __P((int)); + +/* Give version information about this shell. */ +char * +shell_version_string () +{ + static char tt[32] = { '\0' }; + + if (tt[0] == '\0') + { + if (release_status) +#if defined (HAVE_SNPRINTF) + snprintf (tt, sizeof (tt), "%s.%d(%d)-%s", dist_version, patch_level, build_version, release_status); +#else + sprintf (tt, "%s.%d(%d)-%s", dist_version, patch_level, build_version, release_status); +#endif + else +#if defined (HAVE_SNPRINTF) + snprintf (tt, sizeof (tt), "%s.%d(%d)", dist_version, patch_level, build_version); +#else + sprintf (tt, "%s.%d(%d)", dist_version, patch_level, build_version); +#endif + } + return tt; +} + +void +show_shell_version (extended) + int extended; +{ + printf (_("GNU bash, version %s (%s)\n"), shell_version_string (), MACHTYPE); + if (extended) + { + printf ("%s\n", _(bash_copyright)); + printf ("%s\n", _(bash_license)); + printf (_("This is free software; you are free to change and redistribute it.\n")); + printf (_("There is NO WARRANTY, to the extent permitted by law.\n")); + } +} |