- mkseq: try and be smarter about not overallocating elements in
the return array if the increment is not 1 or -1
+ 6/7
+ ---
+parse.y
+ - history_delimiting_chars: if the parser says we're in the middle of
+ a compound assignment (PST_COMPASSIGN), just return a space to avoid
+ adding a stray semicolon to the history entry. Fixes bug reported
+ by "Davide Brini" <dave_br@gmx.com>
+
6/8
---
bashline.c
Enforce restriction that nameref variables cannot be arrays.
Implement semi-peculiar ksh93 semantics for typeset +n ref=value
+ 7/5
+ ---
+variables.c
+ - unbind_variable: unset whatever a nameref resolves to, leaving the
+ nameref variable itself alone
+ - unbind_nameref: new function, unsets a nameref variable, not the
+ variable it references
+
+variables.h
+ - unbind_nameref: extern declaration
+
+builtins/set.def
+ - unset_builtin: modify to add -n option, which calls unbind_nameref
+ leaving unbind_variable for the usual case. This required slight
+ changes and additions to the test suite
+
+doc/{bash.1,bashref.texi}
+ - document namerefs and typeset/declare/local/unset -n
--- /dev/null
+ 7/27/2004
+ ---------
+
+[bash-3.0 released]
+
+ 7/28
+ ----
+array.c
+ - in array_insert(), make sure the value to be added is non-NULL before
+ calling savestring() on it
+
+builtins/reserved.def
+ - fix description of `CDPATH'
+
+lib/readline/display.c
+ - when expanding a prompt that spans multiple lines with embedded
+ newlines, set prompt_physical_chars from the portion after the
+ final newline, not the preceding portion. Bug reported by
+ "Ralf S. Engelschall" <rse@engelschall.com>
+
+make_cmd.c
+ - explicitly declare `lineno' in function prologue for make_case_command
+
+builtins/evalfile.c
+ - include `trap.h' for declaration for run_return_trap
+
+bashline.c
+ - fix a `return' without a value in enable_hostname_completion
+
+general.c
+ - include test.h for extern declaration for test_eaccess
+
+externs.h
+ - add declaration for zcatfd
+
+tests/{history,histexp}.tests
+ - unset HISTFILESIZE to avoid problems if a value of 0 is inherited
+ from the environment
+
+ 7/30
+ ----
+bashline.c
+ - small changes to glob_expand_word to perform tilde expansion before
+ attempting globbing
+
+builtins/Makefile.in
+ - fix the install-help target to not cd into the `helpfiles'
+ subdirectory, so a value of $INSTALL_DATA containing a relative
+ pathname (e.g., .././support/install.sh) remains valid
+
+ 7/31
+ ----
+subst.c
+ - new function, mbstrlen(s), returns length of a multibyte character
+ string
+
+include/shmbutil.h
+ - new macro, MB_STRLEN(s), calls mbstrlen or STRLEN as appropriate
+
+builtins/trap.def
+ - small change so that a first argument that's a valid signal number
+ (digits only -- no symbolic names) will be treated as a signal and
+ reverted back to the original handling disposition. Fixes debian
+ complaints
+
+subst.c
+ - call MB_STRLEN instead of STRLEN where appropriate in
+ parameter_brace_expand_length to handle multibyte characters properly
+ - call MB_STRLEN instead of strlen in verify_substring_values so that
+ negative substrings of strings with multibyte chars work properly
+
+ 8/1
+ ---
+jobs.c
+ - describe_pid needs to write to stderr, not stdout (POSIX)
+ - start_job, since it's only used by builtins (fg/bg), needs to write
+ its output to stdout, not stderr (POSIX)
+
+sig.c
+ - add an `orig_flags' member to struct terminating_signal so the
+ original signal handling flags (SA_RESTART, etc.) can be preserved
+ on POSIX systems
+ - make sure to preserve the signal flags state in
+ initialize_terminating_signals and reset them for child processes
+ in reset_terminating_signals
+
+builtins/fc.def
+ - fixed an off-by-one error that caused `fc -l' to list one too many
+ history entries
+ - in posix mode, `fc' should not list any indication as to whether or
+ not history lines have been modified (POSIX)
+ - when in posix mode, the default editor for `fc' should be `ed' (POSIX)
+
+doc/bashref.texi
+ - updated the description of `trap' behavior when given a first
+ argument that is a valid signal number
+ - noted that `fc -l' won't indicate whether a history entry has been
+ modified if the shell is in posix mode
+
+builtins/command.def
+ - fixed bug: `command -v' is supposed to be silent if a command is not
+ found
+
+builtins/hash.def
+ - `hash' should print its `hash table empty' message to stderr
+
+lib/readline/misc.c
+ - back out 7/7 change to _rl_maybe_save_line; it breaks emacs-mode ^P
+
+general.c
+ - changed base_pathname so that it will return reasonable results for
+ non-absolute pathnames -- this is what is intended by all of its
+ callers
+
+arrayfunc.c
+ - fix array_variable_part to return NULL if it finds an invisible
+ variable in the hash table. Fixes seg fault caused by referring to
+ unset local variable using array notation
+
+{locale,variables}.c
+ - support LC_TIME as a special locale variable so HISTTIMEFORMAT tracks
+ the current locale
+
+ 8/2
+ ---
+variables.c
+ - fixed small memory leak in makunbound() when a local array variable
+ is unset. Fix from William Park
+
+lib/readline/display.c
+ - fixed a problem when computing the number of invisible characters on
+ the first line of a prompt whose length exceeds the screen width
+ (should only happen when invisible characters occur after the
+ line wrap). Bug reported by agriffis@gentoo.org
+
+builtins/command.def
+ - `command -V' passes a new flag, CDESC_ABSPATH, which means to convert
+ to an absolute path
+
+builtins/type.def
+ - in posix mode, `type' and `command -v/-V' should not report
+ non-executable files, even if the execution code will attempt to
+ run them. Other posix shells do this
+
+doc/bashref.texi
+ - add note to POSIX Mode section describing behavior of type and command
+ when finding a non-executable file
+
+execute_cmd.c
+ - force extended_glob to 1 before calling binary_test in
+ execute_cond_node so that the right extended pattern matching gets
+ performed
+
+ 8/3
+ ---
+braces.c
+ - make sure lhs[0] and rhs[0] are cast to `unsigned char' so chars
+ with values > 128 are handled correctly
+
+builtins/printf.def
+ - change bexpand() and printstr() to handle strings with a leading
+ '\0' whose length is non-zero, since that's valid input for the
+ `%b' format specifier
+
+subst.c
+ - fix a couple of instances of find_variable that didn't check the
+ result for an invisible variable
+
+variables.c
+ - BASH_ARGC, BASH_ARGV, BASH_SOURCE, BASH_LINENO no longer created as
+ invisible vars
+
+pcomplete.c
+ - make sure COMP_WORDS is not invisible when bind_comp_words returns
+ - ditto for COMPREPLY in gen_shell_function_matches
+
+ 8/4
+ ---
+braces.c
+ - fix problem where ${ was ignored but did not increment the open
+ brace count. Bug reported by Tim Waugh <twaugh@redhat.com>
+
+variables.c
+ - if make_local_variable finds a variable in the correct context in
+ the right variable scope, make sure it's not invisible before
+ returning it
+
+ 8/5
+ ---
+builtins/trap.def
+ - fixed usage message to show `action' as not optional, though it
+ actually is when not in posix mode (for a single argument)
+
+ 8/7
+ ---
+configure.in
+ - kfreebsd-gnu has had its sbrk() problems fixed, and no longer needs
+ to be configured --without-gnu-malloc
+
+lib/readline/vi_mode.c
+ - in rl_vi_search, free any saved history line before starting the
+ search, so failure leaves you at that line, not the last line in
+ the history (assuming the current line is not the last history line).
+ Fix from llattanzi@apple.com to replace fix of 7/7
+
+ 8/9
+ ---
+support/Makefile.in
+ - renamed `mostly-clean' target to `mostlyclean'
+
+ 8/11
+ ----
+lib/readline/vi_mode.c
+ - make same change for EOL in multibyte character case of
+ rl_vi_change_char
+
+ 8/12
+ ----
+subst.c
+ - in verify_substring_values, fix off-by-one error checking bounds of
+ `offset', esp. in array values (e.g., getting the highest element
+ of an array)
+
+ 8/16
+ ----
+aclocal.m4
+ - change BASH_CHECK_DEV_FD to make sure that file descriptors > 2 are
+ accessible via /dev/fd, unlike FreeBSD 5.x
+
+lib/sh/strftime.c
+ - make sure `zone' is initialized with gettimeofday before it is used
+ - work around HPUX lack of `altzone' and differing definitions of
+ `timezone'
+
+lib/malloc/malloc.c
+ - internal_memalign and memalign now take a `size_t' as their first
+ argument, which seems to be the prevailing standard
+
+lib/malloc/{malloc.c,shmalloc.h}
+ - change sh_memalign to take a `size_t' as its first argument
+
+builtins/echo.def
+ - if posixly_correct and xpg_echo are both set, don't try to interpret
+ any arguments at all, as POSIX/XOPEN requires (fix inspired by Paul
+ Eggert)
+
+doc/bashref.texi
+ - amend description of bash posix mode to include new echo behavior
+
+builtins/fg_bg.def
+ - allow bg to take multiple job arguments, as posix seems to specify,
+ placing them all in the background, returning the status of the last
+ one as the status of `bg'
+
+lib/readline/vi_mode
+ - fix _rl_vi_change_mbchar_case (multibyte-char version of `~'
+ command) to have the right behavior at EOL -- handle case where vi
+ mode backs up at the end of the line
+
+ 8/18
+ ----
+array.c
+ - check for an empty array in array_rshift before shifting elements
+ and adjusting max_index
+ - check for null array in array_subrange
+
+jobs.c
+ - fix raw_job_exit_status to not ignore exit status of the last
+ process in the pipeline when `set -o pipefail' is enabled
+
+ 8/19
+ ----
+lib/readline/mbutil.c
+ - make sure _rl_find_next_mbchar_internal has a valid multibyte
+ character before it checks whether or not it's a zero-width
+ wide character and adjusts point accordingly
+
+ 8/24
+ ----
+bashline.c
+ - new function, bash_directory_expansion, duplicates the expansions
+ performed on the directory name by rl_filename_completion_function
+ - call bash_directory_expansion in command_word_completion_function
+ if we decide we're doing tilde expansion (and any other
+ canonicalization) on the directory name being completed
+
+ 8/25
+ ----
+configure.in
+ - use new-style AC_CHECK_HEADER to check for sys/ptem.h (which requires
+ sys/stream.h). The correct checks are in the code, but autoconf
+ complains if sys/stream.h is not included, rather than simply
+ checking for the header's presence
+
+ 8/26
+ ----
+builtins/hash.def
+ - fix a bug that prevented `hash -d' from working right (as soon as
+ hash removed a command from the table, the bug caused it to be added
+ right back)
+
+ 8/27
+ ----
+doc/{bash.1,bashref.texi}
+ - explicitly note that conditional primaries that operate on files
+ operate on the targets of symbolic links rather than the links
+ themselves
+
+ 8/30
+ ----
+lib/readline/display.c
+ - fix multibyte calculation of `physchars' in prompt expansion, to
+ handle double-width multibyte characters correctly
+ - changes to rl_redisplay to handle prompts longer than the screenwidth
+ that might contain double-width multibyte characters. Fixes from
+ Tomohiro Kubota
+
+ 9/6
+ ---
+subst.c
+ - change word_list_split to avoid really bad behavior caused by calling
+ list_append for each split word -- as the list gets long, you have
+ to traverse it every time. Keep a pointer to the end of the list and
+ and just tack onto it
+
+ 9/8
+ ---
+lib/readline/complete.c
+ - change fnprint to calculate the displayed width of a filename in
+ the same way as fnwidth
+
+subst.c
+ - in verify_substring_values, when expanding ${array[@]:offset}, make
+ sure negative offsets count from one greater than the array's
+ maximum index so things like ${x[@}: -1} work to give the last element
+ (requires fixing array tests)
+
+builtins/common.c
+ - new error function, sh_wrerror(), for builtins to call when a write
+ error occurs
+
+builtins/common.h
+ - extern declaration for sh_wrerror()
+
+builtins/cd.def
+ - change builtin_error call to use sh_wrerror()
+
+builtins/echo.def
+ - report write errors with sh_wrerror() instead of just returning
+ failure
+
+builtins/printf.def
+ - change printstr to return failure (-1) or success (0) indication
+ rather than void
+ - report write errors when printstr() fails, return failure
+ - if any of the PF/printf calls fail, report write error and return
+ failure
+
+execute_cmd.c
+ - change execute_in_subshell so the subshell command inherits the
+ command timing flags from the enclosing COMMAND *
+
+ 9/11
+ ----
+[prayers for the victims of 9/11/2001]
+
+lib/sh/strnlen.c
+ - new file, implementation of GNU libc extension function strnlen
+
+lib/sh/Makefile.in, {config.h,configure,Makefile}.in, MANIFEST
+ - changes for strnlen
+
+configure.in
+ - version changed to 3.1-devel
+
+doc/bash.1, lib/readline/doc/rluser.texi
+ - added description of `-o plusdirs' to complete/compgen (thanks,
+ Arnold)
+
+parse.y
+ - new parser_state flag, PST_ASSIGNOK, if set indicates we're parsing
+ arguments to a builtin that accepts assignment statement arguments
+ - turn on PST_ASSIGNOK in read_token_word when appropriate
+ - turn off PST_ASSIGNOK in read_token when appropriate
+ - don't attempt to parse a compound assignment specially unless we're
+ in a position where an assignment statement is acceptable, or
+ PST_ASSIGNOK is set
+
+ 9/13
+ ----
+variables.c
+ - make BASH_ARGC, BASH_ARGV, BASH_LINENO, and BASH_SOURCE
+ non-unsettable, since the shell uses those values internally
+
+expr.c
+ - make exponentiation right-associative, as is apparently correct
+
+ 9/16
+ ----
+arrayfunc.c
+ - make sure convert_var_to_array marks the environment as needing
+ recreation if the converted variable was exported
+
+ 9/17
+ ----
+braces.c
+ - mark ${ as introducing an additional level of braces only if it's
+ not in a quoted string -- quoted strings are handled before brace
+ matching is done
+
+parse.y
+ - fixed an obscure problem in history_delimiting_chars where the `in'
+ in a case statement could have a semicolon added after it, if the
+ `case word' was on a previous line
+
+support/config.guess
+ - support for newest versions of tandem non-stop kernel
+
+lib/readline/display.c
+ - in compute_lcd_of_matches, explicitly cast `text' to `char *' before
+ passing it to rl_filename_dequoting_function
+
+lib/readline/terminal.c
+ - bind the key sequence sent by the keypad `delete' key to delete-char
+ (same as ^D in emacs mode)
+
+builtins/ulimit.def
+ - in print_all_limits, don't print anything if get_limit returns
+ -1/EINVAL, indicating that the kernel doesn't support that particular
+ limit
+ - add -i (max number of pending signals), -q (max size of posix msg
+ queues), -x (max number of file locks) for systems (Linux) that
+ support them
+
+doc/{bash.1,bashref.texi}
+ - fix description of correspondence between FUNCNAME, BASH_LINENO,
+ and BASH_SOURCE indices in description of BASH_LINENO
+
+ 9/18
+ ----
+lib/sh/shquote.c
+ - don't quote CTLESC and CTLNUL with CTLESC in sh_backslash_quote, as
+ long as the resultant string never gets sent to the word expansion
+ functions without going through the shell parser
+
+externs.h
+ - add extern declarations for strnlen and strpbkrk from lib/sh
+
+subst.[ch]
+ - changes to handle case where IFS consists of multibyte characters.
+ Changed: string_extract_verbatim, split_at_delims,
+ string_list_dollar_star, string_list_dollar_at, list_string,
+ get_word_from_string, setifs
+
+ 9/19
+ ----
+mailcheck.c
+ - change file_mod_date_changed to reset the cached mail file data if
+ the file size drops to zero
+
+lib/readline/complete.c
+ - change append_to_match so that a non-zero value for
+ rl_completion_suppress_append will cause no `/' to be appended to a
+ directory name
+
+bashline.c
+ - experimental change to suppress appending a slash for a completed
+ filename that is found in PATH as well as a directory in the current
+ directory under certain circumstances: a single instance found in
+ $PATH when `.' is not in $PATH, and multiple instances found in the
+ $PATH, even when `.' is in the $PATH
+
+ 9/24
+ ----
+command.h
+ - new word flag: W_ASSIGNRHS, means word is rhs of assignment statement
+ - new word flag: W_NOTILDE, means word is not to be tilde expanded
+ - new word flag (internal): W_ITILDE, means the next character is a
+ tilde that should be expanded
+
+general.c
+ - new set of tilde suffixes for use when parsing the RHS of an
+ assignment statement and =~ should not be subject to tilde expansion
+ - if ASSIGN_P argument to bash_tilde_expand is 2, use tilde prefixes
+ for parsing RHS of assignment statement
+
+general.[ch]
+ - new function bash_tilde_find_word, drop-in replacement for
+ tilde_find_word
+
+subst.c
+ - call bash_tilde_expand with secord argument of 2 when expanding rhs
+ of an assignment statement, so tildes after second and subsequent
+ `=' in an assignment are not expanded
+ - new function, expand_string_assignment, to expand the rhs of an
+ assignment statement
+ - add `~' to EXP_CHAR, the characters that will cause the word
+ expansion functions to be called
+ - move tilde expansion into expand_word_internal instead of many
+ different calls to bash_tilde_expand scattered across different
+ functions. NOTE: This means that double quotes surrounding a
+ {paramOPword} expansion will cause tilde expansion to NOT be
+ performed on `word'. I think this is right, what POSIX specifies,
+ and consistent with the behavior of other characters in the rhs
+
+execute_cmd.c
+ - take out calls to bash_tilde_expand before calling word expansion
+ functions
+
+ 9/26
+ ----
+execute_cmd.c
+ - make sure to call UNBLOCK_CHILD before returning on a pipe creation
+ failure in execute_pipeline
+
+ 9/27
+ ----
+variables.c
+ - change get_bash_command to deal with the_printed_command_except_trap
+ being NULL
+
+execute_cmd.c
+ - fix execute_simple_command to deal with the_printed_command being
+ NULL when assigning to the_printed_command_except_trap -- fixes
+ seg fault in savestring()
+
+parse.y
+ - change the parser so that the closing `)' in a compound variable
+ assignment delimits a token -- ksh93 does it this way
+
+doc/{bash.1,bashref.texi}
+ - change description of tilde expansion to note that expansion is
+ attempted only after the first =~ in an assignment statement
+
+builtins/declare.def
+ - when assigning to an array variable with declare -a x=(...), make
+ sure the last character in the rhs of the variable assignment is
+ `)', not just that it appears somewhere
+
+ 9/28
+ ----
+command.h
+ - add a `W_NOEXPAND' flag to inhibit all expansion except quote removal
+ - add a `W_COMPASSIGN' flag to denote a word is a compound assignment
+ statement
+
+parse.y
+ - set W_COMPASSIGN on words that appear to be compound assignments
+
+subst.c
+ - pass W_NOXPAND and W_COMPASSIGN through end of expand_word_internal
+
+subst.[ch]
+ - new function, expand_assignment_string_to_string, calls
+ expand_string_assignment and then string_list on the result
+
+variables.c
+ - assign_in_env now calls expand_assignment_string_to_string
+
+ 9/30
+ ----
+builtins/common.c
+ - change get_job_spec so the null job `%' once again means the current
+ job
+
+ 10/1
+ ----
+subst.c
+ - do_assignment_internal now takes a WORD_DESC * as its first
+ argument, and uses its `word' member as the assignment string
+ - change expand_word_list_internal to call do_word_assignment instead
+ of do_assignment, passing it `word' instead of, e.g., `word->word'
+ - change extract_array_assignment_list to just return the passed
+ string minus a trailing `)' if the last character is a right
+ paren
+ - change do_assignment_internal to call extract_array_assignment_list
+
+subst.[ch]
+ - change do_assignment and do_assignment_no_expand to take a `char *'
+ instead of `const char *' first argument; change extern prototypes
+ - new function, do_word_assignment, takes a WORD_DESC * and calls
+ do_assignment_internal on it; add extern declaration with prototype
+
+general.h
+ - new typedef, sh_wassign_func_t, like sh_assign_func_t but takes a
+ WORD_DESC * as its first argument
+
+variables.[ch]
+ - assign_in_env now takes a WORD_DESC * as its first argument
+
+ 10/2
+ ----
+command.h
+ - new word flag, W_ASSNBLTIN, denotes that the word is a builtin
+ command (in a command position) that takes assignment statements
+ as arguments, like `declare'
+ - new word flags, W_ASSIGNARG, denotes that word is an assignment
+ statement given as argument to assignment builtin
+
+execute_cmd.c
+ - set W_ASSNBLTIN flag in fix_assignment_words if necessary (if there
+ are any arguments that are assignment statements)
+ - set W_ASSIGNARG flag in fix_assignment_words if necessary
+
+subst.c
+ - new function, do_compound_assignment, encapsulates the necessary
+ code to perform a compound array assignment (including creation of
+ local variables); called from do_assignment_internal
+ - to fix the double-expansion problem with compound array assignments
+ that are arguments to builtins like `declare', changed
+ shell_expand_word_list to treat those arguments like assignment
+ statements (with proper creation of local variables inside shell
+ functions) and pass the attribute-setting portion of the statement
+ onto the builtin. This is what ksh93 appears to do, from inspection
+ of the `ksh93 -x' output
+
+execute_cmd.c
+ - fix execute_simple_command: in case of pipeline or async command,
+ when forking early, set `subshell_environment' so that it can contain
+ both SUBSHELL_PIPE and SUBSHELL_ASYNC -- the two should not be
+ mutually exclusive. Fixes bug reported by pierre.humblet@ieee.org
+ - remove references to last_pid, old_command_subst_pid; use NO_PID as
+ a sentinel value to decide whether or not a child process has been
+ created and needs to be waited for. Submitted by
+ pierre.humblet@ieee.org to fix recycling-pid problem on cygwin
+
+doc/{bash.1,bashref.texi}
+ - fixed documentation of `@(pattern)' extended globbing operator --
+ it succeeds if the string matches one of the patterns, not exactly
+ one. This is what ksh93 does, too
+
+lib/readline/complete.c
+ - fixed rl_menu_complete so that a negative argument cycles backwards
+ through the list
+
+ 10/3
+ ----
+subst.c
+ - use W_COMPASSIGN flag in do_assignment_internal instead of deciding
+ lexically which assignments are compound array assignments
+
+ 10/6
+ ----
+support/shobj-conf
+ - additions for System V.5 from Boyd Gerber <gerberb@zenez.com>
+
+subst.c
+ - in command_substitute, if subshell_environment includes
+ SUBSHELL_ASYNC, call make_child with the `async_p' argument set to
+ non-zero. This keeps command substitutions for async commands or
+ pipelines from trying to give the terminal back to the shell's
+ pgrp. make sure to save and restore last_asynchronous_pid. Fix
+ suggested by <pierre.humblet@ieee.org>
+
+ 10/7
+ ----
+config.h.in
+ - add a placeholder definition for WCONTINUED_BROKEN
+
+ 10/9
+ ----
+aclocal.m4
+ - add BASH_CHECK_WCONTINUED, checks for glibc bug where WCONTINUED is
+ defined but rejected as invalid by waitpid(2)
+
+configure.in
+ - add call to BASH_CHECK_WCONTINUED, defines WCONTINUED_BROKEN
+
+redir.c
+ - experimental change to add_undo_redirect to save manipulations to
+ file descriptors >= SHELL_FD_BASE (10) on the list of redirections
+ to be undone even if `exec' causes the list to be discarded
+
+doc/{bash.1,bashref.texi}
+ - note that redirections using file descriptors > 9 should be used
+ carefully, because they might conflict with file descriptors the
+ shell uses internally
+
+ 10/11
+ -----
+parse.y
+ - fix pipeline_command production to handle case where `pipeline'
+ as `argument' of `!' or `time' is null (e.g., a syntax error not
+ handled by the grammar)
+
+ 10/13
+ -----
+lib/readline/readline.c
+ - new internal variable, _rl_bind_stty_chars; if non-zero, bind the
+ terminal special characters to readline equivalents at startup
+ - change readline_default_bindings() and reset_default_bindings() to
+ understand _rl_bind_stty_chars
+
+lib/readline/rlprivate.h
+ - new extern declaration for _rl_bind_stty_chars
+
+lib/readline/rltty.c
+ - change rl_prep_terminal to add support for _rl_bind_stty_chars
+
+ 10/15
+ -----
+lib/readline/bind.c
+ - new bindable variable, `bind-tty-special-chars', bound to value of
+ _rl_bind_stty_chars
+
+doc/bash.1,lib/readline/doc/{readline.3,rluser.texi}
+ - documented new readline variable `bind-tty-special-chars'
+
+builtins/pushd.def
+ - make the first check for option `--' skip the rest of option
+ checking
+
+ 10/16
+ -----
+lib/readline/shell.c
+ - change sh_set_lines_and_columns to prefer setenv, which has
+ predictable memory allocation behavior, to putenv, which does not
+
+ 10/19
+ -----
+variables.c
+ - change push_exported_var so that a tempenv variable has to have the
+ export attribute set (which they all do -- something to look at) and
+ the `propagate' attribute set to be propagated down to the next
+ scope
+
+execute_cmd.c
+ - change execute_builtin so that if CMD_COMMAND_BUILTIN is set in the
+ passed flags argument, call pop_scope with a value that says the
+ builtin is not special, since `command' means that preceding variable
+ assignments don't persist in the environment. Fixes problem with
+ variable assignments preceding command preceding special builtin
+ keeping those variable assignments around (when in posix mode)
+
+ 10/20
+ -----
+lib/sh/shquote.c
+ - new function, sh_mkdoublequoted, brackets a given string with
+ double quotes and returns a new string. Flags argument, if non-
+ zero, means to quote embedded double quotes with backslashes
+
+externs.h
+ - new extern declaration for sh_mkdoublequoted
+
+parse.y
+ - use sh_mkdoublequoted after calling localeexpand()
+
+lib/sh/strtrans.c
+ - change ansicstr to understand that (flags & 4) != 0 means to remove
+ backslash from unrecognized escape sequences
+
+general.c
+ - fix logic problem in assignment() that caused non-variable-starter
+ characters to be allowed, resulting in things like `1=xxx' creating
+ a variable `1' in the hash table
+
+ 10/21
+ -----
+bashline.c
+ - don't call programmable_completions with an assignment statement
+ argument
+
+ 10/22
+ -----
+lib/readline/rltty.c
+ - in prepare_terminal_settings, turn echoing on (readline_echoing_p)
+ if get_tty_settings fails because the input is not a terminal
+
+ 10/24
+ -----
+lib/readline/util.c
+ - include rlmbutil.h for multibyte definitions
+ - new function, _rl_walphabetic, wide char version of rl_alphabetic
+
+lib/readline/mbutil.c
+ - new function, _rl_char_value(buf, ind), returns value of (possibly
+ multibyte) character at buf[ind]
+
+lib/readline/rlmbutil.h
+ - extern defines for _rl_walphabetic and _rl_char_value for when
+ multibyte chars are not being used
+ - new wrapper definitions for _rl_find_next_mbchar (MB_NEXTCHAR) and
+ _rl_find_prev_mbchar (MB_PREVCHAR) that try to avoid unneeded
+ function calls
+
+lib/readline/text.c
+ - fix rl_foward_word to work with multibyte characters (or in a
+ multibyte locale) using above utility functions
+ - fix rl_backward_word to work with multibyte characters (or in a
+ multibyte locale) using above utility functions
+
+ 10/26
+ -----
+parse.y
+ - fix parse_matched_pair so that it doesn't swallow \<newline> when
+ parsing a $'...' construct (call shell_getc with different arg)
+
+ 10/28
+ -----
+lib/glob/glob.c
+ - after some (compiled-in) threshold, glob_vector will stop using
+ alloca to allocate `struct globval's and will switch to using
+ malloc, with appropriate cleanup before returning
+
+subst.c
+ - don't expand tildes after `=' in expand_word_internal, even if the
+ W_TILDEEXP flag is set, unless it's the first tilde in a word
+ marked W_ASSIGNMENT
+
+ 10/31
+ -----
+lib/readline/text.c
+ - make sure rl_point doesn't go below 0 in rl_delete_horizontal_space
+ (from SUSE, but not sent in)
+
+shell.c
+ - make sure shell_is_restricted skips over a single leading `-' in
+ the shell name (from SUSE, but not sent in)
+
+lib/readline/display.c
+ - disable `fast redisplay' at the end of the line if in a locale that
+ supports multibyte characters (from SUSE, but not sent in)
+
+lib/readline/histexpand.c
+ - fix a problem with finding the delimiter of a `?' substring when
+ compiled for multibyte characters (from SUSE, but not sent in)
+
+ 11/1
+ ----
+lib/readline/display.c
+ - correct some assignments to _rl_last_c_pos: when in a multibyte
+ locale, it's used as an absolute cursor position; when not using
+ multibyte characters, it's a buffer offset. I should have caught
+ this when the multibyte character support was donated
+
+ 11/5
+ ----
+general.c
+ - change `assignment()' to accept `+=' assignment operator
+
+arrayfunc.[ch]
+ - bind_array_variable and assign_array_element both take a new `flags'
+ argument
+ - assign_array_var_from_string, assign_array_from_string, and
+ assign_array_var_from_word_list now all take a new `flags' argument
+ - change assign_array_var_from_word_list to understand how to append
+ to an array variable
+ - change assign_array_var_from_string to understand how to append
+ to an array variable. It does not unset the previous value if
+ appending, allowing both old values to be changed and new ones to
+ be added
+
+subst.h
+ - new flag #defines to use for evaluating assignment statements
+
+{subst,variables}.c, builtins/{declare,read}.def
+ - change callers of assign_array_element and bind_array_variable
+ - change do_compound_assignment to understand assignment flags
+ - change do_assignment_internal to set assignment flags and pass them
+ to underlying functions
+
+pcomplete.c,builtins/{declare,read}.def
+ - fix callers of assign_array_var_from_string, assign_array_var_from_word_list
+
+variables.[ch]
+ - make_variable_value now takes a new `flags' argument
+ - make_variable_value now understands how to append to a particular
+ variable, using the old value
+ - bind_variable_value now takes a new `flags' argument
+ - change make_variable_value to understand ASS_APPEND flag
+ - bind_variable now takes a new `flags' argument
+ - bind_variable_internal now takes a new `flags' argument
+
+arrayfunc.c
+ - change callers of make_variable_value to add flags arg
+
+builtins/declare.def
+ - change callers of bind_variable_value to add flags arg
+
+{execute_cmd,mailcheck,pcomplete,shell,subst,variables}.c,parse.y
+builtins/{cd,command,declare,getopts,read,set,setattr}.def
+ - change callers of bind_variable to add flags arg
+
+variables.c
+ - change callers of bind_variable_internal
+ - change bind_variable_internal to pass assignment flags on to
+ make_variable_value
+ - change assign_in_env to treat `var+=value' like `var=value'
+
+arrayfunc.c
+ - break code that actually constructs the new value and assigns it
+ to a particular array index out into a new functions:
+ bind_array_var_internal. This fakes out make_variable_value by
+ passing a dummy SHELL_VAR * so it can do proper appending and other
+ += processing
+ - changes to assign_array_var_from_string to accept and process as if
+ they were `standalone' assignment statements array assignment words
+ of the form [ind]+=val
+
+ 11/7
+ ----
+builtins/declare.def
+ - added support for `declare [flags] var+=value'. `Flags' are applied
+ before the assignment is performed, which has implications for things
+ like `-i' -- if -i is supplied, arithmetic evaluation and increment
+ will be performed
+
+builtins/setattr.def
+ - add support for `+=' assignment for rest of `assignment builtins':
+ export, readonly
+
+ 11/12
+ -----
+lib/readline/display.c
+ - make sure prompt_physical_chars and prompt_invis_chars_first_line
+ are reset to 0 if the prompt string passed to rl_expand_prompt is
+ NULL or empty
+
+ 11/14
+ -----
+{configure,config.h}.in
+ - check for `raise', define HAVE_RAISE if available
+
+lib/intl/dcigettext.c
+ - make sure `raise' is defined if HAVE_RAISE is not before
+ eval-plurah.h is included
+
+lib/malloc/trace.c
+ - put extern declaration for imalloc_fopen inside the MALLOC_TRACE
+ #ifdef
+
+ 11/16
+ -----
+lib/intl/Makefile.in
+ - make sure SHELL is defined to cpp
+
+lib/intl/dcigettext.c
+ - make sure we use getcwd() even if HAVE_GETCWD is not defined after
+ including config.h; if SHELL is defined, #define HAVE_GETCWD
+
+ 11/18
+ -----
+trap.[ch]
+ - new function, int signal_in_progress(int sig), returns TRUE if the
+ trap handler for signal SIG is currently executing
+
+ 11/19
+ -----
+redir.c
+ - slightly change do_redirection_internal to set the close-on-exec
+ flag for file descriptors > 2 used to save file descriptors < 2
+ using explicit redirections (e.g., `exec 3>&1'). This keeps file
+ descriptors pointing to pipes from being left open but doesn't
+ change the shell's file descriptor semantics
+
+ 11/20
+ -----
+doc/{bash.1,bashref.texi}
+ - correct some minor typos, forwarded from doko@debian.org
+
+ 11/22
+ -----
+doc/bash.1,lib/readline/doc/{readline.3,rluser.texi}
+ - documented detail that yank-last-arg and yank-nth-arg use the history
+ arg expansion code (and, as a result, are subject to restrictions
+ of the history-comment character)
+
+ 11/23
+ -----
+execute_cmd.c
+ - changes so that BASH_COMMAND preserves its value into a DEBUG trap:
+ for commands, arithmetic for command expressions, select commands,
+ case commands, (( commands, [[ commands, simple commands
+
+ 11/24
+ -----
+doc/{bash.1,bashref.texi}
+ - changed description of `set' builtin slightly so that it is clear
+ that only variables are displayed in posix mode and that read-only
+ variables can't be reset by simply sourcing the output of `set'
+
+lib/sh/strftime.c
+ - don't try to redefine `inline' if it's already defined
+
+ 11/26
+ -----
+execute_cmd.c
+ - fix execute_function to check funcname_a after function execution,
+ since FUNCNAME can be changed or unset within a function
+
+ 11/27
+ -----
+builtins/evalfile.c
+ - make same changes as 11/26, this time to _evalfile
+
+execute_cmd.c
+ - change execute_function to run the return trap after a function
+ completes execution even if the shell is compiled without DEBUGGER
+ defined
+
+trap.c
+ - change reset_or_restore_signal_handlers so that the RETURN trap is
+ not inherited by command substitution when DEBUGGER is not defined
+
+ 11/30
+ -----
+lib/readline/misc.c
+ - fix memory leaks in _rl_free_history_entry and rl_maybe_replace_line
+ caused by not freeing `timestamp' member of history entry
+ - make sure timestamp is initialized to NULL in rl_maybe_save_line
+
+ 12/1
+ ----
+execute_cmd.c
+ - fix execute_function so a function calling `return' will run the
+ RETURN trap, if one's defined
+
+doc/{bash.1,bashref.texi}
+ - fix description of RETURN trap in various places to indicate that it's
+ only inherited by shell functions if function tracing is on globally
+ or has been enabled for that function
+ - fix documentation to indicate that the DEBUG and RETURN traps are
+ inherited under the same conditions
+
+execute_cmd.c
+ - a function does not inherit the RETURN trap if a DEBUG trap is
+ currently running
+
+ 12/2
+ ----
+lib/glob/xmbsrtowcs.c
+ - change xmbsrtowcs to handle the one case where malloc can fail
+ (though it should not matter) -- don't try to free a null pointer
+
+ 12/9
+ ----
+subst.c
+ - fix get_var_and_type to handle var[@], where `var' is a scalar
+ variable, identically to var -- all calling expansions can now
+ handle var[@] like var. Bug reported by agriffis@gentoo.org
+
+ 12/10
+ -----
+lib/readline/bind.c
+ - make new-style "\M-x" keybindings obey `convert-meta' settings
+ (bug reported by twaugh@redhat.com)
+
+ 12/14
+ -----
+builtins/set.def
+ - added description of `-' option to help text
+
+builtins/shopt.def
+ - fix bug that caused `gnu_errfmt' to not be compiled in unless
+ READLINE is defined
+
+ 12/16
+ -----
+subst.c
+ - fixed a typo in string_extract_verbatim in first call to MBLEN
+ (used `slen - 1' instead of `slen - i')
+
+ 12/17
+ -----
+subst.c
+ - avoid some calls to strlen if the value is only being used for
+ ADVANCE_CHAR and MB_CUR_MAX == 1 (since ADVANCE_CHAR doesn't need
+ it unless multibyte characters are possible)
+ - change string_extract_verbatim so it takes the length of the string
+ as a parameter, so we don't have to recompute the length of the same
+ string over and over again when doing word splitting (that kills if
+ it's a long string)
+
+ 12/18
+ -----
+subst.c
+ - in string_list_dollar_star, make sure to null-terminate the
+ separator if the character is longer than one byte
+
+ 12/22
+ -----
+doc/{bash.1,bashref.texi}
+ - changed text in quoting section explaining that double quotes do
+ not prevent history expansion from taking place, and that backslashes
+ escaping ! are not removed
+
+ 12/28
+ -----
+shell.c
+ - set gnu_error_format to 1 if running under emacs. This should allow
+ the emacs `next-error' stuff to work, at least for interactive shells
+
+parse.y
+ - change yy_stream_get to set interrupt_immediately before calling
+ getc_with_restart when the shell is interactive. This avoids the
+ synchronization problem caused by the call to QUIT in read_a_line,
+ which results in the first character after a SIGINT/^C to be
+ dropped
+
+ 12/30
+ -----
+builtins/mkbuiltins.c
+ - changes to write long documentation to arrays as a single string by
+ default, rather than an array of strings -- enabled by default
+ - new option, -S, to restore old behavior of writing multiple strings
+ for long documentation
+ - changes to avoid filenames written when the separate-filenames option
+ (-H) has been supplied being run through gettext
+
+configure.in
+ - new cofiguration option, --enable-single-help-strings (on by default),
+ causes help text to be stored as a single string (or smaller set than
+ one string per line)
+
+builtins/Makefile.in
+ - pass `-S' to mkbuiltins if single-help-strings is turned off
+
+doc/bashref.texi
+ - documented new `single-help-strings' configure option
+
+ 1/3/2005
+ --------
+jobs.c
+ - make wait_for return a non-zero status if the job or processed
+ waited for is suspended. Returns 128 + stop signal. This fixes
+ the problem with `echo one && sleep 5 && echo two' displaying
+ `two' after the sleep is suspended
+
+ 1/5
+ ---
+print_cmd.c
+ - change indirection_level_string so the code duplicates the first
+ character of $PS4 to indicate the indirection level, rather than
+ the first byte
+
+ 1/8
+ ---
+variables.c
+ - new special variable hook function for COMP_WORDBREAKS; sets
+ rl_completer_word_break_characters back to NULL when the variable
+ is unset
+ - change bind_variable_value to understand dynamic variables with
+ assign_function set, and handle them correctly. If the variable is
+ being appended to, use make_variable_value to create the new
+ value
+ - change bind_variable_internal to understand dynamic variables with
+ assign_function set, and handle them the same way
+ - RANDOM and LINENO now get the integer attribute, so appending works
+ as expected
+ - ditto for HISTCMD, MAILCHECK, OPTIND
+
+lib/readline/display.c
+ - change _rl_make_prompt_for_search to set prompt_physical_chars
+ appropriately
+ - rl_save_prompt and rl_restore_prompt save and restore
+ prompt_prefix_length
+ - change redraw_prompt to use rl_save_prompt and rl_restore_prompt
+ - change rl_restore_prompt to set the `save' variables back to
+ NULL/0 so code can check whether or not the prompt has been saved
+ - change rl_message and rl_clear_message to save and restore the
+ prompt if the caller has not already done it (using a simple
+ semaphore-like variable)
+ - change rl_message to call expand_prompt, so that local_prompt and
+ local_prompt prefix are set before calling the redisplay functions,
+ in case the prompt is longer than a screenwidth (fixes bug
+ reported to debian by epl@unimelb.edu.au)
+
+lib/readline/doc/rltech.texi
+ - make sure to note that rl_save_prompt should be called before
+ rl_message, and rl_restore_prompt before rl_clear_message
+
+pcomplete.c
+ - make sure to save and restore the parser state around the call to
+ execute_shell_function in gen_shell_function_matches. Fixes bug
+ reported by a050106.1.keeLae3x@captaincrumb.com (cute)
+
+lib/readline/readline.c
+ - fix _rl_dispatch_subseq in the case where we're recursing back up
+ the chain (r == -2) and we encounter a key shadowed by a keymap,
+ but originally bound to self-insert. Calling rl_dispatch with
+ ANYOTHERKEY as the first argument will call rl_insert, but with
+ ANYOTHERKEY (256) as the char to insert. Use the shadow keymap
+ and set things up to dispatch to rl_insert with the shadowed key
+ as the argument. Fixes the bug reported by Thomas Glanzmann
+ (sithglan@stud.uni-erlangen.de)
+
+ 1/13
+ ----
+command.h
+ - new word flag: W_HASQUOTEDNULL
+
+make_cmd.c
+ - new function to allocate a WORD_DESC * without doing anything with a
+ containing string: alloc_word_desc
+
+make_cmd.h
+ - extern declaration for alloc_word_desc
+
+dispose_cmd.c
+ - new function to just free a WORD_DESC * without freeing the contained
+ string: dispose_word_desc
+
+dispose_cmd.h
+ - extern declaration for dispose_word_desc
+
+subst.c
+ - change some places to use alloc_word_desc
+ - make same changes to word_list_quote_removal as were made to
+ word_list_split
+ - set W_HASQUOTEDNULL when a word is created with w->word[0] ==
+ CTLNUL and w->word[1] == '\0'
+
+subst.c
+ - parameter_brace_expand_word now returns a WORD_DESC * -- changed
+ callers to understand
+ - parameter_brace_expand_indir now returns a WORD_DESC * -- changed
+ callers to understand
+ - parameter_brace_expand_rhs now returns a WORD_DESC * -- changed
+ callers to understand
+ - remove W_HASQUOTEDNULL from a word's flags when remove_quoted_nulls
+ is called on the word's enclosed string
+
+ 1/15
+ ----
+subst.c
+ - param_expand now returns a WORD_DESC * -- changed callers to
+ understand
+ - parameter_brace_expand now returns a WORD_DESC * -- changed
+ callers to understand
+ - in expand_word_internal, only call remove_quoted_nulls after a word
+ is returned with W_HASQUOTEDNULL
+ - changes to pass W_HASQUOTEDNULL flag out of expand_word_internal;
+ changed callers to call remove_quoted_nulls only if return value has
+ W_HASQUOTEDNULL set. This is a mostly-complete fix for the
+ long-standing CTLNUL confusion between a quoted null expansion and
+ the expansion of a variable with a literal '\177' in its value
+ - change string_list_dollar_at to compute the separator character the
+ same way as string_list_dollar_star: using the already-computed
+ values generated in setifs()
+ - when expanding unquoted $*, if $IFS is empty, check whether or not
+ we're eventually going to split the results (e.g., on the rhs of an
+ assignment statement) and concatenate the positional parameters as
+ if the expansion were within double quotes if we're not going to
+ split
+
+tests/iquote.tests
+ - test cases based on old bug reports about the quoted-null vs. 0177
+ problem the recent code fixes
+
+ 1/16
+ ----
+dispose_cmd.c
+ - set w->word to 0 before putting a WORD_DESC * back in the cache in
+ dispose_word_desc; changed callers to delete those assignments
+
+variables.c
+ - change assign_random and get_random_value so that the random number
+ generator only gets re-seeded once in a subshell environment, and
+ assigning a value to RANDOM counts as seeding the generator. This
+ makes the sequences a little more predictable
+
+ 1/20
+ ----
+lib/readline/history.c
+ - fix replace_history_entry, remove_history to return NULL if
+ passed index is < 0
+
+ 1/22
+ ----
+lib/sh/netconn.c
+ - fix isnetconn() to understand that getpeername can return ENOTCONN
+ to indicate that an fd is not a socket
+
+configure.in
+ - set BUILD_DIR to contain backslashes to escape any spaces in the
+ directory name -- this is what make will accept in targets and
+ prerequisites, so it's better than trying to use double quotes
+ - set SIZE to the appropriate value if some cross-compiling tool
+ chain is being used; `size' by default (can be overridden by
+ SIZE environment variable)
+
+Makefile.in
+ - use $(SIZE) instead of size; set SIZE from configure
+
+ 1/31
+ ----
+arrayfunc.c
+ - in array_value_internal, return NULL right away if the variable's
+ value is NULL, instead of passing a null string to add_string_to_list
+
+ 2/1
+ ---
+jobs.h
+ - new struct to hold stats and counters for child processes and jobs
+ - change some uses of global and static variables to use members of
+ new struct (struct jobstats)
+
+ 2/2
+ ---
+
+jobs.[ch]
+ - change PRUNNING to PALIVE
+ - new define INVALID_JOB
+ - new macro get_job_by_jid(ind), currently expands to jobs[ind]
+ - new define J_JOBSTATE, operates on a JOB * like JOBSTATE operates on
+ a job index
+ - new function, reset_job_indices, called from delete_job if
+ js.j_lastj or js.j_firstj are removed
+ - change various functions to keep counters and stats in struct jobstats
+
+pcomplete.c, builtins/common.c, builtins/{exit,fg_bg,jobs,kill,wait}.def
+ - change global variables (e.g., job_slots) to struct members
+ (e.g., js.j_jobslots)
+ - use INVALID_JOB define where appropriate
+ - use get_job_by_jid and J_JOBSTATE where appropriate
+
+trap.c
+ - change reset_or_restore_signal_handler to not free the exit trap
+ string if the function pointer is reset_signal, which is used when
+ the trap strings shouldn't be freed, like in command substitution
+
+ 2/4
+ ---
+jobs.c
+ - new function, realloc_jobs_list, copies jobs array to newly-allocated
+ memory shrinking (or growing) size to have next multiple of JOB_SLOTS
+ greater than js.j_njobs
+ - change compact_jobs_list to just call reap_dead_jobs and then
+ realloc_jobs_list, simplifying it considerably
+ - discard_pipeline now returns `int': the number of processes freed
+ - slightly changed the logic deciding whether or not to call
+ compact_jobs_list: now non-interactive shells will compact the
+ list if it reaches MAX_JOBS_IN_ARRAY in size
+
+parse.y
+ - move test for backslash-newline after pop_string in shell_getc so
+ that things like
+
+ ((echo 5) \
+ (echo 6))
+
+ work right
+
+ 2/8
+ ---
+jobs.h
+ - new structs for holding status of exited background processes, as
+ POSIX specifies
+ - new job flag: J_ASYNC
+
+jobs.c
+ - new functions to manipulate struct holding status of exited
+ background processes
+ - new members in struct jobstats to hold pointer to last created job
+ and last created asynchronous job
+ - initialize js.c_childmax in initialize_job_control
+ - if the `async' arg to stop_pipeline is non-null, set the J_ASYNC
+ flag in the job struct
+ - set js.j_last_made_job and js.j_last_asynchronous_job in
+ stop_pipeline
+ - new function: find_last_proc, returns the PROCESS * to the last proc
+ in a job's pipeline
+ - changed find_last_pid to call find_last_proc
+ - change delete_job to call bgp_add on the last proc of the job being
+ deleted
+ - change delete_all_jobs and wait_for_background_pids to call bgp_clear
+
+ 2/9
+ ---
+jobs.c
+ - change wait_for_single_pid to look for pid in bgpids.list (using
+ bgp_search()) if find_pipeline returns NULL
+
+ 2/10
+ ----
+support/shobj-conf
+ - change the solaris-gcc stanza so that it auto-selects the appropriate
+ options for ld depending on which `ld' gcc says it's going to run
+
+ 2/11
+ ----
+jobs.h
+ - add support for PS_RECYCLED as a process state, add PRECYCLED macro
+ to test it. Change PALIVE and PRUNNING macros to not count processes
+ in PS_RECYCLED state
+
+execute_cmd.c
+ - restore use of last_pid as sentinel value; use NO_PID as sentinel
+ only if RECYCLES_PIDS is defined
+
+jobs.c
+ - change find_job to return a pointer to the PROCESS the desired pid
+ belongs to, analogous to find_pipeline returning pointer to JOB
+ - change find_job callers to add extra argument
+ - change running_only arguments to find_pipeline and find_job to
+ alive_only, since we don't want recycled pids returned here and it
+ better describes the result
+ - new function find_process, calls find_pipeline and searches the
+ returned pipeline for the PROCESS * describing the desired pid
+ - in make_child, if fork() returns the same pid as the value of
+ last_asynchronous_pid when RECYCLES_PIDS is defined, avoid pid
+ aliasing by resetting last_asynchronous_pid to 1
+ - use PRUNNING instead of child->running, since we, for the most
+ part, don't want to consider recycled pids (e.g., in make_child())
+ - call find_process instead of find_pipeline in waitchld()
+ - use PEXITED(p) instead of testing p->running == PS_DONE
+ - in make_child, call bgp_delete to remove a just-created pid from the
+ last of saved pid statuses
+ - in add_process, check whether or not pid being added is already in
+ the_pipeline or the jobs list (using find_process) and mark it as
+ recycled if so
+ - This set of fixes mostly came from Pierre Humblet
+ <pierre.humblet@ieee.org> to fix pid aliasing and reuse problems on
+ cygwin
+
+variables.c
+ - set $_ from the environment if we get it there, set to $0 by
+ default if not in env
+
+doc/{bashref.texi,bash.1}
+ - a couple of clarifying changes to the description of $_ based on
+ comments from Glenn Morris <gmorris+mail@ast.cam.ac.uk>
+
+ 2/15
+ ----
+shell.c
+ - use strstr instead of strmatch when checking whether $EMACS contains
+ `term' -- simpler and faster
+
+ 2/18
+ ----
+builtins/cd.def
+ - implement posix requirement that `pwd -P' set $PWD to a directory
+ name containing no symlinks
+ - add new function, setpwd(), just sets (and changes exported value)
+ of PWD
+
+doc/bashref.texi
+ - add note to posix mode section about pwd -P setting $PWD
+
+doc{bash.1,bashref.texi}
+ - added note that BASH_ARGC and BASH_ARGV are only set in extended
+ debug mode
+ - expand description of extdebug option to include everything changed
+ by extended debug mode
+
+ 2/19
+ ----
+pathexp.h
+ - new flag macro, FNMATCH_IGNCASE, evaluates to FNM_CASEFOLD if the
+ match_ignore_case variable is non-zero
+
+execute_cmd.c
+ - new variable, match_ignore_case
+ - change call to strmatch() in execute_case_command so it includes
+ FNMATCH_IGNCASE
+
+test.c
+ - change call to strmatch() in patcomp() so that pattern matching
+ calls for [[ ... ]] obey the match_ignore_case variable
+
+lib/sh/shmatch.c
+ - if match_ignore_case is set, enable REG_ICASE in the regexp match
+ flags
+
+builtins/shopt.def
+ - new settable option, `nocasematch', controls the match_ignore_case
+ variable. Currently alters pattern matching for case and [[ ... ]]
+ commands (==, !=, and =~ operators)
+
+doc/{bashref.texi,bash.1}
+ - updated descriptions of [[ and case to include reference to
+ nocasematch option
+
+ 2/22
+ ----
+builtins/mkbuiltins.c
+ - add `times' to the list of posix special builtins
+
+ 2/23
+ ----
+builtins/cd.def
+ - posix mode no longer turns on effect of -P option on $PWD if a
+ directory is chosen from CDPATH
+
+doc/bashref.texi
+ - clarified that in posix mode, reserved words are not alias expanded
+ only in a reserved word context
+ - removed item about cd, $CDPATH, and -P from posix mode section
+
+ 2/24
+ ----
+builtins/reserved.def
+ - minor cleanups to the description of `if'
+
+ 3/2
+ ---
+subst.c
+ - change list_string and get_word_from_string to explicitly treat an
+ IFS character that is not space, tab, or newline *and any adjacent
+ IFS white space* as a single delimiter, as SUSv3/XPG6 says
+
+builtins/read.def
+ - check whether or not the number of fields is exactly the same as
+ the number of variables instead of just assigning the rest of the
+ line (minus any trailing IFS white space) to the last variable.
+ This parses a field and checks whether or not it consumes all of
+ the input (including any trailing field delimiters), falling back
+ to the previous behavior if it does not. This is what POSIX.2
+ specifies, I believe (and the consensus of the austin-group list).
+ This requires a few tests in read.tests to be changed: backslashes
+ escaping IFS whitespace characters at the end of input cause the
+ whitespace characters to be preserved in the value assigned to the
+ variable, and the trailing non-whitespace field delimiter issue
+
+ 3/7
+ ---
+configure.in
+ - add -D_POSIX_SOURCE to the LOCAL_CFLAGS for Interix
+
+ 3/8
+ ---
+bashline.c
+ - make bash_directory_expansion a void function, since it doesn't have
+ any return value
+
+ 3/9
+ ---
+builtins/read.def
+ - when testing for a pipe, use `fd' instead of hard-coding 0, since we
+ can read from other file descriptors now
+
+lib/sh/zread.c
+ - in zsyncfd, only set lind and lused to 0 if the lseek succeeds.
+ If the lseek fails, we might steal input from other programs, but
+ a failed lseek won't cause us to erroneously discard input
+
+ 3/11
+ ----
+builtins/evalstring.c
+ - don't allow parse_and_execute to short-circuit and call exec() if
+ the command's return value is being inverted
+
+ 3/15
+ ----
+builtins/printf.def
+ - new macro PC to call putchar and increment number of chars printed -
+ fixes bug in computation of value for %n format char
+ - `tw' is now a global var so printstr can modify it using PC()
+ - convert PF macro to use asprintf into a local buffer
+ Preparation for printf -v var
+ - add code to add the text printed to a `variable buffer' if -v option
+ supplied. The buffer grows as needed
+ - printf now takes a `-v var' option to put the output into the variable
+ VAR rather than sending it to stdout. It does not:
+ print partial output on error (e.g., format string error)
+ handle NULs in the variable value, as usual
+
+ 3/16
+ ----
+parse.y
+ - fix bug in prompt string decoding that caused a core dump when PS1
+ contained \W and PWD was unset (null pointer deref)
+
+builtins/printf.def
+ - changed -v var behavior so it stores partial output into the named
+ variable upon an error
+
+ 3/24
+ ----
+lib/readline/bind.c
+ - bool_to_int now takes a `const char *' argument
+
+support/{printenv,recho,zecho}.c
+ - include config.h
+ - include "bashansi.h" for appropriate extern function declarations
+
+configure.in
+ - on MacOS X 10.4, compensate for loader not allowing static library
+ to override existing system dynamic library when compiling -dynamic
+ (affects readline and history libraries); so use absolute pathname
+ instead of -lreadline as library name
+
+lib/glob/{glob,sm_loop,smatch}.c
+ - make sure to cast arguments to (char *) or (unsigned char *) as
+ appropriate to avoid gcc4 warnings
+
+lib/glob/smatch.c
+ - collsym (single-byte version) now takes a (CHAR *) first argument to
+ match callers; cast argument to strncmp appropriately
+
+lib/sh/snprintf.c
+ - fix ldfallback and dfallback to handle width and precision specs in
+ the format passed to sprintf()
+ - fix STAR_ARGS macro to deal with negative field widths and precisions
+
+ 3/25
+ ----
+builtins/printf.def
+ - since a negative precision in a "x.x[fFgGeE]" format specifier should
+ be allowed but treated as if the precision were missing, let it
+ through
+
+lib/sh/snprintf.c
+ - fix * code to deal with a negative precision by treating it as if
+ the `.' and any digit string in the precision had not been specified
+ - fix format parsing code to deal with a negative inline precision,
+ e.g., "%4.-4f" by treating it as if the `'. and any digit string in
+ the precision had not been specified
+ - a `+' in a format specifier should only act as a flag if it comes
+ before a `.' (otherwise it is ignored)
+
+lib/readline/vi_mode.c
+ - new function, rl_vi_rubout, to rl_rubout as rl_vi_delete is to
+ rl_delete; saves deleted text for possible reinsertion as with any
+ vi-mode `text modification' command (fixes problem with `X' reported
+ by beat.wieland@gmx.ch)
+
+lib/readline/vi_keymap.c
+ - bind `X' in vi command mode to rl_vi_rubout
+
+lib/readline/funmap.c
+ - add a bindable `vi-rubout' command, runs rl_vi_rubout
+
+lib/readline/text.c
+ - rewrote internals of _rl_rubout_char to make structure cleaner
+
+lib/readline/{complete,text}.c
+ - changed code to remove #ifdef HANDLE_MULTIBYTE where possible
+
+ 3/28
+ ----
+lib/readline/examples/rl.c
+ - include <sys/stat.h> instead of posixstat.h if READLINE_LIBRARY not
+ defined
+
+subst.c
+ - fix mbstrlen to treat invalid multibyte sequences as sequences of
+ single-byte characters
+
+ 4/8
+ ---
+configure.in
+ - default SIZE to `:' if cross-compiling and an appropriate size for
+ the target is not found
+
+ 4/11
+ ----
+subst.c
+ - change match_upattern and match_wpattern to check whether or not the
+ supplied pattern matches anywhere in the supplied string, prefixing
+ and appending the pattern with `*' if necessary. If it doesn't we
+ can short-circuit immediately rather than waste time doing up to
+ N-1 unsuccessful calls to strmatch/wcsmatch (which kills for long
+ strings, even if the pattern is short)
+
+ 4/12
+ ----
+configure.in
+ - make sure the special case for MacOS X 10.4 only kicks in if the
+ `--with-installed-readline' option isn't supplied
+
+lib/readline/{callback,readline,signals}.c
+ - make sure rl_prep_term_function and rl_deprep_term_function aren't
+ dereferenced if NULL (as the documentation says)
+
+builtins/mkbuiltins.c
+ - don't bother with the special HAVE_BCOPY code; just use straight
+ assignments
+
+builtins/ulimit.def
+ - use _POSIX_PIPE_BUF in pipesize() if it's defined and PIPE_BUF is
+ not
+
+ 4/13
+ ----
+execute_cmd.c
+ - add cm_function_def to the list of control structures for which
+ child processes are forked when pipes come in or out
+
+ 4/14
+ ----
+builtins/read.def
+ - make sure the ^As added for internal quoting are not counted as
+ characters read when -n is supplied
+
+ 4/20
+ ----
+redir.c
+ - fix redir_open so that the repeat open on failure that AFS support
+ adds restores the correct value of errno for any error message
+
+ 4/26
+ ----
+
+Makefile.in
+ - make sure mksignames and mksyntax are invoked with the $(EXEEXT)
+ extension
+
+ 4/28
+ ----
+lib/readline/readline.h
+ - new state variable: RL_STATE_CALLBACK, means readline is using the
+ callback interface
+
+lib/readline/callback.c
+ - set RL_STATE_CALLBACK in rl_callback_handler_install, unset in
+ rl_callback_handler_remove
+
+ 4/29
+ ----
+config-top.h
+ - DONT_REPORT_SIGPIPE is now on by default, since it apparently
+ interferes with scripts
+
+configure.in
+ - arrange things so PGRP_PIPE is defined on Linux-2.4+ and version 3
+ kernels (ones that apparently schedule children to run before their
+ parent)
+
+ 4/30
+ ----
+builtins/caller.def
+ - add call to no_options, so it can handle `--' option
+
+doc/{bash.1,bashref.texi}
+ - note explicitly that test, :, true, and false don't understand --
+ as meaning the end of options
+
+ 5/7
+ ---
+support/shobj-conf
+ - darwin 8 needs the same LDFLAGS setting as darwin 7
+
+parse.y
+ - in save_parser_state, make sure we cast the return value from
+ xmalloc() to the right type
+ - remove casts to (char *) in calls to yyerror()
+
+lib/readline/signals.c
+ - make SIGQUIT and SIGALRM code conditional on their definition
+ - use raise() to send a signal if we don't have kill()
+
+lib/readline/display.c
+ - some MS-DOS and MINGW changes from the cygwin and mingw folks
+
+config.h.in
+ - add HAVE_PWD_H for <pwd.h>
+ - add HAVE_FCNTL, HAVE_KILL for respective system calls
+ - add HAVE_GETPW{ENT,NAM,UID} for passwd functions
+
+configure.in
+ - add check for <pwd.h>
+ - add checks for fcntl, kill system calls
+ - add checks for getpw{ent,nam,uid} C library functions
+ - pass a flag indicating we're cross compiling through to
+ CFLAGS_FOR_BUILD in Makefile.in
+
+lib/readline/complete.c
+ - guard inclusion of <pwd.h> with HAVE_PWD_H
+ - don't provide a missing declaration for getpwent if we don't have it
+ - guard calls to {get,end}pwent with HAVE_GETPWENT
+
+lib/readline/shell.c
+ - guard inclusion of <pwd.h> with HAVE_PWD_H
+ - guard inclusion of <fcntl.h> with HAVE_FCNTL_H
+ - don't provide a missing declaration for getpwuid if we don't have it
+ - guard calls to getpwuid with HAVE_GETPWUID
+ - don't bother with body of sh_unset_nodelay_mode if we don't have
+ fcntl
+
+lib/tilde/tilde.c
+ - guard inclusion of <pwd.h> with HAVE_PWD_H
+ - guard calls to getpw{nam,uid} with HAVE_GETPW{NAM,UID}
+ - guard calls to {get,end}pwent with HAVE_GETPWENT
+
+Makefile.in,builtins/Makefile.in
+ - @CROSS_COMPILE@ is substituted into CFLAGS_FOR_BUILD (equal to
+ -DCROSS_COMPILING if bash is being cross-compiled)
+
+ 5/9
+ ---
+aclocal.m4
+ - print version as `0.0' in RL_LIB_READLINE_VERSION if the
+ `rl_gnu_readline_p' variable isn't 1 (accept no imitations)
+
+ 5/11
+ ----
+lib/readline/rlprivate.h
+ - definition of a readline `search context', to be use for incremental
+ search initially and other types of search later. Original from
+ Bob Rossi as part of work on incremental searching problems when
+ using callback interface
+
+lib/readline/isearch.c
+ - functions to allocate and free search contexts
+ - function to take a search context and a character just read and
+ `dispatch' on it: change search parameters, add to search string,
+ search further, etc.
+ - isearch is now completely context-driven: a search context is
+ allocated and passed to the rest of the functions
+
+ 5/12
+ ----
+lib/readline/isearch.c
+ - an additional `isearch cleanup' function that can be called from
+ the callback interface functions when the search is to be terminated
+ - an additional `isearch callback' function that can be called from
+ rl_callback_read_char when input is available
+ - short-circuit from rl_search_history after initialization if
+ the callback interface is being used
+
+lib/readline/callback.c
+ - in rl_callback_read_char(), if RL_STATE_ISEARCH is set, call
+ _rl_isearch_callback to read the character and dispatch on it.
+ If RL_STATE_ISEARCH is unset when that call returns, and there is
+ input pending, call rl_callback_read_char() again so we don't
+ have to wait for new input to pick it up
+
+support/shobj-conf,configure.in
+ - add support for dragonfly bsd, the same as freebsd
+
+ 5/13-5/15
+ ---------
+lib/readline/callback.c
+ - support for readline functions to `register' a function that will
+ be called when more input is available, with a generic data
+ structure to encapsulate the arguments and parameters. Primarily
+ intended for functions that read a single additional character,
+ like quoted-insert
+ - support for callback code reading numeric arguments in a loop,
+ using readline state and an auxiliary variable
+ - support for callback code performing non-incremental searches using
+ the same search context struct as the isearch code
+
+lib/readline/{callback,display}.c
+ - if a callback function sets `_rl_redisplay_wanted', the redisplay
+ function will be called as soon as it returns
+
+lib/readline/input.c
+ - changes to _rl_read_mbchar to handle reading the null multibyte
+ character and translating it into '\0'
+
+lib/readline/misc.c
+ - break rl_digit_loop() into component functions that can be called
+ individually from the callback code more easily
+ - share some of the functions with rl_digit_loop1() in vi_mode.c
+
+lib/readline/readline.h
+ - change the version #defines to reflect readline 5.1
+
+lib/readline/search.c
+ - break code into smaller functions that can be composed to work with
+ the callback code more easily
+
+lib/readline/text.c
+ - in rl_quoted_insert(), don't mess around with the tty signals if
+ running in `callback mode'
+
+lib/readline/vi_mode.c
+ - changed set-mark, goto-mark, change-char, and char-search to work
+ when called by callback functions
+
+ 5/17
+ ----
+
+lib/readline/rlprivate.h
+ - new struct declaration for a `reading key sequence' context
+
+lib/readline/readline.c
+ - new variable, _rl_dispatching_keymap, keeps track of which keymap
+ we are currently searching
+ - functions to allocate and deallocate contexts for reading multi-char
+ key sequences
+
+ 5/18
+ ----
+lib/readline/rlprivate.h
+ - new struct defining a context for multiple-key key sequences (the
+ base case is escape-prefixed commands)
+
+lib/readline/readline.c
+ - change structure of _rl_dispatch_subseq to allow for callback code
+ to use it - rudimentary support for supporting the existing
+ recursion using a stack of contexts, each with a reference to the
+ previous
+ - fix so that ^G works when in callback mode
+
+lib/readline/callback.c
+ - call the appropriate multiple-key sequence callback if the state is
+ set
+
+ 5/19
+ ----
+lib/readline/readline.c
+ - broke code from _readline_internal_char after call to rl_dispatch
+ out into separate function: _rl_internal_char_cleanup, callable by
+ other parts of the code
+ - change _rl_internal_char_cleanup to unset _rl_want_redisplay after
+ it calls (*rl_redisplay_func)
+
+lib/readline/callback.c
+ - call _rl_internal_char_cleanup from rl_callback_read_char when
+ appropriate
+
+ 5/24
+ ----
+lib/readline/callback.c
+ - use _rl_dispatch_callback and a chain of _rl_keyseq_contexts to
+ simulate the recursion used to decode multicharacter key sequences
+ (even things like ESC- as meta-prefix)
+ - call setjmp in rl_callback_read_char to give things like rl_abort
+ a place to jump, since the saved location in readline() will not
+ be valid
+ - keep calling _rl_dispatch_callback from rl_callback_read_char while
+ we are still decoding a multi-key key sequence
+ - keep calling readline_internal_char from rl_callback_read_char while
+ we are reading characters from a macro
+
+lib/readline/macro.c
+ - use a slightly different strategy upon encountering the end of a macro
+ when using the callback interface: when the last character of a
+ macro is read, and we are reading a command, pop the macro off the
+ stack immediately so the loop in rl_callback_read_char terminates
+ when it should
+
+lib/readline/readline.c
+ - if longjmp() is called and we end up at the saved location while
+ using the callback interface, just return -- don't go back into a
+ blocking read
+ - new function to dispose a chain of rl_keyseq_cxts
+ - only read new input in _rl_dispatch_callback if the KSEQ_DISPATCHED
+ flag is not set in the current keyseq context -- if it is, we are
+ traversing the chain back up and should use what we already saved
+ - use -3 as a magic value from _rl_dispatch_subseq to indicate that
+ we're allocating a new context and moving downward in the chain
+ (a special return value for the benefit of _rl_dispatch_callback)
+
+lib/readline/rlprivate.h
+ - new extern declaration for _rl_keyseq_chain_dispose
+
+ 6/1
+ ---
+builtins/read.def
+ - fixed a bug that occurred when reading a set number of chars and
+ the nth char is a backslash (read one too many). Bug reported by
+ Chris Morgan <chmorgan@gmail.com>
+
+execute_cmd.c
+ - fix execute_builtin so the `unset' builtin also operates on the
+ temporary environment in POSIX mode (as well as source and eval),
+ so that unsetting variables in the temporary environment doesn't
+ leave them set when unset completes. Report by Eric Blake
+ <ebb9@byu.net>
+
+array.c
+ - fix from William Park for array_rshift when shifting right on an
+ empty array -- corrects calculation of array->max_index
+
+builtins/exec.def
+ - if an exec fails and the execfail option is set, don't call
+ restart_job_control unless the shell is interactive or job_control
+ is set
+
+jobs.c
+ - add a run-time check for WCONTINUED being defined in header files
+ but rejected with EINVAL by waitpid(). Fix from Maciej Rozycki
+ <macro@linux-mips.org>
+
+ 6/20
+ ----
+bashhist.c
+ - make sure calls to sv_histchars are protected by #ifdef BANG_HISTORY
+ - ditto for calls to history_expand_line_internal
+
+ 6/23
+ ----
+doc/bashref.texi
+ - remove extra blank lines in @menu constructs
+
+variables.c
+ - assign export_env to environ (extern char **) every time it changes
+ (mostly in add_to_export_env define), so maybe getenv will work on
+ systems that don't allow it to be replaced
+
+ 6/29
+ ----
+bashline.c
+ - in bash_directory_completion_hook, be careful about not turning `/'
+ into `//' and `//' into `///' for benefit of those systems that treat
+ `//' as some sort of `network root'. Fix from Eric Blake
+ <ebb9@byu.net>
+
+lib/readline/complete.c
+ - in to_print, do the right thing after stripping the trailing slash
+ from full_pathname: // doesn't turn into /, and /// doesn't become
+ //. Fix from Eric Blake <ebb9@byu.net>
+
+ 6/30
+ ----
+lib/malloc/trace.c
+ - include <unistd.h> if it's available for a definition of size_t
+
+jobs.c
+ - in wait_for, if a child process is marked as running but waitpid()
+ returns -1/ECHILD (e.g., when the bash process is being traced by
+ strace), make sure to increment c_reaped when marking the child as
+ dead
+ - in without_job_control, make sure to close the pgrp pipe after
+ calling start_pipeline
+
+ 7/1
+ ---
+Makefile.in
+ - only remove pathnames.h when the other files created by running
+ configure are removed (e.g., Makefile). Fix from William Park
+
+lib/sh/shquote.c
+ - since backslash-newline disappears when within double quotes, don't
+ add a backslash in front of a newline in sh_double_quote. Problem
+ reported by William Park
+
+jobs.c
+ - in notify_of_job_status, don't print status messages about
+ terminated background processes unless job control is active
+
+bashhist.c
+ - new variable, hist_last_line_pushed, set to 0 in really_add_history
+ (used by `history -s' code)
+
+bashhist.h
+ - new extern declaration for history -s
+
+builtins/history.def
+ - don't remove last history entry in push_history if it was added by
+ a call to push_history -- use hist_last_line_pushed as a sentinel
+ and set it after adding history entry. This allows multiple
+ calls to history -s to work right: adding all lines to the history
+ rather than deleting all but the last. Bug reported by Matthias
+ Schniedermeyer <ms@citd.de>
+ - pay attention to hist_last_line_pushed in expand_and_print_history()
+ so we don't delete an entry pushed by history -s
+
+ 7/4
+ ---
+print_cmd.c
+ - fix print_arith_for_command to not print so many blanks between
+ expressions in ((...))
+
+command.h
+ - new word flag: W_DQUOTE. Means word should be treated as if double
+ quoted
+
+make_cmd.c
+ - add W_DQUOTE to word flags in make_arith_for_expr
+
+parse.y
+ - add W_DQUOTE to word flags for (( ... )) arithmetic commands
+
+subst.c
+ - don't perform tilde expansion on a word with W_DQUOTE flag set
+ - don't perform process substitution on a word with W_DQUOTE flag set
+
+arrayfunc.c
+ - expand an array index within [...] the same way as an arithmetic
+ expansion between (( ... ))
+
+lib/readline/input.c
+ - use getch() instead of read() on mingw
+
+lib/readline/readline.c
+ - add a few key bindings for the arrow keys on mingw
+
+lib/readline/rldefs.h
+ - if on mingw, define NO_TTY_DRIVER
+
+lib/readline/rltty.c
+ - compile in the stub functions for _rl_{disable,restore}_tty_signals
+ if on mingw
+ - compile in stub function for rl_restart_output on mingw
+ - make sure enough functions and macros are defined to compile if
+ NO_TTY_DRIVER is defined (lightly tested - builds on MacOS X, at
+ least)
+
+ 7/7
+ ---
+command.h
+ - add a `flags' member to the PATTERN_LIST structure
+
+make_cmd.c
+ - intialize the `flags' member of a PATTERN_LIST when it's created
+
+builtins/psize.c
+ - protect extern declaration of errno with usual #ifdef errno
+
+configure.in, variables.c
+ - changes for QNX 6.x
+
+ 7/9
+ ---
+parse.y
+ - fix parse_matched_pair to handle single and double quoted strings
+ inside old-style command substitution (``) since they can each
+ quote the ` and embedded $-expansions. Report by Eric Blake
+ <ebb9@byu.net>
+
+{configure,Makefile}.in
+ - TILDE_LIB is now substituted into Makefile by configure
+
+configure.in
+ - if configuring --with-installed-readline on cygwin, set TILDE_LIB
+ to the empty string to avoid multiply-defined symbols. Cygwin
+ doesn't allow undefined symbols in dynamic libraries. Report by
+ Eric Blake <ebb9@byu.net>
+
+ 7/11
+ ----
+input.c
+ - in duplicate_buffered_stream, don't call free_buffered_stream if the
+ two buffered streams share the same b_buffer object (e.g., if they
+ had already been duplicated with a previous call). Fixes Debian bug
+ reported by eero17@bigfoot.com
+
+ 7/12
+ ----
+shell.c
+ - make set_shell_name more resistant to a NULL argument
+ - in bind_args, use < instead of != when counting the arguments and
+ making the arg list
+ - in main(), make sure arg_index is not initialized to a value greater
+ than argc
+
+ 7/14
+ ----
+lib/readline/display.c
+ - in expand_prompt, don't set the location of the last invisible
+ char if the sequence is zero length (\[\])
+
+ 7/15
+ ----
+doc/{bash.1,bashref.texi}
+ - document that the shell uses $TMPDIR when creating temporary files
+
+ 7/20
+ ----
+[bash-3.1-alpha1 frozen]
+
+ 7/29
+ ----
+builtins/evalstring.c
+ - make sure that parse_and_execute saves and restores the value of
+ loop_level, so loops in sourced scripts and eval'd strings don't
+ mess up the shell's parser state
+
+bashline.c
+ - change command_subst_completion_function to suppress appending
+ any character to a unique completion, instead of a space, unless
+ the last word in the quoted command substitution completes to a
+ directory name. In that case we append the expected slash
+
+ 8/1
+ ---
+builtins/printf.def
+ - make sure variables are initialized if their values are tested later
+
+[bash-3.1-alpha1 updated and re-frozen]
+
+ 8/2
+ ---
+variables.c
+ - make sure to call stifle_history with an `int' instead of an intmax_t.
+ Sometimes it makes a difference
+
+ 8/3
+ ---
+[bash-3.1-alpha1 released]
+
+support/mksignames.c
+ - add `SIGSTKFLT' (RHE3)
+ - add `SIGXRES' (Solaris 9)
+
+ 8/4
+ ---
+builtins/ulimit.def
+ - fix typo to make `x' the right option for locks
+ - add new options to short help synopsis
+
+variables.c
+ - use get_variable_value instead of direct reference to value_cell
+ in make_variable_value when appending to the current value, so
+ references to array variables without subscripts will be equivalent
+ to element 0
+
+lib/readline/text.c
+ - rewrote rl_change_case to correctly change the case of multibyte
+ characters where appropriate
+
+ 8/5
+ ---
+configure.in
+ - remove call to obsolete macro AC_ACVERSION
+ - remove special calls to AC_CYGWIN and AC_MINGW32; AC_CANONICAL_HOST
+ takes care of those cases
+
+general.h
+ - include `chartypes.h' for definition of ISALPHA
+ - fix definitions of ABSPATH and RELPATH for cygwin
+ - fix definition of ISDIRSEP for cygwin to allow backslash as a
+ directory name separator
+
+ 8/9
+ ---
+builtins/setattr.def
+ - when setting a variable from the temporary environment in
+ set_var_attribute (e.g., `LC_ALL=C export LC_ALL'), make sure to
+ call stupidly_hack_special_variables after binding the variable in
+ the current context
+
+builtins/printf.def
+ - make sure to call stupidly_hack_special_variables if using `printf -v'
+ to put formatted output in a shell variable
+
+ 8/11
+ ----
+support/shobj-conf
+ - new variable: SHLIB_LIBPREF, prefix for shared library name (defaults
+ to `lib'
+ - new variable: SHLIB_DLLVERSION, used on Cygwin to set the library
+ version number
+ - new variable: SHLIB_DOT, separator character between library name and
+ suffix and version information (defaults to `.')
+ - new stanza for cygwin to generate windows-compatible dll
+
+ 8/14
+ ----
+variables.c
+ - new special variable function for Cygwin, so the export environment
+ is remade when HOME is changed. The environment is the only way to
+ get information from the shell to cygwin dlls, for instanace, when
+ bash is compiled to use an already-installed libreadline
+
+variables.h
+ - new extern declaration for sv_home
+
+ 8/15
+ ----
+lib/readline/display.c
+ - call init_line_structures from rl_redisplay if vis_lbreaks == 0
+ to avoid consequences of a poorly-timed SIGWINCH
+
+ 8/16
+ ----
+subst.c
+ - fix logic for performing tilde expansion when in posix mode (don't
+ rely on W_TILDEEXP flag always being set, because it won't be when
+ expanding the RHS of assignment statement). Use W_TILDEEXP only
+ when deciding to expand a word marked as W_ASSIGNMENT that doesn't
+ precede a command name
+
+ 8/17
+ ----
+execute_cmd.c
+ - in execute_function, when subshell == 1, don't short-cut by using
+ the command contained in the group command -- if you do, any
+ redirections attached to the group command (function) don't get
+ executed
+
+general.h
+ - new #define, FS_READABLE, indicates file is readable by current
+ user
+
+findcmd.c
+ - rewrote file_status to use S_xxx POSIX file mode bits and to add
+ support for FS_READABLE (affects ./source and searching $PATH for
+ scripts whose names are supplied as arguments on the command line)
+ - change find_path_file to look for readable files -- source requires
+ it
+ - change find_in_path_element to do the right thing when FS_READABLE
+ is supplied as a flag
+
+doc/bashref.texi
+ - remove note about posix non-compliance in `.': we now require and
+ look for readable files when searching $PATH
+
+ 8/20
+ ----
+subst.c
+ - fix setifs to handle case where passed variable is non-zero but
+ v->value == 0 (as in an unset local variable); treat IFS as unset
+ in this case
+
+jobs.c
+ - in kill_pid, if asked to killpg a process or pgrp whose pgrp is
+ recorded as the same as the shell's, just call killpg and let the
+ chips fall where they may -- there may be other processes in that
+ pgrp that are not children of the shell, so killing each process
+ in the pipeline will not do a complete job, and killpg'ing each
+ such process will send too many signals in the majority of cases
+
+builtins/cd.def
+ - in posix mode, pwd needs to check that the value it prints and `.'
+ are the same file
+
+builtins/read.def
+ - if reading input from stdin in a non-interactive shell and calling
+ `read', call sync_buffered_stream to seek backward in the input
+ stream if necessary (XXX - should we do this for all shell builtins?)
+
+ 8/23
+ ----
+builtins/cd.def
+ - in posix mode, if canonicalization of the absolute pathname fails
+ because the path length exceeds PATH_MAX, but the length of the passed
+ (non-absolute) pathname does not, attempt the chdir, just as when
+ not in posix mode
+
+builtins/type.def
+ - don't have describe_command call sh_makepath if the full path found
+ is already an absolute pathname (sh_makepath will stick $PWD onto the
+ front of it)
+
+ 8/24
+ ----
+
+jobs.c
+ - in posix mode, don't have start_job print out and indication of
+ whether the job started by `bg' is the current or previous job
+ - change start_job to return success if a job to be resumed in the
+ background is already running. This means that bg won't fail when
+ asked to bg a background job, as SUSv3/XPG6 requires
+ - new function, init_job_stats, to zero out the global jobstats struct
+
+{jobs,nojobs}.c
+ - change kill_pid to handle pids < -1 by killing process groups
+
+jobs.h
+ - extern declaration for init_job_stats
+
+lib/readline/history.c
+ - check whether or not the history list is null in remove_history
+
+builtins/history.def
+ - delete_last_history is no longer static so fc builtin can use it
+
+builtins/fc.def
+ - use free_history_entry in fc_replhist instead of freeing struct
+ members individually
+ - call delete_last_history from fc_replhist instead of using inline
+ code
+ - if editing (-l not specified), make sure the fc command that caused
+ the editing is removed from the history list, as POSIX specifies
+
+builtins/kill.def
+ - just call kill_pid with any pid argument and let it handle pids < -1
+ This is the only way to let kill_pid know whether a negative pid or
+ a job spec was supplied as an argument to kill
+
+builtins/fg_bg.def
+ - force fg_bg to return EXECUTION_SUCCESS explicitly if called by bg
+ and start_job returns successfully
+ - bg now returns success only if all the specified jobs were resumed
+ successfully
+
+execute_cmd.c
+ - call init_job_stats from initialize_subshell to zero out the global
+ job stats structure
+
+ 8/25
+ ----
+bashline.c
+ - change vi_edit_and_execute_command to just call vi when in posix
+ mode, instead of checking $FCEDIT and $EDITOR
+
+lib/readline/search.c
+ - if in vi_mode, call rl_free_undo_list in make_history_line_current
+ to dispose of undo list accumulated while reading the search string
+ (if this isn't done, since vi mode leaves the current history
+ position at the entry which matched the search, the call to
+ rl_revert_line in rl_internal_teardown will mangle the matched
+ history entry using a bogus rl_undo_list)
+ - call rl_free_undo_list after reading a non-incremental search string
+ into rl_line_buffer -- that undo list should be discarded
+
+lib/readline/rlprivate.h
+ - add UNDO_LIST * member to search context struct
+
+lib/readline/isearch.c
+ - initialize UNDO_LIST *save_undo_list member of search context struct
+
+ 8/27
+ ----
+lib/readline/bind.c
+ - change rl_parse_and_bind to strip whitespace from the end of a
+ variable value assignment before calling rl_variable_bind
+
+doc/bash.1,lib/readline/doc/{rluser.texi,readline.3}
+ - clarified the language concerning parsing values for boolean
+ variables in assignment statements
+
+ 8/28
+ ----
+lib/sh/pathphys.c
+ - fix small memory leak in sh_realpath reported by Eric Blake
+
+ 8/31
+ ----
+doc/bashref.texi
+ - add additional notes to posix mode section
+
+ 9/3
+ ---
+parse.y
+ - if $'...' occurs within a ${...} parameter expansion within
+ double quotes, don't single-quote the expanded result -- the double
+ quotes will cause it to be expanded incorrectly
+
+ 9/4
+ ---
+builtins/fc.def
+ - if STRICT_POSIX is defined, the posix mode default for the editor to
+ use is $FCEDIT, then ed
+
+shell.c
+ - if STRICT_POSIX is defined, initialize `posixly_correct' to 1
+
+config.h.in
+ - add #undef STRICT_POSIX
+
+ 9/5
+ ---
+configure.in
+ - add new option argument, --enable-strict-posix-default, configures
+ bash to be posix-conformant (including defaulting echo to posix
+ conformance) by default
+
+builtins/echo.def
+ - if STRICT_POSIX is defined, default echo to xpg-style
+
+doc/bashref.texi
+ - describe the --enable-strict-posix-default option to configure
+
+ 9/10
+ ----
+builtins/mkbuiltins.c
+ - change to not generate N_(""), because the translated empty string is
+ special to GNU gettext
+
+ 9/13
+ ----
+lib/readline/complete.c
+ - a negative value for rl_completion_query_items means to not ask
+
+lib/readline/doc/{{rltech,rluser}.texi,readline.3}
+ - documented new semantics for rl_completion_query_items/
+ completion-query-items
+
+ 9/14
+ ----
+bashline.c
+ - bind M-TAB in emacs mode to dynamic-complete-history even if the
+ current binding is `tab-insert' (which is what it is by default),
+ not just if it's unbound
+
+ 9/15
+ ----
+eval.c
+ - call QUIT before calling dispose_command on current_command after
+ the `exec_done' label. If we dispose current_command first, the
+ longjmp might restore the value of current_command after we've
+ disposed it, and the subsequent call to dispose_command from the
+ DISCARD case will free memory twice
+
+ 9/16
+ ----
+lib/sh/strto[iu]max.c
+ - make sure the function being declared is not a cpp define before
+ defining it -- should fix problems on HP-UX
+
+ 9/19
+ ----
+Makefile.in
+ - make sure the binaries for the tests are at the front of $PATH
+
+ 9/22
+ ----
+parse.y
+ - new flag for parse_matched_pair: P_COMMAND, indicating that the
+ text being parsed is a command (`...`, $(...))
+ - change calls to parse_matched_pair to include P_COMMAND where
+ appropriate
+ - if P_COMMAND flag is set and the text is unquoted, check for comments
+ and don't try to parse embedded quoted strings if in a comment (still
+ not exactly right yet)
+
+ 9/24
+ ----
+builtins/history.def
+ - if running history -n, don't count these new lines as history lines
+ for the current session if the `histappend' shell option is set.
+ If we're just appending to the history file, the issue that caused
+ history_lines_this_session to be recalculated doesn't apply -- the
+ history file won't be missing any entries
+
+lib/readline/isearch.c
+ - fix C-w handler for isearch string reader to handle multibyte chars
+
+lib/readline/rlmbutil.h
+ - new defines for _rl_to_wupper and _rl_to_wlower
+
+lib/readline/text.c
+ - use _rl_to_wupper and _rl_to_wlower as appropriate
+
+ 9/26
+ ----
+execute_cmd.c
+ - in shell_execve, if the exec fails due to E2BIG or ENOMEM, just print
+ the appropriate error message instead of checking out any interpreter
+ specified with #!
+
+ 9/30
+ ----
+bashhist.c
+ - make $HISTCMD available anytime remember_on_history is non-zero,
+ which indicates that we're saving commands to the history, and
+ let it evaluate to 1 if we're not
+
+ 10/4
+ ----
+lib/sh/snprintf.c
+ - in floating(), make sure d != 0 before calling chkinfnan -- gcc on the
+ version of Solaris 9 I have translates 0 to -inf on the call
+
+[bash-3.1-beta1 frozen]
+
+ 10/6
+ ----
+jobs.c
+ - set the_pipeline to NULL right away in cleanup_the_pipeline, and
+ dispose a copy of the pointer so we don't mess with the_pipeline
+ while we're in the process of destroying it
+ - block and unblock SIGCHLD around manipulating the_pipeline in
+ cleanup_the_pipeline
+
+ 10/7
+ ----
+[bash-3.1-beta1 released]
+
+lib/readline/isearch.c
+ - when switching directions, make sure we turn off the SF_REVERSE
+ flag in the search context's flags word if we're going from reverse
+ to forward i-search
+
+lib/readline/bind.c
+ - new function, rl_variable_value, returns a string representing a
+ bindable readline variable's value
+ - new auxiliary function, _rl_get_string_variable_value, encapsulates
+ everything needed to get a bindable string variable's value
+ - rewrote rl_variable_dumper to use _rl_get_string_variable_value
+
+lib/readline/readline.h
+ - new extern declaration for rl_variable_value
+
+lib/readline/doc/rltech.texi
+ - documented rl_variable_value
+
+bashline.c
+ - in command_word_completion_function, if readline sets
+ rl_completion_found_quote, but doesn't set rl_completion_quote_character,
+ we have an embedded quoted string or backslash-escaped character in
+ the passed text. We need to dequote that before calling
+ filename_completion_function. So far, this is in place only for
+ absolute program names (those containing a `/')
+ - in command_word_completion_function, use rl_variable_value to decide
+ whether or not we should ignore case, and use strncasecmp instead of
+ strncmp where appropriate
+
+ 10/11
+ -----
+builtins/fc.def
+ - fixed a typo when using POSIX_FC_EDIT_COMMAND
+
+redir.h
+ - new flag values for redirections: RX_INTERNAL and RX_USER (currently
+ unused)
+
+redir.c
+ - add_undo_redirect and add_undo_close_redirect now set RX_INTERNAL
+ flag when making new redirects
+ - in do_redirection_internal, only set file descriptors > 2 to CLEXEC
+ if they're marked as RX_INTERNAL
+
+ 10/12
+ -----
+jobs.c
+ - in wait_for_single_pid, if in posix mode, remove the waited-for pid
+ from the list of background pids, forgetting it entirely. POSIX
+ conformance tests test for this.
+
+lib/readline/{readline.h,vi_mode.c}
+ - new state flag, RL_STATE_VICMDONCE, set after entering vi command
+ mode the first time; reset on each call to readline()
+
+ 10/13
+ -----
+lib/readline/undo.c
+ - in rl_revert_line, make sure that revert-line in vi mode leaves
+ rl_point set to 0 no matter the state of the line buffer
+
+lib/readline/vi_mode.c
+ - when entering vi_command mode for the first time, free any existing
+ undo list so the previous insertions won't be undone by the `U'
+ command. This is how POSIX.2 says `U' should work (and the test
+ suite tests for it)
+
+lib/readline/bind.c
+ - change rl_parse_and_bind so only `set' commands involving boolean
+ readline variables have trailing whitespace stripped from the value
+ string
+
+ 10/16
+ -----
+lib/glob/sm_loop.c
+ - fix patscan() to correctly scan backslash-escaped characters
+
+ 10/18
+ -----
+lib/sh/{winsize.c,Makefile.in},{jobs,nojobs}.c,Makefile.in,externs.h
+ - moved get_new_window_size from jobs.c/nojobs.c to new file,
+ lib/sh/winsize.c, made function global
+
+{jobs,nojobs,sig}.c,{jobs,sig}.h
+ - moved SIGWINCH handling code to sig.c rather than duplicate it in
+ jobs.c and nojobs.c
+ - call set_sigwinch_handler from sig.c code rather than job control
+ signal initialization
+
+sig.[ch]
+ - new variable, sigwinch_received, acts like interrupt_state for
+ SIGWINCH, set by sigwinch_sighandler. sigwinch_sighandler no longer
+ calls get_new_window_size
+
+parse.y
+ - add call to get_new_window_size if sigwinch_received at top of
+ shell_getc
+
+ 10/19
+ -----
+lib/malloc/malloc.c
+ - to avoid orphaning memory on free if the right bucket is busy, use a
+ new function xplit(mem, bucket) to split the block into two or more
+ smaller ones and add those to the right bucket (appropriately marking
+ it as busy)
+ - audit bsplit(), bcoalesce(), and xsplit() for proper use of busy[],
+ since they're dealing with two separate buckets
+
+ 10/22
+ -----
+subst.c
+ - new flag for string_extract: EX_REQMATCH, means to return an error
+ if a matching/closing character is not found before EOS
+ - new static flag variables: extract_string_error and extract_string_fatal
+ - change expand_word_internal to check for new error returns from
+ string_extract and return errors if appropriate
+
+ 10/23
+ -----
+builtins/cd.def
+ - make sure we free TDIR in change_to_directory after calling
+ set_working_directory (which allocates new memory) and other places
+ we short-circuit and return
+
+ 10/24
+ -----
+subst.c
+ - modified fix from 10/22 to allow bare ` to pass through (for
+ some backwards compatibility and more correctness)
+
+ 10/27
+ -----
+conftypes.h
+ - make MacOS X use the RHAPSODY code that gets HOSTTYPE, et al.
+ at build rather than configure time, to support universal binaries
+ (fix from llattanzi@apple.com)
+
+ 10/30
+ -----
+builtins/evalstring.c
+ - make sure we don't turn on CMD_NO_FORK in parse_and_execute if
+ we're running a trap command on signal receipt or exit
+
+execute_cmd.c
+ - in shell_execve, improve the error message a little bit if the
+ interpreter name in a #! exec header ends with a ^M (as in a DOS-
+ format file)
+
+ 11/1
+ ----
+lib/readline/vi_mode.c
+ - fix vi-mode `r' command to leave the cursor in the right place
+
+[bash-3.1-rc1 frozen]
+
+ 11/5
+ ----
+execute_cmd.c
+ - make sure a DEBUG trap doesn't overwrite a command string passed to
+ make_child in execute_simple_command
+
+bashline.c
+ - rearrange some code in bash_quote_filename so filenames with leading
+ tildes containing spaces aren't tilde-expanded before being
+ returned to the caller
+
+ 11/6
+ ----
+lib/readline/display.c
+ - when deciding where to move the cursor in rl_redisplay and needing
+ to move the cursor back after moving it vertically and compensate
+ for invisible characters in the prompt string, make sure that
+ _rl_last_c_pos is treated as an absolute cursor position in a
+ multibyte locale and the wrap offset (number of invisible characters)
+ is added explicitly when deciding how many characters to backspace
+
+ 11/10
+ -----
+lib/readline/terminal.c
+ - _rl_set_screen_size now interprets a lines or columns argument < 0
+ as an indication not to change the current value
+
+ 11/11
+ -----
+
+lib/readline/terminal.c
+ - new function, rl_reset_screen_size, calls _rl_get_screen_size to
+ reset readline's idea of the terminal size
+ - don't call _rl_get_screen_size in _rl_init_terminal_io if both
+ _rl_screenheight and _rl_screenwidth are > 0
+ - don't initialize _rl_screenheight and _rl_screenwidth to 0 in
+ _rl_init_terminal_io; let caller take care of it
+ - set _rl_screenheight and _rl_screenwidth to 0 before calling
+ _rl_init_terminal_io
+
+lib/readline/readline.h
+ - new extern declaration for rl_reset_screen_size
+
+lib/readline/doc/rltech.texi
+ - documented rl_reset_screen_size
+
+variables.c
+ - if readline is being used, compile in a special var function for
+ assignments to LINES and COLUMNS that calls rl_set_screen_size or
+ rl_reset_screen_size as appropriate. Only do this in posix mode
+ and only when STRICT_POSIX is defined at compile time
+ - new semaphore variable, winsize_assignment, set while doing an
+ assignment to LINES or COLUMNS
+ - new variable, winsize_assigned, says LINES or COLUMNS was assigned
+ to or found in the environment
+ - if in the middle of an assignment to LINES or COLUMNS, make
+ sh_set_lines_and_columns a no-op
+
+lib/sh/winsize.c
+ - get_new_window_size now takes two int * arguments, to return the
+ screen dimensions
+
+externs.h
+ - change extern declaration for get_new_window_size
+
+{jobs,nojobs}.c, parse.y
+ - change callers of get_new_window_size
+
+ 11/12
+ -----
+lib/readline/terminal.c
+ - new variable, rl_prefer_env_winsize, gives LINES and COLUMNS
+ precedence over values from the kernel when computing window size
+
+lib/readline/readline.h
+ - extern declaration for rl_prefer_env_winsize
+
+lib/readline/doc/rltech.texi
+ - document rl_prefer_env_winsize
+
+ 11/13
+ -----
+lib/readline/rltty.c
+ - change rl_prep_terminal to make sure we set and reset the tty
+ special characters in the vi insertion keymap if in vi mode. This
+ matters if we get accept-line for the previous line while in vi
+ command mode
+
+ 11/14
+ -----
+builtins/pushd.def
+ - make sure any call to cd_builtin includes a leading `--' from the
+ argument list (or constructs one)
+
+ 11/16
+ -----
+pcomplete.c
+ - fix small memory leak in gen_wordlist_matches
+
+[bash-3.1-rc2 frozen]
+
+ 11/21
+ -----
+[bash-3.1-rc2 released]
+
+ 11/23
+ -----
+lib/readline/display.c
+ - changes to rl_redisplay to compensate for update_line updating
+ _rl_last_c_pos without taking invisible characters in the line into
+ account. Important in multibyte locales where _rl_last_c_pos is an
+ absolute cursor position
+ - changes to _rl_move_cursor_relative to account for _rl_last_c_pos
+ being an absolute cursor position in a multibyte character locale
+ - rewrote _rl_move_cursor_relative to make it a little simpler
+
+ 11/29
+ -----
+lib/readline/display.c
+ - changes to rl_redisplay and update_line for update_line to communicate
+ upward that it took the number of invisible characters on the current
+ line into account when modifying _rl_last_c_pos
+ - in update_line, adjust _rl_last_c_pos by wrap_offset before calling
+ _rl_move_cursor_relative, so we pass correct information about the
+ true cursor position
+
+ 12/1
+ ----
+configure.in
+ - changed release status to `release'
+
+[bash-3.1 frozen]
+
+ 12/8
+ ----
+[bash-3.1 released]
+
+ 12/9
+ ----
+doc/{bash.1,version.texi},lib/readline/doc/version.texi
+ - remove `beta1' from man page footer and texinfo documents
+
+variables.c
+ - make sure winsize_assignment is protected by #ifdef READLINE, so
+ minimal shell will compile
+
+builtins/read.def
+ - make sure error cases free memory and run any unwind-protects to
+ avoid memory leaks
+
+ 12/10
+ -----
+execute_cmd.c
+ - change execute_command_internal to set $PIPESTATUS for ((...)) and
+ [[ ... ]] commands
+
+doc/{bash.1,bashref.texi,version.texi}
+ - add documentation for ulimit -[iqx] and bump revision date
+
+ 12/12
+ -----
+parse.y
+ - make sure parse_compound_assignment saves and restores the
+ PST_ASSIGNOK parser state flag around its calls to read_token.
+ Fixes bug reported by Mike Frysinger
+
+ 12/13
+ -----
+parse.y
+ - change parse_compound_assignment to save and restore the value of
+ last_read_token. Not sure why it was set unconditionally in the
+ first place after parsing the complete compound assignment
+
+ 12/14
+ -----
+lib/readline/text.c
+ - don't use return value of rl_kill_text (which always succeeds and
+ returns the number of characters killed) in rl_delete as an indication
+ of success or failure
+ - ditto for return value of rl_delete_text
+
+lib/readline/readline.c
+ - don't return the value of the called readline function as the return
+ value from _rl_dispatch_subseq; -1 means something different to the
+ callers (return 0 all the time to indicate that a readline function
+ was found and dispatched). Fix from Andreas Schwab for <DEL><DEL>
+ bug in callback interface first reported by Mike Frysinger
+
+execute_cmd.c
+ - fixed a typo in execute_case_command
+
+ 12/15
+ -----
+aclocal.m4
+ - add check for wctype() to BASH_CHECK_MULTIBYTE, define HAVE_WCTYPE
+
+config.h.in
+ - add HAVE_WCTYPE #define
+
+config-bot.h
+ - add HAVE_WCTYPE to the set of checks for HANDLE_MULTIBYTE. This
+ should catch the deficient NetBSD multibyte support
+
+ 12/16
+ -----
+parse.y
+ - use CTLESC instead of literal '\001' when decode_prompt_string
+ prefixes RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE
+
+ 12/20
+ -----
+lib/readline/display.c
+ - don't treat RL_PROMPT_START_IGNORE specially inside a sequence of
+ ignored characters
+ - keep track of the start of the current sequence of ignored
+ characters; make sure that an empty sequence of such characters
+ really is an empty sequence, not one that happens to end with '\001'
+ (RL_PROMPT_START_IGNORE)
+
+ 12/21
+ -----
+subst.c
+ - change expand_word_internal to process rest of `tilde-word' as a
+ regular part of the word if tilde expansion leaves the tilde-word
+ unchanged. This means that ~$USER expands to ~chet, which seems
+ more intuitive, and is effectively what bash-3.0 did
+
+ 12/23
+ -----
+subst.c
+ - when making a local array variable in do_compound_assignment, make
+ sure that we don't use a variable of the same name from a previous
+ context
+
+doc/bash.1
+ - documented expansions for word and patterns in case statement
+
+builtins/ulimit.def,doc/{bashref.texi,bash.1}
+ - added new -e and -r (nice and rtprio) options to ulimit; documented
+ them
+
+ 12/26
+ -----
+variables.c
+ - use `hmax' instead of `num' in sv_histsize to avoid integer overflow
+ problems with intmax_t
+
+builtins/read.def
+ - add unwind-protect to restore rl_attempted_completion_function in
+ case of a timeout
+
+{bashline,variables}.c
+ - move initialization of HISTSIZE from initialization path to
+ load_history, so it can be overridden by a value assigned in a
+ startup file
+
+lib/readline/misc.c
+ - add a missing `return r' so that rl_digit_loop returns a meaningful
+ value
+
+lib/readline/{bind,callback,display,isearch,rltty,search,text,vi_mode}.c
+ - minor cleanups to satisfy compiler warnings, mostly removing unused
+ variables
+
+ 12/27
+ -----
+support/Makefile.in
+ - add LIBS_FOR_BUILD support; defaults to ${LIBS}
+
+Makefile.in
+ - add LIBS_FOR_BUILD with no default value; use when linking programs
+ using CC_FOR_BUILD (e.g., bashversion)
+
+ 12/28
+ -----
+lib/readline/bind.c
+ - fix rl_translate_keyseq bad translation of \M-\C-x sequences
+
+execute_cmd.c
+ - in execute_arith_command, if the expression expands to more than one
+ word, make sure we join the words into a single string and pass the
+ entire thing to evalexp()
+
+expr.c
+ - new functions: _is_arithop(c), returns true if C is a valid single-
+ character arithmetic operator; _is_multiop(c), returns true if C is
+ a token corresponding to a valid multi-character arithmetic operator
+ - if we encounter a character that isn't a valid arithmetic
+ operator, throw an error. Try to be intelligent about what type of
+ error message to print
+
+subst.c
+ - new function, expand_arith_string, calls expand_string_if_necessary;
+ used where an arithmetic expression needs to be expanded
+
+subst.h
+ - new extern declaration for expand_arith_string
+
+arrayfunc.c
+ - in array_expand_index, call expand_arith_string to expand the
+ subscript in a fashion consistent with other arithmetic expressions
+
+subst.c
+ - fix parameter_brace_patsub so that we don't try to anchor the pattern
+ at the beginning or end of the string if we're doing global
+ replacement -- that combination doesn't doesn't make sense, and
+ the changed behavior is compatible with ksh93
+
+doc/{bash.1,bashref.texi}
+ - changed description of pattern substitution to match the new
+ semantics
+
+tests/new-exp.tests
+ - change tests to remove all ${pat//#rep} and ${pat//%rep}
+ expansions, since they don't mean the same thing anymore
+
+ 12/29
+ -----
+support/signames.c
+ - new file, initialize_signames() function from old mksignames.c. This
+ file builds the signal_names array
+
+support/mksignames.c
+ - strip out initialize_signames(), move to signames.c. This file only
+ writes signames.h
+ - set up to only write a stub signames.h if CROSS_COMPILING is defined,
+ with extern declaration for initialize_signames
+ - if not cross compiling, #define initialize_signames to nothing
+
+Makefile.in
+ - mksignames is now linked from mksignames.o and buildsignames.o
+ - add rules to build signames.o, assuming we're building it as part
+ of the shell (cross-compiling)
+
+trap.c
+ - call initialize_signames from initialize_traps
+
+configure.in
+ - set SIGNAMES_O to nothing (normal) or signames.o (cross-compiling),
+ substitute into Makefile
+ - don't set SIGNAMES_H if cross-compiling any more
+
+ 12/30
+ -----
+command.h
+ - new word flag: W_NOPROCSUB, inhibits process substitution on a word
+
+subst.c
+ - change expand_word_internal to suppress process substitution if the
+ word has the W_NOPROCSUB flag
+
+shell.c
+ - --wordexp turns on W_NOPROCSUB in addition to W_NOCOMSUB
+
+subst.c
+ - change string_list_dollar_at and string_list_dollar_star so that
+ MB_CUR_MAX is used to size an array only when using gcc, since gcc
+ can handle non-constant array sizes using a mechanism like alloca.
+ Other compilers, e.g. Sun's compiler, do not implement that
+ extension
+
+ 12/31
+ -----
+builtins/mkbuiltins.c
+ - when cross-compiling, don't include <config.h>, since it's for the
+ target rather than the host system. Instead, choose a reasonable
+ set of default #defines based on a minimal POSIX system
+
+jobs.c
+ - change find_process to handle a NULL return value from find_pipeline
+ - return immediately from delete_job if jobs[index] is already NULL or
+ if it has a null pipeline associated with it
+ - in delete_job, if find_last_proc returns NULL, don't try to call
+ bgp_delete
+
+ 1/7/2006
+ --------
+doc/bash.1
+ - patch from Tim Waugh to replace some literal single quotes with
+ \(aq, the groff special character for it
+
+jobs.c
+ - in realloc_jobs_list, make sure to zero out slots after j_lastj
+ in the new list
+
+ 1/9
+ ---
+support/mksignames.c
+ - make sure to include <signal.h> to get right value of NSIG from
+ (usually) <sys/signal.h>
+
+ 1/10
+ ----
+parse.y
+ - when calling parse_matched_pair on a $(...) command substitution,
+ don't pass the P_DQUOTE flag so that single quotes don't get
+ stripped from $'...' inside the command substitution. Bug report
+ and fix from Mike Stroyan <mike.stroyan@hp.com>
+
+jobs.c
+ - start maintaining true count of living children in js.c_living
+ - call reset_current in realloc_jobs_list, since old values for current
+ and previous job are most likely incorrect
+ - don't allocate a new list in realloc_jobs_list if the old size and
+ new size are the same; just compact the existing list
+ - make sure realloc_jobs_list updates value of js.j_njobs
+ - add some more itrace messages about non-null jobs after j_lastj in
+ jobs array
+
+ 1/11
+ ----
+bashjmp.h
+ - new value for second argument to longjmp: SIGEXIT. Reserved for
+ future use
+
+ 1/12
+ ----
+jobs.c
+ - add logic to make_child to figure out when pids wrap around
+ - turn second argument to delete_job into flags word, added flag to
+ prevent adding proc to bgpids list
+
+ 1/13
+ ----
+lib/readline/vi_mode.c
+ - move code that moves forward a character out of rl_vi_append_mode
+ into a separate function, _rl_vi_append_forward
+ - change _rl_vi_append_mode to save `a' as the last command, so it
+ can be redone properly
+ - new function _rl_vi_backup, moves point back a character taking
+ multibyte locales into account
+ - change rl_vi_redo to handle redoing an `a' command specially --
+ it should be redone like `i' but after moving forward a character
+ - change rl_vi_redo to use _rl_vi_backup to move point backward
+ after redoing `i' or `a'
+
+jobs.c
+ - new function, delete_old_job (pid), checks whether or not PID is in
+ a job in the jobs list. If so, and the job is dead, it just removes
+ the job from the list. If so, and the job is not dead, it zeros
+ the pid in the appropriate PROCESS so pid aliasing doesn't occur
+ - make_child calls delete_old_job to potentially remove an already-used
+ instance of the pid just forked from the jobs list if pids have
+ wrapped around. Finally fixes the bug reported by Tim Waugh
+ <twaugh@redhat.com>
+
+trap.c
+ - new define, GETORIGSIG(sig), gets the original handling for SIG and
+ sets SIG_HARD_IGNORE if that handler is SIG_IGN
+ - call GETORIGSIG from initialize_traps, get_original_signal, and
+ set_signal
+
+jobs.c
+ - in wait_for, if the original SIGINT handler is SIG_IGN, don't set
+ the handler to wait_sigint_handler. This keeps scripts started in
+ the background (and ignoring SIGINT) from dying due to SIGINT while
+ they're waiting for a child to exit. Bug reported by Ingemar
+ Nilsson <init@kth.se>
+
+lib/readline/vi_mode.c
+ - don't save text to buffer unless undo pointer points to a record of
+ type UNDO_INSERT; zero it out instead. This fixes bug reported by
+ Craig Turner <craig@synect.com> with redoing `ctd[ESC]' (empty
+ insert after change to)
+
+shell.c
+ - change set_shell_name so invocations like "-/bin/bash" are marked as
+ login shells
+
+doc/bash.1
+ - add note about destroying functions with `unset -f' to the section
+ on shell functions
+
+lib/readline/terminal.c
+ - if readline hasn't been initialized (_rl_term_autowrap == -1, the
+ value it's now initialized with), call _rl_init_terminal_io from
+ _rl_set_screen_size before deciding whether or not to decrement
+ _rl_screenwidth. Fixes bug from Mike Frysinger <vapier@gentoo.org>
+
+ 1/14
+ ----
+lib/readline/input.c
+ - allow rl_set_keyboard_input_timeout to set the timeout to 0, for
+ applications that want to use select() like a poll without any
+ waiting
+
+lib/readline/doc/rltech.texi
+ - documented valid values for timeout in rl_set_keyboard_input_timeout
+
+jobs.c
+ - in stop_pipeline, don't have the parent shell call give_terminal_to
+ if subshell_environment contains SUBSHELL_ASYNC (no background
+ process should ever give the terminal to anything other than
+ shell_pgrp)
+ - in make_child, don't give the terminal away if subshell_environment
+ contains SUBSHELL_ASYNC
+
+ 1/15
+ ----
+subst.c
+ - in parameter_brace_expand, if extracting ${#varname}, only allow
+ `}' to end the expansion, since none of the other expansions are
+ valid. Fixes Debian bug reported by Jan Nordhorlz <jckn@gmx.net>
+
+ 1/17
+ ----
+parse.y
+ - in parse_matched_pair, protect all character tests with the MBTEST
+ macro
+ - in parse_dparen, take out extra make_word after call to alloc_word_desc
+ (mem leak)
+
+ 1/18
+ ----
+parse.y
+ - in parse_matched_pair, add P_ALLOWESC to flags passed to recursive
+ parse_matched_pair call when encountering a single or double quote
+ inside a ``-style command substitution
+
+execute_cmd.c
+ - add call to QUIT at beginning of execute_command_internal; better
+ responsiveness to SIGINT
+
+ 1/21
+ ----
+lib/readline/bind.c
+ - change rl_invoking_keyseqs_in_map to honor the setting of
+ convert-meta when listing key bindings, since if convert-meta is off,
+ using '\M-' as the prefix for bindings in, for instance,
+ emacs-escape-keymap, is wrong. This affects `bind -p' output
+ - change rl_untranslate_keyseq to add '\e' instead of '\C-[' for
+ ESC
+
+execute_cmd.c
+ - add call to QUIT at end of execute_command
+
+ 1/23
+ ----
+lib/readline/display.c
+ - changed two places in update_line where a check of whether the cursor
+ is before the last invisible character in the prompt string to
+ differentiate between the multibyte character case (where
+ _rl_last_c_pos is a physical cursor position) and the single-byte
+ case (where it is a buffer index). This prevents many unnecessary
+ \r-redraw the line sequences. Reported by Dan Jacobson.
+
+ 1/24
+ ----
+quit.h
+ - wrap QUIT macro in do...while(0) like other compound statement
+ macros
+ - CHECK_TERMSIG define (placeholder for now); future use will be to
+ handle any received signals that should cause the shell to
+ terminate (e.g., SIGHUP)
+
+{input,jobs,nojobs}.c
+ - add calls to CHECK_TERMSIG where appropriate (reading input and
+ waiting for children)
+ - include quit.h if necessary
+
+ 1/25
+ ----
+parse.y
+ - undo change that makes `)' in a compound assignment delimit a token.
+ It messes up arithmetic expressions in assignments to `let', among
+ other things
+
+sig.h,{jobs,nojobs,sig,trap}.c,builtins/trap.def
+ - rename termination_unwind_protect to termsig_sighandler
+
+sig.c
+ - split termsig_sighandler into two functions: termsig_sighandler, which
+ runs as a signal handler and sets a flag noting that a terminating
+ signal was received, and termsig_handler, which runs when it is `safe'
+ to handle the signal and exit
+ - new terminate_immediately variable, similar to interrupt_immediately
+ - termsig_sighandler calls termsig_handler immediately if
+ terminate_immediately is non-zero
+
+quit.h
+ - change CHECK_TERMSIG macro to check terminating_signal and call
+ termsig_handler if it's non-zero
+ - add same check of terminating_signal and call to termsig_handler to
+ QUIT macro
+
+{jobs,nojobs}.c
+ - change call to termsig_sighandler to call termsig_handler directly,
+ as was intended
+
+parse.y,builtins/read.def
+ - set terminate_immediately to non-zero value when reading interactive
+ input, as is done with interrupt_immediately
+
+ 1/26
+ ----
+doc/{bash.1,bashref.texi}
+ - reworded the POSIX standard references to remove mention of POSIX.2
+ or 1003.2 -- it's all the 1003.1 standard now. Recommended by
+ Arnold Robbins
+
+ 1/27
+ ----
+lib/readline/complete.c
+ - move call to filename dequoting function into
+ rl_filename_completion_function; call only if directory completion
+ hook isn't set. This means that directory-completion-hook now needs
+ to dequote the directory name. We don't want to dequote the directory
+ name before calling the directory-completion-hook. Bug reported by
+ Andrew Parker <andrewparker@bigfoot.com>
+
+bashline.c
+ - add necessary directory name dequoting to bash_directory_expansion
+ and bash_directory_completion_hook
+
+lib/readline/doc/rltech.texi
+ - add note to description of rl_directory_completion_hook that it
+ needs to dequote the directory name even if no other expansions are
+ performed
+
+ 1/28
+ ----
+braces.c
+ - make sure that we skip over braces that don't start a valid matched
+ brace expansion construct in brace_expand -- there might be a valid
+ brace expansion after the unmatched `{' later in the string
+ - brace_gobbler now checks that when looking for a `}' to end a brace
+ expansion word, there is an unquoted `,' or `..' that's not inside
+ another pair of braces. Fixes the a{b{c,d}e}f problem reported by
+ Tim Waugh
+
+builtins/declare.def
+ - when not in posix mode, and operating on shell functions, typeset
+ and declare do not require their variable operands to be valid
+ shell identifiers. The other `attribute' builtins work this way.
+ Fixes inconsistency reported by Mike Frysinger <vapier@gentoo.org>
+
+{configure,config.h}.in
+ - add test for setregid, define HAVE_SETREGID and HAVE_DECL_SETREGID
+ as appropriate
+ - add test for eaccess, define HAVE_EACCESS if found
+
+lib/sh/eaccess.c
+ - new file, with sh_stat and sh_eaccess functions, moved from test.c
+ - renamed old sh_eaccess as sh_stataccess, since it uses the stat(2)
+ information to determine file accessibility
+ - new function, sh_euidaccess, to call when uid != euid or gid != egid;
+ temporarily swaps uid/euid and gid/egid around call to access
+ - rewrote sh_eaccess to call eaccess, access, sh_euidaccess or
+ sh_stataccess as appropriate. access(2) will take into account
+ things like ACLs, read-only file systems, file flags, and so on.
+
+lib/sh/Makefile.in,Makefile.in
+ - add necessary entries for eaccess.[co]
+
+test.c
+ - change calls to test_stat to call sh_stat
+
+{test,general}.c
+ - change calls to test_eaccess to call sh_eaccess
+
+externs.h
+ - new extern declaration for sh_eaccess
+
+test.[ch]
+ - remove test_stat and test_eaccess
+
+ 1/29
+ ----
+braces.c
+ - make change from 1/28 dependant on CSH_BRACE_COMPAT not being
+ defined (since old bash behavior is what csh does, defining
+ CSH_BRACE_COMPAT will produce old bash behavior)
+
+ 1/30
+ ----
+bashline.c
+ - last argument of bash_default_completion is now a flags word:
+ DEFCOMP_CMDPOS (in command position) is only current value
+ - attempt_shell_completion now computes flags before calling
+ bash_default_completion
+ - if no_empty_command_completion is set, bash does not attempt command
+ word completion even if not at the beginning of the line, as long
+ as the word to be completed is empty and start == end (catches
+ beginning of line and all whitespace preceding point)
+
+ 2/4
+ ---
+lib/readline/display.c
+ - change _rl_make_prompt_for_search to use rl_prompt and append the
+ search character to it, so the call to expand_prompt in rl_message
+ will process the non-printing characters correctly. Bug reported
+ by Mike Stroyan <mike.stroyan@hp.com>
+
+ 2/5
+ ---
+lib/readline/display.c
+ - fix off-by-one error when comparing against PROMPT_ENDING_INDEX,
+ which caused a prompt with invisible characters to be redrawn one
+ extra time in a multibyte locale. Change from <= to < fixes
+ multibyte locale, but I added 1 to single-byte definition of
+ PROMPT_ENDING_INDEX (worth checking) to compensate. Bug reported
+ by Egmont Koblinger <egmont@uhulinux.hu>
+
+ 2/8
+ ---
+lib/readline/terminal.c
+ - call _emx_get_screensize with wr, wc like ioctl code for consistency
+ - new function, _win_get_screensize, gets screen dimensions using
+ standard Windows API for mingw32 (code from Denis Pilat)
+ - call _win_get_screensize from _rl_get_screen_size on mingw32
+
+lib/readline/rlconf.h
+ - define SYS_INPUTRC (/etc/inputrc) as system-wide default inputrc
+ filename
+
+support/shobj-conf
+ - changes to make loadable builtins work on MacOS X 10.[34]
+
+builtins/pushd.def
+ - changes to make it work as a loadable builtin compiled with gcc4
+
+ 2/9
+ ---
+lib/readline/bind.c
+ - add SYS_INPUTRC as last-ditch default (if DEFAULT_INPUTRC does not
+ exist or can't be read) in rl_read_init_file
+
+lib/readline/doc/rluser.texi
+ - add description of /etc/inputrc as ultimate default startup file
+
+ 2/10
+ ----
+lib/readline/bind.c
+ - fix problem with rl_function_of_keyseq that returns a non-keymap
+ bound to a portion of the passed key sequence without processing
+ the entire thing. We can bind maps with existing non-map
+ functions using the ANYOTHERKEY binding code.
+
+variables.c
+ - shells running in posix mode do not set $HOME, as POSIX apparently
+ requires
+
+ 2/15
+ ----
+braces.c
+ - mkseq() now takes the increment as an argument; changed callers
+
+ 2/16
+ ----
+builtins/hash.def
+ - print `hash table empty' message to stdout instead of stderr
+
+ 2/17
+ ----
+lib/readline/readline.c
+ - when resetting rl_prompt in rl_set_prompt, make sure rl_display_prompt
+ is set when the function returns
+
+ 2/18
+ ----
+lib/readline/display.c
+ - further fixes to _rl_make_prompt_for_search from Eric Blake to deal
+ with multiple calls to expand_prompt
+
+ 2/21
+ ----
+builtins/hash.def
+ - don't print `hash table empty' message in posix mode
+
+ 2/27
+ ----
+lib/glob/sm_loop.c
+ - change extmatch() to turn off FNM_PERIOD in flags passed to recursive
+ calls to gmatch() when calling it with a substring after the start
+ of the string it receives. Changed `+', `*', `?, `@', and `!' cases
+ to do the right thing. Fixes bug reported by Benoit Vila
+ <bvila@free.fr>
+
+braces.c
+ - add QUIT; statements to mkseq to make large sequence generation
+ interruptible
+
+ 2/28
+ ----
+lib/glob/glob.c
+ - initialize nalloca in glob_vector
+
+ 3/1
+ ---
+lib/glob/glob.c
+ - in glob_vector, when freeing up the linked list after some error,
+ make sure to set `tmplink' to 0 if `firstlink' is set to 0, else we
+ get multiple-free errors
+
+ 3/5
+ ---
+trap.c
+ - inheritance of the DEBUG, RETURN, and ERR traps is now dependent
+ only on the `functrace' and `errtrace' shell options, as the
+ documentation says, rather than on whether or not the shell is in
+ debugging mode. Reported by Philip Susi <psusi@cfl.rr.com>
+
+parse.y
+ - in parse_matched_pair, don't recursively parse ${...} or other
+ ${...} constructs inside ``
+ - in parse_matched_pair, remove special code that recursively parses
+ quoted strings inside `` constructs. For Bourne shell compatibility
+
+ 3/6
+ ---
+builtins/pushd.def
+ - let get_directory_stack take take an `int flags' argument and convert
+ $HOME to ~ if flags&1 is non-zero
+
+builtins/common.h
+ - change extern declaration for get_directory_stack
+
+variables.c
+ - call get_directory_stack with an arg of 0 to inhibit converting
+ $HOME to ~ in the result. Fixes cd ${DIRSTACK[1]} problem
+ reported by Len Lattanzi <llattanzi@apple.com> (cd fails because
+ the tildes won't be expanded after variable expansion)
+
+jobs.c
+ - changed hangup_all_jobs slightly so stopped jobs marked J_NOHUP
+ won't get a SIGCONT
+
+general.c
+ - changed check_binary_file() to check for a NUL byte instead of a
+ non-printable character. Might at some point want to check
+ entire (possibly multibyte) characters instead of just bytes. Hint
+ from ksh via David Korn
+
+ 3/7
+ ---
+builtins/reserved.def
+ - changed runs of spaces to tabs in variables help text to make
+ indentation better when displayed
+
+builtins/mkbuiltins.c
+ - changes to avoid the annoying extra space that keeps gettext from
+ being passed an empty string
+
+ 3/9
+ ---
+lib/glob/glob.c
+ - make sure globbing is interrupted if the shell receives a terminating
+ signal
+
+ 3/14
+ ----
+lib/readline/search.c
+ - call rl_message with format argument of "%" in _rl_nsearch_init
+ to avoid `%' characters in the prompt string from being interpreted
+ as format specifiers to vsnprintf/vsprintf
+
+ 3/19
+ ----
+parse.y, eval.c, input.h
+ - change execute_prompt_command to execute_variable_command; takes the
+ variable name as a new second argument
+
+ 3/25
+ ----
+bashline.c
+ - command_word_completion_function keeps track of when it's searching
+ $PATH and doesn't return directory names as matches in that case.
+ Problem reported by Pascal Terjan <pterjan@mandriva.com>
+ - command_word_completion_function returns what it's passed as a
+ possible match if it's the name of a directory in the current
+ directory (only non-absolute pathnames are so tested).
+
+ 3/27
+ ----
+subst.c
+ - expand_arith_string takes a new argument: quoted. Either 0 (outside
+ subst.c) or Q_DOUBLE_QUOTES (substitution functions); changed callers
+
+subst.h
+ - changed extern declaration for expand_arith_string
+
+arrayfunc.c
+ - changed call to expand_arith_string in array_expand_index
+
+ 3/31
+ ----
+lib/readline/histfile.c
+ - change read_history_range to allow windows-like \r\n line endings
+
+execute_cmd.c
+ - add new variable, line_number_for_err_trap, currently set but not
+ used
+
+ 4/2
+ ---
+lib/sh/strtrans.c
+ - add code to echo -e and echo with xpg_echo enabled to require
+ a leading 0 to specify octal constants
+
+ 4/3
+ ---
+subst.c
+ - slight change to wcsdup() replacement: use memcpy instead of wcscpy
+
+parse.y
+ - before turning on W_COMPASSIGN, make sure the final character in the
+ token is a `(' (avoids problems with things like a=(4*3)/2)
+
+ 4/4
+ ---
+lib/sh/snprintf.c
+ - in number() and lnumber(), turn off PF_ZEROPAD if explicit precision
+ supplied in format
+ - change number() and lnumber() to correctly implement zero-padding
+ specified by a non-zero `.precision' part of the format
+
+subst.c
+ - new flag for extract_delimited_string: EX_COMMAND. For $(...), so
+ we can do things like skip over delimiters in comments. Added to
+ appropriate callers
+ - changes to extract_delimited_string to skip over shell comments when
+ extracting a command for $(...) (EX_COMMAND is contained in the
+ flags argument)
+
+ 4/5
+ ---
+subst.c
+ - first argument to skip_single_quoted is now a const char *
+ - new function, chk_arithsub, checks for valid arithmetic expressions
+ by balancing parentheses. Fix based on a patch from Len Lattanzi
+
+ 4/6
+ ---
+{configure,config.h}.in
+ - add separate test for isnan in libc, instead of piggybacking on
+ isinf-in-libc test
+
+lib/sh/snprintf.c
+ - separate the isnan replacement function so it's guarded by its own
+ HAVE_ISNAN_IN_LIBC define
+
+lib/sh/wcsdup.c
+ - new file, contains replacement wcsdup library function from subst.c
+ with change back to using wcscpy
+
+Makefile.in,lib/sh/Makefile.in
+ - make sure wcsdup.c is compiled and linked in
+
+subst.c
+ - wcsdup now found in libsh; removed static definition
+
+ 4/10
+ ----
+lib/readline/callback.c
+ - loop over body of rl_callback_read_char as long as there is additional
+ input rather than just calling readline_internal_char, which does
+ not handle multi-character key sequences or escape-prefixed chars
+
+lib/readline/macro.c
+ - make sure we turn off RL_STATE_MACROINPUT when the macro stack is
+ empty if we are reading additional input with RL_STATE_MOREINPUT
+
+support/shobj-conf
+ - Mac OS X no longer likes the `-bundle' option to gcc when creating a
+ dynamic shared library
+
+ 4/11
+ ----
+lib/tilde/tilde.c
+ - don't try to dereference user_entry if HAVE_GETPWENT isn't defined
+
+lib/readline/input.c
+ - make sure chars_avail is not used without being assigned a value in
+ rl_gather_tyi
+ - use _kbhit() to check for available input on Windows consoles, in
+ rl_gather_tyi and _rl_input_available
+
+ 4/21
+ ----
+lib/readline/display.c
+ - calculate (in expand_prompt) and keep track of length of local_prompt
+ in local_prompt_len; use where appropriate
+ - when using o_pos to check whether or not we need to adjust
+ _rl_last_c_pos after calling update_line, assume that it's correct
+ (a buffer index in non-multibyte locales and a cursor position in
+ multibyte locales) and adjust with wrap_offset as appropriate
+ - in update_line, set cpos_adjusted to 1 after calling
+ _rl_move_cursor_relative to move to the end of the displayed prompt
+ string
+ - in _rl_move_cursor_relative, check that the multibyte display
+ position is after the last invisible character in the prompt string
+ before offsetting it by the number of invisible characters in the
+ prompt (woff)
+
+ 4/26
+ ----
+lib/readline/doc/{rluser.texi,readline.3}
+ - make sure to note that key bindings don't allow any whitespace
+ between the key name or sequence to be bound and the colon
+
+ 4/28
+ ----
+lib/readline/display.c
+ - in update_line, make sure we compare _rl_last_c_pos as strictly less
+ than PROMPT_ENDING_INDEX, since it's 0-based, to avoid multiple
+ prompt redraws
+
+ 5/4
+ ---
+parse.y
+ - in decode_prompt_string, only prefix the expansion of \[ or \]
+ with CTLESC if the corresponding readline escape character is
+ CTLESC (coincidentally the same as \[) or CTLNUL. Bug report sent
+ by Mike Frysinger <vapier@gentoo.org> prompted the discovery
+
+aclocal.m4
+ - slight change to test for /dev/fd to compensate for a linux
+ failing; suggested by Mike Frysinger <vapier@gentoo.org>
+
+ 5/9
+ ---
+arrayfunc.c
+ - broke assign_array_var_from_string into two functions:
+ expand_compound_array_assignment and assign_compound_array_list;
+ assign_array_var_from_string just calls those functions now
+
+arrayfunc.h
+ - new extern declarations for expand_compound_array_assignment and
+ assign_compound_array_list
+
+subst.c
+ - in do_compound_assignment, call expand_compound_array_assignment
+ before creating the local variable so a previous inherited
+ value can be used when expanding the rhs of the compound assignment
+ statement
+
+ 5/11
+ ----
+doc/{bash.1,bashref.texi}
+ - clarifed `trap' description to make it clear that trapped signals
+ that are not set to SIG_IGN are reset when a subshell is created
+
+ 5/18
+ ----
+locale.c
+ - change reset_locale_vars to call setlocale (LC_ALL, "") if LANG
+ is unset or NULL
+ - if LANG is unset or NULL, reset the export environment before
+ calling setlocale in reset_locale_vars, and trust that it will
+ change the environment setlocale() inspects
+
+ 5/21
+ ----
+lib/readline/history.c
+ - new function, HIST_ENTRY *alloc_history_entry (char *string, char *ts);
+ creates a new history entry with text STRING and timestamp TS (both
+ of which may be NULL)
+ - new function, HIST_ENTRY *copy_history_entry (HIST_ENTRY *hist),
+ which copies the line and timestamp entries to new memory but just
+ copies the data member, since that's an opaque pointer
+ - new function, void replace_history_data (int which, histdata_t *old, histdata_t *new)
+ which replaces the `data' member of specified history entries with
+ NEW, as long as it is OLD. WHICH says which history entries to
+ modify
+ - add calls to replace_history_data in rl_free_undo_list and
+ rl_do_undo
+
+lib/readline/undo.c
+ - new function, alloc_undo_entry (enum undo_code what, int start, int end, char *text)
+ takes care of allocating and populating a struct for an individual
+ undo list entry
+ - new function: _rl_copy_undo_entry(UNDO_LIST *entry)
+ - new function: _rl_copy_undo_list(UNDO_LIST *head)
+
+lib/readline/rlprivate.h
+ - new extern declarations for _rl_copy_undo_{entry,list}
+
+execute_cmd.c
+ - change execute_cond_node so that quoting the rhs of the =~
+ operator forces string matching, like the == and != operators
+
+ 5/23
+ ----
+redir.c
+ - add_undo_redirect now takes as an additional argument the type of
+ redirection we're trying to undo
+ - don't add a "preservation" redirection for fds > SHELL_FD_BASE if
+ the redirection is closing the fd
+
+ 5/24
+ ----
+subst.c
+ - make sure that parameter_brace_substring leaves this_command_name
+ set to either NULL or its previous value after setting it so that
+ arithmetic evaluation errors while expanding substring values
+ contain meaningful information
+
+ 6/9
+ ---
+execute_cmd.c
+ - make sure that SUBSHELL_ASYNC and SUBSHELL_PIPE are set as flag bits
+ in subshell_environment, rather than setting only a single value
+ - change execute_subshell_builtin_or_function to give the `return'
+ builtin a place to longjmp to when executed in a subshell or pipeline
+ (mostly as the last command in a pipeline). Bug reported by
+ Oleg Verych <olecom@gmail.com>
+ - in execute_simple_command, make sure to call execute_disk_command
+ with the_printed_command_except_trap to keep DEBUG trap command
+ strings from overwriting the command strings associated with jobs
+ and printed in job control messages. Bug reported by Daniel Kahn
+ Gillmor <dkg-debian.org@fifthhorseman.net>
+
+[bash-3.2-alpha frozen]
+
+ 6/22
+ ----
+syntax.h
+ - add new CBLANK (for [:blank:] class) flag value for syntax table and
+ shellblank(c) character test macro
+
+mksyntax.c
+ - add support for setting CBLANK flag in the syntax table depending on
+ whether or not isblank(x) returns true for character x
+
+locale.c
+ - change locale_setblanks to set or unset CBLANK flag for each
+ character when locale changes
+
+parse.y
+ - change call to whitespace(c) in lexical analyzer (read_token()) to
+ call shellblank(c) instead, so locale-specific blank characters are
+ treated as white space. Fixes bug reported by Serge van deb Boom
+ <svdb+bug-bash@stack.nl>
+
+print_cmd.c
+ - when printing redirections, add a space between <, >, and <> and the
+ following word, to avoid conflicts with process substitution. Bug
+ reported by Ittay Dror <ittyad@qlusters.com>
+
+ 6/26
+ ----
+configure.in
+ - set CROSS_COMPILE to the empty string by default, so we don't inherit
+ a random value from the environment. Bug reported by
+ Lee Revell <rlrevell@joe-job.com>
+
+ 6/29
+ ----
+lib/glob/xmbsrtowcs.c
+ - make sure destp is non-null before assigning a 0 to *destp in
+ xdupmbstowcs. Fix from Louiwa Salem <loulwas@us.ibm.com>
+
+execute_cmd.c
+ - fix execute_in_subshell to make sure asynchronous isn't set to 0
+ before subshell_environment is set appropriately and
+ setup_async_signals is run. Based on report by Louiwa Salem
+ <loulwas@us.ibm.com>
+
+lib/readline/bind.c
+ - in rl_generic_bind(), make sure that the keys array is freed before
+ an error return. Fix from Louiwa Salem <loulwas@us.ibm.com>
+
+ 7/1
+ ---
+builtins/read.def
+ - make sure all editing code is protected with #ifdef READLINE, esp.
+ unwind-protect that restores the default completion function
+
+lib/readline/display.c
+ - make sure to set local_prompt_len in rl_message() [in bash-3.2-alpha]
+
+ 7/5
+ ---
+builtins/printf.def
+ - add more of echo's write error handling to printf. Suggested by
+ martin.wilck@fujitsu-siemens.com
+
+ 7/7
+ ---
+lib/readline/display.c
+ - save and restore local_prompt_len in rl_{save,restore}_prompt
+ [in bash-3.2-alpha]
+
+ 7/8
+ ---
+[bash-3.2-alpha released]
+
+ 7/9
+ ---
+lib/readline/display.c
+ - make sure that _rl_move_cursor_relative sets cpos_adjusted when it
+ offsets `dpos' by wrap_offset in a multi-byte locale. Bug reported
+ by Andreas Schwab and Egmont Koblinger
+
+subst.c
+ - make sure that the call to mbstowcs in string_extract_verbatim is
+ passed a string with enough space for the closing NUL. Reported
+ by Andreas Schwab
+
+ 7/18
+ ----
+lib/readline/{display,terminal}.c
+ - remove #ifdefs for HACK_TERMCAP_MOTION so we can use
+ _rl_term_forward_char in the redisplay code unconditionally
+
+lib/readline/rlprivate.h
+ - new extern declaration for _rl_term_forward_char
+
+lib/readline/display.c
+ - in _rl_move_cursor_relative, use `dpos' instead of `new' when
+ deciding whether or not a CR is faster than moving the cursor from
+ its current position
+ - in _rl_move_cursor_relative, we can use _rl_term_forward_char to
+ move the cursor forward in a multibyte locale, if it's available.
+ Since that function doesn't have a handle on where the cursor is in
+ the display buffer, it has to output a cr and print all the data.
+ Fixes rest of problem reported by Egmont Koblinger
+ - change variable denoting the position of the cursor in the line buffer
+ from c_pos (variable local to rl_redisplay) to cpos_buffer_position
+ (variable local to file) for future use by other functions
+
+ 7/25
+ ----
+lib/malloc/{stats,table}.h
+ - include <string.h> for prototypes for memset, strlen
+
+lib/termcap/{termcap,tparam}.c
+ - include <string.h> and provide macro replacement for bcopy if
+ necessary
+
+ 7/27
+ ----
+lib/readline/histexpand.c
+ - add support for `<<<' here-string redirection operator to
+ history_tokenize_word. Bug reported by agriffis@gentoo.org
+
+externs.h
+ - don't add prototype for strerror() if HAVE_STRERROR defined
+
+ 7/29
+ ----
+subst.c
+ - in list_string, use `string' instead of `s' -- s is not initialized
+
+ 8/9
+ ---
+subst.c
+ - fix parameter_brace_expand to set W_HASQUOTEDNULL in the WORD_DESC it
+ returns if the result of parameter_brace_substring is a quoted null
+ ("\177"). Fixes bug reported by Igor Peshansky <pechtcha@cs.nyu.edu>
+
+ 8/16
+ ----
+lib/readline/readline.h
+ - new #define, READERR, intended to be used to denote read/input errors
+
+lib/readline/input.c
+ - in rl_getc, if read() returns an error other than EINTR (after the
+ EWOULDBLOCK/EAGAIN cases are handled), return READERR rather than
+ converting return value to EOF if readline is reading a top-level
+ command (RL_STATE_READCMD)
+
+lib/readline/readline.c
+ - if rl_read_key returns READERR to readline_internal_char[loop],
+ abort as if it had read EOF on an empty line, without any conversion
+ to newline, which would cause a partial line to be executed. This
+ fixes the bug reported by Mathieu Bonnet <mathieu.bonnet@nalkym.org>
+
+aclocal.m4
+ - when testing for validity of /dev/fd/3, use /dev/null instead of
+ standard input, since the standard input fails with linux and `su'.
+ Bug reported by Greg Shafer <gschafer@zip.com.au>
+
+ 8/17
+ ----
+Makefile.in
+ - switch the TAGS and tags targets so TAGS is the output of `etags' and
+ tags is the output of `ctags'. Suggested by Masatake YAMATO
+
+ 8/25
+ ----
+execute_cmd.c
+ - change code to match documentation: set BASH_COMMAND (which takes its
+ value from the_printed_command_except_trap) only when not running a
+ trap. Rocky says the debugger is ok with this, and this is what his
+ original diffs did
+
+ 8/29
+ ----
+variables.c
+ - change set_if_not to create shell_variables if it is NULL, since
+ -o invocation options can cause variables to be set before the
+ environment is scanned
+
+[bash-3.2-beta frozen]
+
+ 9/5
+ ---
+[bash-3.2-beta released]
+
+ 9/8
+ ---
+variables.c
+ - change dispose_used_env_vars to call maybe_make_export_env
+ immediately if we're disposing a temporary environment, since
+ `environ' points to the export environment and getenv() will use
+ that on systems that don't allow getenv() to be replaced. This
+ could cause the temporary environment to affect the shell. Bug
+ reported by Vasco Pedro <vp@di.uevora.pt>
+
+builtins/echo.def,doc/{bash.1,bashref.texi}
+ - clarify that `echo -e' and echo when the `xpg_echo' shell option is
+ enabled require the \0 to precede any octal constant to be expanded.
+ Reported by Vasco Pedro <vp@di.uevora.pt>
+
+ 9/12
+ ----
+builtins/printf.def
+ - make sure `%q' format specifier outputs '' for empty string arguments
+ Bug reported by Egmont Koblinger <egmont@uhulinux.hu>
+
+make_cmd.c
+ - change make_here_document to echo lines in here-doc if set -v has
+ been executed. Reported by Eduardo Ochs <eduardoochs@gmail.com>
+
+aclocal.m4
+ - change BASH_CHECK_MULTIBYTE:
+ o replace check for wctomb with check for wcrtomb
+ o add checks for wcscoll, iswctype, iswupper, iswlower,
+ towupper, towlower
+ o add call to AC_FUNC_MBRTOWC to check for mbrtowc and mbstate_t
+ define HAVE_MBSTATE_T manually
+ o add checks for wchar_t, wctype_t, wint_t
+
+config.h.in
+ - add defines for wcscoll, iswctype, iswupper, iswlower, towupper,
+ towlower functions
+ - replace define for wctomb with one for wcrtomb
+ - add defines for wchar_t, wint_t, wctype_t types
+
+config-bot.h, lib/readline/rlmbutil.h
+ - add check for HAVE_LOCALE_H before defining HANDLE_MULTIBYTE
+ - add checks for: ISWCTYPE, ISWLOWER, ISWUPPER, TOWLOWER, TOWUPPER
+ - add checks for: WCTYPE_T, WCHAR_T, WCTYPE_T
+
+ 9/13
+ ----
+lib/readline/display.c
+ - when displaying prompts longer than the screenwidth in rl_redisplay,
+ and looking for the index of the last character whose buffer index
+ is <= the screen width to set up the inv_lbreaks array, make sure to
+ catch the case where the index == the screen width (an off-by-one
+ error occurs otherwise with prompts one character longer than the
+ screen width). Bug reported by Alexey Toptygin <alexeyt@freeshell.org>
+
+configure.in
+ - change DEBUGGER_START_FILE to start with ${ac_default_prefix}/share,
+ like bashdb installs itself. Reported by Nick Brown
+ <nickbroon@blueyonder.co.uk>
+
+ 9/14
+ ----
+lib/readline/display.c
+ - make multibyte code that computes the buffer indices of line breaks
+ for a multi-line prompt dependent on MB_CUR_MAX, so we don't take
+ the function call hit unless we're in a locale that can have
+ multibyte characters
+
+ 9/19
+ ----
+subst.c
+ - make dequote_list extern so other parts of the shell can use it
+
+subst.h
+ - extern declaration for dequote_list
+
+builtins/read.def
+ - call dequote_list before assigning words read to array variable if
+ we saw an escape character. Old code left spurious CTLESCs in the
+ string after processing backslashes. Bug reported by Daniel Dawson
+ <ddawson@icehouse.net>
+
+ 9/21
+ ----
+[bash-3.2 frozen]
+
+ 10/9
+ ----
+support/shobj-coonf
+ - change -fpic to -fPIC for FreeBSD systems (needed for SPARC at least)
+
+ 10/11
+ -----
+[bash-3.2 released]
+
+ 10/12
+ -----
+parse.y
+ - change parse_matched_pair to make sure `` command substitution does
+ not check for shell comments while parsing. Bug reported against
+ bash-3.2 by Greg Schaefer <gschafer@zip.com.au>
+
+ 10/14
+ -----
+parse.y
+ - add new parser_state flag: PST_REGEXP; means we are parsing a
+ regular expression following the =~ conditional operator
+ - cond_node sets PST_REGEXP after reading the `=~' operator
+ - change read_token to call read_token_word immediately if the
+ PST_REGEXP bit is set in parser_state
+ - change read_token_word to skip over `(' and `|' if PST_REGEXP is
+ set, since those characters are legitimate regexp chars (but still
+ parse matched pairs of parens)
+
+ 10/16
+ -----
+builtins/ulimit.def
+ - add -e and -r to $SHORT_DOC usage string
+
+po/ru.po
+ - fix encoding; Russian text in the file is actually encoded in KOI8-R
+
+ 10/23
+ -----
+shell.c
+ - make sure that the call to move_to_high_fd in open_shell_script
+ passes 1 for the `check_new' parameter so open high file descriptors
+ don't get closed and reused. Bug reported by Mike Stroyan
+ <mike.stroyan@hp.com>
+
+doc/bashref.texi
+ - fixes for typos and misspellings sent in by Brian Gough
+
+ 10/24
+ -----
+support/shobj-conf
+ - make netbsd shared library creation like openbsd's until I hear
+ differently (called using `gcc -shared')
+
+ 10/26
+ -----
+subst.c
+ - fix bug in parameter_brace_patsub so if the first character of the
+ expanded pattern is a `/', it is not taken as a global replacement
+ specifier. Bug reported on forums.nekochan.net
+
+ 10/27
+ -----
+builtins/printf.def
+ - if we need an extern declaration for asprintf, make sure we include
+ stdarg.h or varargs.h, whichever is appropriate
+ - if we do not have asprintf, add an extern declaration using
+ stdarg format. This fixes the bugs with %G on IRIX reported by
+ Matthew Woehlke <mwoehlke@tibco.com> and Stuart Shelton
+ <srcshelton@gmail.com>
+
+
+lib/sh/snprintf.c
+ - add note to not call log_10 with 0 argument -- we don't want to do
+ what real log10 does (-infinity/raise divide-by-zero exception)
+ - make sure numtoa (used by dtoa) takes the precision into account
+ when computing the fractional part with an argument of `0.0'
+ - make sure `g' and `G' formats don't print radix char if there are
+ no characters to be printed after it (change to floating())
+ - change callers of log_10 (exponent, 'g' and 'G' cases in
+ vsnprintf_internal) to not call it with 0 for argument. This fixes
+ the hang reported on IRIX by Matthew Woehlke <mwoehlke@tibco.com>
+ and Stuart Shelton <mwoehlke@tibco.com>
+
+ 10/28
+ -----
+builtins/{caller,pushd}.def
+ - changed longdoc strings in loadable builtin section to be single
+ strings, as put in the build directory builtins.c file, to aid
+ translators
+
+ 11/1
+ ----
+execute_cmd.c
+ - reset subshell_environment to 0 after make_child() call in
+ execute_null_command. Fix provided by Roy Marples
+ <uberlord@gentoo.org>
+
+ 11/7
+ ----
+lib/tilde/tilde.c
+lib/readline/{util,undo,callback,input,isearch,kill}.c
+ - make sure that memory allocated with xmalloc is freed with xfree
+
+ 11/9
+ ----
+lib/readline/display.c
+ - make sure that _rl_redisplay_after_sigwinch clears the last displayed
+ line instead of the current line (instead of assuming that the
+ cursor is on the last line). Fixes bug reported by Egmont
+ Koblinger <egmont@uhulinux.hu>
+
+ 11/10
+ -----
+lib/readline/display.c
+ - make sure that _rl_col_width is never called with MB_CUR_MAX == 1,
+ since it doesn't count invisible characters and they are not
+ compensated for. Added a warning in _rl_col_width if called when
+ MB_CUR_MAX == 1. Bug reported and solution suggested by Eric
+ Blake <ebb9@byu.net>
+
+ 11/11
+ -----
+lib/readline/display.c
+ - make sure _rl_wrapped_line is initialized to inv_lbsize int chars.
+ inv_lbsize and vis_lbsize are the same at that point, but it makes
+ the intent clearer. Fix from jan.kratochvil@redhat.com.
+ - in rl_redisplay, make sure we call memset on _rl_wrapped_line with
+ its full initialized size: inv_lbsize*sizeof(int). Fix from
+ jan.kratochvil@redhat.com.
+ - wrap the invisible and visible line variables and _rl_wrapped_line
+ into line_state structures, which can be swapped more efficiently.
+ Have to watch the wrapped_line field, since there's now one for
+ each struct. Changes from jan.kratochvil@redhat.com.
+
+lib/readline/complete.c
+ - in stat_char, check for `//server' on cygwin and return `/', since
+ it will always behave as a directory. Fix from Eric Blake
+
+lib/readline/histfile.c
+ - Cygwin's mmap() works in recent versions, so don't #undef HAVE_MMAP.
+ Recommendation from Eric Blake
+
+lib/readline/rlwinsize.h
+ - make sure tcflow() is defined on SCO Unix. Fix from William Bader
+
+aclocal.m4
+ - add check for localeconv to AM_INTL_SUBDIR macro
+
+config.h.in
+ - add HAVE_LOCALECONV
+
+lib/sh/snprintf.c
+ - add check for HAVE_LOCALECONV for GETLOCALEDATA macro
+
+general.[ch]
+ - first argument to legal_number is now `const char *'
+
+ 11/14
+ -----
+lib/readline/{readline,rlprivate}.h
+ - move rl_display_prompt declaration from rlprivate.h to readline.h
+
+lib/readline/util.h
+ - new function: rl_free(void *mem), for use by users of readline dlls
+ on Windows
+
+lib/readline/readline.h
+ - new extern declaration for rl_free
+
+lib/readline/doc/rltech.texi
+ - document rl_free and rl_display_prompt for use by application writers
+
+ 11/15
+ -----
+aclocal.m4
+ - change tests for /dev/fd and /dev/stdin to use constructs of the form
+ (exec test ... ) instead of test ... to avoid bash's /dev/fd and
+ /dev/stdin emulation
+
+ 11/16
+ -----
+jobs.c
+ - in delete_job, reset_current was being called before the job slot
+ was cleared -- moved after job_slots[job] was set to NULL. Fixes
+ bug reported by Dan Jacobson <jidanni@jidanni.org>
+
+ 11/19
+ -----
+findcmd.c
+ - when the checkhash option is set, fix the check for the hashed
+ pathname being an existing executable file. Old code required a
+ hash table deletion and re-addition. Bug reported by Linda
+ Walsh <bash@tlinx.org>
+
+ 11/21
+ -----
+subst.c
+ - in pos_params, handle case of `start' == 0 by making the list of
+ positional parameters begin with $0
+ - in parameter_brace_substring, increment `len' if start == 0, since
+ we will be adding $0 to the beginning of the list when we process it
+
+doc/{bash.1,bashref.texi}
+ - document new behavior of `0' offset when using substring expansion
+ with the positional parameters
+
+support/shobj-conf
+ - changes to shared object creation for loadable builtins on Mac OS X
+ 10.4 to use libtool instead of ld by specifying -dynamiclib
+ argument and changing options to be appropriate for libtool. This
+ winds up creating a dynamic shared library instead of an executable
+
+ 11/24
+ -----
+{jobs,nojobs}.c
+ - don't set last_asynchronous_pid to the child's pid in the child
+ for asynchronous jobs (for compatibility -- all other posix shells
+ seem to do it this way). This means that (echo $! )& echo $! should
+ display two different pids. Fix from discussion on the
+ austin-group-l list
+
+builtins/mkbuiltins.c
+ - change builtins.c file generation so short doc strings are marked for
+ gettext and available for subsequent translation. Suggestion by
+ Benno Schulenberg <bensberg@justemail.net>
+
+builtins/{bind,cd,hash,inlib,printf,pushd,test,times,ulimit}.def
+lib/malloc/malloc.c
+{shell,subst}.c
+ - fix a few strings that were not marked as translatable. Fix from
+ Benno Schulenberg <bensberg@justemail.net>
+
+lib/readline/misc.c
+ - new function, _rl_revert_all_lines(void). Goes through history,
+ reverting all entries to their initial state by undoing any undo
+ lists.
+
+lib/readline/rlprivate.h
+ - extern declaration for _rl_revert_all_lines
+
+rldefs.h
+ - add #undef HAVE_STRCOLL if STRCOLL_BROKEN is defined, prep to move
+ from config.h.in. Problem reported by Valerly Ushakov
+ <uwe@ptc.spbu.ru>
+
+ 11/25
+ -----
+lib/readline/readline.c
+ - call _rl_revert_all_lines from readline_internal_teardown if the
+ variable _rl_revert_all_at_newline is non-zero
+ - declare _rl_revert_all_lines initially 0
+
+ 11/27
+ -----
+doc/{bash.1,bashref.texi}
+ - make sure to be explicit that `typeset +r' cannot remove the readonly
+ attribute from a variable
+
+ 11/28
+ -----
+lib/sh/zmapfd.c
+ - new file, implements zmapfd(), which takes a file and returns its
+ contents in a string
+
+externs.h
+ - extern declaration for zmapfd
+
+ 11/29
+ -----
+builtins/evalfile.c
+ - in _evalfile, use zmapfd to read the contents of the file into a
+ string, rather than using the size reported by stat and reading that
+ many characters, if the file is not a regular file (for things like
+ named pipes, stat reports the size as 0)
+
+ 12/3
+ ----
+lib/sh/snprintf.c
+ - make sure number() sets the FL_UNSIGNED flag for %x and %X, so
+ fmtulong treats them as unsigned numbers. Fixes bug reported by
+ James Botte <James.M.Botte@lowes.com>
+
+ 12/13
+ -----
+lib/readline/util.c
+ - new function, _rl_ttymsg, for internal warning messages -- does
+ redisplay after printing message
+ - new function, _rl_errmsg, for internal warning/error messages --
+ does not do redisplay after printing message
+
+lib/readline/rlprivate.h
+ - new extern declaration for _rl_ttymsg, _rl_errmsg
+
+lib/readline/{bind,callback,complete,display,rltty}.c
+ - use _rl_ttymsg/_rl_errmsg instead of direct writes to stderr
+
+lib/sh/tmpfile.c
+ - in get_tmpdir(), make sure that $TMPDIR names a writable directory;
+ otherwise skip it. This catches names longer than PATH_MAX, but in
+ case it doesn't test that the length does not exceed PATH_MAX. Fixes
+ heap overrun bug reported by Eric Blake <ebb9@byu.net>
+
+ 12/16
+ -----
+builtin/{set,declare,shopt,trap,wait,bind,complete,enable,fc,history,read,setattr}.def
+doc/{bash.1,bashref.texi}
+ - improvements and clarifications to the help text associated with
+ several builtins, in some cases bringing them into line with the
+ man page text. From Benno Schulenberg <bensberg@justemail.net>
+
+doc/{bash.1,bashref.texi}
+ - add `E' and `T' to the synopsis of the set builtin.
+ From Benno Schulenberg <bensberg@justemail.net>
+
+builtins/{break,exit,fg_bg,hash,jobs,type,ulimit}.def
+builtins/{common,evalfile}.c
+{error,expr,jobs,mksyntax,nojobs,shell,subst,version,siglist}.c
+ - add gettextizing marks to untranslated strings
+ From Benno Schulenberg <bensberg@justemail.net>
+
+ 12/19
+ -----
+builtins/common.c
+ - change display_signal_list (used by `trap -l' and `kill -l') to use
+ five columns instead of 4 to display signal names
+
+builtins/help.def
+ - use the true terminal width instead of assuming 80 when displaying
+ help topics, leaving two characters of whitespace between horizontal
+ descriptions instead of 1
+ - change to print in columns with entries sorted down rather than across
+ (that is, like `ls' rather than `ls -x'). Change inspired by Benno
+ Schulenberg <bensberg@justemail.net>
+
+jobs.h
+ - give values to the JOB_STATE enumerations so they can be used as
+ bitmasks, too
+
+ 12/22
+ -----
+doc/{bash.1,bashref.texi}
+ - change description of `set' to make it clearer that you can use
+ `+' to turn off options
+ - clarify in the description of word splitting that sequences of
+ IFS whitespace at the beginning or end of the string are ignored
+
+ 12/26
+ -----
+doc/bashref.texi
+ - move `shopt' builtin to its own section; change internal references
+ from `Bash Builtins' to the new shopt builtin
+ - new section for builtins that modify shell behavior in `Shell
+ Builtin Commands'; move set and shopt to new section. Changes
+ inspired by Benno Schulenberg <bensberg@justemail.net>
+
+{redir,subst}.c
+ - add MT_USETMPDIR flag to calls to sh_mktmpfd and sh_mktmpname. Bug
+ reported by Eric Blake <ebb9@byu.net>
+
+{configure,Makefile}.in
+ - changes so that the pathname for DEBUGGER_START_FILE is substituted
+ into pathnames.h at make time (allowing more flexibility in setting
+ `prefix' or `datadir') instead of at configure time. Suggested by
+ Nick Brown <nickbroon@blueyonder.co.uk>
+
+shell.c
+ - declaration for have_devfd; initialized from HAVE_DEV_FD
+ - declaration for check_jobs_at_exit; initialized to 0
+ - declaration for autocd; initialized to 0
+
+variables.c
+ - new dynamic variable, BASHPID, always set from return value from
+ getpid() (changes even when $$ doesn't change). Idea from Bruce
+ Korb <bruce.corb@3pardata.com>
+
+builtins/exit.def
+ - if check_jobs_at_exit is non-zero, list jobs if there are any stopped
+ or running background jobs; don't exit shell if any running jobs
+
+execute_cmd.c
+ - in execute_simple_command, if the first word of a simple command is
+ a directory name (after looking for builtins, so `.' isn't caught)
+ that isn't found in $PATH, and `autocd' is non-zero, prefix a "cd"
+ to the command words
+
+builtins/shopt.def
+ - new `checkjobs' option, changes value of check_jobs_at_exit
+ - new `autocd' option, changes value of autocd
+
+pcomplete.c
+ - add COMP_TYPE, set to rl_completion_type, to list of variables set
+ by bind_compfunc_variables and unset by unbind_compfunc_variables
+
+doc/{bash.1,bashref.texi}
+ - document BASHPID
+ - document new shopt `checkjobs' option
+ - document new shopt `autocd' option
+ - document COMP_TYPE completion variable
+
+ 12/29
+ -----
+aclocal.m4
+ - in BASH_SYS_SIGLIST, check HAVE_DECL_SYS_SIGLIST instead of the
+ obsolete and no-longer-supported SYS_SIGLIST_DECLARED
+
+ 12/30
+ -----
+lib/readline/vi_mode.c
+ - add ` (backquote) to the list of vi motion characters
+ - in rl_vi_delete_to, rl_vi_change_to, and rl_vi_yank_to, don't delete
+ character under the cursor if the motion command moves the cursor
+ backward, so add F and T to the commands that don't cause the
+ mark to be adjusted
+ - add ` to the characters that don't cause the mark to be adjusted
+ when used as a motion command, since it's defined to behave that way
+ - when a motion character that may adjust the mark moves point
+ backward, don't adjust the mark so the character under the cursor
+ isn't deleted
+
+lib/readline/complete.c
+ - add variable rl_sort_completion_matches; allows application to
+ inhibit match list sorting
+ - add variable rl_completion_invoking_key; allows applications to
+ discover the key that invoked rl_complete or rl_menu_complete
+
+lib/readline/readline.h
+ - extern declarations for rl_completion_invoking_key and
+ rl_sort_completion_matches
+
+lib/readline/doc/rltech.texi
+ - documented rl_completion_invoking_key and rl_sort_completion_matches
+
+pcomplete.c
+ - export variable COMP_KEY to completion functions; initialized from
+ rl_completion_invoking_key; unset along with rest of completion
+ variables
+
+doc/{bash.1,bashref.texi},lib/readline/doc/rluser.texi
+ - document COMP_KEY
+
+[many files]
+ - changes to make variables and function parameters `const' for better
+ text sharing. Changes originally from Andreas Mohr
+ <andi@rhlx01.fht-esslingen.de>
+
+ 1/4/2007
+ --------
+lib/intl/Makefile.in
+ - use cmp before copying libgnuintl.h to libintl.h -- maybe save a few
+ rebuilds
+
+lib/builtins/Makefile
+ - fixes to build LIBINTL_H if necessary, dependency on this for
+ mkbuiltins.o prevented `make -j 6' from working correctly
+
+ 1/8
+ ---
+subst.c
+ - new function, fifos_pending(), returns the count of FIFOs in
+ fifo_list (process substitution)
+
+subst.h
+ - extern declaration for fifos_pending()
+
+execute_cmd.c
+ - in execute_simple_command, if CMD_NO_FORK is set before we call
+ execute_disk_command, make sure there are no FIFOs in the expanded
+ words (from process substitution) and turn off CMD_NO_FORK if there
+ are, so they can get unlinked when the command finishes
+
+ 1/10
+ ----
+subst.c
+ - read_comsub now takes a flags parameter and returns appropriate W_*
+ flags in it
+ - command_substitute now returns a WORD_DESC *, with the string it used
+ to return as the `word' and `flags' filled in appropriately
+
+subst.h
+ - changed extern declaration for command_substitute
+
+{pcomplete,subst}.c
+ - changed callers of command_substitute appropriately
+
+subst.c
+ - string_extract_verbatim now takes an additional int flags argument;
+ changed callers
+
+ 1/11
+ ----
+support/texi2html
+ - fix problem that caused index links to not be generated if the first
+ index node had a name different than the node name
+
+doc/bashref.texi
+ - encapsulated all indexes into a single `Indexes' appendix; works
+ around bug fixed in texi2html
+
+ 1/12
+ ----
+subst.c
+ - add call to sv_histtimefmt in initialize_variables so HISTTIMEFORMAT
+ from the environment is honored. Fix from Ark Submedes (heh)
+ <archimerged@gmail.com>
+
+lib/readline/histfile.c
+ - make sure that the first character following the history comment
+ character at the beginning of a line is a digit before interpreting
+ it as a timestamp for the previous line
+
+doc/{bash.1,bashref.texi},lib/readline/doc/hsuser.texi
+ - added detail to make it clear exactly how history timestamps are
+ saved to and read from the history file
+
+subst.c
+ - change quote_escapes to add CTLESC before spaces if IFS is null,
+ just in case we have to split on literal spaces later on (e.g., in
+ case of unquoted $@). Corresponding changes to dequote_escapes.
+ Fixes a couple of problems reported by Brett Stahlman
+ <brettstahlman@comcast.net>
+
+ 1/14
+ ----
+subst.c
+ - make same change to read_comsub to add CTLESC before ' ' if $IFS is
+ null, since we will split on literal spaces later
+
+ 1/15
+ ----
+array.c
+ - new function, array_quote_escapes (ARRAY *a), calls quote_escapes
+ on each element of the array in the same way array_quote calls
+ quote_string
+ - call array_quote_escapes if match is not quoted in array_patsub
+ - array_slice is now used, so remove the #ifdef INCLUDE_UNUSED define
+ - change structure of array_subrange to call array_slice to create a
+ new array with the desired subset of elements, then call array_quote
+ or array_quote_escapes as necessary, like array_patsub. Convert to
+ a string by calling array_to_string on the sliced-out array
+
+array.h
+ - new extern declaration for array_quote_escapes
+
+subst.c
+ - since array_patsub now calls quote_escapes as necessary, callers
+ don't need to call it after array_patsub returns. Fixes first bug
+ reported by Brett Stahlman <brettstahlman@comcast.net>
+ - since array_subrange now calls quote_escapes as necessary, callers
+ don't need to call it after array_patsub returns. Same fix as
+ for array_patsub
+
+ 1/31
+ ----
+configure.in
+ - add -DSOLARIS to LOCAL_CFLAGS for solaris x
+
+config-bot.h
+ - don't #undef HAVE_GETCWD if GETCWD_BROKEN and SOLARIS are both
+ defined. Solaris's loopback mount implementation breaks some of the
+ file system assumptions the replacement getcwd uses.
+
+builtins/common.c
+ - if GETCWD_BROKEN is defined, call getcwd with PATH_MAX for the size
+ argument, so it will allocate a buffer for the current working dir
+ with that size, instead of one that's `big enough'
+
+config.h.in
+ - add #undef PRI_MACROS_BROKEN for AIX 4.3.3
+
+pathexp.h
+ - new flag value for quote_string_for_globbing: QGLOB_REGEXP (quoting
+ an ERE for matching as a string)
+
+pathexp.c
+ - change quote_string_for_globbing to understand QGLOB_REGEXP
+
+execute_cmd.c
+ - change execute_cond_node to pass 2 (regexp match), 1 (shell pattern
+ match), or 0 (no matching) to cond_expand_word
+
+subst.c
+ - change cond_expand_word to translate SPECIAL==2 into passing
+ QGLOB_REGEXP to quote_string_for_globbing
+
+locale.c
+ - by default, if all else fails, set shell's idea of locale to ""
+ instead of its idea of `default_locale' -- the library functions
+ behave better with that value
+
+ 2/2
+ ---
+builtins/printf.def
+ - if PRI_MACROS_BROKEN is defined, #undef PRIdMAX (AIX 4.3.3 broken)
+
+ 2/3
+ ---
+Makefile.in,{builtins,doc}/Makefile.in,lib/*/Makefile.in
+ - add assignment for datarootdir as per GNU coding standards
+
+Makefile.in,builtins/Makefile.in,lib/intl/Makefile.in,po/Makefile.in.in
+ - use @localedir@ instead of $(datadir)/locale in assignment
+
+ 2/13
+ ----
+jobs.c
+ - fix compact_jobs_list to not return js.j_lastj, since that is in use
+ and should not be overwritten. Fix from Len Lattanzi
+ <llattanzi@apple.com>
+
+ 2/16
+ ----
+lib/readline/text.c
+ - change rl_forward_char to allow moving to the end of the line when
+ using the arrow keys in vi insertion mode, rather than having the
+ behavior identical between vi command and insertion modes. Change
+ suggested by Hugh Sasse <hgs@dmu.ac.uk>
+
+ 2/19
+ ----
+CWRU/audit-patch
+ - patch from Steve Grubb of RedHat <sgrubb@redhat.com> to make bash
+ audit root's behavior by logging commands using his audit
+ framework. Enabled if the shell's name is `aubash'.
+
+ 3/8
+ ---
+jobs.c
+ - use WSTATUS (p->status) instead of bare p->status. Fix from
+ Jim Brown <jim.brown@rsmas.miami.edu>
+
+ 3/9
+ ---
+lib/readline/{complete,input,isearch,misc,readline,text,vi_mode}.c
+ - make sure cases where rl_read_key returns -1 (usually due to EIO
+ because the controlling tty has gone away) are handled correctly.
+ Prompted by report from Thomas Loeber <ifp@loeber1.de>
+
+ 3/10
+ ----
+sig.c
+ - new function, top_level_cleanup, callable from contexts where some
+ cleanup needs to be performed before a non-fatal call to
+ jump_to_top_level
+
+sig.h
+ - new extern declaration for top_level_cleanup
+
+builtins/common.c
+ - add calls to top_level_cleanup before calls to jump_to_top_level
+ in a builtin command context (no_args(), get_numeric_arg()). Fixes
+ bug reported by Ian Watson
+
+lib/readline/display.c
+ - in _rl_move_cursor_relative, use `new' when comparing against
+ the last invisible character in the prompt, since they both denote
+ buffer indices when in a multibyte locale, whereas `dpos' is a
+ display position
+
+ 3/13
+ ----
+lib/readline/complete.c
+ - set rl_completion_append_character to the default (' ') in
+ set_completion_defaults(). Fixes bug reported by David Emerson
+ <demerson3x@angelbase.com>
+
+ 3/23
+ ----
+builtins/evalfile.c
+ - make sure read() returns a value >= 0 before using it as an index
+ into string[]
+ - use a variable of type `ssize_t' for return value from read()
+ - only try to read the entire contents of a regular file in one shot
+ if the file size is less than SSIZE_MAX. These fix problems
+ reported by hooanon05@yahoo.co.jp.
+
+include/typemax.h
+ - define SSIZE_MAX as 32767 if it's not defined
+
+lib/readline/display.c
+ - in rl_redisplay() and update_line(), if redrawing the prompt because
+ it contains invisible characters, make sure we redraw the character
+ indicating a modified history line and take it into account when
+ computing _rl_last_c_pos
+ - in update_line, if deleting characters and redrawing the new text,
+ make sure we adjust _rl_last_c_pos by wrap_offset in a multibyte
+ locale if the text we're drawing starts before or at the last
+ invisible character in the prompt string. Fixes bug reported on
+ bug-readline by J Pelkey <pelkeyj@gmail.com>
+
+parse.y
+ - when adding at CTLESC character to the current token, do not
+ escape it with CTLESC if pass_next_character indicates that the
+ CTLESC was escaped by a backslash. Fixes bug reported by
+ Paul Bagshaw <paul.bagshaw@orange-ftgroup.com>.
+
+ 3/25
+ ----
+lib/readline/text.c
+ - in rl_forward_char, short-circuit the loop if in emacs mode and
+ rl_point == rl_end. Fixes problem with multibyte locales
+ reported by Len Lattanzi <llattanzi@apple.com>
+
+ 3/29
+ ----
+command.h
+ - new flag for subshell_environment: SUBSHELL_PROCSUB, for process
+ substitution
+
+subst.c
+ - add SUBSHELL_PROCSUB to subshell_environment in process_substitute
+
+ 3/30
+ ----
+doc/Makefile.in
+ - fix installation of bash.info to understand that it is in the build
+ directory, not the source directory
+
+mailcheck.c
+ - new function, init_mail_dates, calls remember_mail_dates only if
+ there are no mailboxes in `mailfiles'
+ - new function, init_mail_file, initializes a FILEINFO, using the
+ last time mail was checked as the mtime and atime (or the time the
+ shell was started if last_time_mail_checked is uninitialized)
+ - call init_mail_file instead of update_mail_file in add_mail_file,
+ called from remember_mail_dates (which is supposed to initialize
+ the list of mail files)
+ - new convenience functions, alloc_mail_file and dispose_mail_file to
+ allocate and free FILEINFO structs
+
+mailcheck.h
+ - extern declaration for init_mail_dates
+
+shell.c
+ - call init_mail_dates instead of remember_mail_dates
+
+ 4/4
+ ---
+builtins/read.def
+ - changes to print $PS2 when a line is continued with a backslash in
+ an interactive shell. This is as POSIX requires
+
+ 4/5
+ ---
+subst.c
+ - make sure quote_escapes is only ever called when the word to be
+ escaped is not marked as double-quoted -- cleaner, and allows us
+ to make certain assumptions
+
+ 4/6
+ ---
+subst.c
+ - change all EX_* defines to begin with SX_
+ - new flag, SX_NOCTLESC, obeyed by string_extract_verbatim, tells it
+ to not obey CTLESC quoting
+ - change quote_escapes to not quote CTLESC with CTLESC if one of the
+ chars in $IFS is CTLESC, since the return value from quote_string
+ will be passed to word splitting and filename generation
+ - change read_comsub to do the same thing for unquoted command
+ substitutions
+ - change list_string to pass SX_NOCTLESC if CTLESC is one of the
+ chars in $IFS, so it will split on CTLESC instead of using it as a
+ quote character
+
+ 4/7
+ ---
+subst.c
+ - slight change to string_extract_verbatim to allow CTLESC to quote
+ CTLNUL even if SX_NOCTLESC is set in the flags passed, to protect
+ the CTLNULs from future calls to remove_quoted_nulls. Only
+ matters when $IFS contains CTLESC
+ - changes to cope with $IFS containing CTLNUL in the same way as the
+ CTLESC changes
+
+builtins/read.def
+ - changes to cope with $IFS containing CTLNUL in the same way as the
+ CTLESC changes
+
+ 4/16
+ ----
+lib/sh/strftime.c
+ - a couple of fixes to the `%z' code
+
+eval.c
+ - add an fflush after printing the auto-logout message
+
+ 4/24
+ ----
+subst.c
+ - add call to top_level_cleanup in exp_jump_to_top_level to get things
+ like unwind-protects and the loop levels cleaned up
+
+{arrayfunc,expr,variables}.c
+ - add calls to top_level_cleanup before jump_to_top_level()
+
+ 4/27
+ ----
+builtins/complete.def
+ - make sure the `command' argument to the -C option is printed with
+ single quotes, since multi-word commands will require them. Bug
+ reported by martin@snowplow.org
+
+execute_cmd.c
+ - change execute_builtin_or_function and execute_subshell_builtin_or_function
+ to call fflush(stdout) after the builtin or function returns, to
+ make sure that all output is flushed before the call returns. It
+ matters on cygwin. Fix suggested by Eric Blake <ebb9@byu.net>
+
+redir.c
+ - in do_redirection_internal, if the file descriptor being acted upon
+ is the same one used by the stdout stream, call fflush(stdout) to
+ make sure all output is flushed before changing the underlying fd
+ out from underneath stdio. Fix suggested by Eric Blake <ebb9@byu.net>
+
+
+ 4/30
+ ----
+
+builtins/common.c
+ - new function, sh_chkwrite(int), fflushes stdout and checks for error;
+ printing an error message and returning a new exit status if there's
+ an error on stdout. Takes exit status as argument; returns new exit
+ status (EXECUTION_FAILURE if write error)
+
+builtins/common.h
+ - new extern declaration for sh_chkwrite
+
+builtins/{alias,cd,complete,echo,fc,history,pushd,shopt,times,trap,type,ulimit,umask}.def
+ - change to use sh_chkwrite to report write errors
+
+builtins/fc.def
+ - if an error occurs while writing commands from the history to a file
+ to be executed, report a write error and return failure without
+ attempting to execute any commands
+
+ 5/1
+ ---
+builtins/{bind,declare,set,setattr}.def
+ - change to use sh_chkwrite to report write errors
+
+ 5/2
+ ---
+lib/readline/input.c
+ - fix off-by-one errors in _rl_get_char (pop_index) and rl_stuff_char
+ (push_index) that caused the 511th character in the buffer to be
+ discarded. Fixes bug reported by Tom Bjorkholm <tom.bjorkholm@ericsson.com>
+
+ 5/8
+ ---
+subst.c
+ - fix parameter_brace_remove_pattern to pass getpattern() newly-allocated
+ memory. If word expansions (particularly brace expansions) are
+ required, the expansion code will free the string passed to
+ expand_word_internal, and we don't want to free unallocated memory
+ (patstr++) or have duplicate frees (patstr). Fixes bug reported on
+ Red Hat bugzilla
+
+ 5/9
+ ---
+lib/readline/signals.c
+ - fix bug in rl_set_signals that caught SIGINT twice and didn't catch
+ SIGTERM. Bug reported by Ed Kwan <ed.kwan@onstor.com>
+
+ 5/18
+ ----
+jobs.c
+ - change compact_jobs_list to return 1 if js.j_lastj == 0 and there is
+ a job in jobs[0]; compact_jobs_list should never return an index
+ already occupied
+ - change reset_job_indices to avoid infinite looping when js.j_firstj
+ == 0 or js.j_firstj == js.j_jobslots upon function entry. Fixes
+ bug reported by osicka@post.cz
+
+ 5/20
+ ----
+
+execute_cmd.c
+ - new variable, executing_builtin, keeps track of number of "levels"
+ of builtins being executed; incremented by execute_builtin; saved
+ and restored by execute_simple_command
+
+subst.c
+ - new variable, assigning_in_environment, set and unset around calls
+ to assign_in_env by the expansion code
+
+variables.c
+ - use executing_builtin and assigning_in_environment to decide whether
+ or not to look into temporary_env when calling find_variable_internal.
+ Fixes problem reported by Kevin Quinn <kevquinn@gentoo.org>
+
+ 5/22
+ ----
+redir.c
+ - change add_undo_redirect to differentiate between file descriptors
+ greater than SHELL_FD_BASE (currently 10) used internally to save
+ others and then being the targets of user redirection and fds that
+ are just the target of user redirections. The former need to have
+ an `exec undo' redirect added to undo it in case exec throws away
+ redirections; the latter does not. We use the close-on-exec flag
+ for this: if it's set, we assume that the file descriptor is being
+ used internally to save another. Fixes problem reported by Ian
+ Jackson <ian@davenant.greenend.org.uk>
+
+shell.c
+ - new function, init_interactive_script(), does interactive initialization
+ for a script run with `bash -i script' -- does everything the same
+ as init_interactive except set `interactive == 1', which causes the
+ shell to read from the standard input, after calling
+ init_noninteractive
+ - call init_interactive_script if a script is run as `bash -i script'.
+ Fixes problem reported by Joseph Michaud <jmichaud@sgi.com>
+
+ 5/24
+ ----
+builtins/printf.def
+ - change vbadd to only call FASTCOPY if the passed buffer length is
+ > 1
+ - if the `-v' option is supplied and `vbuf' is already non-null from a
+ previous `printf -v var' call, set vbuf[0]=0 explicitly instead of
+ relying on vbadd to do it -- vbadd may not be called.
+ - fix PRETURN macro to set vbuf[0] == 0 if vbuf is not freed. These
+ should fix problem reported by Elmar Stellnberger <estellnb@yahoo.de>
+
+lib/readline/display.c
+ - fix update_line to deal with the case where col_lendiff > 0 (meaning
+ the new string takes up more screen real estate than the old) but
+ lendiff < 0 (meaning that it takes fewer bytes to do so). This can
+ happen when a multibyte prompt string is replaced with a longer one
+ containing only single-byte characters (e.g., when doing a reverse
+ i-search). Fixes gentoo bug reported by Peter Volkov
+ <torre_cremata@mail.ru>
+
+builtins/read.def
+ - make sure we only print $PS2 if the standard input is a terminal
+ - new function, read_mbchar, to read a multibyte character so we
+ can make sure we read entire multibyte chars when `read -n' is
+ used, rather than bytes. Only called when -n is supplied.
+ Fixes problem reported by Stanislav Brabec <sbrabec@suse.cz>
+
+ 5/25
+ ----
+externs.h
+ - new #defines for third argument to named_function_string:
+ FUNC_MULTILINE (don't suppress newlines) and FUNC_EXTERNAL (convert
+ to external display form)
+
+subst.h
+ - new extern declaration for remove_quoted_escapes
+
+subst.c
+ - remove_quoted_escapes is now global
+
+print_cmd.c
+ - in named_function_string, if FUNC_EXTERNAL is in the flags argument,
+ call remove_quoted_escapes to convert from internal to external form.
+ Fixes bug reported by Bo Andresen <bo.andresen@zlin.dk>
+
+variables.c,builtins/{declare,setattr,type}.def
+ - use FUNC_MULTILINE in calls to named_function_string as appropriate
+ - add FUNC_EXTERNAL to calls to named_function_string as appropriate
+
+ 5/27
+ ----
+{make_cmd,variables}.c
+ - changes to enable the shell to compile when debugger support is
+ configured out (function_def hash table and access functions). Fixes
+ bug reported by Horst Wente <horst.wente@acm.org>
+
+builtins/help.def
+ - fix bug in `help' two-column printing to avoid referencing
+ shell_builtins[num_shell_builtins]
+
+error.c
+ - in get_name_for_error, use dollar_vars[0] if the name returned from
+ looking in $BASH_SOURCE[0] is the empty string as well as if it's
+ null
+
+ 5/31
+ ----
+arrayfunc.c
+ - change array_value_internal to set *RTYPE to 1 if the reference is
+ array[*] and 2 if the reference is array[@]
+
+subst.c
+ - in parameter_brace_expand_word, set the flags returned by the word
+ desc to include W_HASQUOTEDNULL if array_value returns QUOTED_NULL
+ for an array reference like x[*] and the word is quoted. Fixes bug
+ reported by Christophe Martin <schplurtz@free.fr>
+
+ 6/1
+ ---
+jobs.c
+ - several changes to preserve errno if tcgetpgrp/tcgetattr/tcsetattr
+ fail, for subsequent error messages
+ - change initialize_job_control to turn off job control if the terminal
+ pgrp == -1 or is not equal to shell_pgrp (with an error message)
+ - in initialize_job_control, if the shell has been forced interactive
+ with -i, make sure stderr is hooked to a tty before using it as
+ the controlling terminal. If it's not, try to open /dev/tty and
+ assign it to shell_tty. Fixes problems reported by Derek Fawcus
+ <dfawcus@cisco.com>
+
+ 6/13
+ ----
+support/shobj-conf
+ - changes to support shared object and shared library creation on AIX
+ 5.x and later versions. From Niklas Edmundsson <nikke@acc.umu.se>
+
+ 6/17
+ ----
+builtins/mkbuiltins.c
+ - new array of builtins, posix_builtins, containing builtins listed
+ as special to the command search order by POSIX
+ - add POSIX_BUILTIN to the builtin flags if the builtin name is one
+ that's special to the posix command search order
+
+builtins.h
+ - new define, POSIX_BUILTIN, means that a builtin is special to the
+ posix command search order
+
+ 6/22
+ ----
+lib/readline/display.c
+ - new macro, WRAP_OFFSET, intended to replace W_OFFSET. Takes prompt
+ strings longer than one physical line with invisible characters on
+ the second line into account when calculating the number of
+ invisible characters on the current screen line
+ - use WRAP_OFFSET where appropriate (update_line, _rl_move_cursor_relative)
+ - change update_line to deal with adjusting _rl_last_c_pos in a
+ multibyte environment when the prompt has invisible chars on the
+ second line and redisplay has output the invisible characters
+ - change _rl_move_cursor_relative to adjust _rl_last_c_pos in a
+ multibyte environment when the prompt has invisible chars on the
+ second line and the redisplay draws the invisible character. Fixes
+ redisplay bug reported by Andreas Schwab <schwab@suse.de>
+
+
+ 7/11
+ ----
+
+lib/readline/rltty.c
+ - enable flush-output code for systems other than AIX 4.1. Problem
+ reported by Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ 7/12
+ ----
+lib/readline/display.c
+ - set prompt_invis_chars_first_line from the portion of the prompt
+ following the final newline, instead of from the prefix. Fixes
+ bug reported on the Ubuntu bug list by dAniel hAhler
+ <ubuntu@thequod.de>
+
+ 7/13
+ ----
+variables.c
+ - use native __QNX__ and __QNXNTO__ cpp defines instead of qnx and
+ qnx6, respectively. Patch from Sean Boudreau <seanb@qnx.com>
+
+lib/sh/getcwd.c
+ - #undef HAVE_LSTAT on qnx, so it uses stat instead. Patch from
+ Sean Boudreau <seanb@qnx.com>
+
+ 7/21
+ ----
+builtins/common.c
+ - change sh_invalidnum to be a little smarter about octal and hex
+ numbers and change the message appropriately. Bug originally
+ reported on coreutils list by Jürgen Niinre <Jyrgen.Niinre@emt.ee>
+
+ 7/26
+ ----
+test.c
+ - make sure the string passed to test_unop has only a single character
+ following the `-'. Fixes bug reported by Michael A. Smith
+ <michael@smith-li.com>
+
+parse.y
+ - better input validation: make sure a word looks like a conditional
+ unary operator (-X) before calling test_unop
+
+ 7/28
+ ----
+trap.c
+ - in trap_handler, if it's called directly from the signal handler
+ (e.g., SIGINT sighandler, set by set_sigint_handler), but the
+ trap disposition has been reset to the default between the
+ assignment and receipt of the signal, check that the signal is
+ trapped and issue a warning if the shell was compiled with
+ debugging enabled. Fixes bug reported by Fergus Henderson
+ <fergus@google.com>
+
+ 8/1
+ ---
+lib/readline/{util,histexpand}.c
+ - fixes for small memory leaks from Michael Snyder <msnyder@sonic.net>
+
+ 8/18
+ ----
+Makefile.in
+ - add dependency on builtins/builtext.h to nojobs.o list. Fixes
+ `make -j 5' issue reported by Chris MacGregor <chris@bouncingdog.com>
+
+examples/loadables/Makefile.in
+ - add @LDFLAGS@ to SHOBJ_LDFLAGS assignment -- experimental. Suggested
+ by Mike Frysinger <vapier@gentoo.org>
+
+examples/loadables/{basename,cut,dirname,finfo,head,ln,logname,mkdir,pathchk,print,printenv,push,realpath,rmdir,sleep,tee,truefalse,tty,uname,unlink,whoami}.c
+ - fix up some includes. Fix from Mike Frysinger <vapier@gentoo.org>
+
+ 8/21
+ ----
+histexpand.c
+ - fix another memory leak in history_find_word. Bug report originally
+ from Michael Snyder <msnyder@sonic.net>; test case suggested by Jim
+ Blandy <jimb@codesourcery.com>
+
+ 8/26
+ ----
+subst.c
+ - change to do_assignment_internal to make an assignment to a variable
+ with the `noassign' internal attribute not a variable assignment
+ error.
+ - fix do_assignment_internal so assignment to a `noassign' variable
+ does not cause it to suddenly become visible if it's currently
+ invisible
+
+ 9/3
+ ---
+stringlib.c
+ - change strsub to check whether or not temp is non-null before
+ trying to null-terminate it. Also make sure temp is allocated
+ even if the pattern and replacement strings are empty, and set
+ to a copy of string (like ${foo//})
+ Bug report from Timo Lindfors <timo.lindfors@iki.fi>
+
+ 9/10
+ ----
+{config.h,Makefile,configure}.in,aclocal.m4
+ - new tests for fpurge and __fpurge
+
+lib/sh/fpurge.c, externs.h
+ - new file, fpurge(3) implementation with external decl in externs.h
+
+builtins/common.c
+ - add call to fpurge(stdout) to sh_chkwrite
+
+{redir,execute_cmd}.c
+ - add call to fpurge(stdout) after fflush(stdout) before changing
+ stdout file descriptor and after a builtin or function executes
+
+ 9/12
+ ----
+expr.c
+ - make sure noeval is set to 0 when a longjmp occurs, since it will
+ not be reset otherwise, and it can be set to 1 while processing
+ a {pre,post}-increment or {pre,post}-decrement token
+ - set noeval to 0 at the beginning of evalexp, since it's never
+ called recursively
+
+ 9/14
+ ----
+config-top.h
+ - new builder-modifiable define: DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS
+ Turning it on will cause errors from EPIPE to not be reported by
+ the normal shell write error message mechanism
+
+builtins/common.c
+ - if DONT_REPORT_BROKEN_PIPE_WRITE_ERRORS is defined, don't print an
+ error message from sh_wrerror if errno == EPIPE. Suggestion from
+ Petr Sumbera <petr.sumbera@sun.com>
+
+ 9/19
+ ----
+{jobs,nojobs}.c,jobs.h
+ - add code to retry fork() after EAGAIN, with a progressively longer
+ sleep between attempts, up to FORKSLEEP_MAX (16) seconds. Suggested
+ by Martin Koeppe <mkoeppe@gmx.de>
+
+ 9/21
+ ----
+version.c
+ - change copyright year to 2007
+
+ 9/25
+ ----
+pathexp.c
+ - change quote_string_for_globbing to add a backslash in front of a
+ backslash appearing in the pathname string, since the globbing
+ code will interpret backslashes as quoting characters internally.
+ Bug reported by <herbert@gondor.apana.org.au> on the debian list
+ (443685)
+
+ 10/8
+ ----
+lib/readline/display.c
+ - in update_line, make sure _rl_last_c_pos is > 0 before setting
+ cpos_adjusted (or we actually moved the cursor to column 0 in
+ _rl_move_cursor_relative). Fixes redisplay bug with prompt with
+ only invisible characters reported by dAniel hAhler
+ <ubuntu@thequod.de>
+
+ 10/10
+ -----
+lib/readline/display.c
+ - in rl_redisplay, when calculating the new physical cursor position
+ in a multibyte locale (`tx'), do not call rl_backspace if tx ends
+ up < 0. Rest of fix for bug reported by dAniel hAhler
+ <ubuntu@thequod.de>
+
+ 10/12
+ -----
+lib/sh/getcwd.c
+ - fix memory overwrite problem that's possible if buf is NULL and
+ passed size is greater than the pathname length. Reported by
+ Ian Campbell <ian.campbell@xensource.com>
+
+builtins/ulimit.def
+ - change the multiplier for the -c and -f options (`blocks') to 512,
+ the traditional value (and the one POSIX specifies). Bug reported
+ by Pete Graner <pgraner@redhat.com>
+
+braces.c
+ - pass process substitution through unchanged the same as command
+ substitution. Prompted by suggestion from Stephane Chazelas
+ <stephane_chazelas@yahoo.fr>
+
+lib/readline/input.c
+ - in rl_unget_char, fix off-by-one error when resetting pop_index if
+ it's < 0. Bug reported by Uwe Doering <gemini@geminix.org>
+
+builtins/type.def
+ - change exit status of `type' to not successful if any of the
+ requested commands are not found. Reported by Stephane Chazleas
+ <stephane_chazelas@yahoo.fr>
+
+pcomplete.c
+ - change command_line_to_word_list to use rl_completer_word_break_characters
+ instead of the shell metacharacters to split words, so programmable
+ completion does the same thing readline does internally. Reported
+ by Vasily Tarasov <vtaras@sw.ru>
+
+ 10/16
+ -----
+bashline.c
+ - When completing a command name beginning with a tilde and containing
+ escaped specical characters, dequote the filename before prefixing
+ it to the matches, so the escapes are not quoted again. Reported
+ by neil@s-z.org
+
+ 10/17
+ -----
+expr.c
+ - in readtok(), don't reset lasttp if we've consumed the whitespace
+ at the end of the expression string. Fixes error message problem
+ reported by <anmaster@tele2.se>
+
+ 11/1
+ ----
+builtins/printf.def
+ - change asciicode() to return intmax_t; add multibyte character
+ support instead of assuming ASCII (depending on behavior of system
+ multibyte support functions). Fixes bug reported by Rich
+ Felker <dalias@aerifal.cx>
+
+ 11/5
+ ----
+execute_cmd.c
+ - if redirections attached to a compound command fail, make sure to
+ set last_command_exit_value when returning EXECUTION_FAILURE.
+ Fixes bug reported separately by Andreas Schwab <schwab@suse.de>
+ and Paul Eggert <eggert@cs.ucla.edu>
+
+ 11/9
+ ----
+builtins/read.def
+ - make sure the return value from get_word_from_string is freed if
+ non-null. Fixes memory leak bug reported by Lars Ellenberg
+ <lars.ellenberg@linbit.com>
+
+ 11/10
+ -----
+variables.c
+ - use getpid() as value of seeded_subshell to avoid problems with
+ random number generator not getting re-seeded correctly when
+ subshells are created. Fix from Tomas Janousek <tjanouse@redhat.com>
+
+lib/readline/display.c
+ - in update_line(), when outputting characters at the end of the line,
+ e.g., when displaying the prompt string, adjust _rl_last_c_pos by
+ wrap_offset if the text we're drawing begins before the last
+ invisible character in the line. Similar to fix from 5/24. Fixes
+ bug reported by Miroslav Lichvar <mlichvar@redhat.com>
+
+ 11/14
+ -----
+subst.c
+ - fix $[ expansion case to deal with extract_arithmetic_subst
+ returning NULL (if the `]' is missing) and return the construct
+ unchanged in that case. Fixes tab completion bug reported by
+ Heikki Hokkanen <hoxu@users.sf.net> (debian bug 451263)
+
+lib/readline/mbutil.c
+ - fix _rl_find_next_mbchar_internal to deal with invalid multibyte
+ character sequences when finding non-zero-length chars. Fixes
+ bug reported by Morita Sho <morita-pub-en-debian@inz.sakura.ne.jp>
+
+ 11/15
+ -----
+variables.c
+ - add new function `seedrand' to seed the bash random number
+ generator from more random data. Suggestion from Steve Grubb
+ <sgrubb@redhat.com>
+ - replace the rng in brand() with a slightly better one from FreeBSD
+ (filtered through Mac OS X 10.5). Replacement suggested by
+ Steve Grubb <sgrubb@redhat.com>
+
+ 11/21
+ -----
+configure.in
+ - darwin 9 also requires linking against libreadline.a and
+ libhistory.a because of Apple's questionable decision to ship a
+ libreadline "replacement" that doesn't provide all functions
+
+doc/{bash.1,bashref.texi}
+ - slight change to the text describing the effect of set -e when
+ in a || or && list
+
+ 12/5
+ ----
+jobs.c
+ - fix raw_job_exit_status to correct mixing of int/WAIT values (need
+ to return a WAIT)
+ - arrange so that children run as part of command substitutions also
+ set the SIGINT handler to wait_sigint_handler, since they effectively
+ don't do job control
+ - in wait_for, if a child run as part of a command substitution exits
+ due to SIGINT, resend the SIGINT to the waiting shell with kill(2).
+ This makes sure the exit status propagates
+
+doc/{bash.1,bashref.texi}
+ - tighten up the language describing when bash tries to see if its
+ stdin is a socket, so it can run the startup files. Suggested by
+ Vincent Lefevre <vincent@vinc17.org>
+
+eval.c
+ - in the DISCARD case of a longjmp to top_level, make sure
+ last_command_exit_value is set to EXECUTION_FAILURE if it's 0,
+ but leave existing non-zero values alone
+
+subst.c
+ - in command_substitute, don't reset pipeline_pgrp in the child
+ process -- this means that second and subsequent children spawned by
+ this comsub shell get put into the wrong process group, not the
+ shell's. Fix for bug reported by Ingo Molnar <mingo@elte.hu>
+
+ 12/6
+ ----
+support/shobj-conf
+ - make sure the cases for darwin8.x (Mac OS X 10.4.x) are extended to
+ darwin9.x (Mac OS X 10.5.x). Fixes problem originally reported
+ against readline-5.2 by schneecrash@gmail.com
+
+ 12/8
+ ----
+subst.c
+ - make sure to add the results of (successful) tilde expansion as a
+ quoted string, to inhibit pathname expansion and word splitting.
+ From recent Austin Group interpretation.
+
+include/shtty.h, lib/sh/shtty.c
+ - add ttfd_onechar, ttfd_noecho, ttfd_eightbit, ttfd_nocanon, and
+ ttfd_cbreak to set tty attributes associated with a particular
+ file descriptor (which is presumed to point to a terminal). Support
+ for fix for bug reported by b_bashbug@thebellsplace.com
+
+lib/readline/display.c
+ - make sure we only use rl_invis_chars_first_line when the number of
+ physical characters exceeds the screen width, since that's the
+ only time expand_prompt sets it to a valid value
+
+ 12/12
+ -----
+builtins/set.def
+ - change set_minus_o_option to return EX_USAGE if an invalid option
+ name is supplied. All callers can handle it.
+ - change set_builtin to return what set_minus_o_option returns if it's
+ not EXECUTION_SUCCESS. This allows EX_USAGE errors to abort a
+ shell running in posix mode
+
+ 12/14
+ -----
+builtins/read.def
+ - generalize the calls to the tty attribute functions to maintain a
+ local copy of the terminal attributes and use the fd supplied as
+ the argument to the -u option (default 0). Fix for bug reported
+ by b_bashbug@thebellsplace.com
+
+doc/bashref.texi, lib/readline/doc/{history,rlman,rluser,rluserman}.texi
+ - Slight changes to conform to the latest FSF documentation standards.
+ Patch from Karl Berry <karl@freefriends.org>
+
+ 12/20
+ -----
+execute_cmd.c
+ - after calling clear_unwind_protect_list, make sure we reset
+ parse_and_execute_level to 0, since there's nothing left to
+ restore it if top_level_cleanup tests it. Fixes bug reported
+ by Len Lattanzi <llattanzi@apple.com>
+
+ 12/31
+ -----
+lib/sh/getcwd.c
+ - new function, _path_checkino, checks whether the inode corresponding
+ to the path constructed from the first two arguments is the same as
+ the inode number passed as the third argument
+ - if BROKEN_DIRENT_D_INO is defined, meaning the d_ino/d_fileno
+ member of struct dirent doesn't contain valid values, use
+ _path_checkino instead of directly comparing against d_fileno.
+ Fixes Interix problem reported by Michael Haubenwallner
+ <haubi@gentoo.org>
+
+ 1/7/2008
+ --------
+array.c
+ - fix array_subrange to separate elements in returned string with
+ first char of $IFS if QUOTED is non-zero, since this indicates
+ the caller used ${array[@]:foo}. Fixes bug reported by Lea
+ Wiemann <lewiemann@gmail.com>
+
+ 1/8
+ ---
+subst.c
+ - new function returning a string containing the first character of
+ $IFS: char *ifs_firstchar(int *)
+
+subst.h
+ - extern declaration for ifs_firstchar()
+
+array.c
+ - call ifs_firstchar() to get first character of $IFS when needed
+ (array_subrange() and array_patsub())
+
+ 1/11
+ ----
+lib/readline/display.c
+ - use sentinel variable set at end of init_line_structures to decide
+ whether to call it from rl_redisplay, since early SIGWINCH on
+ Mac OS X that hits during this function can cause _rl_wrapped_line
+ to be referenced before initialization. Fix for bug reported by
+ Len Lattanzi <llattanzi@apple.com>
+
+subst.[ch]
+ - skip_to_delim is now compiled into the shell all the time, not just
+ when readline is linked in
+
+subst.c
+ - use skip_to_delim to find the `/' denoting the end of a pattern
+ in pattern substitution, since it knows more shell syntax than
+ quoted_strchr and understands multibyte characters. Fixes bug
+ reported by Dmitry V Golovashkin <Dmitry.Golovashkin@sas.com>
+
+ 1/15
+ ----
+subst.c
+ - add `flags' argument to skip_to_delim telling it whether or not to
+ set no_longjmp_on_fatal_error; set this flag when calling from the
+ readline completion code
+
+subst.h
+ - update extern declaration for skip_to_delim
+
+ 1/17
+ ----
+subst.c
+ - expand_prompt_string takes a third argument: the initial flags for
+ the WORD
+
+subst.h
+ - change extern declaration for expand_prompt_string to add third arg
+
+bashline.c
+ - pass W_NOCOMSUB as third argment to expand_prompt_string when
+ calling from bash_directory_completion_hook, since we don't want
+ to do command substitution from the completion code
+
+parse.y
+ - change call to expand_prompt_string
+
+ 1/18
+ ----
+doc/Makefile.in
+ - added an `install_builtins' rule to install the builtins.1 man page,
+ preprocessing it with sed to force `.so man1/bash.1', which some
+ versions of man require. Suggestion from Peter Breitenlohner
+ <peb@mppmu.mpg.de>
+ - new target `install_everything' that will install normal documentation
+ and builtins man page
+ - changed uninstall target to remove bash_builtins page from man
+ directory
+
+lib/readline/vi_mode.c
+ - new function, rl_vi_insert_mode, which calls rl_vi_start_inserting
+ to make sure the value of `last command to repeat' is set correctly.
+ Fix from Thomas Janousek <tjanouse@redhat.com>
+ - add support for redoing inserts made with the `I' command. Fix
+ from Thomas Janousek <tjanouse@redhat.com>
+ - add support for redoing inserts made with the `A' command
+
+lib/readline/readline.h
+ - new extern declaration for rl_vi_insert_mode
+
+lib/readline/{misc,readline,vi_mode,vi_keymap}.c
+ - change calls to rl_vi_insertion_mode to rl_vi_insert_mode
+
+ 1/19
+ ----
+builtins/read.def
+ - change timeout behavior when not reading from a tty device to save
+ any partial input in the variable list, but still return failure.
+ This also causes variables specified as arguments to read to be
+ set to null when there is no input available. Fix inspired by
+ Brian Craft <bcboy@thecraftstudio.com>
+
+ 1/21
+ ----
+builtins/fc.def
+ - change computation of last_hist to use remember_on_history instead
+ of a hard-coded `1'. This keeps fc -l -1 in PROMPT_COMMAND from
+ looking too far back
+
+ 1/25
+ ----
+lib/readline/complete.c
+ - fix fnwidth to use string[pos] instead of *string when testing the
+ current character for a control character or rubout
+
+ 2/2
+ ---
+general.c
+ - change posix_initialize to turn off source/. searching $PWD when
+ the file sourced is not found in $PATH. Fixes bug reported by
+ Paolo Bonzini <bonzini@gnu.org> and Eric Blake <ebb9@byu.net>
+
+ 2/9
+ ---
+builtins/*.def
+ - changes to text and formatting suggested by Jan Schampera
+ <jan.schampera@web.de>
+
+ 2/16
+ ----
+bashline.c
+ - change command_word_completion_function to use the word completion
+ found by readline, which matters only when ignoring case is on
+ and the completion found in the file system differs in case from
+ the text the user typed (this is what readline does for normal
+ filename completion). Fixes issue reported by Jian Wang
+ <jwang@a10networks.com.cn>.
+
+ 2/18
+ ----
+builtins/source.def
+ - if the filename passed as an argument contains a `/', don't search
+ $PATH. Not sure why it wasn't like this before
+
+ 2/21
+ ----
+lib/readline/terminal.c
+ - change rl_crlf so that the MINT system on ATARI systems adds a
+ carriage return before the \n
+
+ 2/22
+ ----
+doc/{bash.1,bashref.texi}
+ - added text to the EXIT STATUS section noting that exit statuses
+ fall between 0 and 255, inclusive
+
+support/mkversion.sh
+ - output a #define for DEFAULT_COMPAT_LEVEL (${major}${minor}; e.g. 32)
+ to version.h
+
+version.c
+ - int variable, shell_compatibility_level, set to DEFAULT_COMPAT_LEVEL
+ by default
+
+builtins/shopt.def
+ - new shopt variable, compat31, sets shell_compatibility_level to 31
+ (or back to default if unset)
+
+execute_cmd.c
+ - in execute_cond_node, restore bash-3.1 behavior of quoted rhs of
+ regexp matches if shell_compatibility_level == 31
+
+ 2/28
+ ----
+lib/readline/rltty.c
+ - set readline_echoing_p = 1 if tcgetattr fails and sets errno to
+ EINVAL, as Linux does when the fd is a pipe. Reported by Mike
+ Frysinger <vapier@gentoo.org>
+
+ 3/6
+ ---
+{MANIFEST,Makefile.in},lib/sh/{casemod,uconvert,ufuncs}.c
+ - new library sources from bash-4.0-devel tree
+
+lib/sh/spell.c
+ - moved cdspell() here from builtins/cd.def, renamed dirspell()
+
+externs.h
+ - new declarations for extern functions from new library files
+ - new extern declaration for lib/sh/spell.c:dirspell()
+
+builtins/cd.def
+ - call extern library function dirspell(); remove static cdspell()
+
+builtins/read.def
+ - when read times out, make sure input_string is null-terminated before
+ assigning any partial input read to the named variables
+
+ 3/10
+ ----
+lib/glob/xmbsrtowcs.c
+ - cut the number of memory allocations in xdupmbstowcs by not keeping
+ track of the indices if the caller hasn't asked for it
+
+ 3/17
+ ----
+builtins/fc.def
+ - make sure the adjustment to i in fc_gethnum uses the same formula
+ fc_builtin uses to calculate last_hist
+ - make sure that every time fc_gethnum is called, the fc command last
+ in the history list has not yet been deleted, since fc_gethnum
+ assumes that it has not. Fix from John Haxby <john.haxby@oracle.com>
+
+lib/readline/complete.c
+ - new private library function, _rl_reset_completion_state(), used to
+ reset any completion state internal to the library when a signal
+ is received
+ - call _rl_reset_completion_state() before returning from
+ rl_complete_internal
+
+lib/readline/rlprivate.h
+ - new extern declaration for _rl_reset_completion_state
+
+lib/readline/signals.c
+ - call _rl_reset_completion_state from rl_signal_handler on SIGINT.
+ This fixes one of the problems identified by Mika Fischer
+ <mf+ubuntu@zoopnet.de>
+
+pcomplete.c
+ - programmable_completions now saves pointer to the compspec it's
+ working with in new global variable CURCS
+ - new function, pcomp_set_readline_variables, that sets or unsets
+ readline variables based on a passed flags value (COPT_FILENAMES,
+ etc.)
+ - new function, pcomp_set_compspec_options, to set or unset bits in
+ the options word of a passed compspec (default CURCS)
+ - only call bash_dequote_filename (via rl_filename_dequoting_function)
+ from pcomp_filename_completion_function if the readline state
+ word indicates word completion is in progress
+
+pcomplete.h
+ - new extern declaration for curcs
+ - new extern declaration for pcomp_set_readline_variables
+ - new extern declaration for pcomp_set_compspec_options
+
+bashline.c
+ - fix bash_dequote_filename to implement shell quoting conventions:
+ 1. Inhibit backslash stripping within single quotes
+ 2. Inhibit backslash stripping within double quotes only if
+ the following character is one of the special ones
+ - call pcomp_set_readline_variables from attempt_shell_completion
+ instead of doing the equivalent inline
+
+ 3/18
+ ----
+bracecomp.c
+ - make sure we sort array of matches in byte order (using strcmp). so
+ the brace calculations work correctly even when the locale orders
+ characters like aAbBcC...zZ. Fixes bug reported by Torsten Nahm
+ <torstennahm@torstennahm.de>
+
+ 3/20
+ ----
+lib/readline/{rltty,signals}.c
+ - move block_sigint and release_sigint from rltty.c to signals.c; add
+ _rl_ prefix to make them public to the library; change callers.
+ From Jan Kratochvil <jan.kratochvil@redhat.com>
+
+lib/readline/rlprivate.h
+ - new extern declarations for _rl_block_sigint and _rl_release_sigint
+
+lib/readline/display.c
+ - add calls to _rl_block_sigint and _rl_release_sigint to rl_redisplay,
+ since it maniupluates global data structures. Fix from Jan
+ Kratochvil <jan.kratochvil@redhat.com>
+
+builtins/printf.def
+ - change calls to asprintf and manually adding to vbuf to use calls
+ to vsnprintf against vbuf directly -- if the number of characters
+ to be written overflows the buffer, realloc the buffer and use
+ vsnprintf again. This should reduce the memory used by printf.
+ Idea from Yuya Katayama <yuya999@gmail.com>
+
+lib/readline/doc/rltech.texi
+ - documented rest of readline's state flags, including RL_STATE_CALLBACK
+ - documented rl_save_state and rl_restore_state
+
+ 3/27
+ ----
+lib/readline/{rlprivate.h,{display,readline,rltty,terminal,text}.c}
+ - rename readline_echoing_p to _rl_echoing_p for namespace consistency
+
+lib/readline/{rlprivate.h,{callback,readline,util}.c}
+ - rename readline_top_level to _rl_top_level for namespace consistency
+
+builtins/ulimit.def
+ - new -b (socket buffer size) and -T (number of threads) options
+
+array.c
+ - fix bug in calculation of the array element assignment string length:
+ use length of `is' instead of `indstr'. Reported as ubuntu bug
+ #202885 by John McCabe-Dansted
+
+builtins/setattr.def
+ - new function, show_all_var_attributes, displays attributes and
+ values for all shell variables (or shell functions) in a reusable
+ format
+
+builtins/common.h
+ - new extern declaration for show_all_var_attributes
+
+builtins/declare.def
+ - change `declare -p' to print out all variable attributes and values,
+ and `declare -fp' to print out all function attributes and
+ definitions. Inspired by request from John Love-Jensen
+ <eljay@adobe.com>
+
+doc/{bash.1,bashref.texi}
+ - document new -b and -T options to ulimit
+ - tighten up language describing AND and OR lists
+ - add description of new behavior of `declare -p'
+
+ 3/28
+ ----
+pcomplete.c
+ - rename curcs -> pcomp_curcs
+ - new global completion variable, pcomp_curcmd, the current command
+ name being completed
+
+builtins/complete.def
+ - new builtin, compopt, allows completion options for command names
+ supplied as arguments or the current completion being executed to
+ be modified. Suggested by Mika Fischer <mf+ubuntu@zoopnet.de>
+
+ 3/30
+ ----
+doc/{bash.1,bashref.texi},lib/readline/doc/rluser.texi
+ - document new compopt builtin
+
+ 4/5
+ ---
+support/shobj-conf
+ - change solaris10 stanza to use -fPIC to fix 64-bit sparc_v9/solaris10
+ compilations. Fix from Fabian Groffen <grobian@gentoo.org>
+
+builtins/read.def
+ - added `-i text' option, inserts `text' into line if using readline.
+ Suggested by many, used some ideas from Kevin Pulo <kevin@pulo.com.au>
+
+doc/{bash.1,bashref.texi}
+ - document new `-i text' option to read builtin
+
+ 4/7
+ ---
+lib/readline/bind.c
+ - new settable variable, `history-size', sets the max number of
+ entries in the history list
+
+doc/bash.1,lib/readline/doc/{rluser.texi,readline.3}
+ - document new `history-size' settable readline variable
+
+ 4/8
+ ---
+builtins/complete.def
+ - change build_actions calling sequence to take a struct with `other'
+ (non-action) flag arguments (-p, -r)
+ - add support for `-E' option to build_actions and complete builtin --
+ modifies or displays (internal) `_EmptycmD_' completion spec
+
+bashline.c
+ - change attempt_shell_completion to try programmable completion on an
+ `empty' command line and return the results
+
+doc/bash.1,lib/readline/doc/rluser.texi
+ - documented new `-E' option to `complete'
+
+ 4/9
+ ---
+bashhist.c
+ - new variable, `enable_history_list', used to reflect setting of
+ `-o history' option
+ - change bash_history_{enable,disable,reinit} to set enable_history_list
+ as well as remember_on_history
+
+builtins/set.def
+ - use `enable_history_list' instead of `remember_on_history' to keep
+ value of `-o history' option
+
+builtins/evalstring.c
+ - instead of unwind-protecting remember_on_history, use a function to
+ restore it to the value of `enable_history_list' after
+ parse_and_execute runs the commands in the string. This allows
+ history to be turned off in a startup file, for instance. Problem
+ reported by Dan Jacobson <jidanni@jidanni.org>
+
+ 4/11
+ ----
+bashline.c
+ - limited support for completing command words with globbing characters
+ (only a single match completed on TAB, absolute or relative
+ pathnames supported, no $PATH searching, some support for displaying
+ possible matches, can be used with menu completion).
+ Suggested by Harald Koenig <h.koenig@science-computing.de>
+
+print_cmd.c
+ - change redirection printing to output r_err_and_out as `&>file',
+ since the man page says that's the preferred form
+
+ 4/12
+ ----
+builtins/*.def
+ - change long doc so the first line is a short description
+ - add `Exit Status:' section to each longdoc describing exit values
+
+builtins/help.def
+ - new `-d' option to print short description of each utility
+ - new `-m' option to print description of each builtin in a
+ pseudo-manpage format (inspired by ksh93)
+
+doc/{bash.1,bashref.texi}
+ - document new `-d' and `-m' options to `help'
+
+builtins/mapfile.def
+ - new builtin, `mapfile', imported from bash-4.0-devel branch
+
+tests/{mapfile.{data,right,tests},run-mapfile}
+ - tests for `mapfile' builtin
+
+doc/{bash.1,bashref.texi}
+ - added description of `mapfile' builtin
+
+MANIFEST,Makefile.in,builtins/Makefile.in
+ - added entries for mapfile source files
+
+arrayfunc.[ch]
+ - new function, bind_array_element, to support mapfile builtin
+
+ 4/20
+ ----
+expr.c
+ - fix operator precendence in expcond(): term after the `:' is
+ a conditional-expression, not a logical-OR-expression (using C
+ terminology). Bug reported by <archimerged@gmail.com>
+
+ 4/22
+ ----
+bashintl.h
+ - new P_ define for using ngettext to decide on plural forms
+ (currently unused)
+
+ 4/25
+ ----
+execute_cmd.c
+ - in execute_disk_command, if the command is not found, search for
+ a shell function named `command_not_found_handle' and call it
+ with the words in the command as arguments. Inspired by Debian
+ feature.
+
+doc/{bash.1,bashref.texi}
+ - document new command_not_found_handle behavior in COMMAND EXECUTION
+ section
+
+configure.in
+ - change default version to bash-4.0-devel
+
+ 4/28
+ ----
+variables.c
+ - change push_func_var and push_exported_var to call
+ stupidly_hack_special_variables if the temporary variable is going
+ to be disposed. This undoes any internal changes caused by a local
+ variable assignment in the environment or in a shell function. Bug
+ reported by Morita Sho <morita-pub-en-debian@inz.sakura.ne.jp> in
+ http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=478096
+
+ 5/3
+ ---
+builtins/fc.def
+ - fixed a problem caused by change of 1/21 to use remember_on_history,
+ since it's turned off by parse_and_execute(), but can cause the
+ last command in history to be deleted and leave last_hist pointing
+ beyond the end of the history list. edit_and_execute_command can
+ do this.
+
+bashline.c
+ - new define, RL_BOOLEAN_VAR_VALUE, to take a readline boolean variable
+ and get its value as 0 or 1 (consider making readline global)
+ - put tty back into canonical mode before calling parse_and_execute in
+ edit_and_execute_command and then back into raw mode after it
+ returns. Fixes problem identified by <koersen@gmail.com>.
+
+ 5/4
+ ---
+lib/glob/glob.c
+ - code to support `globstar' option: GX_GLOBSTAR and two internal
+ flags. Changes to skipname, glob_vector, mbskipname, glob_filename.
+ New function finddirs().
+
+lib/glob/glob.h
+ - new defines to support globstar code
+
+builtins/shopt.def
+ - new shell option, `globstar', enables special handling of `**' in
+ glob patterns -- matches all directories recursively
+
+pathexp.h
+ - extern declaration for glob_star
+
+pathexp.c
+ - break inline code out of quote_globbing_chars into a separate
+ function to decide whether a character is a globbing char:
+ glob_char_p
+ - change shell_glob_filename to call glob_filename with the
+ GX_GLOBSTAR flag if glob_star is set
+
+doc/{bash.1,bashref.texi}
+ - document new `globstar' shell option
+
+arrayfunc.c
+ - new function, broken out of quote_array_assignment_chars:
+ quote_assign; extended from old code to make sure that globbing
+ chars and chars in $IFS are quoted when displaying assignment
+ statements, especially in compound array assignments
+
+ 5/5
+ ---
+bashline.c
+ - new variable, dircomplete_spelling, controls spelling correction
+ of directory names when doing filename completion
+ - change bash_directory_completion_hook to incorporate spelling
+ correction if initial canonicalization of directory name fails
+
+builtins/shopt.def
+ - new shell option, `dirspell', enables and disables spelling
+ correction of directory names during word completion
+
+builtins/read.def
+ - support for fractional timeout values (ival.uval); uses uconvert
+ and falarm/setitimer
+
+config.h.in
+ - new `HAVE_SETITIMER' define
+
+configure.in
+ - look for setitimer(2), define HAVE_SETITIMER if found
+
+doc/{bash.1,bashref.texi}
+ - document new `dirspell' shopt option
+ - document new fractional values to `read -t timeout'
+
+ 5/6
+ ---
+assoc.[ch]
+ - new files, basic support for associative array implementation
+
+general.h
+ - new extern declarations for sh_openpipe, sh_closepipe, trim_pathname
+
+general.c
+ - new functions: sh_openpipe to create a pipe and move the file
+ descriptors to a high range; sh_closepipe, to close pipe fds and
+ clean up, and trim_pathname, to replace portions of a pathname
+ with `...' (for prompting)
+
+jobs.c
+ - don't set last_asynchronous_pid in child shell (messes up $!, among
+ other things)
+
+parse.y,parser.h
+ - moved definitions of parser flags to parser.h
+
+array.c
+ - imported array_modcase (case-changing operations on arrays) from
+ 4.0-devel branch
+
+array.h
+ - new extern declaration for array_modcase
+
+lib/readline/complete.c
+ - new variable, rl_menu_completion_entry_function, generator for
+ rl_menu_complete
+ - new menu completion `browsing' implementation, with several
+ improvements over the old code. Inspired by Sami Pietila
+ <sami.pietila@gmail.com>
+
+lib/readline/readline.h
+ - extern declaration for rl_menu_completion_entry_function
+
+ 5/8
+ ---
+lib/readline/complete.c
+ - add support for a third argument to fnprint and print_filename,
+ which supports replacing a specified portion of the pathnames
+ printed when displaying possible completions with a `...' (or
+ `___', if the prefix would be confused with a portion of the
+ filename)
+ - new variable, _rl_completion_prefix_display_length, sets the
+ number of characters in a common prefix to be replaced with an
+ ellipsis when displaying possible completions
+ - add support to _rl_display_match_list to find the length of the
+ common prefix of all items being displayed, and passing that
+ value to print_filename for possible replacement with an ellipsis
+ if that length is longer than _rl_completion_prefix_display_length
+
+lib/readline/bind.c
+ - add support for retrieving value of history-size variable to
+ _rl_get_string_variable_value
+ - new bindable variable, completion-prefix-display-length. When
+ displaying possible completions, matches with a common prefix
+ longer than this value have the common prefix replaced with an
+ ellipsis
+ - support for retrieving value of completion-prefix-display-length
+ variable to _rl_get_string_variable_value
+ - new bindable variable, revert-all-at-newline: if enabled, causes
+ all changes in history lines to be undone before readline returns
+ after processing a newline
+
+doc/bash.1,lib/readline/doc/{readline.3,rluser.texi}
+ - document new `completion-prefix-display-length' variable
+ - document new `revert-all-at-newline' variable
+
+execute_cmd.c
+ - change execute_builtin to not inherit the `-e' flag into commands
+ executed by the `command' or `source/.' builtins if we are supposed
+ to be ignoring the return value. This is like `eval'. Fixes bug
+ reported by Hiroshi Fujishima <hirobo@tonteki.org>
+
+ 5/10
+ ----
+variables.c
+ - when reading the initial environment, don't create variables with
+ names that are not valid shell identifiers. Fixes bug reported by
+ Stephane Chazleas <stephane_chazelas@yahoo.fr>
+
+ 5/13
+ ----
+subst.c
+ - fix string_quote_removal to gracefully handle the case where a
+ backslash is the final character in the string (leaves the backslash
+ in place). Fixes bug reported by Ian Robertson
+ <iroberts@u.washington.edu>
+
+ 5/16
+ ----
+support/checkbashisms
+ - Perl script that purports to check for bash-specific features in a
+ shell script. Lifted from Debian via ubuntu
+
+ 5/20
+ ----
+lib/readline/display.c
+ - in update_line, when deciding whether or not to adjust _rl_last_c_pos
+ in a multibyte environment after printing the last line of a multiline
+ prompt with invisible characters on the first and last lines, use
+ the number of inivisible chars on the first line in the calculation
+ deciding whether or not we're past the last invisible character and
+ need to adjust the cursor position. Old code used the number of
+ invisible chars on the last prompt line. Fixes bug reported by
+ stuff@slinkp.com.
+ - in update_line, when fixing _rl_last_c_pos after drawing the first
+ line of the prompt, use the number of invisible chars on the first
+ line as the offset, instead of the total number of invisible chars
+ - use prompt_multibyte_characters, the number of multibyte chars in
+ the prompt string, to short-circuit some relatively expensive
+ multibyte text processing in rl_redisplay
+
+ 5/21
+ ----
+variables.c
+ - new function, reinit_special_variables(), a hook for special
+ vars that need their hook functions called when they're unset as
+ a result of the shell reinitializing itself to run a script
+
+shell.c
+ - shell_reinitialize now calls reinit_special_variables
+ - shell_reinitialize now calls bashline_reset
+
+variables.h
+ - new extern declaration for reinit_special_variables
+
+bashline.c
+ - new function, bashline_reset(), called when the shell reinitializes
+ in shell_reinitialize. Right now, just resets
+ bash_readline_initialized to 0.
+
+bashline.h
+ - new extern declaration for bashline_reset()
+
+ 5/23
+ ----
+bashhist.c
+ - new function, bash_clear_history, clears the history and resets any
+ associated internal bash state
+
+bashhist.h
+ - extern declaration for bash_clear_history
+
+builtins/history.def
+ - call bash_clear_history instead of clear_history for `history -c'.
+ Fixes part of problem reported by Scott McDermott
+ <scott.m.mcdermott@gmail.com>
+ - decrement history_lines_this_session in delete_histent, called for
+ `history -d'
+
+builtins/history.def,bashhist.[ch]
+ - move delete_histent() to bashhist.c; rename to bash_delete_histent
+ - move delete_last_history() to bashhist.c; rename to
+ bash_delete_last_history()
+
+ 5/25
+ ----
+braces.c
+ - add another parameter to mkseq(), the number of digits to put into
+ each member of a numeric sequence (width), changes to determine
+ any zero-padding go into expand_seqterm
+ - changes to expand_seqterm to allow user-specified increments
+
+bashline.[ch],shell.c,sig.c
+ - switched names of bashline_reinitialize and bashline_reset to better
+ reflect their functions
+ - when searching $PATH for directories to use for command completion,
+ make sure to free `current_path' before going out of scope
+ - new bindable function `dabbrev-expand', which is more or less
+ menu completion using dynamic history completion as the generator
+ - changes to bash_execute_unix_command to set variables for the
+ executed command like programmable completion: READLINE_LINE
+ (rl_line_buffer) and READLINE_POINT (rl_point)
+ - change to bash_execute_unix_command to allow the executed command
+ to change the readline line buffer by modifying the value of
+ READLINE_LINE and to change rl_point by modifying the value of
+ READLINE_POINT
+
+common.h
+ - new SEVAL_ defines for later parse_string changes from 4.0-devel
+ branch
+
+command.h
+ - new defines for new &>> r_append_err_and_out redirection
+
+builtins/evalstring.c
+ - new function, parse_string, parses a command from a passed string
+ and returns the number of characters consumed. For satisfying
+ Posix rules when parsing command substitutions, from bash-4.0-devel
+ branch
+ - split out common prolog code from parse_string and
+ parse_and_execute into a separate function called from both
+
+parse.y
+ - small changes to add symbols needed for parse_string
+ - parser change to add `|&' as synonym for `2>&1 |'; translation is
+ performed at parse time so |& never shows up in output of
+ print_command, for instance. Picked up from zsh, merged in from
+ bash-4.0-devel branch
+
+parse.y,{redir,copy_cmd,dispose_cmd,make_cmd,print_cmd}.c
+ - implement new &>> r_append_err_and_out (like >>foo 2>&1); merged
+ in from bash-4.0-devel branch
+
+doc/{bash.1,bashref.texi},lib/readline/doc/rluser.texi
+ - document new optional increment in brace expansion
+ - document new zero-padded fixed-width integer brace expansion
+ - document new `dabbrev-expand' bindable readline command
+ - document new effects of `bind -x' setting and reading the values of
+ READLINE_LINE and READLINE_POINT
+ - document new |& synonym for `2>&1 |' pipeline operator
+
+ 5/26
+ ----
+parse.y - recognize new ;& and ;;& case action list terminator tokens and
+ implement them in the grammar, setting CASEPAT_FALLTHROUGH and
+ CASEPAT_TESTNEXT flags as appropriate
+
+print_cmd.c
+ - print new ;& and ;;& case clause action list terminators as
+ appropriate
+
+execute_cmd.c
+ - implement new case clause action list terminators:
+ ;& - fall through to actions associated with next pattern list
+ ;;& - fall through to tests in next pattern list
+
+doc/{bash.1,bashref.texi}
+ - document new ;& and ;;& case clause action list terminators
+
+ 5/28
+ ----
+jobs.c
+ - change waitchld so it treats SIGCHLD like SIGINT if `wait' is being
+ executed, and allows wait to jump out before running any trap set
+ on SIGCHLD. Fixes debian bug #483016 reported by Miroslav Rudisin
+ <miero@atrey.karlin.mff.cuni.cz>
+ - run_sigchld_trap is no longer static, so the trap code in trap.c
+ can call it
+ - change run_sigchld_trap to call set_impossible_sigchld_trap instead
+ of just using a call to restore_default_signal
+
+jobs.h
+ - new extern declaration for run_sigchld_trap
+
+trap.c
+ - fix run_pending_traps to run a SIGCHLD trap if the trap handler isn't
+ set to IMPOSSIBLE_TRAP_HANDLER
+ - in trap_handler, don't reset the SIGCHLD trap handler to trap_handler
+ if MUST_REINSTALL_SIGHANDLERS is defined
+ - new function, set_impossible_sigchld_handler, sets the trap string
+ associated with SIGCHLD to IMPOSSIBLE_TRAP_HANDLER; used as a sentinel
+ by run_sigchld_trap and maybe_set_sigchld_handler
+ - change maybe_set_sigchld_handler to set the SIGCHLD trap string only
+ if the current value is IMPOSSIBLE_TRAP_HANDLER. This ensures that
+ any traps on SIGCHLD set in a SIGCHLD handler will persist. Fixes
+ debian bug #483016 reported by Miroslav Rudisin
+ <miero@atrey.karlin.mff.cuni.cz>
+
+trap.h
+ - new extern declaration for set_impossible_sigchld_trap
+
+ 5/31
+ ----
+parse.y
+ - new function: parse_comsub(), parses $(...) by parsing command
+ between parens and making sure the next token is `)'. From
+ the bash-4.0-devel branch
+ - new function: xparse_dolparen, helper function for parsing
+ command substitutions in $(...). Called from subst.c to extract
+ a command substitution during word expansion. From bash-4.0-devel
+ branch
+ - new function: rewind_input_stream(). Rewinds bash_input.location.string
+ back to where it was before the shell parsed a $() command
+ substitution. From bash-4.0-devel branch
+ - changes to parse_matched_pair to combine most of the flag variables
+ (was_dollar, in_comment, and so on) into a local flags word
+
+ 6/2
+ ---
+parse.y
+ - call trim_pathname, which retains only the last $PROMPT_DIRTRIM
+ directories and replaces the intervening characters with `...',
+ when expanding \w and \W
+
+doc/{bash.1,bashref.texi}
+ - document the effect of setting PROMPT_DIRTRIM
+
+ 6/3
+ ---
+builtins/ulimit.def
+ - make the multiplier (block size) for -c and -f 512 bytes only if in
+ Posix mode and 1024 bytes otherwise (as in previous versions). Uses
+ POSIXBLK and BLOCK_SIZE defines to parameterize size based on value
+ of posixly_correct
+
+doc/bashref.texi
+ - document this addition to posix mode
+
+builtins/common.c
+ - change get_numeric_arg to have a calling sequence and return value
+ more closely mimicking general.c:legal_number(), with the addition
+ of a flags word
+ - add extra value for `fatal' argument to get_numeric_arg to force it
+ to return failure to the caller rather than longjmping
+
+builtins/common.h
+ - change prototype declaration for get_numeric_arg
+
+builtins/{break,shift}.def
+ - change calls to get_numeric_arg to deal with new semantics and calling
+ sequence
+
+builtins/history.def
+ - display_history now returns an int
+ - change calling sequence for get_numeric_arg in display_history
+ - display_history now returns failure to the caller if get_numeric_arg
+ detects an invalid number, rather than jumping back to the top level
+ - use value returned by display_history as return status of history
+ builtin, filtered through sh_chkwrite
+ - history no longer aborts compound commands on invalid arguments.
+ fixes problem reported by Chu Li <chul@cn.fujitsu.com>
+
+{braces,subst}.c
+ - extract_command_subst now takes a third flags argument; passed flags
+ are ORd into flags passed to other functions; changed callers
+
+subst.h
+ - move SX_* defines here from subst.c so parse.y:xparse_dolparen can
+ see them and behave appropriately
+ - extract_command_subst now takes a third flags argument; change
+ prototype
+
+subst.c
+ - change extract_command_subst to call xparse_dolparen when extracting
+ a $() construct
+ - change calls to extract_delimited_string to extract_command_subst
+ as appropriate
+ - if command_substitute returns a NULL word desc, don't call
+ dispose_word_desc on it
+
+parse.y
+ - change xparse_dolparen to use the SX_* flags now in subst.h
+
+ 6/16
+ ----
+subst.c
+ - in quote_list, set W_HASQUOTEDNULL flag in the word if quote_string
+ turns "" into CTLNUL
+ - in dequote_list, turn off W_HASQUOTEDNULL flag in the word if
+ dequote_string turns CTLNUL into ""
+ - new function, string_list_pos_params, encapsulates everything
+ needed to turn the positional parameters or an array indexed with
+ '@' or '*' into a string, including taking care of quoting and
+ using the first char of $IFS, when used in another expansion like
+ pattern removal or pattern substitution
+ - change list_remove_pattern, pos_params, pos_params_pat_subst to
+ call string_list_pos_params. Fixes problems reported by
+ Stephane Chazelas <stephane_chazelas@yahoo.fr>
+
+ 6/22
+ ----
+variables.h
+ - include assoc.h for associative arrays
+ - defines for case-modifying expansions and associative array variables
+ - sh_var_assign_func_t functions now take an extra char * parameter
+
+ 6/25
+ ----
+variables.c
+ - change declarations and definitions of sh_var_assign_func_t functions
+ to add the extra char * parameter: null_assign, null_array_assign,
+ assign_seconds, assign_random, assign_lineno, assign_subshell,
+ assign_dirstack
+ - change calls to var->assign_func to add extra char * argument
+ - broke part of body of dispose_variable out into a new function,
+ dispose_variable_value, which knows how to free all kinds of shell
+ variable data
+ - changes to deal with variables with the internal `nofree' attribute
+
+arrayfunc.c
+ - change calls to var->assign_func to add extra char * argument
+ - bind_array_var_internal now takes an extra `char *key' argument
+ - additions for associative array implementation; from bash-4.0-devel
+ tree
+
+arrayfunc.[ch],subst.c
+ - expand_compound_array_assignment now takes the variable as the first
+ argument (SHELL_VAR *); changed function definition and callers
+
+builtins/set.def
+ - changes to handle associative arrays in `unset'
+
+{execute_cmd,command}.h
+ - definitions for coproc implementation; from bash-4.0-devel tree
+
+variables.c
+ - new functions for associative arrays: make_new_assoc_variable,
+ make_local_assoc_variable
+
+ 6/26
+ ----
+variables.c
+ - more infrastructure for associative arrays; from bash-4.0-devel tree
+ - infrastructure for handling assignments to variables with
+ case-modifying attributes; from bash-4.0-devel tree
+
+config.h.in
+ - add #defines controlling case-modifying variable attributes and word
+ expansions
+
+configure.in
+ - add enable options for case-modifying variable attributes and word
+ expansions (--enable-casemod-attributes and --enable-casemod-expansions,
+ respectively); from bash-4.0-devel tree
+
+execute_cmd.c
+ - add code to fix_assignment_words to handle assignment statements to
+ "assignment builtins" that seem to be associative arrays. Imperfect
+
+subst.c
+ - array_remove_pattern now takes a SHELL_VAR * as its first argument
+ instead of an ARRAY *; from the bash-4.0-devel tree
+ - changes to array_length_reference for associative arrays; from the
+ bash-4.0-devel tree
+ - changes to get_var_and_type for associative arrays; from the
+ bash-4.0-devel tree
+ - changes to parameter_brace_substring for associative arrays; from the
+ bash-4.0-devel tree
+ - changes to param_expand for associative arrays; from the
+ bash-4.0-devel tree
+
+builtins/declare.def
+ - changes for associative arrays: new `-A' option, changes to make
+ local and global associative array variables; from the bash-4.0-devel
+ tree
+
+ 6/27
+ ----
+execute_cmd.c
+ - in execute_command_internal, when short-circuiting execution
+ because `breaking' or `continuing' is non-zero, preserve the exit
+ status by returning `last_command_exit_value' instead of an
+ unconditional EXECUTION_SUCCESS. Fixes bug reported by Roman
+ Rakus <rrakus@redhat.com>
+
+ 6/28
+ ----
+variables.c
+ - fix get_var_and_type to appropriately handle references like
+ ${varname[0]}, where `varname' is a scalar variable
+
+make_cmd.[ch],parse.y
+ - make_here_document now takes a second argument: the current line
+ number; changed caller (gather_here_documents)
+
+builtins/setattr.def
+ - added support for associative arrays and the `-A' variable attribute
+ option; from the bash-4.0-devel tree
+
+subst.c
+ - change code that transforms `declare -A xxx=(yyy)' to perform the
+ internal `declare -A xxx' before doing the variable assignment,
+ because associative arrays have to be declared before being assigned
+ to as such; uses new function make_internal_declare
+
+ 6/30
+ ----
+subst.[ch]
+ - dequote_escapes is now external; add declaration in subst.h
+ - remove_quoted_nulls is now external; add declaration in subst.h
+
+array.[ch]
+ - new functions for completeness: array_dequote, array_dequote_escapes,
+ array_remove_quoted_nulls
+ - array_subrange now calls array_remove_quoted_nulls for "${array[*]}".
+ Fixes bug reported by Vitor De Araujo <ux386@yahoo.com.br>
+ - array_patsub now calls array_remove_quoted_nulls for "${array[*]}"
+ - array_modcase now calls array_remove_quoted_nulls for "${array[*]}"
+ - array_patsub now handles the mflags&MATCH_QUOTED case appropriately
+ (that implies "${array[@]}")
+
+subst.c
+ - new functions for case-modifying word expansion suppport:
+ pos_params_casemod, parameter_brace_casemod; from bash-4.0-devel branch
+
+assoc.c
+ - new functions for completeness: assoc_remove_quoted_nulls
+ - assoc_patsub now calls assoc_remove_quoted_nulls for "${assoc[*]}"
+ - assoc_modcase now calls assoc_remove_quoted_nulls for "${array[*]}"
+ - assoc_patsub now handles the mflags&MATCH_QUOTED case appropriately
+ (that implies "${assoc[@]}")
+
+ 7/1
+ ---
+assoc.[ch]
+ - new function, assoc_subrange: takes a hash table, converts it to a
+ word list, and performs the subrange and indexing on that list
+ - new functions for completeness: assoc_dequote, assoc_dequote_escapes
+
+subst.c
+ - verify_substring_values now takes the variable SHELL_VAR * as its
+ new first argument; changed callers
+ - change verify_substring_values to handle associative arrays using the
+ number of elements as the upper bound
+ - brought in code to do case-modifying word expansions from
+ bash-4.0-devel branch, conditional on CASEMOD_EXPANSIONS
+
+input.c
+ - if the read(2) in getc_with_restart returns -1/EAGAIN, turn off
+ non-blocking mode on the file descriptor and try again. Fixes
+ problem reported by Glynn Clements <glynn@clements.plus.com>
+
+ 7/2
+ ---
+doc/{bash.1,bashref.texi}
+ - documented new case-modifying word expansions
+
+make_cmd.c
+ - change make_here_document to display a warning message including the
+ start line of a here document if it ends up delimited by EOF.
+ Addresses issue raised by Richard Neill <rn214@hermes.cam.ac.uk>
+
+subst.c
+ - in do_assignment_internal, make sure the `invisible' attribute is
+ unset before returning success
+
+ 7/3
+ ---
+config-top.h
+ - add `CASEMOD_CAPCASE' define to include or exclude the ~[~] word
+ expansion and the `capcase' variable attribute (declare -c)
+
+builtins/declare.def
+ - add support for manipulating the case-modifying attributes (new
+ declare -clu); from bash-4.0-devel branch
+
+builtins/setattr.def
+ - add support for reporting case-modifying attributes (-clu attributes);
+ from bash-4.0-devel branch
+
+doc/{bash.1,bashref.texi}
+ - specify that the read builtin timing out results in a return value
+ greater than 128
+ - document new `-l' and `-u' options to declare/typeset/local. Leave
+ `-c' undocumented for now
+
+ 7/4
+ ---
+make_cmd.[ch]
+ - make_coproc_command: construct a coproc; from bash-4.0-devel tree
+
+dispose_cmd.c
+ - dispose coproc command; from bash-4.0-devel tree
+
+copy_cmd.c
+ - copy a coproc command; from bash-4.0-devel tree
+
+print_cmd.c
+ - print a coproc command; from bash-4.0-devel tree
+
+shell.c
+ - dispoe the current coproc on shell exit; from bash-4.0-devel tree
+
+redir.c
+ - when closing redirects as part of user redirections, check whether
+ or not active coprocess fds are being closed and close the coproc
+ if so; from bash-4.0-devel tree
+
+config.h.in
+ - add define for COPROCESS_SUPPORT to include coprocesses
+
+configure.in
+ - add support for configuring coprocesses into and out of the build
+
+jobs.c
+ - in waitchld, check whether or not a coproc processs has exited;
+ from the bash-4.0-devel tree
+
+ 7/5
+ ---
+doc/bashref.texi
+ - document new --enable-coprocesses option that includes coprocess
+ support
+
+execute_cmd.c
+ - add functions for coprocess support, including execute_coproc and
+ code to call it when command->type == cm_coproc; from
+ bash-4.0-devel tree
+
+lib/sh/fdprintf.c
+ - new library function fdprintf(int fd, const char *format, ...);
+ printf to a file descriptor
+
+{configure,config.h}.in
+ - support for detecting fdprintf and compiling in replacement
+
+Makefile.in,lib/sh/Makefile.in
+ - add rules to include fdprintf.o
+
+doc/{bash.1,bashref.texi}
+ - documented coprocesses and `coproc' reserved word
+
+ 7/7
+ ---
+subst.c
+ - fix array_length_reference to use MB_STRLEN instead of STRLEN, so
+ multibyte characters in array values are computed correctly. Fixes
+ bug reported by Wang Xin <wxinee@gmail.com>
+
+ 7/10
+ ----
+jobs.c
+ - new function, maybe_give_terminal_to (old, new, flags), sets the
+ terminal pgrp to NEW if and only if it's currently set to OLD
+ - call maybe_give_terminal_to when the parent sets the terminal pgrp
+ to the pipeline pgrp in stop_pipeline, so we don't give the
+ terminal to the new job's pgrp unless it's currently owned by the
+ shell. Fixes race condition described by Joe Peterson
+ <joe@skyrush.com>, where parent bash may change tty pgrp after a
+ grandchild (interactive bash child of su) has changed it to
+ something else. The call to maybe_give_terminal_to makes explicit
+ a previously-implicit assumption
+
+aclocal.m4
+ - remove dependency on writable /tmp by creating directories in
+ build directory
+
+shell.c
+ - make changes to how bash sets no_line_editing and running_under_emacs
+ to deal with various emacs terminal emulators; use better check
+ for `eterm', since bash sends $PWD to eterm with control sequences
+ that confuse other programs. Problem reported by Micah Cowan
+ <micah@cowan.name>
+
+
+ 7/12
+ ----
+print_cmd.c
+ - break code that prints here-documents into two functions:
+ print_heredoc_header, which prints the operator and delimiter, and
+ print_heredoc_body, which prints the body text and closing delimiter
+ - change print_redirection to call print_heredoc_{header,body}
+ - sentinel variable, printing_connection, used when printing a command
+ of type `connection' (|, &&, ||, etc.)
+ - change print_redirection_list to save any here documents it finds
+ while printing a connection and save them in `deferred_heredocs'
+ - new function, print_deferred_heredocs, called from print_redirection
+ in the cm_connection case, calls print_heredoc_header for all the
+ here documents, then prints the operator (|, &&, ||, etc.), then
+ the here-document body. This preserves syntactic correctness; the
+ old code printed the control operator after the body of the here
+ document. Fixes bug reported by <buport@figpost.com>
+
+ 7/16
+ ----
+locale.c
+ - in set_locale_var, print a warning message if setlocale() fails any
+ time it's called -- required some code restructuring
+
+ 7/19
+ ----
+support/shobj-conf
+ - support for mingw32, contributed by Carlo Bramix
+ <carlo.bramix@libero.it>
+
+ 7/23
+ ----
+execute_cmd.c
+ - added support (currently unused) to manage a list of coprocs
+
+ 7/25
+ ----
+bashline.c
+ - add extern declarations for literal_history and force_append_history
+
+builtins/shopt.def
+ - include "bashhist.h" instead of having extern declarations for the
+ appropriate history variables
+
+parser.h
+ - new parser_state value: PST_HEREDOC, set when reading body of here-
+ document in parse.y:read_secondary_line
+
+parse.y
+ - set PST_HEREDOC bit in parser_state when reading a secondary line
+ for the body of a here-document
+ - change read_secondary_line to save lines in the body of a here-
+ document in the shell history list if remember_on_history is
+ set. Fixes bug reported by Gene Golub <gene_golub@hotmail.com>
+
+ 8/4
+ ---
+configure.in
+ - changed to 4.0-alpha
+
+lib/readline/readline.h
+ - changed constants to reflect readline-6.0 version
+
+ 8/11
+ ----
+lib/readline/signals.c
+ - make sure we don't use SIGWINCH without checking whether or not it's
+ defined. Fix from Pedro Alves <pedro@codesourcery.com>
+
+ 8/12
+ ----
+
+COPYING
+ - updated to GPLv3; edits in every file with a copyright or license
+ declaration to update to gpl3
+
+version.c
+ - update extended version info to latest gnu standard
+
+ 8/17
+ ----
+subst.c
+ - change exp_jump_to_top_level to only call top_level_cleanup if
+ parse_and_execute_level is 0. If it's not, the longjmp to
+ parse_and_execute will run the unwind-protect stack. Fixes bug
+ most recently reported by Roman Rakus <rrakus@redhat.com>
+
+ 8/18
+ ----
+support/config.{guess,sub}
+ - updated to newer versions from autoconf-2.62 distribution
+
+ 8/20
+ ----
+subst.c
+ - fixed parameter_brace_substring to differentiate between indexed and
+ associative arrays when computing second offset, instead of
+ assuming indexed array
+
+ 8/21
+ ----
+support/xcase.c
+ - simple program to convert input from lower to uppercase and vice
+ versa. Now used by coproc test suite, since `tr -u' is not
+ portable.
+
+ 8/22
+ ----
+doc/bash.1
+ - fixed description of the bindable edit-and-execute commands to note
+ they check $VISUAL first, instead of $FCEDIT. Fixed bug reported
+ by
+
+[bash-4.0-alpha frozen]
+
+ 8/28
+ ----
+[bash-4.0-alpha released]
+
+ 9/1
+ ---
+builtins/evalstring.c
+ - fixed typo in parse_string (ostring used uninitialized). Bug
+ reported by Andreas Schwab <schwab@suse.de>
+
+subst.c
+ - fix return value of parameter_brace_expand to set the
+ W_HASQUOTEDNULL flag in the returned WORD_DESC * if the return value
+ from parameter_brace_remove_pattern is a quoted null string. Fixes
+ bug reported by Andreas Schwab <schwab@suse.de>
+ - set the W_HASQUOTEDNULL flag in the return value from
+ parameter_brace_expand if the return value from parameter_brace_patsub
+ is a quoted null string
+
+ 9/6
+ ---
+builtins/read.def
+ - change read -t 0 to return success if there is input available to be
+ read -- allows scripts to poll for input. Uses input_avail libsh
+ function
+
+ 9/9
+ ---
+externs.h
+ - fix extern fpurge declaration -- use HAVE_DECL_FPURGE instead of
+ NEED_FPURGE_DECL, since the former is set by `configure'
+
+jobs.h
+ - add extern declaration for close_pgrp_pipe
+ - add a new job state JNONE (-1) to the enum
+
+jobs.c
+ - include execute_cmd.h for extern declarations for coproc functions
+
+subst.c
+ - include builtins/builtext.h for extern declarations for functions
+ implementing builtins (e.g., declare_builtin)
+
+arrayfunc.c
+ - include "pathexp.h" for extern declaration for glob_char_p
+
+braces.c
+ - add extern declaration for `asprintf'
+
+lib/readline/rlprivate.h
+ - add extern declarations for _rl_trace, _rl_tropen
+
+lib/sh/zgetline.c
+ - add extern declarations for zread, zreadc
+
+lib/sh/mktime.c
+ - include "bashansi.h" for string function declarations
+
+builtins/common.h
+ - add extern declaration for parse_string
+
+trap.c
+ - include jobs.h for extern declaration for run_sigchld_trap
+
+general.c
+ - fix call to strtoimax in legal_number; if ep == string when function
+ returns, the number was not converted, even if errno is not set.
+ Fix from Paul Jarc <prj@case.edu>
+
+ 9/11
+ ----
+[prayers for the victims of 9/11/2001]
+
+builtins/return.def
+ - call no_options, as Posix requires. This also has the effect of
+ disallowing negative return values unless they're prefixed by `--'
+
+ 9/13
+ ----
+builtins/bind.def
+ - add an error message when bind is used without line editing active,
+ instead of just returning an error status
+
+variables.c
+ - make sure make_local_variable never creates visible variables with
+ a value, whether or not a variable with the same name existed in a
+ previous context. This is consistent with ksh93. Fix from
+ <neil@s-z.org>
+
+ 9/16
+ ----
+execute_cmd.c
+ - add call to CHECK_TERMSIG in shell_execve after the call to execve
+ returns. Recommended by Roman Rakus <rrakus@redhat.com>
+ - add QUIT check in execute_connection after executing first command
+ in a `&' connection
+
+ 9/22
+ ----
+execute_cmd.c
+ - new semaphore variable, executing_list, incremented every time a
+ list (command1;command2 or command1 || command2 or command1 &&
+ command2) is executed; used as sentinel for rest of shell
+
+sig.c,builtins/evalstring.c
+ - set executing_list to 0 when throwing execution back to top level;
+ make sure to unwind-protect it in appropriate places
+
+jobs.c
+ - if a pipeline is killed by SIGINT while executing a list (when
+ executing_list is non-zero), make sure the shell acts as if an
+ interrupt occurred. The behavior is dependent on the shell
+ compatibility level being > 32 (bash-4.0 and above)
+
+ 9/23
+ ----
+redir.c
+ - don't bother reporting an error with a file descriptor, even if
+ the errno is EBADF, if the redirection error (e.g., NOCLOBBER)
+ can't have anything to do with the fd. Fixes bug reported by
+ "David A. Harding" <dave@dtrt.org>, debian bug #499633.
+
+ 9/24
+ ----
+builtins/declare.def
+ - make `declare [option] var' (and the `typeset' equivalent) create
+ invisible variables, instead of assigning the null string to a
+ visible variable. Fixes bug reported by Bernd Eggink <monoped@sudrala.de>
+
+ 9/25
+ ----
+builtins/common.[ch]
+ - new function, builtin_warning(), like builtin_error but for warning
+ messages
+
+builtins/bind.def
+ - experimental: print a warning, but go on, if line editing not active
+ when bind is invoked. Suggested by Rocky Bernstein
+ <rocky.bernstein@gmail.com>
+
+ 10/3
+ ----
+test.c
+ - use same_file instead of directly comparing st_dev and st_ino when
+ comparing files in filecomp(). From mingw32 patches submitted
+ by Hector Chu <hkcc2@cantab.net>
+
+ 10/4
+ ----
+
+redir.c
+ - in redirection_error(), use `error' instead of errno when comparing
+ against EBADF. From mingw32 patches submitted by Hector Chu
+ <hkcc2@cantab.net>
+
+shell.c
+ - in unset_bash_input(), reset bash_input.type to st_none after
+ closing the default buffered fd. From mingw32 patches submitted
+ by Hector Chu <hkcc2@cantab.net>
+
+builtins/cd.def
+ - ignore CDPATH when in privileged mode. Suggested by Paul Jarc
+ <prj@po.cwru.edu>
+
+variables.c
+ - change sv_globignore to only act if privileged mode is not enabled.
+ Suggested by Paul Jarc <prj@po.cwru.edu>
+
+doc/bash.1,bashref.texi
+ - document new treatment of CDPATH and GLOBIGNORE when privileged
+ mode is enabled
+
+builtins/read.def
+ - change prompt printing to occur after terminal is set to no-echo
+ mode. Based on suggestion from Stephane Chazelas
+ <stephane_chazelas@yahoo.fr>
+
+lib/readline/signals.c
+ - new variables to keep track of special characters corresponding to
+ SIGINT, SIGQUIT, and SIGTSTP
+ - new variable to keep track of whether tty is echoing control
+ characters corresponding to SIGINT, SIGQUIT, and SIGTSTP
+ - new function, _rl_echo_signal_char(int sig) to display the tty
+ special char generating SIGINT, SIGQUIT, or SIGTSTP. Based on
+ idea and code from Joe Peterson <joe@skyrush.com>
+ - call rl_echo_signal_char in rl_signal_handler: if the terminal
+ settings indicate it, readline will echo characters that generate
+ keyboard signals
+
+lib/readline/rltty.c
+ - set _rl_intr_char, _rl_quit_char, and _rl_susp_char to special
+ characters that generate signals from keyboard
+ - set _rl_echoctl if ECHOCTL tty flag is set
+
+lib/readline/rlprivate.h
+ - extern declarations for _rl_intr_char, _rl_quit_char, and
+ _rl_susp_char
+ - extern declaration for _rl_echoctl
+
+lib/readline/readline.h
+ - extern declaration for rl_echo_signal_char()
+
+lib/readline/doc/rltech.texi
+ - document rl_echo_signal_handler(): available for applications
+ that install their own signal handlers
+
+ 10/5
+ ----
+execute_cmd.c
+ - fix errexit logic to not cause the shell to exit when a command in
+ a pipeline fails. Fixes bug reported by Marcin Owsiany
+ <marcin@owsiany.pl>
+
+ 10/14
+ -----
+builtins/evalstring.c
+ - don't short-circuit execution in parse_and_execute if we want to
+ run an exit trap. Fixes bug reported by Steffen Kiess
+ <s-kiess@web.de>
+
+ 10/18
+ -----
+parse.y
+ - fix error production to only call YYACCEPT if the shell is currently
+ interactive and not in parse_and_execute (so parser errors in
+ things like eval will correctly set $?). Fixes bug reported by
+ marco-oweber@gmx.de
+
+execute_cmd.c
+ - make sure variable name errors in execute_for_command and non-
+ identifier function names in execute_intern_function set the
+ return status to EX_BADUSAGE (2), not EX_USAGE (258)
+
+parser.h
+ - new parser state, PST_REPARSE
+
+parse.y
+ - turn PST_REPARSE on in parse_string_to_word_list
+ - in parse_matched_pair, if parsing a single-quoted string and
+ PST_REPARSE is set, don't requote CTLESC or CTLNUL. Fixes bug with
+ compound array assignment using $'\x7f' reported by Antonio Macchi
+ <antonio_macchi@alice.it>
+
+ 10/23
+ -----
+configure.in
+ - define LOCAL_LDFLAGS as `-z interpose' on Solaris 8, 9, and 10 to
+ allow the bash malloc to interpose the libc malloc when called by
+ library functions pre-bound to the libc malloc. Suggested by
+ Serge Dussud <Serge.Dussud@Sun.COM>
+
+ 10/26
+ -----
+doc/bash.1
+ - add single-sentence descriptions to rest of parameter expansions.
+ Suggested by Ken Irving <fnkci@uaf.edu>
+
+ 10/27
+ -----
+subst.c
+ - rearrange code in skip_to_delims to allow quote characters and other
+ shell expansion characters to be delimiters
+ - add new flags value for inverting search: skip to the next character
+ NOT in the set of delimiters passed as an argument
+
+subst.h
+ - define for new SD_INVERT flag value for skip_to_delims
+
+ 10/28
+ -----
+bashline.c
+ - new bindable functions: shell-forward-word and shell-backward-word.
+ Like forward-word and backward-word, but understand shell quoting
+ and use shell metacharacters and whitespace as delimiters.
+ Suggested by Andre Majorel <amajorel@teaser.fr>
+ - new bindable functions: shell-kill-word and shell-backward-kill-word.
+ Like kill-word and backward-kill-word, but understand shell quoting
+ and use shell metacharacters and whitespace as delimiters.
+ Suggested by Andre Majorel <amajorel@teaser.fr>
+
+doc/bash.1,lib/readline/doc/rluser.texi
+ - documented shell-forward-word and shell-backward-word
+ - documented shell-kill-word and shell-backward-kill-word
+
+ 11/1
+ ----
+redir.c
+ - add extra argument to add_undo_redirect: fdbase. FD used to save
+ a file descriptor must be > fdbase if fdbase >= SHELL_FD_BASE. A
+ value of -1 for fdbase means to just use SHELL_FD_BASE. Fixes bug
+ with 0<&10 reported by Clark Jian Wang <dearvoid@gmail.com>
+
+ 11/5
+ ----
+unwind_prot.c
+ - new function: have_unwind_protects(); returns 1 if unwind_protect_list
+ is not empty
+
+unwind_prot.h
+ - extern declaration for have_unwind_protects
+
+builtins/evalstring.c
+ - in parse_and_execute_cleanup, make sure that we don't call
+ run_unwind_frame and expect it to decrement parse_and_execute_level
+ if there's no unwind_protect_list, since there's a while loop in
+ throw_to_top_level that calls parse_and_execute_cleanup as long as
+ parse_and_execute_level is non-zero
+
+ 11/9
+ ----
+variables.c
+ - fix the assign function for COMP_WORDBREAKS to allocate new memory
+ to store as the variable's value, to avoid freeing memory twice
+ if the variable is unset after rl_completer_word_break_characters
+ is freed and reallocated. Fix from Mike Stroyan <mike@stroyan.net
+
+ 11/11
+ -----
+bashline.c
+ - new function to reset the value of rl_completer_word_break_characters
+ while honoring setting of `hostcomplete': reset_completer_word_break_chars.
+
+bashline.h
+ - new extern declaration for reset_completer_word_break_chars.
+
+variables.c
+ - call reset_completer_word_break_chars in sv_comp_wordbreaks when the
+ variable is unset
+
+[bash-4.0-beta frozen]
+
+ 11/16
+ -----
+subst.c
+ - call set_pipestatus_from_exit in exp_jump_to_top_level so that
+ failed expansions that set $? will set $PIPESTATUS. Fixes bug
+ reported by Eric Blake <ebb9@byu.net>
+
+ 11/20
+ -----
+general.c
+ - new 'file_exists(fn)' primitive; just calls stat(2)
+
+general.h
+ - new extern declaration for file_exists
+
+bashline.c
+ - add `~' to rl_filename_quote_characters so make_quoted_replacement
+ will call bash_quote_filename for words containing `~'. Then
+ bash_quote_filename can make choices based on that
+ - change quote_word_break_chars to backslash-quote the tilde in a
+ filename with a leading tilde that exists in the current directory,
+ since we want to inhibit tilde expansion in this case
+
+execute_cmd.c
+ - call file_isdir from shell_execve instead of stat(2) directly
+
+bashhist.c
+ - use file_exists and file_isdir primitives instead of calling stat
+
+ 11/21
+ -----
+redir.c
+ - When undoing saving of non-standard file descriptors (>=3) using
+ file descriptors >= SHELL_FD_BASE, we set the saving fd to be
+ close-on-exec and use a flag (RX_SAVCLEXEC) to decide how to set
+ close-on-exec when the fd is restored. Set flag in add_undo_redirect,
+ check in do_redirection_internal. Fixes problem reported by Andreas
+ Schwab <schwab@suse.de>
+
+ 11/26
+ -----
+subst.c
+ - fix param_expand to have expansions of $@ and $* exit the shell if
+ there are no positional parameters and `set -u' is enabled. Fixes
+ bug reported by Dan Jacobson <jidanni@jidanni.org>
+
+ 11/27
+ -----
+lib/readline/display.c
+ - fix update_line to not call space_to_eol if current cursor position
+ (_rl_last_c_pos) indicates that we're already at end of line.
+ Partial fix for bug reported by Mike Frysinger <vapier@gentoo.org>
+ - in update_line, don't call insert_some_chars if that will start
+ before the last invisible character in the prompt string and not
+ draw the entire prompt string. More of the partial fix for bug
+ reported by Mike Frysinger <vapier@gentoo.org>
+ - fix update_line to adjust _rl_last_c_pos by wrap_offset when adding
+ characters beginning before the last invisible character in the
+ prompt. New code is same as previously existed in a different code
+ path. Rest of fix for bug from Mike Frysinger <vapier@gentoo.org>
+ - fix assignment of newline breaks (inv_lbreaks) to correctly account
+ for prompts longer than two screen lines containing invisible
+ characters. The assumption is that part of the invisible characters
+ are on the first line (prompt_invis_chars_first_line) and the
+ remainder are on the last (wrap_offset - prompt_invis_chars_first_line).
+ Fix is in rl_redisplay. part of fix for bug reported by
+ "Wesley J. Landaker" <wjl@icecavern.net> in
+ http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=265182
+ [TENTATIVE]
+ - fix _rl_move_cursor_relative to correctly offset `dpos' by `woff'
+ when there are invisible characters on lines after the second by
+ using (_rl_screenwidth*_rl_last_v_pos) when seeing whether or not
+ we just wrote some invisible characters. Rest of fix for bug
+ reported in http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=265182
+ [TENTATIVE]
+
+ 12/11
+ -----
+sig.c
+ - reset the execution context before running the exit trap in
+ termsig_handler
+
+general.c
+ - set and unset terminate_immediately like interrupt_immediately in
+ bash_tilde_expand
+
+builtins/read.def
+ - change terminate_immediately to a counter instead of a flag, as
+ interrupt_immediately is used
+
+lib/readline/display.c
+ - slight change to fix from 11/27 to deal with prompts longer than a
+ screen line where the invisible characters all appear after the
+ line wrap. Fixes bug reported by Andreas Schwab <schwab@suse.de>
+
+builtins/{echo,printf}.def
+ - increment terminate_immediately at entry; decrement before returning.
+ Fix for bug reported by Ralf.Wildenhues@gmx.de
+
+ 12/16
+ -----
+subst.c
+ - fix off-by-one error in /dev/fd version of add_fifo_list; make
+ sure we add to totfds when it is == fd, not just when fd > totfds.
+ Fixes bug reported by marciso@gmail.com
+
+[bash-4.0-beta2 frozen]
+
+ 12/29
+ -----
+doc/{bash.1,bashref.texi}
+ - document more clearly that when not in Posix mode, command
+ substitution does not inherit the -e option. From bug report from
+ Freddy Vulto <fvulto@gmail.com>
+
+{execute_cmd,sig,builtins/evalstring}.c
+ - sentinel variable to keep track of whether or not we're supposed to
+ ignore the failure status of a command executed in a command
+ substitution even if the `-e' option is set: comsub_ignore_return
+ - increment and decrement comsub_ignore_return in execute_simple_command
+ before calling expand_words
+ - in parse_and_execute, if comsub_ignore_return is non-zero and the
+ SUBSHELL_COMSUB bit is set in subshell_environment, enable the
+ CMD_IGNORE_RETURN flag in every command executed from the passed
+ string. Fixes problem reported by Freddy Vulto <fvulto@gmail.com>
+ - make sure to reset comsub_ignore_return every time we throw to the
+ top level, like executing_list flag
+
+ 1/2/2009
+ --------
+parse.y
+ - fix to rewind_input_stream to handle case of $(...) command
+ substitution followed by a quoted literal newline. Report and fix
+ from Andreas Schwab <schwab@suse.de>
+
+ 1/7
+ ---
+
+subst.c
+ - fix match_wpattern and match_upattern to prefix a `*' to the
+ pattern even if it starts with a `*(' (if extglob is enabled)
+ before checking whether or not it can match anywhere in the
+ string. Fixes bug reported by os@sernet.de.
+
+[bash-4.0-rc1 frozen]
+
+ 1/9
+ ---
+locale.c
+ - since setlocale() doesn't set errno to anything meaningful,
+ don't include the strerror() result in the error message if
+ it fails
+ - make sure the error messages printed when setlocale fails are
+ localizable
+
+ 1/11
+ ----
+lib/readline/histexpand.c
+ - make sure that every time history_no_expand_chars is tested, we
+ also call the history_inhibit_expansion_function if it's set.
+ Fixes bug reported by Yang Zhang <yanghatespam@gmail.com>
+
+ 1/12
+ ----
+trap.c
+ - make sure to call parse_and_execute with the SEVAL_RESETLINE bit
+ set in the flags so it will reset the line number when running
+ the trap commands. Partial fix for bug reported by
+ peter360@fastmail.us
+
+ 1/14
+ ----
+builtins/reserved.def
+ - document `coproc' so it can be used with `help' builtin. Pointed
+ out by Pierre Gaston <pgas@freeshell.org>
+
+lib/sh/casemod.c
+ - added two new flags: CASE_UPFIRST and CASE_LOWFIRST to casemod
+ the first character of the passed string and pass the rest
+ through unchanged. Fixes bug reported by Jan Schampera
+ <jan.schampera@web.de>
+
+externs.h
+ - new defines for CASE_UPFIRST and CASE_LOWFIRST
+
+subst.c
+ - use CASE_UPFIRST for ^ and CASE_LOWFIRST for , casemod operators
+
+builtins/mapfile.def
+ - call zreset() before calling first zgetline(), to clean out any
+ remaining data in local buffer used by zreadc. Fixes bug
+ reported by Pierre Gaston <pierre.gaston@gmail.com>
+
+ 1/15
+ ----
+lib/sh/zread.c
+ - renamed zreadintr to zreadretry -- not perfect, but better
+ - new functions: zreadintr, which just calls read so it can be
+ interruptible, and zreadcintr, which is like zreadc but uses
+ zreadintr to fill the buffer
+
+lib/sh/zgetline.c
+ - in zgetline, when zread/zreadc return <= 0, make sure line is
+ non-null before assigning to line[nr]
+
+builtins/mapfile.def
+ - return an error right away if the supplied array variable name
+ refers to a readonly or noassign array
+ - set interrupt_immediately so calls to zgetline can be
+ interrupted. Fixes bug reported by Pierre Gaston
+ <pierre.gaston@gmail.com>
+ - if interactive, pass the SEVAL_INTERACT and SEVAL_NOHIST flags
+ to parse_and_execute when calling callbacks. Fixes bug reported
+ by Pierre Gaston <pierre.gaston@gmail.com>
+ - add `readarray' as a synonym for mapfile
+
+doc/{bash.1,bashref.texi}
+ - document behavior of mapfile builtin adding index of array element
+ to be assigned as additional argument to callback string. Reported
+ by Pierre Gaston <pierre.gaston@gmail.com>
+ - document readarray as synonym for mapfile
+
+builtins/common.c
+ - new error function, sh_ttyerror(set), prints an error message having
+ to do with setting or getting terminal attributes
+
+builtins/read.def
+ - print error message if read fails to set terminal attributes
+
+ 1/16
+ ----
+execute_cmd.c
+ - new function, coproc_reap, calls coproc_dispose if sh_coproc is
+ marked as COPROC_DEAD
+ - new function, cpl_reap, disposes coprocs marked as COPROC_DEAD
+ from coproc list
+ - change coproc_pidchk to just mark the coproc as dead instead of
+ calling coproc_dispose, so we don't call unsafe functions from
+ a signal handler. Fixes bug reported by Andreas Schwab
+ <schwab@suse.de>
+
+execute_cmd.h
+ - new extern declaration for coproc_reap
+
+command.h
+ - new flags for c_flags member of a struct coproc
+
+{jobs,nojobs}.c
+ - add call to coproc_reap in cleanup_dead_jobs, which will do the
+ right queueing or blocking of SIGCHLD
+
+trap.c
+ - modify change from 1/12 to not reset the line number when running
+ the DEBUG and RETURN traps
+
+ 1/18
+ ----
+lib/sh/casemod.c
+ - change default operations to work on entire passed string instead
+ of breaking into words at non-alpha-numerics. Use new
+ CASE_USEWORDS flag to enable by-word behavior. Fixes bug reported
+ by Jan Schampera <jan.schampera@web.de>
+
+builtins/printf.def
+ - in vbprintf, bracket each call to vsnprintf (which uses the args
+ passed to vbprintf) with SH_VA_START and va_end, so we can
+ reninitialize the argument list for each call. This is actually
+ what the C standard requires. Fixes bug that caused printf -b
+ to `ignore' first % format specifier if it came first in the
+ string. Reported by David Leverton <levertond@googlemail.com>
+
+builtins/mapfile.def
+ - start the line count at 1, since it doesn't get incremented before
+ (or after) reading the first line, so things like
+ `mapfile -n 5 -c 1 -C 'echo foo' array < file' work right and call
+ the callback after the first line is read. Fixes bug reported by
+ Pierre Gaston <pierre.gaston@gmail.com>
+
+ 1/22
+ ----
+lib/readline/complete.c
+ - set _rl_interrupt_immediately non-zero before reading from the file
+ system or calling an application-defined completion function
+
+lib/readline/signals.c
+ - renamed rl_signal_handler to _rl_handle_signal; new version of
+ rl_signal_handler that just calls _rl_handle_signal (for now)
+ - new function _rl_signal_handler that calls _rl_handle_signal without
+ any checking
+
+lib/readline/rlprivate.h
+ - new extern declaration for _rl_signal_handler
+ - new define, RL_CHECK_SIGNALS, checks whether or not _rl_caught_signal
+ is set and calls _rl_signal_handler if so
+
+lib/readline/{bind,input,readline}.c
+ - add RL_CHECK_SIGNALS in appropriate places
+
+lib/readline/signals.c
+ - change rl_signal_handler to set a flag and return rather than
+ run through the entire signal handling process. If
+ _rl_interrupt_immediately is set, call the signal handling code
+ right away instead of setting the flag. Initial fix for crash
+ bug reported by Roman Rakus <rrakus@redhat.com>
+
+aclocal.m4
+ - new macro, BASH_TYPE_SIG_ATOMIC_T, tests for sig_atomic_t in
+ <signal.h>, defines as int if not defined
+
+configure.in
+ - call BASH_TYPE_SIG_ATOMIC_T
+ - call AC_C_VOLATILE
+
+config.h.in
+ - empty define for sig_atomic_t
+ - empty define for volatile
+
+ 1/27
+ ----
+subst.c
+ - audit calls to add_character and change to add_ifs_character (which
+ quotes characters in $IFS). Affects primarily `:', `=', and `~'.
+ Fixes bug reported by Jan Schampera <jan.schampera@web.de>; fix
+ suggested by Stephane Chazelas <stephane_chazelas@yahoo.fr>
+
+ 2/1
+ ---
+configure.in
+ - call AC_C_RESTRICT
+
+config.h.in
+ - add empty defintion for `restrict'
+
+pcomplete.c
+ - use unwind_protects around call to execute_shell_function in
+ gen_shell_function_matches to prevent data corruption if
+ throw_to_top_level is called. Bug report and fix from
+ werner@suse.de.
+
+execute_cmd.c
+ - don't clamp CPU usage at 100% in print_formatted_time. Bug reported
+ by Linda Walsh <bash@tlinx.org>
+
+ 2/5
+ ---
+locale.c
+ - in set_locale_var, set errno to 0 before calling setlocale(), and
+ print strerror (errno) if setlocale fails and errno ends up non-zero
+
+ 2/6
+ ---
+configure.in
+ - backed out of solaris change from 10/23/2008 (adding `-z interpose'
+ to LDFLAGS) due to solaris updates to fix a linker problem.
+ Updatted by Serge Dussud <Serge.Dussud@Sun.COM>
+
+ 2/12
+ ----
+execute_cmd.c
+ - change execute_connection so failure of a pipeline will cause the
+ shell to exit if -e is on. From discussion on austin-group
+ mailing list
+ - change execute_command_internal so failure of a user-specified
+ subshell will cause the shell to exit if -e is on. From discussion
+ on austin-group mailing list
+
+ 2/13
+ ----
+doc/{bash.1,bashref.texi}
+ - clarified description of set -e option to accurately reflect current
+ implementation
+
+ 2/19
+ ----
+print_cmd.c
+ - fix print_deferred_heredocs to not print a space if the separator
+ string is null
+ - change print_deferred_heredocs to set `was_heredoc' after printing
+ something
+ - change connection printing code to only print the `;' separator
+ if we haven't just printed a here-document
+ - change connection printing code to print any deferred here
+ documents after the rhs of the connection. Fixes bug reported by
+ Bo Andresen <bo.andresen@zlin.dk>
+
+[bash-4.0 frozen]
+
+ 2/20
+ ----
+
+[bash-4.0 released]
+
+ 2/22
+ ----
+
+parse.y
+ - fix parse_comsub to not test a character for being a possible shell
+ metacharacter if LEX_PASSNEXT flag is set. Fixes bug reported by
+ Mike Frysinger <vapier@gentoo.org>
+
+pcomplete.c
+ - add call to save_parser_state (accidentally dropped from patch) to
+ gen_shell_function_matches. Fixes bug with bash_completion and
+ file/directory completion reported by phil@Arcturus.universe
+
+Makefile.in
+ - fix assignment to LDFLAGS_FOR_BUILD to match those in subdir
+ Makefiles. Fixes bug reported by Mike Frysinger <vapier@gentoo.org>
+
+builtins/mapfile.def
+ - make sure the callback quantum (-c option argument) is > 0. Fixes
+ bug reported by Stephane Chazleas <stephane_chazelas@yahoo.fr>
+
+ 2/23
+ ----
+parse.y
+ - fix save_token_state and restore_token_state to save and restore
+ current_token. Fixes bug reported by Bernd Eggink
+ <monoped@sudrala.de>
+
+builtins/exit.def
+ - check jobs[i] before checking whether or not it's running when
+ the checkjobs option is set and we're looking for running jobs
+ at exit. Fixes bug reported by Mike Frysinger <vapier@gentoo.org>
+
+ 2/24
+ ----
+siglist.c
+ - include bashintl.h for definition of _. Fixes bug reported by
+ Greg Wooledge <wooledg@eeg.ccf.org>
+
+ 2/25
+ ----
+subst.c
+ - new function, skip_matched_pair. Similar to skip_to_delim and
+ the extract_XXX family
+ - move skipsubscript here from arrayfunc.c; re-implement in terms of
+ skip_matched_pair. Fixes bugs reported by <anmaster@tele2.se>
+
+arrayfunc.c
+ - remove skipsubscript; moved to subst.c
+
+parse.y
+ - change reset_parser to set current_token to '\n'. Rest of fix for
+ bug reported by Bernd Eggink <monoped@sudrala.de>; earlier fix on
+ 2/23
+
+ 2/26
+ ----
+builtins/declare.def
+ - when given something like array[x]=y (which sets making_array_special
+ to 1), don't convert an associative array to an indexed array (line
+ 493). Part of fix for bug reported by Pierre Gaston
+ <pierre.gaston@gmail.com>
+ - if offset == 0, indicating that we do not have a valid assignment,
+ make sure any `name' containing a `[' is a valid array reference
+ before trying to go on. Not doing this leads to creating crazy
+ variables like `name[foo[bar]=bax'. Rest of fix for bug reported
+ by Pierre Gaston <pierre.gaston@gmail.com>
+
+assoc.c
+ - change assoc_to_assign to single-quote the array keys if `quoted' is
+ non-zero. Makes things easier to read with weird characters in the
+ key
+
+parse.y
+ - fix parse_comsub to not set LEX_HEREDELIM when it sees "<<<". Fixes
+ bug reported by Mike Frysinger <vapier@gentoo.org>
+
+ 2/27
+ ----
+parse.y
+ - fix report_syntax_error to set last_command_exit_value to
+ EX_BADUSAGE (2) instead of EX_USAGE (258), since there's nothing
+ that will translate that to something < 128 before reading the
+ next command. Partial fix for bug reported by Mike Frysinger
+ <vapier@gentoo.org>
+
+sig.c
+ - fix sigint_sighandler to set last_command_exit_value to sig+128
+ before calling throw_to_top_level. Rest of fix for bug reported
+ by Mike Frysinger <vapier@gentoo.org>
+
+jobs.c
+ - if fork() fails, set last_command_exit_value to 126 before calling
+ throw_to_top_level
+
+execute_cmd.c
+ - defer calling unlink_fifo_list in parent branch of
+ execute_disk_command if we're executing in a shell function
+ - change execute_function to call unlink_fifo_list before returning
+ if it's the top-level function
+
+ 3/2
+ ---
+builtins/read.def
+ - if read times out, make sure we remove the top element from the
+ unwind-protect stack (the free of input_string) and run the rest,
+ to reset the tty and readline and alarm states. Then we jump to
+ assigning the variables to any partial input. Fixes bug reported
+ by Christopher F. A. Johnson <cfajohnson@gmail.com>
+
+ 3/3
+ ---
+parse.y
+ - break comment checking code into a common COMMENT_BEGIN define so
+ we can use it in multiple places in parse_comsub
+ - in parse_comsub, don't alter the LEX_RESWDOK flag if we read a
+ `#' and we're checking comments, even though `#' isn't a `shell break'
+ character. Fixes bug reported by Mike Frysinger <vapier@gentoo.org>
+
+braces.c
+ - in expand_seqterm, decrease the total length of the rhs by the length
+ of any (optional) increment, so we don't end up with unwanted zero
+ padding because the rhs length is wrong. Fixes bug reported by
+ Carl Albing <albing@comcast.net>
+
+ 3/4
+ ---
+doc/{bash.1,bashref.texi}
+ - changes to clean up some of the language describing the effects of
+ terminal process groups on the ability to read from and write to
+ the terminal
+
+ 3/5
+ ---
+support/shobj-conf
+ - add host_vendor to string tested in switch to handle things like
+ gentoo/freebsd
+ - beginning with version 7, FreeBSD no longer has /usr/bin/objformat
+ or a.out binaries and libraries. It's always ELF. Fix from
+ Timothy Redaelli <drizzt@gentoo.org>
+
+parse.y
+ - in parse_comsub, allow comments if we are ready to read a
+ reserved word (tflags & LEX_RESWDOK), haven't read anything from
+ one yet (lex_rwlen == 0) and the current character is a '#'
+
+ 3/6
+ ---
+parse.y
+ - new lex flag for parse_comsub: LEX_INWORD. Turn it off when
+ we see a shell break character; turn it on or keep it on when
+ not a break character. Keep track of word length (reset to 0
+ when we turn on LEX_INWORD when it was off).
+ - don't use COMMENT_BEGIN in parse_comsub any more; test
+ whether or not LEX_INWORD is set and lex_wlen == 0 in addition
+ to tests for LEX_RESWDOK and lex_rwlen. Comments are valid
+ when at the start of a word
+ - move LEX_PASSNEXT code to the top of parse_comsub, so the rest
+ of the function doesn't have to check for the flag at different
+ places
+
+ 3/7
+ ---
+parse.y
+ - in parse_comsub, when looking for a reserved word (LEX_RESWDOK
+ non-zero), and in a case statement, we can see either an esac
+ or a pattern list. We handle an esac separately. We should
+ turn off LEX_RESWDOK if we see anything but a newline, since
+ we'll be reading a pattern list. Other part of fix for bug
+ reported by Mike Frysinger <vapier@gentoo.org> (rest of fix
+ on 3/3)
+
+ 3/10
+ ----
+{.,lib/readline}/doc/fdl.texi
+ - updated to FDL version 1.3
+
+ 3/11
+ ----
+parse.y
+ - when using the |& construct with a simple command preceding it, add
+ the implicit redirection to the simple command's redirection list,
+ since the redirections associated with the command struct are never
+ executed. Fixes bug reported by Matt Zyzik <Matt@ice.filescope.com>
+
+ 3/14
+ ----
+execute_cmd.c
+ - in execute_case_command, if ;& is used with no following pattern
+ list, make sure we don't reference a NULL pointer. Bug report and
+ fix from Clark Jian Wang <dearvoid@gmail.com>
+
+parse.y
+ - make parser_state global, so other files can use it
+ - command_word_acceptable now returns non-zero if PST_REDIRLIST bit
+ set in parser_state, so we accept assignment statements and
+ perform alias expansion. Fix for bug reported by Vincent
+ Lefevre <vincent@vinc17.org> (2/24/2009)
+
+parser.h
+ - add PST_REDIRLIST flag, notes that parser is currently parsing a
+ redirection list preceding a simple command
+
+make_cmd.c
+ - make_simple_command now turns on PST_REDIRLIST in parser_state when
+ creating a new simple command
+ - make_simple_command turns off PST_REDIRLIST in parser_state if it
+ adds a non-redirection to the command it's building
+ - clean_simple_command turns off PST_REDIRLIST to make sure it's off
+
+subst.c
+ - new flag for param_expand: PF_IGNUNBOUND, means to not exit if the
+ variable is unbound even if `set -u' is enabled
+ - change param_expand to not call err_unboundvar if the `pflags'
+ argument has the PF_IGNUNBOUND bit set
+ - parameter_brace_expand_word now takes an extra `pflags' argument to
+ pass down to param_expand; changed callers
+ - changed call to parameter_brace_expand_word in parameter_brace_expand
+ to add PF_IGNUNBOUND flag so ${@:-foo} doesn't cause the shell to
+ exit (but ${@} does) when there are no positional parameters. Fixes
+ Debian bug 519165 from Dan Jacobson <jidanni@jidanni.org>
+
+parse.y
+ - add code to parse_comsub to allow here-documents within command
+ substitutions to be delimited by the closing right paren, with the
+ usual warning about here documents delimited by EOF on execution.
+ Fixes regression from bash-3.2 noted in Red Hat bugzilla 485664 by
+ Ralf Corsepius
+
+ 3/15
+ ----
+subst.c
+ - string_list_dollar_at now checks for Q_PATQUOTE, which getpattern()
+ uses to denote Q_DOUBLE_QUOTES (?). Fixes a=abcd echo "${a#$*}"
+ when IFS= and args are `a b' as noted by Stephane Chazleas
+ <stephane_chazelas@yahoo.fr>
+ - param_expand now checks for Q_PATQUOTE and treats it identically
+ to Q_DOUBLE_QUOTES when expanding $*
+ - expand_word_unsplit now sets W_NOSPLIT in the flags of the word it
+ passes to expand_word_internal if $IFS is NULL
+ - expand_word_leave_quoted now sets expand_no_split_dollar_star and
+ the W_NOSPLIT bit in the word flags before calling
+ expand_word_internal if $IFS is NULL, just like expand_word_unsplit.
+ It is now virtually identical to expand_word_unsplit. Rest of fix for
+ problems reported by Stephane Chazleas <stephane_chazelas@yahoo.fr>
+
+ 3/20
+ ----
+trap.c
+ - in _run_trap_internal, don't pass SEVAL_RESETLINE as flag to
+ parse_and_execute if running the ERR trap (further modification
+ of change from 1/12)
+
+execute_cmd.c
+ - in execute_simple_command, set line_number to line_number_for_err_trap
+ before calling run_error_trap. Part of fix for bug reported by
+ Brian J. Murrell <brian@interlinx.bc.ca>
+ - change other places calling run_error_trap() to set and use
+ line_number_for_err_trap
+
+ 3/21
+ ----
+builtins/fc.def
+ - Even though command substitution through parse_and_execute turns
+ off remember_on_history, command substitution in a shell when
+ set -o history has been enabled (interactive or not) should use it
+ in the last_hist calculation as if it were on. Same calculation
+ in fc_gethnum and fc_builtin. Fixes bug reported by
+ Ian Kelling <smallnow@gmail.com>
+
+sig.c
+ - change termsig_sighandler to terminate immediately if it gets called
+ twice with the same signal before termsig_handler gets called. This
+ fixes the `looping on SIGSEGV' phenomenon reported by Linux users.
+
+parse.y
+ - in read_secondary_line, don't try to add NULL lines to the history
+ list. Report and patch from Lubomir Rintel <lkundrak@v3.sk>
+
+ 3/22
+ ----
+sig.c
+ - Augment change from 3/21 with explicit check for signals we *don't*
+ want this to happen for. Patch from Lubomir Rintel <lkundrak@v3.sk>
+
+ 3/28
+ ----
+array.c
+ - in array_reference, return NULL immediately if the desired index
+ is larger than the maximum
+ - add cache of last array referenced and last array element referenced;
+ use in array_reference to optimize case of sequential access;
+ invalidated where necessary in other functions
+ - array_rshift needs to set max_index to 0 if the array was empty
+ before shifting in the new element 0
+ - array_shift needs to use element_index(a->head->prev) to set the
+ max_index, not a simple decrement, to deal with sparse arrays
+
+ 4/1
+ ---
+bashline.c
+ - in bash_dequote_filename, return right away after copying the
+ backslash if the last character in the string to be expanded
+ is a backslash. The old code copied an extra NUL and overwrote
+ the bounds checking. Fixes bug reported by Shawn Starr
+ https://bugzilla.redhat.com/show_bug.cgi?id=488649
+
+ 4/3
+ ---
+subst.c
+ - in pat_subst.c, make sure to copy one character from the input
+ string in the case of a null pattern match, since we substitute
+ on the null match and then increment past the current character.
+ Not doing this means that each character of the original string
+ is replaced because of the null matches. Fixes debian bug
+ reported bhy Louis-David Mitterrand <ldm@apartia.fr>
+ http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=522160
+
+lib/sh/winsize.c
+ - incorporate contents of readline/rlwinsize.h to get all the various
+ system dependencies right when trying to find TIOCGWINSZ. Fixes
+ bug reported by Dan Price <dp@eng.sun.com>
+
+ 4/6
+ ---
+doc/{bash.1,bashref.texi}
+ - fix description of conditional `>' and `<' to remove statement that
+ the comparison pays attention to the current locale -- it has
+ always used strcmp
+
+lib/glob/glob.c
+ - fixed a bug in glob_filename that caused glob_dir_to_array to be
+ called to prepend a (globbed) directory name onto the results from
+ glob_vector, which, if we were globbing `**', glob_vector has
+ already done. Effect is to have the directory name(s) on there
+ twice. Fixes "dir*/**" bug reported by Matt Zyzik
+ <Matt@ice.filescope.com>
+
+ 4/8
+ ---
+doc/{bash.1,bashref.texi}
+ - fix short syntax summary of for command to reflect full bash
+ syntax (which is a superset of Posix syntax). Fixes bug reported
+ by Reuben Thomas <rrt@sc3d.org>
+
+ 4/10
+ ----
+{expr,subst}.c
+ - make sure last_command_exit_value is set to EXECUTION_FAILURE
+ before calling err_unboundvar, in case set -e is enabled and
+ the shell exits from there. Fixes bug reported by Freddy
+ Vulto <fvulto@gmail.com> and Piotr Zielinski
+ <piotr.zielinski@gmail.com>
+
+ 4/11
+ ----
+jobs.c
+ - in restore_pipeline, don't call discard_pipeline with a NULL
+ argument
+
+trap.c
+ - in run_debug_trap, make sure to save and restore the pipeline,
+ pipeline_pgrp, and state of the pipeline around running the debug
+ trap, then remove any job created by running the debug trap from
+ the jobs table when it completes. Fixes for two bugs reported
+ by lex@upc.ua
+
+ 4/12
+ ----
+lib/readline/signals.c
+ - new functions to block and release SIGWINCH like the SIGINT blocking
+ and releasing functions
+
+lib/readline/rlprivate.h
+ - new extern declarations for _rl_block_sigwinch and _rl_release_sigwinch
+
+lib/readline/display.c
+ - block SIGWINCH during redisplay like SIGINT. Should fix bug reported
+ by Nicolai Lissner <nlissne@linux01.org>
+
+ 4/13
+ ----
+lib/readline/readline.h
+ - new readline state variable: RL_STATE_REDISPLAYING
+
+lib/readline/display.c
+ - in rl_redisplay, don't block SIGWINCH during redisplay; just set
+ the REDISPLAYING state
+
+lib/readline/terminal.c
+ - in rl_resize_terminal, don't call rl_redisplay_after_sigwinch() if
+ we're already in the middle of redisplay (RL_STATE_REDISPLAYING).
+ Fix for bug reported by Nicolai Lissner <nlissne@linux01.org>
+
+ 4/15
+ ----
+parse.y
+ - fix parse_comsub to add check for \n when seeing whether the current
+ character can change to a state where a reserved word is legal,
+ since it is not a shell meta character. Fixes bug reported by
+ Bernd Eggink <monoped@sudrala.de>.
+
+ 4/17
+ ----
+jobs.c
+ - new functions to save and restore the pgrp_pipe (since there's only
+ one): save_pgrp_pipe and restore_pgrp_pipe
+
+trap.c
+ - run_debug_trap now saves and restores the pgrp_pipe before and
+ after calling the debug trap
+ - run_debug_trap now makes sure the terminal is owned by the pipeline
+ pgrp after the debug trap runs. Rest of fix for bug reported by
+ Oleksly Melnyk <o.melnyk@upc.ua> (lex@upc.ca)
+
+ 4/19
+ ----
+include/posixselect.h
+ - new include file, encapsulates select(2) includes and defines for
+ bash and readline. Inspired by patch from Mike Frysinger
+ <vapier@gentoo.org>
+
+lib/sh/input_avail.c
+ - include "posixselect.h"
+
+lib/readline/{input,parens}.c
+ - include "posixselect.h" instead of using inline includes
+ - use new USEC_TO_TIMEVAL define to make sure that values for timeouts
+ greater than one second are handled properly
+
+lib/sh/fpurge.c
+ - updated implementation, taken from gnulib
+
+ 4/21
+ ----
+lib/glob/glob.c
+ - in finddirs, don't try to free a return value of glob_error_return
+ from glob_vector. Bug and fix from werner@suse.de
+
+lib/readline/signals.c
+ - in rl_echo_signal_char, check that SIGQUIT and SIGTSTP are defined
+ before trying to use them. Bug report and fix from Volker Grabsch
+ <vog@notjusthosting.com>
+
+ 4/24
+ ----
+aclocal.m4
+ - add conditional inclusion of <stdint.h> to BASH_CHECK_TYPE
+
+bashtypes.h,lib/sh/strto[iu]max.c
+ - include <stdint.h> if present for any existing declaration of
+ intmax_t and uintmax_t. Fixes Interix problem reported by
+ Markus Duft <mduft@gentoo.org>
+
+lib/sh/strindex.c,externs.h,builtins/common.h
+ - renamed strindex to strcasestr to agree with other implementations
+ (e.g., BSD, MacOS X, gnulib); changed callers
+
+lib/sh/{strindex.c,Makefile.in},Makefile.in
+ - renamed strindex.c to strcasestr.c
+
+configure.in
+ - add strcasestr to call to AC_REPLACE_FUNCS, take advantage of
+ existing libc implementations
+
+config.h.in
+ - add define for HAVE_STRCASESTR
+
+lib/sh/mbscmp.c
+ - fix mbscmp to return correct values when the strings do not contain
+ valid multibyte characters. Ideas from gnulib
+
+xstrchr.c
+ - only compare current character against C if mblength == 1
+
+{shell,variables}.c
+ - changed some xstrchr calls back to strchr when the arguments cannot
+ contain multibyte characters
+
+lib/sh/{xstrchr.c,Makefile.in},Makefile.in
+ - renamed xstrchr to mbschr; renamed file to mbschr.c
+
+aclocal.m4
+ - change BASH_CHECK_MULTIBYTE to use AC_REPLACE_FUNCS(mbschr)
+
+externs.h
+ - extern declarations for mbscmp and mbschr, conditional on the usual
+ HAVE_MBSCMP and HAVE_MBSCHR defines
+
+general.h,{alias,arrayfunc,bashline,general,execute_cmd,subst}.c
+ - changed calls to xstrchr to mbschr
+
+doc/bash.1
+ - use `pathname expansion' consistently, not `filename expansion' or
+ `filename generation'
+
+doc/bashref.texi
+ - use the phrase `filename expansion' consistently (since this is
+ what the Gnu people prefer) instead of `pathname expansion' or
+ `filename generation'
+
+aclocal.m4,config.h.in
+ - check for mbscasecmp in BASH_CHECK_MULTIBYTE, define HAVE_MBSCASECMP
+ if found
+
+lib/sh/{mbscasecmp.c,Makefile.in}
+ - new file, case-insensitive multibyte string comparison
+
+externs.h
+ - extern declaration for mbscasecmp
+
+ 4/25
+ ----
+lib/readline/display.c
+ - in _rl_move_cursor_relative, don't adjust dpos by woff if it's
+ already less than woff (don't want it less than 0)
+ - in _rl_move_cursor_relative, short-circuit right away if the cursor
+ is at columns 0 and `new' is 0 (doesn't matter if it's a multibyte
+ locale or not, or whether there are invisible chars in the prompt)
+ - in _rl_move_cursor_relative, go ahead and adjust dpos if
+ prompt_physical_chars >= _rl_screenwidth (previous check was just > )
+ Fixes bug reported by Andreas Schwab <schwab@linux-m68k.org>
+
+ 4/28
+ ----
+lib/glob/glob.c
+ - in glob_vector, don't add an empty pathname ("") if we're adding the
+ currect directory to the dirlist and GX_NULLDIR is set -- we can just
+ ignore it, since the passed directory name (".") was created by
+ the caller. Fixes bug reported by Matt Zyzik <matt.zyzik@nyu.edu>
+
+ 5/5
+ ---
+subst.c
+ - make expansion of $@ and $* when set -u is in effect and there are
+ no positional parameters be a non-fatal error. This is the
+ consensus of the austin group, though it is not historical practice.
+ Message from Geoff Clare <20090505091501.GA10097@squonk.masqnet> of
+ 5 May 2009 and http://austingroupbugs.net/view.php?id=155
+
+
+ 5/20
+ ----
+lib/glob/glob.c
+ - tentative fix to glob_filename to compensate for glob_vector putting
+ null pathname at front of result vector when dflags&GX_NULLDIR.
+ Current fix manually removes empty string element from front of
+ result vector; a better fix would be to use a flag so glob_vector
+ doesn't add it at all. Augments patch from 4/28, which appears to
+ have broken some things. Fixes bug reported by Matt Zyzik
+ <matt.zyzik@nyu.edu>
+
+ 5/22
+ ----
+
+lib/glob/glob.c
+ - better fix for glob_filename; supersedes patch of 5/20. Now the
+ code does not set GX_ADDCURDIR if directory_len == 0 and the
+ function has not been called recursively ((flags & GX_ALLDIRS) == 0).
+ Better fix for bug reported by Matt Zyzik <matt.zyzik@nyu.edu>
+
+Makefile.in
+ - fix build race condition that occurs in some makes caused by
+ libreadline.a and libhistory.a containing some of the same files
+ (e.g., xmalloc.o) and conflicting when trying to build both at
+ the same time. Reported by Mike Frysinger <vapier@gentoo.org>
+
+ 5/25
+ ----
+lib/readline/vi_mode.c
+ - fix _rl_vi_initialize_line so that the loop counter is not
+ unsigned (it doesn't matter, but it eliminates a compiler warning).
+ Bug reported by Dave Caroline <dave.thearchivist@gmail.com>
+
+ 5/26
+ ----
+doc/{bash.1,bashref.texi}
+ - add text to the description of array variables making it clear
+ that an array variable is not considered set until a subscript
+ has been assigned a value
+
+ 5/29
+ ----
+lib/readline/text.c
+ - fix rl_change_case to handle case where mbrtowc doesn't find a
+ valid multibyte character
+
+lib/readline/vi_mode.c
+ - fix _rl_vi_change_mbchar_case to handle case where mbrtowc doesn't
+ find a valid multibyte character
+
+lib/sh/casemod.c
+ - fix sh_modcase to handle case where mbrtowc doesn't find a valid
+ multibyte character
+
+lib/readline/mbutil.c
+ - fix _rl_find_next_mbchar_internal to not call mbrtowc at the end of
+ the string, since implementations return different values -- just
+ break the loop immediately
+
+lib/readline/display.c
+ - fix rl_redisplay to make same sort of cursor position adjustments
+ based on multibyte locale and _rl_last_c_pos when performing
+ horizontal scrolling rather than line wrapping. Probably still
+ more to do. Fixes bug reported by jim@jim.sh
+
+ 6/5
+ ---
+doc/{bash.1,bashref.texi}
+ - added some more explanation of the inheritance of the ERR trap at
+ the suggestion of Thomas Pospisek <tpo@sourcepole.ch>
+
+findcmd.c
+ - use eaccess(2) if available in file_status to take other file
+ access mechanisms such as ACLs into account. Patch supplied
+ by werner@suse.de
+
+ 6/12
+ ----
+xmalloc.c
+ - also calculate lowest brk() value the first time xmalloc/xrealloc
+ (and their sh_ counterparts) are called
+ - error messages consolidated into a single function (allocerr/
+ sh_allocerr) to avoid string duplication
+
+ 6/16
+ ----
+variables.c
+ - changes to allow variables.c to be compiled if ALIAS is not defined.
+ Bug and fix from John Gatewood Ham <uraphalinuxserver@gmail.com>
+
+lib/sh/getcwd.c
+ - fix so systems defining BROKEN_DIRENT_D_INO have the necessary
+ defines. Fix from Jay Krell <jay.krell@cornell.edu>
+
+configure.in
+ - add -D_ALL_SOURCE to interix CFLAGS for struct timezone definition.
+ Bug and fix from John Gatewood Ham <uraphalinuxserver@gmail.com>
+
+ 6/29
+ ----
+variables.c
+ - change initialize_shell_variables to add environment variables with
+ invalid names to the variables hash table, but marking them as
+ invisible and imported
+ - new function, export_environment_candidate. Used when creating the
+ export environment for commands to include variables with invalid
+ names inherited from the initial environment. Apparently this
+ behavior is widespread
+ - change make_var_export_array to use export_environment_candidate
+ rather than visible_and_exported to test variables for inclusion
+ in the export environment
+
+ 7/1
+ ---
+builtins/read.def
+ - fix a memory leak where the number of fields is not the same as
+ the number of variables passed to `read'. Bug report from
+ werner@suse.de
+
+builtins/command.def
+ - move section of code that sets PATH from -p option before the
+ verbose-handling section, so command -v and command -V honor
+ the PATH set by command -p. Bug report and fix from
+ ohki@gssm.otsuka.tsukuba.ac.jp
+
+ 7/9
+ ---
+subst.c
+ - change brace_expand_word_list to defer brace expansion on compound
+ array assignments that are arguments to builtins like `declare',
+ deferring the expansion until the assignment statement is processed.
+ Fixes inconsistency reported by agriffis@n01se.net
+
+ 7/16
+ ----
+bashline.c
+ - fix bash_execute_unix_command to set rl_point correctly based on
+ READLINE_POINT. The old method of using save_point will not
+ work because maybe_make_readline_line will change rl_point. Bug
+ reported by Henning Bekel <h.bekel@googlemail.com>
+
+trap.c
+ - fix _run_trap_internal and run_pending_traps to save and restore
+ value of subst_assign_varlist so the dispose_words on it doesn't
+ leave dangling pointers after the trap handler runs. Fixes bug
+ reported by Marc Herbert <marc.herbert@gmail.com>
+
+ 7/22
+ ----
+subst.c
+ - fix off-by-one error in pos_params when computing positional
+ parameters beginning with index 0. Bug and fix from Isaac Good
+ <isaacgood@gmail.com>
+
+ 7/24
+ ----
+lib/readline/display.c
+ - add code to _rl_move_cursor_relative and _rl_col_width to short-
+ circuit a few special cases: prompt string and prompt string plus
+ line contents, both starting from 0. Saves a bunch of calls to
+ multibyte character functions using already-computed information.
+ As a side effect, fixes bug reported by Lasse Karkkainen
+ <tronic+8qug@trn.iki.fi>
+
+subst.c
+ - fixed a problem in split_at_delims that could leave *cwp set to -1
+ if the line ends in IFS whitespace and SENTINEL is one of those
+ whitespace characters. Fixes problem with setting COMP_CWORD for
+ programmable completion reported by Ville Skytta <ville.skytta@iki.fi>
+
+bashline.c
+ - change bash_execute_unix_command to clear the current line (if the
+ terminal supplies the "ce" attribute) instead of moving to a new
+ line. Inspired by report from Henning Bekel <h.bekel@googlemail.com>
+
+builtins/printf.def
+ - changes to allow printf -v var to assign to array indices, the way
+ the read builtin can. Suggested by Christopher F. A. Johnson
+ <cfajohnson@gmail.com>
+
+lib/readline/complete.c
+ - fix rl_old_menu_complete and rl_menu_complete to appropriately set
+ and unset RL_STATE_COMPLETING while generating the list of matches.
+ Fixes debian bug #538013 reported by Jerome Reybert
+ <jreybert@gmail.com>
+
+ 7/25
+ ----
+execute_cmd.c
+ - change execute_builtin to temporarily turn off and restore the ERR
+ trap for the eval/source/command builtins in the same way as we
+ temporarily disable and restore the setting of the -e option.
+ Fixes bug reported by Henning Garus <henning.garus@googlemail.com>
+
+ 7/27
+ ----
+shell.c
+ - add fflush(stdout) and fflush(stderr) to exit_shell before closing
+ any file descriptors at exit time (e.g., coproc pipes)
+
+ 7/30
+ ----
+lib/readline/complete.c
+ - new function rl_backward_menu_complete, just passes negative count
+ argument to rl_menu_complete
+ - change rl_menu_complete to act appropriately if rl_last_command is
+ rl_backward_menu_complete, so we can cycle forward and backward
+ through the list of completions
+
+lib/readline/doc/{readline.3,rluser.texi},doc/bash.1
+ - document new "menu-complete-backward" bindable readline function.
+ Suggested by Jason Spiro <jasonspiro04@gmail.com>
+
+lib/readline/vi_keymap.c
+ - add binding of C-n to menu-complete and C-p to menu-complete-backward
+ in vi-insert keymap, as suggested by Jason Spiro
+ <jasonspiro04@gmail.com>
+
+pcomplete.c
+ - fixed a bug in programmable_completions: the options it returned from
+ the compspec it found were set before generating the completions,
+ which meant that any changes made by "compopt" were overridden and
+ only in effect for the duration of the executing shell function
+ rather than the entire completion. Fixes bug reported by Ville
+ Skytta <ville.skytta@iki.fi>
+
+ 7/31
+ ----
+lib/readline/keymaps.c
+ - fixed memory leak in rl_discard_keymap by freeing storage associated
+ with hierarchical keymaps
+ - new convenience function, rl_free_keymap, that calls rl_discard_keymap
+ and frees the keymap passed as an argument
+
+lib/readline/util.c
+ - new bindable keymap function, _rl_null_function, to be used internally
+
+lib/readline/rlprivate.h
+ - extern declaration for _rl_null_function
+
+lib/readline/bind.c
+ - fix rl_generic_bind in the case where we are trying to override a
+ keymap with a null function (e.g., when trying to unbind it). We
+ can't use a NULL function pointer in ANYOTHERKEY since that's
+ indistinguishable from the keymap not having been overridden at all.
+ We use _rl_null_function instead, which simply does nothing. We
+ could add an rl_ding to it later. Fixes problem with hitting ESC
+ repeatedly while in vi command mode reported by James Rowell
+ <jrjimmy801-misc1@yahoo.com>
+
+builtins/bind.def
+ - call rl_bind_keyseq instead of rl_set_key for -r option
+
+lib/readline/readline.c
+ - Set vi_movement_keymap[ESC] to _rl_null_function after binding the
+ arrow keys in bind_arrow_keys() to allow vi-mode users to hit ESC
+ multiple times in vi command mode while still allowing the arrow
+ keys to work
+
+ 8/2
+ ---
+bashline.c
+ - fix clear_hostname_list by setting hostname_list_initialized to 0
+ after freeing all list members. Fixes bug reported by Freddy
+ Vulto <fvulto@gmail.com>
+
+lib/readline/display.c
+ - in update_line, if we copy data from one line to another because we
+ are wrapping a multibyte character from, say, the first line to the
+ second, we need to update OMAX and the line indices to account for
+ the moved data. Bug report and fix from Martin Hamrle
+ <martin.hamrle@gmail.com>
+
+ 8/3
+ ---
+pcomplete.h
+ - defines for EMPTYCMD ("_EmptycmD_") and DEFAULTCMD ("_DefaultCmD_")
+
+builtins/complete.def
+ - change compopt_builtin to make -E work on the "empty" command
+ completion
+ - fix print_compitem and print_compopts to replace EMPTYCMD with -E
+ - added -D (default) option to complete/compgen/compopt. No supporting
+ code yet
+
+doc/bash.1,lib/readline/doc/rluser.texi
+ - document new -D, -E options to compopt
+ - document new -D option to complete/compgen
+
+shell.h
+ - new define, EX_WEXPCOMSUB, value of 125
+ - new define, EX_RETRYFAIL, value of 124 (for programmable completion)
+
+subst.c
+ - use EX_WEXPCOMSUB instead of literal 125 as exit status when a shell
+ invoked to run wordexp(3) with the -n option supplied attempts a
+ command substitution
+
+pcomplete.c
+ - new define, PCOMP_RETRYFAIL, used to indicate a "failure, retry with
+ next completion" status to the programmable completion code
+
+ 8/4
+ ---
+pcomplete.c
+ - changed gen_shell_function_matches to take an extra parameter
+ indicating whether the specified shell function was not found or
+ returned the special "fail/retry" status, and, if it was either,
+ to not bother returning any matches list
+ - changed gen_compspec_completions to take an extra parameter to pass
+ through the "found" status from gen_shell_function_completions
+ - new function gen_progcomp_completions to take care of searching for
+ and evaluating a compspec for a particular word, saving its status,
+ and returning to its caller (programmable_completions) whether or
+ not to retry completion. This function also checks whether a
+ retry changed the compspec associated with a command and short-
+ circuits the retry if it has not
+ - changed programmable_completions to try default completion (if set)
+ if a specific completion was not found for a command
+ - changed programmable_completions to implement "fail/retry" semantics
+ for a shell function that returns 124 and changes the compspec
+ associated with the command. All based on proposal and changes from
+ Behdad Esfahbod (Red Hat bugzilla 475229)
+
+doc/bash.1,lib/readline/doc/rluser.texi
+ - documented new dynamic programmable completion functionality
+
+ 8/5
+ ---
+stringlib.c
+ - first argument to substring() is now `const char *'
+
+externs.h
+ - changed extern declaration for substring()
+
+subst.c
+ - skipsubscript now takes a third FLAGS argument, passes to
+ skip_matched_pair
+ - skip_matched_pair now interprets flags&1 to mean not to parse
+ matched pairs of quotes, backquotes, or shell word expansion
+ constructs
+
+{subst,general,expr}.c
+ - changed skipsubscript() callers
+
+assoc.c
+ - changed assoc_to_assign to double-quote the key if it contains any
+ shell metacharacters
+
+arrayfunc.c
+ - use skipsubscript in quote_assign rather than quote any glob
+ characters in the subscript of an array assignment
+ - in assign_compound_array_list, call skipsubscript with a flags
+ argument of 1 if assigning an associative array to avoid trying
+ to re-parse quoted strings
+
+redir.c
+ - set expanding_redir before expanding body of here documents and
+ here strings to avoid looking for variables in temporary env
+
+ 8/7
+ ---
+lib/readline/readline.c
+ - in _rl_dispatch_callback, return value of -3 means that we have
+ added to a key sequence, but there are previous matches in the
+ sequence. Don't call _rl_subseq_result if we get a -3 from a
+ previous context in the chain; just go back up the chain. Report
+ and fix from <freehaha@gmail.com>
+
+bashline.c
+ - fixes to history_completion_generator and bash_dabbrev_expand to
+ make dabbrev-expand inhibit suppressing of appending space char
+ to matches. Have to do it with the generator too because
+ rl_menu_complete turns off suppressing the appended space in
+ set_completion_defaults(). Suggestion from Dan Nicolaescu
+ <dann@ics.uci.edu>
+ - suppress completion match sorting in bash_dabbrev_expand by
+ setting rl_sort_completion_matches = 0. Suggestion from Dan
+ Nicolaescu <dann@ics.uci.edu>
+ - don't qsort history match list in build_history_completion_array
+ if dabbrev_expand_active == 1
+ - start the loop in build_history_completion_array that gathers words
+ from history for possible completions from the end of the list
+ rather than the beginning. It doesn't matter where you start if
+ the results are sorted, and dabbrev-expand is supposed to offer
+ the most recent completions first
+
+ 8/12
+ ----
+execute_cmd.c
+ - change to execute_command_internal to make [[ ... ]] conditional
+ command subject to settings of `set -e' and the ERR trap
+
+ 8/14
+ ----
+execute_cmd.c
+ - change to execute_command_internal to make (( ... )) arithmetic
+ command subject to settings of `set -e' and the ERR trap
+
+lib/readline/text.c
+ - new bindable function, rl_skip_csi_sequence, reads the characters
+ that make up a control sequence as defined by ECMA-48. Sequences
+ are introduced by the Control Sequence Indicator (CSI) and
+ contain a defined set of characters. Insert, End, Page Up and so
+ on are CSI sequences. Report and code from Andy Koppe
+ <andy.koppe@gmail.com>
+
+lib/readline/readline.h
+ - extern declaration for rl_skip_csi_sequence
+
+lib/readline/funmap.c
+ - new bindable command "skip-csi-sequence", runs rl_skip_csi_sequence
+
+doc/bash.1,lib/readline/doc/{readline.3,rluser.texi}
+ - documented new bindable command "skip-csi-sequence", unbound by
+ default
+
+builtins/evalfile.c
+ - fix _evalfile to remove embedded null bytes from the file read
+ into the string. Report and proposed fix from Roman Rakus
+ <rrakus@redhat.com>
+
+{configure,config.h}.in
+ - check for syslog(3), define HAVE_SYSLOG
+ - check for syslog.h, define HAVE_SYSLOG_H
+
+config-top.h
+ - new define SYSLOG_HISTORY, disabled by default
+
+config-bot.h
+ - if HAVE_SYSLOG or HAVE_SYSLOG_H are not defined, undef SYSLOG_HISTORY
+
+bashhist.c
+ - if SYSLOG_HISTORY is defined, call bash_syslog_history with the
+ line added to the history in bash_add_history.
+ - new function, bash_syslog_history(line), sends line to syslog at
+ user.info. The line is truncated to send no more than 600
+ (SYSLOG_MAXLEN) bytes to syslog. Feature requested by many, and
+ required by some national laws
+
+sig.c
+ - in termsig_handler, resend SIGHUP to children if subshell_environment
+ indicates we're a shell performing command or process substitution
+
+jobs.c
+ - add CHECK_TERMSIG calls to wait_for in addition to the ones in
+ waitchld()
+
+builtins/shopt.def
+ - new functions set_bashopts, parse_bashopts, and initialize_bashopts
+ to manage new environment variable $BASHOPTS, like $SHELLOPTS but
+ for shopt options
+ - change toggle_shopts to call set_bashopts after setting options, so
+ $BASHOPTS reflects new values
+
+shell.c
+ - call initialize_bashopts after calling initialize_shell_options at
+ shell startup
+
+configure.in
+ - new configure `enable' option --enable-exended-glob-default, to
+ set the initial default value of the `extglob' shell option
+
+config.h
+ - new define, EXTGLOB_DEFAULT, controlled by the `extended-glob-default'
+ configure option
+
+pathexp.c
+ - initialize extended_glob variable to EXTGLOB_DEFAULT
+
+doc/{bash.1,bashref.texi}
+ - document new $BASHOPTS variable and its behavior
+
+doc/bashref.texi
+ - document new --enable-extended-glob-default configure option
+
+ 8/16
+ ----
+print_cmd.c
+ - new variables: xtrace_fd and xtrace_fp, the file descriptor and
+ FILE * to which we send `set -x' tracing output. If fd == -1
+ then fp == STDERR, the default mode
+ - new function xtrace_init, sets xtrace_fd == -1 and xtrace_fp = stderr
+ - new function xtrace_set (fd, fp), sets xtrace_fd and xtrace_fp
+ to the arguments
+ - new function xtrace_reset, handles closing old xtrace fd/fp and
+ moving them back to -1/stderr
+ - new function xtrace_fdchck, calls xtrace_reset if the fd passed as
+ an argument is xtrace_fd
+ - change xtrace functions to fprintf to xtrace_fp instead of stderr
+
+shell.c
+ - call xtrace_init() very early in main()
+
+variables.c
+ - new special variable, BASH_XTRACEFD, holds file descriptor used for
+ set -x trace output. Inspired by suggestion from Bruce Korb
+ <bruce.korb@gmail.com>
+
+doc/{bash.1,bashref.texi}
+ - added description of new BASH_XTRACEFD variable
+
+redir.c
+ - add calls to xtrace_fdchk to the redirections that close file
+ descriptors, so we notice if we close BASH_XTRACEFD and compensate
+ accordingly (same places that call coproc_fdchk())
+
+ 8/18
+ ----
+lib/readline/text.c
+ - change to _rl_replace_text to add error checks: start must be <=
+ end, and we don't call rl_insert_text if passed the empty string
+
+config.h.in
+ - add define for HAVE_ICONV, already found by intl autoconf macros
+ - add define for HAVE_LOCALE_CHARSET
+
+aclocal.m4
+ - add check for locale_charset() to BASH_CHECK_MULTIBYTE
+
+lib/sh/fnxform.c
+ - new file with two public function: fnx_tofs and fnx_fromfs.
+ Primarily intended for use on MacOS X, they use iconv to convert
+ between whatever the current locale encoding is and "UTF-8-MAC",
+ a special encoding on OS X in which all characters are
+ decomposed unicode, as the HFS+ filesystem stores them. These
+ functions return a pointer to a local buffer, allocated once and
+ resized as necessary, to avoid too many allocations; callers
+ should not free the return value, since it may be the string
+ passed
+
+Makefile.in
+ - make sure LIBICONV is set by autoconf (@LIBICONV@) and added to
+ list of link libraries
+
+externs.h
+ - new extern declarations for fnx_fromfs and fnx_tofs
+
+lib/glob/glob.c
+ - convert the filename read using readdir() in glob_vector() using
+ fnx_fromfs and use that value in the call to strmatch. This
+ ensures that we're using the precomposed Unicode value of the
+ filename rather than the native decomposed form. Original bug
+ report from Len Lattanzi <llatanzi@apple.com>; fix inspired by
+ Guillaume Outters <guillaume.outters@free.fr>
+
+ 8/19
+ ----
+lib/readline/complete.c
+ - new completion hook: rl_filename_rewrite_hook, can rewrite or modify
+ filenames read from the filesystem before they are compared to the
+ word to be completed
+
+lib/readline/readline.h
+ - extern declaration for rl_filename_rewrite_hook
+
+lib/readline/doc/rltech.texi
+ - document rl_filename_rewrite_hook
+
+bashline.c
+ - new function, bash_filename_rewrite_hook, assigned to
+ rl_filename_rewrite_hook. Calls fnx_fromfs to convert from
+ filesystem format to "input" format. This makes completing
+ filenames with accented characters work on Mac OS X
+
+ 8/20
+ ----
+lib/readline/bind.c
+ - new bindable variable "skip-completed-text", bound to
+ _rl_skip_completed_text. If enabled, it means to note when
+ completing before the end of a word and skipping over characters
+ after rl_point that match in both the completion to be inserted
+ and the word being completed. It means that completing
+ `Makefile' with the cursor after the `e' results in `Makefile'
+ instead of `Makefilefile'. Inspired by an idea from Jared
+ Yanovich <phierunner@comcast.net> from back in 2004
+
+lib/readline/rlprivate.h
+ - extern declaration for _rl_skip_completed_text
+
+lib/readline/complete.c
+ - implement semantics of _rl_skip_completed_text in insert_match:
+ skip characters in `replacement' that match chars in rl_line_buffer
+ from the start of the word to be completed
+
+ 8/21
+ ----
+error.c
+ - change parser_error to set last_command_exit_value to 2 before
+ calling exit_shell (if set -e is enabled), so any exit or ERR
+ trap gets the right value of $?. Suggestion from Stefano
+ Lattarini <stefano.lattarini@gmail.com>
+
+braces.c
+ - fix expand_seqterm so that a non-zero-prefixed term that's longer
+ than a zero-prefixed term determines the length of each term
+ in the brace-expanded sequence. This means that things like
+ {01..100} will have three digits in all the elements of the
+ expanded list. Fixes bug reported by Jeff Haemer
+ <jeffrey.haemer@gmail.com>
+
+ 8/24
+ ----
+{arrayfunc,variables}.c
+ - when inserting a value into an associative array using syntax like
+ T=v where T is an already-declared associative array using key "0",
+ make sure the key is in newly-allocated memory so it can be freed
+ when the variable is unset. Fixes bug reported as redhat 518644
+ by Jon Fairbairn
+
+ 8/26
+ ----
+lib/readline/funmap.c
+ - add "old-menu-complete" binding for rl_old_menu_complete
+
+lib/readline/readline.h
+ - add extern declaration for rl_old_menu_complete
+
+subst.c
+ - fix memory leak when processing ${!prefix@}. Need to dispose all
+ words in the word list created from all matching variable. Fixes
+ bug reported by muszi@muszi.kite.hu.
+
+ 8/29
+ ----
+execute_cmd.c
+ - add fflush(stdout) and fflush(stderr) to child coproc code before
+ calling exit after execute_in_subshell
+
+ 8/31
+ ----
+lib/readline/{{bind,readline}.c,rlprivate.h}
+ - new bindable variable, "echo-control-characters", enabled by default.
+ This controls whether or not readline honors the tty ECHOCTL bit
+ and displays characters corresponding to keyboard-generated signals.
+ Controlled by _rl_echo_control_chars variable, declared in readline.c
+
+lib/readline/signals.c
+ - if _rl_echo_control_chars == 0, don't go through _rl_echo_signal_char
+
+
+lib/readline/doc/{readline.3,rluser.texi}
+ - document "echo-control-characters" bindable variable
+
+ 9/1
+ ---
+lib/readline/histexpand.c
+ - hist_string_extract_single_quoted now takes an additional argument:
+ a flags word. The only defined value (flags & 1) allows backslash
+ to quote the single quote. This is to inhibit history expansion
+ inside $'...' containing an escaped single quote.
+ - change history_expand to call hist_string_extract_single_quoted
+ with flags == 1 if it sees $'. Fixes bug reported by Sean
+ Donner <sean.donner@gmail.com>
+
+ 9/2
+ ---
+builtins/printf.def
+ - add a call to sh_wrerror if ferror() succeeds in the PRETURN macro,
+ to print an error message in the case that the final fflush fails
+ (for instance, because it attempts to write data that didn't have a
+ trailing newline). Fixes bug reported by Stefano Lattarini
+ <stefano.lattarini@gmail.com>
+
+ 9/7
+ ---
+arrayfunc.c
+ - some fixes to assign_compound_array_list to avoid null pointer
+ dereferences pointed out by clang/scan-build
+
+lib/glob/glob.c
+ - fixes to udequote_pathname and wdequote_pathname to avoid possible
+ null pointer dereferences pointed out by clang/scan-build
+
+lib/readline/undo.c
+ - fix to _rl_copy_undo_list (function unused) to avoid deref of
+ uninitialized pointer pointed out by clang/scan-build
+
+general.c
+ - fix string_to_rlimtype so it works if passed a null pointer (though
+ it never is)
+
+builtins/mapfile.def
+ - fix to mapfile() to avoid possible null pointer dereference pointed
+ out by clang/scan-build
+
+variables.c
+ - fix to valid_exportstr to avoid possible null pointer dereferences
+ pointed out by clang/scan-build
+
+bashline.c
+ - fix to bash_execute_unix_command to avoid possible null pointer
+ dereference if READLINE_LINE or READLINE_POINT is not bound
+
+ 9/11
+ ----
+[Prayers for the victimes of 9/11/2001]
+
+command.h
+ - add `rflags' member to struct redirect to hold private flags and
+ state information
+ - change redirector to a REDIRECTEE instead of int to prepare for
+ possible future changes
+
+{copy_cmd,dispose_cmd,make_cmd,print_cmd,redir}.c
+ - changes resulting from type change of `redirector' member of struct
+ redirect: change x->redirector to x->redirector.dest and add code
+ where appropriate to deal with x->redirector.filename
+
+make_cmd.h
+ - change extern declaration for make_redirection
+
+make_cmd.c
+ - first argument of make_redirection is now a `REDIRECTEE' to prepare
+ for possible future changes. First arg is now assigned directly to
+ redirector member instead of assigning int to redirector.dest
+
+{make_cmd,redir}.c,parse.y
+ - changes resulting from type change of first argument to
+ make_redirection from int to REDIRECTEE. In general, changes are
+ using REDIRECTEE sd and assigning old argument to sd.dest, then
+ passing sd to make_redirection
+
+make_cmd.[ch],parse.y
+ - add fourth argument to make_redirection: flags. Sets initial value
+ of `rflags' member of struct redirect
+ - changed all callers of make_redirection to add fourth argument of 0
+
+ 9/15
+ ----
+parse.y
+ - change read_token_word to return REDIR_WORD for tokens of the form
+ {var} where `var' is a valid shell identifier and the character
+ following the } is a `<' or `>'
+ - add REDIR_WORD versions of all input and output file redirections
+ and here documents
+
+print_cmd.c
+ - change input and output file redirection direction and here
+ document cases of print_redirection to print a varname
+ specification of the form {var} when appropriate. Still need
+ to fix rest of cases
+
+redir.c
+ - implement REDIR_VARASSIGN semantics for file input and output
+ redirections and here documents
+
+ 9/16
+ ----
+parse.y
+ - added REDIR_WORD versions of remaining redirection constructs except
+ for err_and_out ones
+
+redir.c
+ - handle REDIR_VARASSIGN semantics for rest of redirection constructs
+ - accommodate REDIR_VARASSIGN when translating redirections
+ - new function, redir_varvalue, does variable lookup for {v} when
+ redirection needs the value (e.g., r_close_this)
+
+print_cmd.c
+ - fix rest of cases to print {varname} when REDIR_VARASSIGN is set in
+ redirect->rflags
+
+doc/{bash.1,bashref.texi}
+ - document new {varname} REDIR_VARASSIGN form of redirections
+
+tests/vredir.{right,tests},vredir[1-5].sub
+ - tests for new {varname} REDIR_VARASSIGN form of redirections
+
+ 9/18
+ ----
+subst.c
+ - new flags argument to split_at_delims: these flags are ORd with
+ SD_NOJMP and passed to skip_to_delim
+ - change skip_to_delim to honor new SD_NOQUOTEDELIM flag by not
+ checking whether or not single and double quotes are delimiters
+ if it's set in passed flags until after skipping quoted strings.
+
+subst.h
+ - change extern declaration for split_at_delims
+ - new define for SD_NOQUOTEDELIM flag
+
+pcomplete.c
+ - pass SD_NOQUOTEDELIM in flags argument to split_at_delims so single
+ and double quotes, even though they're in
+ rl_completer_word_break_characters, don't act as word delimiters
+ for programmable completion. Fixes bug reported by Freddy
+ Vulto <fvulto@gmail.com>
+
+lib/glob/glob.c
+ - in glob_filename, after recursively scanning a directory specified
+ with `**', turn off GX_ALLDIRS|GX_ADDCURDIR before calling
+ glob_vector on the rest of the pathname, since it may not apply to
+ the rest of the pattern. Turned back on if the filename makes it
+ appropriate. Fixes bug reported by Anders Kaseorg <andersk@mit.edu>
+
+redir.c
+ - change execute_null_command to fork a child to execute if any of
+ the commands redirections have the REDIR_VARASSIGN flag set, since
+ those commands are not supposed to have side effects
+
+test.c
+ - < and > binary operators will obey the locale by using strcoll if
+ the TEST_LOCALE flag is passed to binary_test
+
+test.h
+ - new define for TEST_LOCALE
+
+execute_cmd.c
+ - execute_cond_node sets TEST_LOCALE so [[ str1 < str2 ]] (and >)
+ obey the locale. Fixes bug/incompatibility reported by Greg
+ Wooledge <wooledg@eeg.ccf.org>
+
+doc/{bash.1,bashref.texi}
+ - documented [[ command new locale-sensitive treatment of < and >
+
+ 9/24
+ ----
+configure.in
+ - add "darwin10" cases like darwin8 and darwin9 to handle linking with
+ included readline and history libraries
+
+ 9/26
+ ----
+lib/readline/display.c
+ - modify change of 7/24 to use prompt_physical_chars instead of
+ prompt_visible_length to account for visible multibyte characters in
+ the line (usually in the prompt). Fixes debian bug #547264
+ reported by Pietro Battiston <toobaz@email.it>
+ - add flags argument to _rl_col_width; changed callers. flags > 0
+ means that it's ok to use the already-computed prompt information;
+ flags == 0 means that we're expanding the prompt and we should not
+ short-circuit
+
+parse.y
+ - in decode_prompt_string, when expanding \w and \W on Mac OS X,
+ use fnx_fromfs to convert from "filesystem" form to "input" form.
+ This makes $PWD with multibyte characters work in the prompt
+ string on Mac OS X
+
+lib/sh/fnxform.c
+ - in fnx_fromfs and fnx_tofs, use templen instead of outlen as last
+ argument in calls to iconv, since outlen is used to keep track of
+ the size of the buffer, and iconv potentially modifies its
+ `outbytesleft' argument
+
+ 9/29
+ ----
+subst.c
+ - make skip_to_delim understand how to skip over process substitution
+ constructs the way it skips $(...) command substitution
+
+ 9/30
+ ----
+lib/readline/terminal.c
+ - don't set the `terminal has meta key' flag if the `MT' capability is
+ available; that means something completely different
+
+ 10/1
+ ----
+builtins/help.def
+ - make sure width is at least 7, since we pass `width/2 - 3' to strncpy
+ as the length argument. Terminal widths <= 6 are converted to 80.
+ Fixes bug reported by Chris Hall <c@pobox.co.uk>
+
+configure.in
+ - changed version to 4.1-alpha
+
+subst.h
+ - new flag for skip_to_delim: SD_NOSKIPCMD, which means to not skip
+ over embedded command and process substitutions, but rather to look
+ for delimiters within them
+
+subst.c
+ - implement semantics of SD_NOSKIPCMD in skip_to_delim
+
+bashline.c
+ - call skip_to_delim with SD_NOSKIPCMD from find_cmd_start, so
+ programmable completion can use the completion defined for `b' for
+ command lines like "a $(b c". Fixes inconsistency/bug reported by
+ Freddy Vulto <fvulto@gmail.com>
+
+parser.h
+ - replace unused PST_CMDTOKEN parser state value with PST_EXTPAT,
+ means currently parsing an extended glob pattern (extglob)
+
+parse.y
+ - fix cond_node() so that extended_glob is set before parsing the
+ rhs of the `==' or `!=' operators. For ksh93 compatibility.
+ - reset extended_glob to global value (saved in parse_cond_command())
+ in reset_parser()
+
+ 10/5
+ ----
+jobs.c
+ - change waitchld() to only interrupt the wait builtin when the shell
+ receives SIGCHLD in Posix mode. It's a posix requirement, but
+ makes easy things hard to do, like run a SIGCHLD trap for every
+ exiting child. Change prompted by question from Alex Efros
+ <powerman@powerman.name>
+
+doc/bashref.texi
+ - document new posix mode behavior about SIGCHLD arriving while the
+ wait builtin is executing when a trap on SIGCHLD has been set
+
+ 10/6
+ ----
+lib/readline/histexpand.c
+ - fix hist_expand to keep from stopping history expansion after the
+ first multibyte character (a `break' instead of a `continue').
+ Fixes debian bug (#549933) reported by Nikolaus Schulz
+ <microschulz@web.de>
+
+ 10/8
+ ----
+builtins/read.def
+ - implement new `-N nchars' option: read exactly NCHARS characters,
+ ignoring any delimiter, and don't split the result on $IFS.
+ Feature requested by Richard Stallman <rms@gnu.org>
+
+doc/{bash.1,bashref.texi}
+ - document new `read -N' option
+
+ 10/9
+ ----
+lib/readline/bind.c
+ - new bindable variable, "enable-meta-key", controls whether or not
+ readline enables any meta modifier key the terminal claims to
+ support. Suggested by Werner Fink <werner@suse.de>
+
+lib/readline/doc/{readline.3,rluser.texi},doc/bash.1
+ - document new readline "enable-meta-key" bindable variable
+
+ 10/10
+ -----
+trap.c
+ - new function, free_trap_string(), does what it says and turns off
+ SIG_TRAPPED flag without changing signal disposition
+
+[bash-4.1-alpha frozen]
+
+ 10/16
+ -----
+builtins/mapfile.def
+ - return an error if the variable passed is not an indexed array.
+ Fixes bug reported by Nick Hobson <nick.hobson@yahoo.com>
+ - change help text to make it clear that an indexed array is required
+
+doc/{bash.1,bashref.texi}
+ - changed description of mapfile to note that the array variable
+ argument must be an indexed array, and mapfile will return an
+ error if it is not
+
+subst.c
+ - change expand_string_unsplit and expand_string_leave_quoted to
+ add the (previously unused) W_NOSPLIT2 flag to the created word
+ - change expand_word_internal to understand W_NOSPLIT2 to mean that
+ we're not going to split on $IFS, so we should not quote any
+ characters in IFS that we add to the result string. Fixes bug
+ reported by Enrique Perez-Terron <enrio@online.no>
+ - change cond_expand_word similarly. Fixes rest of bug reported by
+ Enrique Perez-Terron <enrio@online.no>
+
+parse.y
+ - save and restore value of last_command_subst_pid around call to
+ expand_prompt_string in decode_prompt_string. Fixes bug that causes
+ $? to be set wrong when using a construct like false || A=3 when
+ set -x is enabled and $PS4 contains a command substitution. Reported
+ by Jeff Haemer <jeffrey.haemer@gmail.com>
+
+ 10/17
+ -----
+execute_cmd.c
+ - in execute_in_subshell, make sure we set setjmp(return_catch) before
+ running the command, in case the command or its word expansion
+ calls jump_to_top_level. Fixes bug reported by Nils Bernhard
+ <nils.bernhard@yahoo.de>
+
+subst.c
+ - new PF_NOSPLIT2 flag for param_expand
+ - parameter_brace_expand takes a new `pflags' argument, before the
+ `output' parameters; passes to param_expand as necessary
+ - change parameter_brace_expand to call parameter_brace_expand_word
+ with the PF_NOSPLIT2 flag if the pflags argument to
+ parameter_brace_expand has it set
+
+parse.y
+ - change report_syntax_error to set last_command_exit_value to
+ EX_BADSYNTAX if parse_and_execute_level is > 0, indicating a
+ syntax error while we're executing a dot script, eval string,
+ trap command, etc.
+
+builtins/evalstring.c
+ - in parse_and_execute, if parse_command() returns non-zero,
+ indicating a parse error, print a warning message if the conditions
+ would require a posix-mode shell to abort (parse error in a `.'
+ script or eval string)
+
+ 10/19
+ -----
+builtins/evalfile.c
+ - even if the `check binary' flag is not passed to _evalfile, return an
+ error after reading 128 null characters if called by `source', on
+ the assumption that it's probably a binary file. [This will be in
+ bash-4.1-beta]
+
+ 10/24
+ -----
+[bash-4.1-alpha released]
+
+bashline.c
+ - don't call command_substitution_completion_function if we're
+ completing a substring delimited by a single quote. Fixes bug
+ reported by bash-bugs@atu.cjb.net
+
+lib/readline/complete.c
+ - make sure _rl_skip_completed_text defaults to 0, as the
+ documentation states (incorrect in bash-4.1-alpha)
+ - in insert_match, skip over a close quote in the replacement text if
+ the character at point when completion is invoked is a single
+ quote. Fixes complaint from bash-bugs@atu.cjb.net
+
+ 10/26
+ -----
+shell.c
+ - in main, make sure "$EMACS" is non-null before calling strstr on its
+ value. Fixes Red Hat bug 530911 submitted by Mitchell Berger
+
+builtins/mapfile.def
+ - don't save callback commands in shell history. Suggested by
+ Jan Schampera <jan.schampera@web.de>
+
+mailcheck.c
+ - in file_mod_date_changed, make sure the modification time is later
+ than the saved modification date, not just that it's not equal.
+ Fix from Evgeniy Dushistov <dushistov@mail.ru>
+ - in file_access_date_changed, make sure the access time is later
+ than the saved access time, not just that it's not equal
+
+ 10/27
+ -----
+builtins/shopt.def
+ - added new `compat40' compatibility variable, with associated changes
+ to shell_compatibility_level(), since the default compatibility level
+ is now 41
+
+test.c
+ - make the < and > operators to [[ use strcoll() only if the shell
+ compatibility level is greater than 40 (it is 41 by default in
+ bash-4.1)
+
+ 10/28
+ -----
+support/shobj-conf
+ - decrease the default version of FreeBSD that creates shared libraries
+ to 4.x. Advice from Peter Jeremy <peterjeremy@acm.org>
+
+ 11/2
+ ----
+parse.y
+ - change parse_comsub to free `heredelim' and set it to 0 whenever the
+ comsub scanner finds the end of a here document. Really need to
+ implement a stack of here doc delimiters like in the parser (can we
+ use redir_stack here, too?)
+ - fix parse_comsub to not attempt to read another here doc delimiter
+ after seeing a shell break character (that is not newline) if we
+ already have one. Fixes Debian bash bug #553485, submitted by
+ Samuel Hym <samuel.hym@gmail.com>
+
+ 11/3
+ ----
+variables.c
+ - fix bind_variable_internal to call a variable's dynamic 'set function'
+ with the right arguments depending on whether it's an associative
+ array, an indexed array, or a scalar. Fixes Ubuntu bug #471504
+ https://bugs.launchpad.net/ubuntu/+source/bash/+bug/471504 reported
+ by AJ Slater <aj.slater@gmail.com>
+
+[bash-4.1-beta frozen]
+
+ 11/11
+ -----
+builtins/printf.def
+ - in getintmax(), in the case of a conversion error, return the partial
+ value accumulated so far, which is suppose to be what
+ strtoimax/strtoll/strtol returns
+
+ 11/17
+ -----
+[bash-4.1-beta released]
+
+ 11/18
+ -----
+builtins/{common.h,shopt.def},shell.c
+ - changed shopt variable "set functions" to take the option name as
+ the first argument; changed function prototypes and callers
+
+builtins/shopt.def
+ - change set_compatibility_level() to turn off other compatNN options
+ when one is set -- enforce mutual exclusivity. Fixes problem noted
+ by Jan Schampera <jan.schampera@web.de>
+
+ 11/19
+ -----
+lib/readline/rltty.c
+ - make sure prepare_terminal_settings() tests for the presence of
+ ECHOCTL before using it. Fixes bug reported by Joachim Schmitz
+ <schmitz@hp.com>
+
+config-top.h
+ - new WORDEXP_OPTION define (off by default)
+
+shell.c
+ - don't include the --wordexp option or the supporting function
+ (run_wordexp) if WORDEXP_OPTION is not defined. Suggested by
+ Aharon Robbins <arnold@skeeve.com>
+
+execute_cmd.c
+ - in execute_cond_node, turn on comsub_ignore_return if the flags
+ indicate we're ignoring the return value before calling
+ cond_expand_word. Fixes bug reported by Anirban Sinha
+ <asinha@zeugmasystems.com>
+
+ 11/20
+ -----
+lib/sh/snprintf.c,builtins/printf.def
+ - change check for HAVE_ASPRINTF and HAVE_SNPRINTF to check if value
+ is 1 or 0 rather than whether they are defined or not. This allows
+ a value of 0 to enable function replacement
+
+configure.in,aclocal.m4
+ - new autoconf macro, BASH_FUNC_SNPRINTF, checks for snprintf present
+ and working as C99 specifies with a zero length argument. Idea
+ from Greg Wooledge <wooledg@eeg.ccf.org>
+ - new macro BASH_FUNC_VSNPRINTF, does same thing for vsnprintf
+
+ 11/25
+ -----
+subst.c
+ - in command_substitute, only tell parse_and_execute to reset the line
+ number in an interactive shell if sourcelevel == 0 -- we'll use the
+ line numbers from the sourced file
+
+execute_cmd.c
+ - in execute_simple_command, only subtract function_line_number from
+ line_number if sourcelevel == 0. If sourcing, we'll use the line
+ numbers from the sourced file. Fixes bug reported by Hugo
+ Mildenberger <Hugo.Mildenberger@namir.de>
+
+builtins/declare.def
+ - in declare_internal, call bind_assoc_variable instead of
+ bind_array_variable in the case of declare -A foo=bar. Fixes bug
+ reported by Bernd Eggink <monoped@sudrala.de>.
+
+ 11/27
+ -----
+lib/readline/util.c
+ - change declaration for _rl_walphabetic to use prototype, assuming
+ that any system with multibyte characters has a compiler that can
+ handle prototypes. Fix for AIX compilation problem reported by
+ Nick Hillman <nick_hillman@neverbox.com>
+
+ 11/28
+ -----
+execute_cmd.c
+ - make funcnest file-scope static and unwind-protect its value in
+ execute_function, so it can be used as a real measure of function
+ call nesting
+
+general.c
+ - fix off-by-one error in trim_pathname that caused it to short-circuit
+ when PROMPT_DIRTRIM == number of directories - 1. Fixes bug
+ reported by Dennis Williamson <dennistwilliamson@gmail.com>
+
+ 11/29
+ -----
+jobs.c
+ - when fork() returns -1/EAGAIN, call waitchld(-1, 0) so the shell can
+ reap any dead jobs before trying fork again. Currently disabled
+ until bash-4.2 development starts
+
+lib/readline/complete.c
+ - when incrementing _rl_interrupt_immediately, make sure it's greater
+ than 0 before decrementing it. In practice, not a problem, but
+ the right way to do it. Suggested by Jan Kratochvil
+ <jan.kratochvil@redhat.com>
+
+lib/readline/signals.c
+ - make sure rl_signal_handler doesn't set rl_caught_signal if
+ _rl_interrupt_immediately is set, so RL_CHECK_SIGNALS doesn't
+ cause it to be processed twice. Suggested by Jan Kratochvil
+ <jan.kratochvil@redhat.com>
+ - if the callback interface is being used, use the code path that
+ immediately handles signals. This restores the readline-5.2
+ behavior. Fixes GDB readline bug reported by Jan Kratochvil
+ <jan.kratochvil@redhat.com>
+
+ 12/18
+ -----
+[bash-4.1-rc1 released]
+
+ 12/22
+ -----
+config-top.h
+ - don't have SYSLOG_HISTORY enabled by default
+
+lib/sh/Makefile.in
+ - add explicit dependency on pathnames.h for parallel make support
+
+externs.h
+ - add extern declaration for xtrace_fdchk
+
+lib/sh/snprintf.c
+ - add local prototype declarations for isinf, isnan if we are providing
+ local definitions
+
+lib/sh/fnxform.c
+ - add extern declaration for get_locale_var if HAVE_LOCALE_CHARSET not
+ defined
+
+execute_cmd.c
+ - define NEED_FPURGE_DECL so we pick up any extern declaration for
+ fpurge (e.g., if the system doesn't provide it)
+
+builtins/shopt.def
+ - correct prototype and declaration for set_shellopts_after_change so
+ it's the correct type for shopt_set_func_t
+ - add new function shopt_enable_hostname_completion that is the correct
+ type for shopt_set_func_t; just calls enable_hostname_completion and
+ returns its result
+
+ 12/26
+ -----
+doc/{bash.1,bashref.texi}
+ - add \E and \" escape sequences to ANSI-C quoting description.
+ Suggested by Aharon Robbins <arnold@skeeve.com>
+
+ 12/29
+ -----
+doc/bash.1
+ - make sure shell and environment variable names are always in
+ `small caps' bold. Suggested by Aharon Robbins <arnold@skeeve.com>
+
+ 12/30
+ -----
+{execute_cmd.c,parse.y,Makefile}
+ - changes for building minimal configuration from Matthias Klose
+ <doko@debian.org>
+
+[bash-4.1 frozen]
+
+ 12/31
+ -----
+[bash-4.1 released]
+
+ 1/5/2010
+ --------
+doc/bashref.texi
+ - document compat32 and compat40 shopt options. Omission pointed out
+ by Dilyan Palauzov <Dilyan.Palauzov@aegee.org>
+
+ 1/6
+ ---
+lib/readline/complete.c
+ - use `convfn' (converted filename) instead of entry->d_name (filename
+ read from file system) when adding partial or full completions to
+ the command line. Bug and fix from Guillaume Outters
+ <guillaume.outters@free.fr>
+
+ 1/7
+ ---
+builtins/printf.def
+ - fix prototype in extern declaration for vsnprintf. Fix for bug
+ reported by Yann Rouillard <yann@pleiades.fr.eu.org>
+
+ 1/9
+ ---
+parse.y
+ - fix shell_getc to handle alias expansions containing quoted
+ newlines. Problems in bash-4.1 with aliases containing quoted
+ newlines in the middle of and at the end of their expansion.
+ Fix for bug reported by Jonathan Claggett
+ <jonathan@claggett.org>
+ - change mk_alexpansion to not append a space to an alias
+ expansion ending with a newline. Works with shell_getc
+
+ 1/11
+ ----
+lib/glob/Makefile.in
+ - add dependencies on shell.h and pathnames.h. From Mike Frysinger
+ <vapier@gentoo.org>
+
+ 1/15
+ ----
+doc/{bash.1,{bashref,version}.texi},lib/readine/doc/rluser.texi
+ - some typo fixes from Aharon Robbins <arnold@skeeve.com>
+ - added descriptions of ENV, COPROC, and MAPFILE variables
+ - added descriptions of READLINE_LINE and READLINE_POINT
+
+ 1/21
+ ----
+arrayfunc.c
+ - free `akey', the word-expanded index into the assoc array to avoid
+ mem leak in array_value_internal
+ - free index into assoc array in unbind_array_element
+ - change array_value_internal to take an additional argument: an
+ arrayind_t *. If not null, an index to an indexed array is
+ returned there. If not an indexed array or subscript is @ or
+ *, the value is unchanged
+
+ 1/22
+ ----
+builtins/ulimit.def
+ - include <ulimit.h> if we found it during configure and we don't
+ have resources. Fixes omission reported by Joachim Schmitz
+ <jojo@schmitz-digital.de>
+
+{configure,config.h}.in
+ - check for <ulimit.h>, define HAVE_ULIMIT_H if found
+
+lib/sh/oslib.c
+ - include <signal.h> for extern declaration for kill(2) if
+ HAVE_KILLPG not defined
+
+jobs.c
+ - if HAVE_KILLPG is not defined, add an extern prototype decl for
+ killpg()
+
+ 1/24
+ ----
+print_cmd.c
+ - when printing here-string redirections, don't quote the string. The
+ original quotes, if any, are still in place and don't need to be
+ requoted. Fixes bug reported by Arfrever Frehtes Taifersar Arahesis
+ <arfrever.fta@gmail.com>
+
+subst.c
+ - fix array_length_reference to return 0 for variables that have not
+ been assigned a value. Fixes bug reported by Mart Frauenlab
+ <mart.frauenlob@chello.at>, but is not backwards compatible
+
+arrayfunc.[ch]
+ - change array_value to take a new arrayind_t *indp parameter like
+ get_array_value; changed extern prototype declaration
+
+subst.c
+ - changed callers of array_value to add extra parameter
+
+expr.c
+ - change expr_streval to set a new `lvalue' parameter with information
+ about the string being evaluated: string, value, array index (if
+ any), variable evaluated (if set).
+ - saving and restoring current context now saves and restores the
+ current `lvalue'
+ - new function expr_bind_array_element, binds an array element with an
+ already-computed index to a specified value
+ - anywhere we set the current token to a string (STR), save and set
+ the current lvalue
+ - change calls to expr_bind_variable to check whether or not the
+ current lvalue indicates an indexed array was evaluated, and, if so,
+ call expr_bind_array_element using the already-computed index
+ (curlval.ind). Fixes problems with dynamic variables (e.g., RANDOM)
+ in array indices with {pre,post}-{inc,dec}rement and op=
+ operators reported by <dennis@netstrata.com>
+
+ 1/25
+ ----
+expr.c
+ - fix subexpr() to initialize curlval and lastlval when resetting all
+ of the rest of the expression-parsing variables
+
+ 1/26
+ ----
+builtins/setattr.def
+ - in show_var_attributes, if the variable is not set (value == 0),
+ don't print `name=""', just print `name'. Pointed out by
+ Mart Frauenlab <mart.frauenlob@chello.at>
+
+arrayfunc.c
+ - fix array_keys to return NULL if the variable is not set or
+ invisible. Pointed out by Mart Frauenlab <mart.frauenlob@chello.at>
+ - change array_value_internal to return NULL for variable which has
+ not been set
+
+ 1/30
+ ----
+bashline.c
+ - in command_word_completion_function, don't call glob_pattern_p
+ on hint -- use the already-computed `globpat'. At this point,
+ hint might contain an already-dequoted globbing character, but
+ glob_matches will be NULL. Fixes bug reported by
+ coyote@wariat.org.pl
+
+ 2/5
+ ---
+builtins/exec.def
+ - set extern variable "exec_argv0" to the argument to -a
+
+shell.c
+ - if exec_argv0 is set, set dollar_vars[0] to it and set it to NULL,
+ assuming it was set by `exec -a'. `exec -a foo' now sets $0 to
+ foo in an executable shell script without a leading `#!' (fixes
+ longstanding bug)
+
+ 2/8
+ ---
+variables.c
+ - in push_func_var, if a variable is in a special builtin's temporary
+ environment and needs to be propagated because we're in Posix mode,
+ or we just need to propagate a variable, and we are executing in a
+ function without any local variables (so the function-local variable
+ context has no variable hash table), make sure we create a hash
+ table so we have a place to save the variable to be propagated.
+ Fixes bug reported by Crestez Dan Leonard <cdleonard@gmail.com>.
+
+ 2/18
+ ----
+builtins/hash.def
+ - change add_hashed_command to remove the command being looked up from
+ the hash table before trying to add it. That way, if it's not found,
+ there won't be anything remaining in the hash table
+
+ 2/26
+ ----
+trap.[ch]
+ - move IMPOSSIBLE_TRAP_HANDLER define to trap.h so other parts of the
+ shell can use it
+
+parse.y
+ - change yy_readline_get to use IMPOSSIBLE_TRAP_HANDER instead of NULL
+ as a sentinel value for the SIGINT signal handler
+ - make sure yy_readline_get resets interrupt_immediately to 0 after
+ calling readline() using the same criteria it used to set it to 1
+ before the call -- make the code symmetric. Suggested by Werner
+ Fink <werner@suse.de>
+
+builtins/read.def
+ - move assignment to `retval' before decrement of interrupt_immediately
+ and terminate_immediately and call to discard_unwind_frame
+ - move assign_vars label before decrement of interrupt_immediately and
+ terminate_immediately so those variables get reset appropriately
+ if read -t times out
+
+subst.h
+ - new define for Q_DOLBRACE, indicates double-quoted ${...}
+
+subst.c
+ - in parameter_brace_expand, before calling parameter_brace_expand_rhs,
+ add Q_DOLBRACE to `quoted' if we're within double quotes.
+ - in expand_word_internal, if the Q_DOLBRACE flag is set, remove a
+ backslash escaping a }. Result of a Posix discussion on the
+ austin-group list
+
+ 2/27
+ ----
+variables.c
+ - new functions to save and restore the PIPESTATUS variable's internal
+ array: save_pipestatus_array and restore_pipestatus_array
+
+variables.h
+ - new extern declarations for save_pipestatus_array and
+ restore_pipestatus_array
+
+trap.c
+ - in run_pending_traps, _run_trap_internal, and run_exit_trap, save
+ and restore $PIPESTATUS while traps are running. Fixes bug
+ reported by Florian Bruhin <me@the-compiler.org>
+
+parse.y
+ - use save_pipestatus_array and restore_pipestatus_array in
+ save_parser_state and restore_parser_state, respectively, replacing
+ inline code
+
+lib/readline/histfile.c
+ - fix callers of history_filename to be prepared to cope with it
+ returning NULL
+ - change history_filename to return NULL if $HOME is not set, rather
+ than trying to write the history file in the current directory.
+ This is the default directory, used only if the application does
+ not specify a history filename. Changed due to long-ago (unsent)
+ bug report from OpenBSD
+
+{Makefile,config.h,configure}.in,externs.h,lib/sh/{dprintf.c,Makefile.in}
+ - change fdprintf to dprintf, which is the Posix standard interface,
+ look for it with configure, replace it if not available
+
+ 2/28
+ ----
+command.h
+ - add new subshell flag, SUBSHELL_RESETTRAP. Indicates to the trap
+ builtin that the shell is executing a command substitution and
+ should free the trap strings we left unfreed by reset_signal_handlers()
+
+trap.c
+ - free_trap_string() and free_trap_strings() are now compiled in
+
+builtins/trap.def
+ - if changing a signal disposition and the SUBSHELL_RESETTRAP flag is
+ set in subshell_environment, free the trap strings left unfreed by
+ reset_signal_handlers
+
+subst.c
+ - in command_substitute, set the SUBSHELL_RESETTRAP flag. This change
+ is for Austin Group Posix interpretation 53
+ (http://austingroupbugs.net/view.php?id=53)
+
+ 3/7
+ ---
+lib/sh/{Makefile.in,strchrnul.c},Makefile.in
+ - implementation of strchrnul, from gnulib
+
+configure.in,config.h.in
+ - look for strchrnul and compile in version in lib/sh/strchrnul.c if
+ not available
+ - look for mbsnrtowcs and define HAVE_MBSNRTOWCS if available
+
+lib/sh/xmbsrtowcs.c
+ - new function, xdupmbstowcs2, fast version of xdupmbstowcs used when
+ mbsnrtowcs is available and the indices are not required. Called
+ from xdupmbstowcs as required. Initial patch from
+ <0xe2.0x9a.0x9b@gmail.com>
+
+ 3/22
+ ----
+print_cmd.c
+ - call print_deferred_heredocs virtually every time a recursive call
+ to make_command_string_internal is made so here documents get
+ printed correctly when they are attached to commands inside compound
+ commands such as for and while. Fixes bug reported by Mike
+ Frysinger <vapier@gentoo.org>
+
+ 3/25
+ ----
+builtins/printf.def
+ - fix have_precision case in PF macro to call printf with precision
+ instead of fieldwidth argument. Fixes bug reported by Rob Robason
+ <rob@robason.net>
+
+ 3/26
+ ----
+trap.[ch]
+ - new function, signal_is_hard_ignored, returns true if the shell
+ inherited SIG_IGN as a signal's disposition
+ - new function, set_original_signal (sig, handler), provides interface
+ for rest of shell to set original_signals[sig] = handler
+
+execute_cmd.c
+ - execute_disk_command needs to call reset_terminating_signals in the
+ child process before resetting traps with restore_original_signals
+
+builtins/trap.def
+ - call initialize_terminating_signals before calling display_traps for
+ trap -p or trap without any other arguments. Possible future use
+
+lib/readline/complete.c
+ - rl_filename_completion_function needs to call
+ rl_filename_dequoting_function with `dirname' (which has already
+ been tilde-expanded) instead of `users_dirname', because it calls
+ opendir with `dirname'. Fixes bug reported by Stefan H. Holek
+ <stefan@jarn.com>
+
+ 3/27
+ ----
+sig.c
+ - experimental change to set_signal_handler: when setting the SIGCHLD
+ handler, set the SA_RESTART flag so that interruptible system calls
+ get restarted after a child dies. Fixes bug reported by Tomas
+ Trnka <tomastrnka@gmx.com>, but needs further evaluation
+
+lib/sh/eaccess.c
+ - eaccess(2) apparently does only half the job: it does not check that
+ the permission bits on a file actually allow, for instance, execution.
+ Need to augment with a call to sh_stataccess if eaccess returns
+ success on FreeBSD. Fixes FreeBSD problem reported by Johan Hattne
+ <johan.hattne@utsouthwestern.edu>
+
+ 3/28
+ ----
+parse.y,bashline.c,externs.h
+ - history_delimiting_chars now takes a const char * as an argument:
+ the line being added to the history. Changed callers
+
+parse.y
+ - bash_add_history should not add a semicolon separator if the current
+ history entry already ends in a newline. It can introduce syntax
+ errors (e.g., when it results in a null command before a close brace).
+ Fixes bug reported by Andreas Schwab <schwab@linux-m68k.org>
+
+parse.y
+ - history_delimiting_chars needs to return a newline instead of a
+ semicolon if it thinks the current line starts a here document
+ (if it contains `<<'). Also keeps track of the fact with a new
+ static variable, LAST_WAS_HEREDOC, so it can return the right
+ sequence of newlines later for the here-document body. Fixes bug
+ reported by Andreas Schwab <schwab@linux-m68k.org>
+
+ 3/29
+ ----
+lib/sh/eaccess.c
+ - if the system has faccessat, sh_eaccess will now use it in
+ preference to all other options
+
+ 3/30
+ ----
+subst.h
+ - new string_extract and extract_dollar_brace_string flag value:
+ SX_POSIXEXP, set if the shell is expanding one of the new Posix
+ pattern removal word expansions
+
+parser.h
+ - new definitions for "word expansion state", shared between parse.y
+ and subst.c
+
+subst.c
+ - include parser.h
+
+ 4/9
+ ---
+builtins/declare.def
+ - make sure declare_internal calls bind_assoc_variable with newly-
+ allocated memory for the key argument when using an implicit key
+ of "0". Bug report and fix from Andreas Schwab
+ <schwab@linux-m68k.org>
+
+ 4/14
+ ----
+lib/readline/input.c
+ - restructure the rl_event_hook loop in rl_read_key to call the
+ event hook after rl_gather_tyi() returns and rl_get_char has
+ a chance to collect the input. Previous behavior was to call
+ the event hook before attempting to read input. Problem
+ reported by Anant Shankar <anantshankar17@gmail.com>
+
+ 4/15
+ ----
+builtins/fc.def
+ - fc_builtin needs to check whether the calculation of last_hist
+ leaves hlist[last_hist] == 0, and keep decrementing it until it
+ leaves a non-null history entry or goes < 0. Currently only
+ does this if saved_command_line_count > 0, indicating we're
+ trying to edit a multi-line command. Fixes bug reported by
+ Roman Rakus <rrakus@redhat.com>
+
+ 4/17
+ ----
+subst.c
+ - new process substitution helper functions:
+ unlink_fifo - closes a single FD or FIFO
+ num_fifos - returns number of open FDs or active FIFOs
+ copy_fifo_list - returns a bitmap of open FDs or active FIFOs
+ by index into appropriate list (dev_fd_list or fifo_list)
+ close_new_fifos - take a bitmap saved by copy_fifo_list and
+ call unlink_fifo on any FD or FIFO open at the time of the
+ call that is not marked as active in list
+
+execute_cmd.c
+ - execute_builtin_or_function: use new framework to close process
+ substitution FDs or FIFOs created by a shell builtin or shell
+ function. Fixes bug reported by Charles Duffy <charles@dyfis.net>
+
+doc/{bash.1,bashref.texi}
+ - document 'C and "C constants for printf builtin
+
+ 4/22
+ ----
+lib/readline/complete.c
+ - new function to return screenwidth for use when displaying possible
+ matches: complete_get_screenwidth; changed uses of _rl_screenwidth
+ to use complete_get_screenwidth().
+ - change complete_get_screenwidth to query (readline-private)
+ _rl_completion_colums, $COLUMNS, then _rl_screenwidth in that order
+ - change rl_display_match_list to deal with limit < 0 (which implies
+ that cols == 0) when _rl_screenwidth > 0
+
+lib/readline/bind.c
+ - new bindable variable: completion-display-width, controls the
+ number of columns used when displaying completions with new
+ sv_compwidth function to call when value is set or unset
+
+lib/readline/doc/{readline.3,rltech.texi}
+ - documented completion-display-width variable
+
+ 4/23
+ ----
+execute_cmd.c
+ - change execute_in_subshell to reset trap handlers without freeing
+ the trap strings and set SUBSHELL_RESETTRAP. In line with Austin
+ Group interp #53 (trap in a subshell).
+ - ditto for execute_simple_command where it can be determined that
+ the shell is going to run a builtin or function in a subshell
+
+trap.c
+ - new function, get_all_original_signals, retrieves the original
+ signal disposition for all signals
+
+trap.h
+ - extern declaration for get_all_original_signals
+
+builtins/trap.def
+ - change showtrap to display signals that are "hard ignored" as
+ trap commands to ignore them, even though that trap command would
+ be a no-op. Partial fix for feature request from Siddhesh
+ Poyarekar <siddhesh.poyarekar@gmail.com>
+ - change trap_builtin to call get_all_original_signals before displaying
+ traps. This will show inherited ignored signals. Rest of feature
+ request from Siddhesh Poyarekar <siddhesh.poyarekar@gmail.com>
+
+lib/readline/histexpand.c
+ - fix history_tokenize_word so that it understands $(...) and the
+ <(...) and >(...) expansions as a single word
+ - change history_tokenize_word so that it understands extended shell
+ globbing patterns as a single word. Code is very similar to
+ $(...) code above. Bug reported by Rajeev V. Pillai
+ <rajeevvp@gmail.com>
+
+ 4/24
+ ----
+lib/readline/vi_mode.c
+ - add checks to rl_vi_char_search to make sure we've already done a
+ search if the command is `;' or `,', and return immediately if we
+ have not. Fixes bug reported by Eric Ho <ericmho@shaw.ca>
+
+lib/readline/text.c
+ - make sure `dir' is in the valid range before searching in
+ _rl_char_search_internal. Range checks in the code depend on it
+ being non-zero
+
+ 5/3
+ ---
+lib/readline/complete.c
+ - in rl_complete_internal, if show-all-if-ambiguous or
+ show-all-if-unmodified are set (what_to_do == '!' or '@',
+ respectively), and the common match prefix is shorter than the
+ text being completed, inhibit inserting the match.
+ The guess is that replacing text with a shorter match will not
+ be wanted
+
+ 5/20
+ ----
+lib/sh/unicode.c
+ - new file, with unicode character conversion-related code. Will be
+ used to implement \u and \U escapes where appropriate, and for
+ other unicode-related functions in the future
+
+ 5/21
+ ----
+builtins/printf.def
+ - add code to handle \u and \U escapes in format strings and arguments
+ processed by the %b format specifier
+
+lib/sh/strtrans.c
+ - add code to handle \u and \U escapes as unicode characters, works for
+ both `echo -e' and $'...'
+
+doc/{bash.1,bashref.texi}
+ - document new \u and \U escape sequences for $'...' and echo (printf
+ defers to the system's man page or Posix)
+
+ 5/24
+ ----
+execute_cmd.c
+ - change execute_disk_command to return a status, instead of just
+ leaving it in `last_command_exit_value', since the parent's return
+ value is sometimes used (e.g., when a restricted shell refuses to
+ run a command with a `/'). Fixes bug reported by David Pitt
+ <David.Pitt@anz.com>
+
+ 5/25
+ ----
+bashline.c
+ - change bash completion functions to save and restore the value of
+ rl_ignore_some_completions_function, and set it to the bash default
+ of filename_completion_ignore where appropriate. Fixes bug
+ reported by Henning Bekel <h.bekel@googlemail.com>
+
+variables.c
+ - new convenience function: find_global_variable (name). Looks for
+ NAME in the global variables table, skipping any local and
+ temporary environment variables
+
+builtins/declare.def
+ - add new -g option to declare/typeset/local, forces variables to be
+ created or modified at the global scope when executing inside a
+ shell function. Requested by many, most recently by
+ konsolebox@gmail.com
+
+ 5/27
+ ----
+test.c
+ - added new `-v var' unary test operator; returns TRUE if var is set
+ (i.e., has been assigned a value). Works in both test builtin and
+ [[ conditional command
+
+doc/{bash.1,bashref.texi}
+ - documented new `-v var' unary conditional operator
+
+tests/test.tests
+ - added tests for new -v var operator
+
+builtins/kill.def
+ - change kill builtin so -PID (pgrp specification) following a
+ -s sig or -n sig option is not interpreted as a signal specification.
+ Fixes bug reported by Roman Rakus <rrakus@redhat.com>
+
+builtins/evalstring.c
+ - in parse_and_execute, if parse_command() returns non-zero,
+ indicating a parse error, exit the shell if the conditions require
+ a posix-mode non-interactive shell to abort (parse error in a `.'
+ script or eval string). Bash-4.1 only printed a warning. This is
+ from Austin Group interp 114
+
+doc/bashref.texi
+ - add note to the posix mode section of the texinfo manual noting
+ the changed behavior for `.' and `eval'
+
+parse.y
+ - change time_command_acceptable to allow TIME token to appear after
+ BANG token (to allow `! time foo', which is supposed to be valid)
+ - change pipeline_command production to allow multiple instances of
+ `!' (which toggle inverting the return status) and `time' (which
+ have no effect)
+
+execute_cmd.c
+ - In posix mode, `time' without a following pipeline prints the
+ elapsed user, system, and real time for the shell and its
+ children since the shell was invoked.
+ It's like `times' but obeys the setting of TIMEFORMAT. A future
+ revision of Posix will require this
+
+doc/{bashref.texi,bash.1}
+ - document new posix mode use of `time'
+
+parse.y
+ - add production to pipeline_command that permits `!' by itself to
+ be equivalent to `false' (and, with the changes above, permits
+ `! !' to be roughly equivalent to `true'). A future revision of
+ Posix will require this
+
+ 5/28
+ ----
+parse.y
+ - fix \W prompt expansion to use memmove instead of strcpy, since the
+ source and target strings overlap (though you think it wouldn't
+ matter, since the overlapping regions are never touched at the same
+ time). Fixes bug reported by Stéphane Jourdoi
+ <sjourdois@gmail.com>
+
+parse.y
+ - Posix interp 217 states that $(( must be parsed first as an
+ arithmetic expansion, so avoid attempting to parse it as a nested
+ command substitution. Fixes bug reported by several, most recently
+ <jwm@horde.net>
+
+subst.c
+ - change extract_delimited_string to process nested $( as a possible
+ command substitution, but only if already parsing an arithmetic
+ expansion. Rest of fix for Posix interp 217
+ - change parameter_brace_expand_rhs to make the := expansion operator
+ perform quote removal and both assign the result to the variable and
+ return it as the result of the expansion, rather than assign the
+ value after quote removal but return the value before quote removal.
+ Posix interp 221
+ - introduce new internal quoting flag: Q_DOLBRACE. Denotes a double-
+ quoted ${...} expansion. In this case, Posix interp 221 requires
+ that a backslash quoting an embedded `}' be removed, even though it's
+ not one of the characters marked as special inside double quotes.
+ Set in parameter_brace_expand, used by expand_word_internal.
+
+parse.y
+ - introduce new parsing state, P_DOLBRACE, set when parsing a ${...}
+ expansion
+ - set a "dolbrace operator state" in parse_matched_pair to decide
+ whether the lexer is reading the param, op, or word in
+ ${paramOPword}. Will be used to decide whether or not to treat
+ single quotes specially in a double-quoted "${...}
+
+ 5/29
+ ----
+parse.y
+ - change parse_matched_pair so that a single quote appearing in a
+ double-quoted ${...} expansion is not special unless the expansion
+ operator is `#[#]' or `%[%]'. Posix interp 221
+
+subst.c
+ - change string_extract_double_quoted so that a single quote appearing
+ in a double-quoted ${...} expansion is not special unless the
+ expansion operator is `#[#]' or `%[%]'. Posix interp 221
+
+doc/bashref.texi
+ - document posix-mode effects of Posix interp 221
+ - add section describing GNU parallel as requested by Stallman
+
+lib/readline/complete.c
+ - broke code that compares filenames read from the file system (and
+ possibly converted) to words being completed out into a separate
+ function: complete_fncmp
+ - augment complete_fncmp to treat hyphen and underscore as equivalent
+ when comparing filenames if _rl_completion_case_map is set
+
+lib/readline/rlprivate.h
+ - new extern declaration for _rl_completion_case_map
+
+lib/readline/util.c
+ - change _rl_strnicmp to return the difference between the characters,
+ like strcasecmp, and not modify the pointers it is passed
+ - change _rl_stricmp to not modify the pointers it is passed
+
+lib/readline/bind.c
+ - new bindable variable, "completion-case-map", toggles value of
+ _rl_completion_case_map
+
+lib/readline/doc/{rluser.texi,readline.3}
+ - document new bindable readline variable "completion-case-map"
+
+execute_cmd.c
+ - change execute_function to reset funcnest and jump back to top level
+ if funcnest exceeds funcnest_max
+ - use funcnest_max as a max function nesting level, if set to numeric
+ value greater than 0 (defaults to 0, so inactive)
+
+variables.c
+ - new variable FUNCNEST, controls funcnest_max value if set to numeric
+ value > 0
+sig.c
+ - reset funcnest to 0 when throw_to_top_level occurs
+
+doc/{bash.1,bashref.texi}
+ - document FUNCNEST variable and its effect on function execution
+
+lib/readline/funmap.c
+ - add new bindable command names to avoid case-insensitive matching
+ problems between, for instance, vi-fword and vi-fWord:
+
+ vi-forward-word
+ vi-forward-bigword
+ vi-backward-word
+ vi-backward-bigword
+ vi-end-word
+ vi-end-bigword
+
+ Suggested in a different form in 2006 (!) by Servatius Brandt
+ <servatius.brandt@arcor.de>
+
+builtins/mapfile.def
+ - run_callback now takes a new third argument: curline, the line
+ currently being read and about to be assigned
+ - the callback function/command now takes an additional argument:
+ the line to be assigned to the array index. Feature suggested by
+ Dennis Williamson <dennistwilliamson@gmail.com>
+
+doc/{bash.1,bashref.texi}
+ - document new additional `line' argument to mapfile callback
+
+ 5/30
+ ----
+builtins/printf.def
+ - add new %(fmt)T format specifier, where FMT is a strftime format.
+ Argument is number of seconds since the epoch, with -1 meaning
+ current time (roughly date +%s) and -2 meaning shell start time
+ (roughly $SECONDS, unless it's been assigned a value or unset).
+ Fieldwidth and precision are preserved, strftime result is printed
+ as with %[-][[fieldwidth][.[precision]]]s
+
+doc/{bash.1,bashref.texi}
+ - document new %(datefmt)T printf format specifier and special
+ arguments
+
+builtins/hash.def
+ - don't permit programs with slashes to be entered into the hash table
+ 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
+ - finish restructuring rl_vi_domove and the functions that call it so
+ it works in callback mode, including numeric arguments. Requested
+ a long time ago by Bob Rossi
+
+lib/readline/callback.c
+ - arrange to call appropriate callback when readline state indicates
+ RL_STATE_VIMOTION, so vi motion commands like `cw' and `d2w' are
+ handled in callback mode
+
+lib/sh/wcswidth.c
+ - replacement wcswidth implementation
+
+aclocal.m4
+ - add REPLACE_FUNCS(wcswidth) to BASH_CHECK_MULTIBYTE
+
+execute_cmd.c
+ - fix select_query and print_index_and_element to compute correct
+ 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>
+
+ 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 so we can use callbacks, since that will change public
+ interface
+
+ 6/17
+ ----
+subst.c
+ - fix memory leak in parameter_brace_expand: when performing pattern
+ removal with parameter_brace_remove_pattern, make sure `name' is
+ freed. Fixes bug reported by oyvindh@dhampir.no
+
+ 6/23
+ ----
+{parse.y,subst.c}
+ - make the ${param//pat/rep}, ${param^pat}, and ${param,pat} expansions
+ require single quotes and double quotes to match when within double
+ quotes. This way every expansion except the Posix ones behaves as
+ bash has always behaved
+
+subst.c
+ - change remove_upattern and remove_wpattern to return their first
+ argument if nothing matches, change callers to allocate memory
+ appropriately
+ - change remove_pattern to short-circuit and return copy of PARAM
+ if remove_wpattern returns its first argument (indicating no match)
+ rather than convert back to multibyte string, allocating new memory
+ twice and calling wcsrtombs
+
+ 6/24
+ ----
+execute_cmd.c
+ - add missing initializers for sh_coproc to eliminate a compiler
+ warning. Patch from Werner Fink <werner@suse.de>
+
+ 6/27
+ ----
+parse.y
+ - add `TIMEIGN' token to handle `time -p -- ...'. Pointed out by
+ Laszlo Ersek <lacos@caesar.elte.hu> on austin-group list
+
+ 6/28
+ ----
+jobs.c
+ - treat a shell with (subshell_environment&SUBSHELL_PIPE) != 0 like
+ a command substitution in wait_for and act like we received a
+ SIGINT if a job we're waiting for dies of SIGINT. Fixes bug
+ reported by Ilya Basin <basinilya@gmail.com>
+
+ 7/2
+ ---
+jobs.c
+ - if fork() fails in make_child, try to reap some dead children before
+ retrying
+
+execute_cmd.c
+ - change execute_pipeline to run the last command of a non-asynchronous
+ pipeline in the current shell environment if the `lastpipe' shell
+ option is enabled and job control is not active. Code from
+ Werner Fink <werner@suse.de>
+
+parse.y
+ - Posix says (issue 267) that time is not recognized as a keyword
+ if the next token begins with a `-'
+
+doc/{bash.1,bashref.texi}
+ - changed the descriptions of BASH_SOURCE, BASH_LINENO, and FUNCNAME
+ as proposed in Ubuntu bug 591677.
+ - document new `lastpipe' shell option that runs last command of a
+ pipeline in the current shell environment
+ - document new posix-mode behavior with `time -p'
+
+ 7/5
+ ---
+aclocal.m4
+ - new autoconf test WEXITSTATUS_OFFSET, bit offset in status word
+ returned by wait() of the process's exit status
+
+jobs.[ch]
+ - change stop_pipeline to return the actual index of the job just
+ created and added to the jobs table, instead of the current job
+ - job_exit_status and job_exit_signal are now global functions, with
+ extern declarations in jobs.h
+ - append_process: new utility function for use by the lastpipe code,
+ takes info, creates a PROCESS from them, and adds it to the end of
+ the passed job id's pipeline. lastpipe code uses it to add a dummy
+ process for the last command in the pipeline
+ - freeze_jobs_list: new utility function so rest of shell can freeze
+ the jobs list. Used by the lastpipe code
+
+execute_cmd.c
+ - changes to lastpipe code to make `pipefail' option, $PIPESTATUS, and
+ $? work correctly. Uses append_process and job_exit_status
+
+ 7/10
+ ----
+subst.c
+ - when performing pattern substitution word expansions, a `&' in the
+ replacement string is replaced by the text matched by the pattern.
+ The `&' can be quoted with a backslash to inhibit the expansion.
+ CURRENTLY DISABLED
+
+ 7/13
+ ----
+pcomplib.[ch]
+ - new member for struct compspec: lcommand. for future use
+
+ 7/15
+ ----
+parse.y
+ - fix problem in parse_comsub where extra space was added to here-doc
+ delimiter if the first word in the comsub contained a `/'. Fixes
+ bug reported by Alex Khesin <alexk@google.com>
+
+ 7/20
+ ----
+parse.y
+ - change reserved_word_acceptable to return success if the last two
+ tokens read were `function WORD'. Allows function definitions like
+ function good [[ -x foo ]];. Fixes bug reported by Linda Walsh
+ <bash@tlinx.org>
+
+doc/{bash.1,bashref.texi}
+ - change function definition meta-syntax to make it clearer, rather
+ than let the text note the optional portions
+
+ 7/24
+ ----
+bashhist.c
+ - change bash_history_inhibit_expansion() to suppress history expansion
+ for $! parameter expansion. Fixes debian bug #589745 submitted by
+ Frank Heckenbach <f.heckenbach@fh-soft.de>
+
+lib/readline/terminal.c
+ - change rl_resize_terminal to always fetch the new terminal size and
+ only force the redisplay if _rl_echoing_p is non-zero. Fixes bug
+ reported by Balazs Kezes <rlblaster@gmail.com>
+
+ 7/25
+ ----
+lib/readline/xfree.c
+ - new file, contains definition of xfree moved from xmalloc.c
+
+ 7/28
+ ----
+variables.c
+ - check suspect return values from bind_variable before trying to use
+ the returned SHELL_VAR *. Changes to: initialize_shell_variables,
+ bind_int_variable, FIND_OR_MAKE_VARIABLE. Fixes bug reported by
+ Roman Rakus <rrakus@redhat.com>
+
+ 7/31
+ ----
+lib/readline/rltty.c
+ - fix rl_prep_terminal and rl_deprep_terminal to use fileno(stdout)
+ if rl_instream is NULL. Fixes bug reported by Otto Allmendinger
+ otto.allmendinger@googlemail.com
+
+ 8/2
+ ---
+lib/sh/casemod.c
+ - if the passed string is NULL or empty, return it immediately. Fixes
+ bug reported by Dennis Williamson <dennistwilliamson@gmail.com>
+
+subst.c
+ - fix pat_subst to cope with the passed string being NULL
+
+arrayfunc.h
+ - added flag values for array_value_internal and its callers; converted
+ array_value_internal `allow_all' parameter into a general flags word
+ - get_array_value now takes a flags value
+ - changed array_value internal to use *indp as an index to use if the
+ AV_USEIND flag is set, rather than recomputing it
+
+subst.c
+ - get_var_and_type takes two new parameters: a flags word and an index
+ that represents an already-computed index for an array reference
+ (just indexed arrays so far). Index is used and passed to array_value
+ if flags includes AV_USEIND
+ - parameter_brace_expand_word takes a new argument: the already-
+ computed index; returns W_ARRAYIND if word expanded is being used
+ as an array index
+ - changed parameter_brace_casemod, parameter_brace_patsub,
+ parameter_brace_substring, parameter_brace_remove_pattern to take new
+ flags and index arguments from parameter_brace_expand_word. They
+ pass the new parameters along to get_var_and_type to use an
+ already-computed array index if necessary. Fixes bug where array
+ indexes are computed twice reported by Andrew Benton
+ <b3nton@gmail.com>
+
+doc/bash.1,lib/readline/doc/{history.3,hsuser.texi}
+ - modified description of history event designators to clarify that
+ all non-absolute event designators are relative to the current
+ position in the history list. Question raised by Frank
+ Heckenbach <f.heckenbach@fh-soft.de> as debian bash bug 590012
+
+ 8/5
+ ---
+subst.c
+ - remove code that does not add a quoted null when the input string
+ is partially quoted; subsequent word splitting may require it.
+ Fixes bug reported by Eric Blake <eblake@redhat.com>
+
+ 8/12
+ ----
+lib/glob/gmisc.c
+ - move match_pattern_wchar and match_pattern_char to new file in
+ glob library
+ - new functions: wmatchlen(pat, max) and umatchlen(pat, max), computes
+ number of characters PAT will match. Returns the number of chars
+ that will be matched or -1 if the match length is indeterminate
+ (i.e., contains a `*')
+
+subst.c
+ - use umatchlen/wmatchlen in match_upattern/match_wpattern to bound
+ the number of match attempts in large strings to (usually) one,
+ depending on match length. Fixes performance problems with
+ pattern substitution in large strings noted by Yi Yan
+ <yiyan97@hotmail.com>. Can be applied to remove_[uw]pattern also
+
+ 8/13
+ ----
+bashhist.c
+ - in maybe_append_history, change check for history_lines_this_session
+ so that we append the lines to the file if it's equal to the value
+ returned by where_history(). This means that without this change,
+ the history won't be appended if all the lines in the history list
+ were added in the current session since the last time the history
+ file was read or written. Fixes bug reported by Bruce Korb
+ <bruce.korb@gmail.com>
+
+shell.h,parse.y
+ - add prompt_string_pointer to the parser_state struct saved and
+ restored by {save,restore}_parser_state. Fixes both bugs exposed
+ by bash_completion and completion of open backquotes reported by
+ Egmont Koblinger <egmont@gmail.com>
+
+subst.h
+ - new flag for skip_to_delim: SD_EXTGLOB. Skip extended globbing
+ patterns while looking for ending delimiter
+
+subst.c
+ - when passed the SD_EXTGLOB flag, skip_to_delim skips over extended
+ globbing patterns (when extended_glob is set) while looking for a
+ character in the delimiter set
+
+pathexp.c
+ - split_ignorespec: new function to replace calls to extract_colon_unit
+ in setup_ignore_patterns. uses skip_to_delim with the SD_EXTGLOB
+ flag to skip over extended globbing patterns in variables like
+ HISTIGNORE and GLOBIGNORE. Fixes bug reported by Dimitar DIMITROV
+ <mitkofr@yahoo.fr> and Greg Wooledge <wooledg@eeg.ccf.org>
+
+ 8/28
+ ----
+lib/readline/rlprivate.h
+ - add members to search_cxt to save _rl_keymap
+ - new flag for isearch context: SF_CHGKMAP, set if we changed the
+ keymap while reading a character for the search string that
+ translated to a command
+
+lib/readline/isearch.c
+ - save current readline keymap in cxt->keymap and cxt->okeymap
+ in _rl_scxt_alloc
+ - in _rl_isearch_dispatch, only check for cxt->lastc as a member of
+ cxt->search_terminators if it's > 0 (i.e., not an isearch opcode)
+
+ 9/3
+ ---
+support/signames.c
+ - add Solaris SIGJVM1 and SIGJVM2. Update from Stefan Teleman
+ <stefan.teleman@oracle.com>
+
+shell.c
+ - instead of closing all fds 3-20 at shell startup, just set them to
+ be close-on-exec. Report from Rainer Mülle <raimue@macports.org>
+
+lib/readline/isearch.c
+ - in _rl_isearch_dispatch, if the current character maps to ISKMAP,
+ move to the indicated keymap (using cxt->keymap) and go on to
+ read another character. Fixes problem reported by Davor
+ Cubranic <cubranic@stat.ubc.ca>
+ - in _rl_isearch_dispatch, after translating key to possible opcode,
+ restore _rl_keymap from cxt->okeymap if necessary
+ - in _rl_isearch_dispatch, use key sequences that map to default
+ functions that ^G, ^W, and ^Y map to as equivalent to those chars
+
+lib/readline/complete.c
+ - new variable, _rl_menu_complete_prefix_first, zero by default
+ - change menu_complete to display common prefix (matches[0]) first
+ before cycling through rest of match list if
+ _rl_menu_complete_prefix_first is non-zero. Suggested by Sami
+ Pietila <sami.pietila@gmail.com>
+
+lib/readline/bind.c
+ - new bindable readline variable, "menu-complete-display-prefix",
+ controls setting of _rl_menu_complete_prefix_first
+
+doc/{bash.1,bashref.texi},lib/readline/doc/{readline.3,rluser.texi}
+ - added description of menu-complete-display-prefix bindable
+ readline variable
+
+ 9/17
+ ----
+configure.in
+ - remove AM_PATH_LISPDIR call since we don't use that bash debugger
+ any more. Suggested by Mike Frysinger <vapier@gentoo.org>
+
+ 10/6
+ ----
+findcmd.c
+ - change executable_file to set errno to EISDIR if the passed name
+ is a directory
+
+builtins/exec.def
+ - change exec_builtin to report appropriate error message if the
+ file argument is a directory. Noted by Eric Blake <eblake@redhat.com>
+ in a message to austin-group
+
+builtins/source.def
+ - change source_builtin to make sure the shell exits if the file is
+ not found when in a non-interactive shell running in posix mode
+ and source_searches_cwd == 0 (as posix mode makes it by default).
+ Pointed out in http://thread.gmane.org/gmane.comp.shells.dash/291/focus=392
+ by Jilles Tjoelker <jilles@stack.nl>
+
+execute_cmd.c
+ - set executing_command_builtin in execute_builtin if the builtin is
+ command_builtin. Unwind-protected in execute_function_or_builtin
+ (like executing_builtin variable). Available for rest of shell
+
+builtins/{source.def,evalfile.c}
+ - make sure that non-interactive posix mode shells exit if the file
+ argument to `.' is not found only if they are not being executed
+ by the command builtin (executing_command_builtin == 0). This is
+ how `command' can cancel effects of special builtin exit properties
+ in the case of `dot file not found'
+
+ 10/13
+ -----
+lib/sh/strtrans.c
+ - pass \c through unchanged if not escaping for `echo -e' and they are
+ the final two characters in the string
+
+ 10/15
+ -----
+subst.c
+ - extract_dollar_brace_string: fix problem with single quotes
+ in unquoted ${...} for Posix compliance
+
+ 10/16
+ -----
+builtins/exec.def
+ - catch return value from shell_execve; don't print duplicate error
+ message if return value is EX_NOTFOUND. Make sure exit status
+ from exec is 127 if command is not found
+
+execute_cmd.c
+ - fix typo (`saved_redirects' should be `saved redirects') in
+ execute_function_or_builtin `command exec' case. Typo caused
+ too much of the unwind-protect stack to be discarded
+ - in same execute_function_or_builtin case, don't discard the
+ `saved redirects' frame unconditionally; only discard it if
+ saved_redirects is non-null in the `command exec' case. Fixes
+ sh -c 'command exec; exit 1' hanging bug uncovered by FreeBSD
+ sh test cases
+
+ 10/18
+ -----
+subst.c
+ - when in posix mode, shell should not exit if a variable assignment
+ error (e.g., assigning to readonly variable) occurs preceding a
+ command that is not a special builtin. Fixes bug uncovered by
+ FreeBSD sh test cases
+ - when in posix mode, the ${!?} and ${!#} expansions are not indirect
+ expansions, but posix word expansions involving the `!' variable
+
+parse.y
+ - fix parse_comsub so that it does not skip backslash-newline when
+ parsing a comment
+
+ 10/19
+ -----
+subst.c
+ - fix parameter_brace_expand so that an attempt to use the % or #
+ expansions on an unset variable with -u set will cause a non-
+ interactive shell to abort. Posix change
+ - fix parameter_brace_expand so that an attempt to use pattern
+ substitution or case modification expansions on an unset variable
+ with -u set will cause and unbound variable error and make a
+ non-interactive shell abort
+ - change parameter_brace_expand_length to return INTMAX_MIN if a
+ positional parameter is unset and -u is set
+ - if parameter_brace_expand_length returns INTMAX_MIN when -u is set,
+ treat it as an unbound variable error and make a non-interactive
+ shell abort. Posix change
+ - change parameter_brace_expand_length to return INTMAX_MIN if an
+ implicit reference to array[0] is made ${#array} and array[0] is
+ not set when -u is set
+
+ 10/20
+ -----
+builtins/cd.def
+ - Posix 2008 says that if no matching directories are found in $CDPATH,
+ use the directory name passed as an operand and go on. Posix change
+
+doc/bashref.texi
+ - change Posix mode section with latest additions and removals
+
+ 11/4
+ ----
+lib/readline/complete.c
+ - fix rl_menu_complete and rl_old_menu_complete to keep incrementing
+ match_list_index by match_list_size as long as it's < 0. Fixes
+ bug reported by jeenuv@gmail.com
+
+braces.c
+ - make mkseq() take intmax_t arguments for sequence start and end
+ and make sure it's passed intmax_t values. Fixes bug reported by
+ Pete Gregory <pg@bushlitt.org>
+
+sig.c
+ - if termsig_handler is called when terminate_immediately == 1,
+ assume we're being called as a signal handler and set
+ history_lines_this_session to 0 to inhibit history file being
+ written on shell exit. Fixes long-standing bug most recently
+ observed by Andreas Schwab <schwab@linux-m68k.org>
+
+ 11/5
+ ----
+redir.c
+ - add_undo_close_redirect now returns int, 0 on success, non-zero on
+ failure. Currently always succeeds
+ - new macro REDIRECTION_ERROR to make do_redirection_internal return
+ value of errno
+ - change do_redirection_internal to call REDIRECTION_ERROR after
+ saving file descriptor and make do_redirection_internal return error
+ if add_undo_redirect or add_undo_close redirect fails. This makes
+ failure to save a file descriptor a redirection error and the shell
+ behaves appropriately. Fixes bug reported by Eric Blake
+ <eblake@redhat.com>
+
+bashline.c
+ - modify bash_forward_shellword to correctly handle quoted strings,
+ especially if point is in a quoted string when function is invoked.
+ Fixes bug reported by Daniel Colascione <dan.colascione@gmail.com>
+
+configure.in
+ - change version to 4.2-alpha
+
+ 11/7
+ ----
+lib/readline/text.c
+ - in rl_insert, if we're not in the multibyte code path, don't try to
+ optimize and insert all of the available typeahead input if we're
+ reading input from a macro. Fixes bug reported by Andre Majorel
+ <aym-ung@teaser.fr>
+
+lib/readline/text.c
+ - break out multibyte guts of rl_forward_char into a separate function
+ _rl_forward_char_internal that does nothing but calculate the new
+ value of point
+ - change rl_forward_char to call _rl_forward_char_internal instead of
+ having equivalent code inline
+
+lib/readline/rlprivate.h
+ - new extern declaration for _rl_forward_char_internal
+
+lib/readline/vi_mode.c
+ - change _rl_vi_append_forward to call _rl_forward_char_internal to
+ set rl_point, instead of calling rl_forward_char. When at the end
+ of the line, rl_forward_char will ring the bell. Fixes debian
+ bash bug 601042, reported by Alan J. Greenberger <alanjg@ptd.net>
+
+ 11/14
+ -----
+subst.c
+ - fix match_upattern to use correct test to immediately break out of
+ loop (when potential match length is greater than number of chars
+ remaining in the string) in MATCH_ANY case
+
+ 11/15
+ -----
+subst.c
+ - include "typemax.h" to make sure we have a definition of INTMAX_MIN
+
+ 11/16
+ -----
+lib/sh/unicode.c
+ - make sure `localconv' isn't declared on machines without iconv
+ - add stub_charset for systems that don't have locale_charset: looks
+ up LC_CTYPE, returns everything after last `.', "UTF-8" if the
+ value is exactly "UTF-8", and "ASCII" otherwise
+
+ 11/20
+ -----
+lib/readline/vi_mode.c
+ - in rl_domove_motion_callback, make sure to use m->key instead of
+ key, which is not initialized and should not be used. Bug report
+ from Andreas Schwab <schwab@linux-m68k.org>
+ - in rl_vi_domove, make assignment to `m' explicit instead of
+ relying on evaluation order semantics, since the C standard leaves
+ them unspecified. Bug report from Andreas Schwab
+ <schwab@linux-m68k.org>
+
+ 11/21
+ -----
+lib/sh/shquote.c
+ - sh_single_quote and sh_double_quote now take a const char *
+ argument. Fixes problem pointed out by Joachim Schmitz
+ <jojo@schmitz-digital.de>
+
+externs.h
+ - change extern declarations for sh_single_quote and sh_double_quote
+
+lib/sh/strchrnul.c
+ - make sure that return value is cast to (char *) if we're using a
+ part of the passed (const char *) argument. Fixes problem pointed
+ out by Joachim Schmitz <jojo@schmitz-digital.de>
+
+lib/glob/gmisc.c
+ - fix a typo that mixed up defines for LPAREN and RPAREN. Bug and
+ fix from Andreas Schwab <schwab@linux-m68k.org>
+ - use WLPAREN and WRPAREN in multibyte character environments
+ - fixed typos using L'cc' in a non-wide-char environment
+
+lib/readline/complete.c
+ - fix rl_filename_completion_function to dequote users_dirname if
+ there is a filename dequoting function (as well as dirname), since
+ users_dirname gets tacked back onto the beginning of the possible
+ completions and then requoted. Bug reported by Andreas Schwab
+ <schwab@linux-m68k.org>
+
+ 11/22
+ -----
+lib/readline/parens.c
+ - the `blink-matching-paren' variable should default to off
+
+ 11/23
+ -----
+subst.h
+ - add extern declaration for close_new_fifos()
+
+lib/sh/fnxform.c
+ - fix curencoding to return the character past the `.', not a string
+ beginning with `.'
+
+lib/sh/unicode.c
+ - fix stub_charset to do the same cut-off at `@' as curencoding().
+ These two functions should be combined
+
+builtins/printf.def
+ - document new %(datefmt)T modifier in help text
+
+ 11/24
+ -----
+parse.y
+ - fix `W' case in decode_prompt_string: memmove was copying one too
+ few bytes and missed the closing NUL. Bug report from Tim Mooney
+ <Tim.Mooney@ndsu.edu>
+
+ 11/26
+ -----
+subst.c
+ - in expand_word_internal, don't add quoted nulls to partially-
+ quoted strings if the word will not be subjected to word splitting
+ later (which will remove the quoted null). Fixes bug reported by
+ Rocky Bernstein <rocky.bernstein@gmail.com>
+
+ 11/28
+ -----
+subst.c
+ - change multibyte case of match_pattern to revert to match_upattern
+ if neither the pattern nor the string has any multibyte characters
+
+alias.c
+ - fix tests of backslash-escaped characters in skipquotes, skipws,
+ rd_token to check for backslash at EOS and not go past the end.
+ Fixes debian bug 603696 reported by Tim Small <tim@buttersideup.com>
+
+include/shmbchar.h
+ - new file, mbchar.h from gnulib minus the <stdbool.h> include
+
+lib/sh/shmbchar.c
+ - new file, mbchar.c from gnulib with additions
+ - moved mbstrlen from subst.c to here, changed initialization of mbs
+ - change mbstrlen to use is_basic to avoid calls to mbrlen for ASCII
+ chars; code hints from gnulib
+ - don't copy mbs and mbsbak if we're not calling mbrlen
+
+ 11/29
+ -----
+lib/glob/smatch.c
+ - change xstrmatch to use internal_strmatch() if the pattern and
+ string don't have any multibyte characters
+
+ 11/30
+ -----
+include/shmbutil.h
+ - change ADVANCE_CHAR and ADVANCE_CHAR_P macros to use is_basic and
+ only call mbrlen and copy state and state_bak if is_basic returns
+ false (non-ASCII). Called all over the place.
+ - change rest of macros except BACKUP_CHAR and BACKUP_CHAR_P in the
+ same way
+
+ 12/2
+ ----
+subst.c
+ - audit all calls to string_list and make sure caller can handle a
+ NULL return value. Fixes bug reported by David Rochberg
+ <rochberg@google.com>
+
+general.h
+ - change sh_wassign_func_t to take an additional argument: an int
+ flags word
+
+subst.c
+ - change do_word_assignment to take an additional argument to match
+ wassign_func_t; change callers
+ - change call to (*assign_func) in expand_word_list_internal to match
+ new wassign_func_t prototype
+ - (*assign_func) passes 1 as additional arg if the simple command is
+ a builtin or function, in which case the assignment to the
+ temporary env should take effect
+
+variables.c
+ - change assign_in_env to take an additional argument to match
+ wassign_func_t; change callers
+ - move call to sv_ifs from dispose_temporary_env to
+ dispose_used_env_vars; we don't need to do it if called from
+ merge_temporary_env
+
+ 12/3
+ ----
+variables.c
+ - change dispose_temporary_env to maintain a list (tempvar_list) of
+ variables that need to be handled specially. If a variable that
+ gets freed by push_temp_var or propagate_temp_var is one of the
+ variables that the shell handles specially (IFS, LANG, etc.), it's
+ stored on the list. For each variable in this list,
+ dispose_temp_var calls stupidly_hack_special_variables.
+ - assign_in_env calls stupidly_hack_special_variables if flags arg
+ is non-zero, so variable assignments affect current shell
+ execution environment if a builtin or function is being executed.
+ Fixes bug reported by Bruno Haible <bruno@clisp.org>
+
+ 12/5
+ ----
+subst.c
+ - use mbsmbchar on both string and pattern in match_pattern instead
+ of strlen and mbstrlen; only go through the strings once
+
+ 12/6
+ ----
+lib/readline/kill.c
+ - in rl_yank_last_arg, only switch directions if the `count'
+ argument is < 0, not < 1. This makes explicit count arguments of
+ 0 work as expected. Fixes bug reported by Dennis Williamson
+ <dennistwilliamson@gmail.com>
+
+doc/bash.1,lib/readline/doc/{readline.3,rluser.texi}
+ - fix documentation for yank-last-arg to make it clear how the count
+ argument is set and how second and subsequent calls treat any
+ numeric argument
+
+doc/{bash.1,bashref.texi}
+ - slight changes to the description of test
+ - change \(bv to `|'; it seems that many `internationalized' versions
+ of groff don't render that as a vertical bar. Fixes Debian bug
+ 603805
+
+ 12/10
+ -----
+configure.in
+ - changed release status to 4.2-beta
+
+ 12/14
+ -----
+[bash-4.2-beta frozen]
+
+ 12/18
+ -----
+redir.c
+ - change REDIRECTION_ERROR macro to accept a third argument: an
+ additional file descriptor to close before returning and error (pass
+ -1 to do nothing)
+ - change calls to REDIRECTION_ERROR to close appropriate file
+ descriptors. Fixes bug reported by Andreas Schwab
+ <schwab@linux-m68k.org>
+ - make sure to close any file descriptors opened for REDIR_VARASSIGN
+ before returning an error
+
+ 12/19
+ -----
+expr.c
+ - move processing of unary `-' and `+' to exp1 from exp0 to avoid
+ precedence problems. Fixes bug reported by <12bric@gmail.com>
+
+ 12/22
+ -----
+lib/sh/fpurge.c
+ - updated version from gnulib, inlined gnulib stdio-impl.h
+
+ 12/24
+ -----
+doc/bash.1
+ - change the description of while and until to use `list-1' and
+ `list-2', similar to the Posix description. Suggested by
+ Jeff Haemer <jeffrey.haemer@gmail.com>
+
+ 12/27
+ -----
+execute_cmd.c
+ - slight changes to execute_command_internal and how it captures the
+ exit status of (command) and shell control structures with pipes to
+ avoid multiple variable assignments to last_command_exit_value
+ - change to execute_simple_command so that parent branches of shells
+ forked to execute commands in pipelines don't change $? to 0
+ (if (pipe_out != NO_PIPE) result = last_command_exit_value). Fixes
+ bug reported by Damien Nadà <dnade.ext@orange-ftgroup.com>
+
+ 12/28
+ -----
+configure.in
+ - changed version to bash-4.2-rc1
+
+ 1/2/2011
+ --------
+lib/readline/complete.c
+ - fix rl_filename_completion_function to dequote and save users_dirname
+ before calling any function to transform the directory name passed
+ to opendir(). Fix from Andreas Schwab <schwab@linux-m68k.org>
+
+lib/readline/doc/
+ - make sure to note that rl_directory_completion_hook cannot modify
+ the directory name argument if it returns 0
+
+bashline.c
+ - make sure that bash_directory_completion_hook consistently returns
+ non-zero whenever it modifies its directory name argument
+
+lib/readline/terminal.c
+ - don't bother with the declarations (extern or not) for PC, BS, and
+ UP if NCURSES_VERSION is defined, since ncurses defines local
+ versions of those symbols in the library. Fixes bug most recently
+ reported by Kevin Scott <kscott@eznet.net> against Mac OS X
+
+include/filecntl.h
+ - make sure O_TEXT and O_BINARY are defined to avoid Windows-specific
+ (or cygwin-specific) code. This and the following changes from
+ Eric Blake <eblake@redhat.com> for current cygwin systems
+
+input.h
+ - add a B_TEXT flag to note when the underlying file descriptor is
+ opened in O_TEXT mode
+
+lib/sh/tmpfile.c
+ - make sure temporary files are opened in binary mode (O_BINARY) on
+ systems where it matters
+
+input.c
+ - make sure to set the B_TEXT flag if the file descriptor has O_TEXT
+ in its flags (returned by fcntl)
+ - change b_fill_buffer to compensate for lseek() and read() returning
+ different offsets on files opened in O_TEXT mode
+ - cygwin now is able to lseek on files and set the unbuffered and text
+ flags appropriately, so can use the general test for a seekable fd
+ - now that cygwin uses O_TEXT or O_BINARY appropriately, we no longer
+ have to manually translate \r\n to \n
+
+redir.c
+ - remove the Cygwin-1.1 code from here_document_to_fd; cygwin is now
+ up to version 1.7 and can unlink an open file descriptor
+ - make sure temporary files used for here documents are opened in
+ binary mode (O_BINARY) on systems where it matters
+
+execute_cmd.c,parse.y
+ - make sure error messages use all printable characters in filenames
+ and strings
+
+{builtins/evalfile,shell,subst}.c
+ - remove cygwin-specific calls to setmode to force file descriptors
+ into text mode, since we're using text or binary mode according to
+ the mode of the mount point
+
+execute_cmd.c
+ - when creating pipes and making them stdin and stdout, make sure to
+ tell stdio that the mode of the underlying file descriptor may have
+ changed from text to binary
+
+subst.c
+ - when creating pipes for command substitution, make sure to
+ tell stdio that the mode of the underlying file descriptor may have
+ changed from text to binary
+
+ 1/3
+ ---
+doc/{bash.1,bashref.texi}
+ - changes to the readonly documentation suggested by Jan Schampera
+ <jan.schampera@web.de>
+
+ 1/4
+ ---
+builtins/read.def
+ - change bind_read_variable to consistently return NULL if there is some
+ kind of variable assignment error (e.g., assigning to a readonly or
+ noassign var)
+ - change read builtin to only call stupidly_hack_special_variables if
+ bind_read_variable returns non-NULL
+ - change read_builtin to return EXECUTION_FAILURE if there is an
+ assignment error (e.g., assigning to a readonly or noassign var).
+ Fixes bug reported by Jan Schampera <jan.schampera@web.de>
+
+ 1/5
+ ---
+builtins/{help.def,common.c}
+ - change uses of a builtin's `short_doc' member to go through gettext
+ for possible translation before being displayed. Suggestion from
+ <goeran@uddeborg.se>
+
+ 1/6
+ ---
+shell.h
+ - new exit status define: EX_MISCERROR (2)
+
+builtins/getopts.def
+ - change getopts_bind_variable to return error if an attempt is made
+ to assign to a variable with the `noassign' attribute
+ - change getopts_bind_variable to return EX_MISCERROR if attempt is
+ made to assign to readonly or noassign variable
+
+builtins/cd.def
+ - change setpwd to return an int and return failure when PWD is
+ readonly; success otherwise
+ - change bindpwd to return failure if setpwd returns EXECUTION_FAILURE.
+ Inspired by message from Eric Blake <eblake@redhat.com>
+ - change pwd builtin to return failure if PWD is readonly (and setpwd
+ returns EXECUTION_FAILURE)
+
+ 1/8
+ ---
+lib/sh/eaccess.c
+ - on FreeBSD and Solaris, check the result of access(2) with mode X_OK
+ for root by checking sh_stataccess(). Same code as was added to
+ check result of eaccess(). Fixes Solaris 11 problem reported by
+ <cloyce@headgear.org>
+
+ 1/10
+ ----
+builtins/set.def
+ - add description of `--' to help text
+
+[bash-4.2-rc1 released]
+
+ 1/14
+ ----
+lib/readline/readline.h
+ - fix/update description of rl_directory_rewrite_hook
+
+lib/readline/complete.c
+ - if there are no directory rewrite or completion hooks, set dirname
+ to a duplicate copy of users_dirname instead of calling the
+ dequoting function again
+
+bashline.c
+ - use rl_directory_rewrite_hook instead of rl_directory_completion_hook
+ to avoid changing the directory name the user typed, other than
+ dequoting it. Fixes bug introduced by changes to directory
+ completion hook, pointed out first by William Bader
+ <william.bader@gmail.com>
+
+ 1/16
+ ----
+lib/sh/strftime.c
+ - portability and other (int->long) updates from Aharon Robbins
+ <arnold@skeeve.com>
+
+configure.in
+ - change release level to rc2
+
+ 1/17
+ ----
+execute_cmd.c
+ - short-circuit select builtin if read_builtin returns anything but
+ EXECUTION_SUCCESS, not just EXECUTION_FAILURE. Fixes bug reported
+ by Pierre Gaston <pierre.gaston@gmail.com>
+
+ 1/19
+ ----
+execute_cmd.c
+ - change execute_simple_command to save and restore the values of
+ executing_builtin and executing_command_builtin before discarding
+ the unwind-protect frame. Bug and fix from Werner Fink
+ <werner@suse.de>
+
+ 1/24
+ ----
+variables.c
+ - change brand to set rseed to a known, constant value if it's 0,
+ so the sequence is known. Fixes issue reported by Olivier
+ Mehani <shtrom@ssji.net>
+
+ 2/2
+ ---
+braces.c
+ - make sure to pass an `int' argument to asprintf in mkseq. Fixes
+ bug reported by Mike Frysinger <vapier@gentoo.org>
+
+ 2/5
+ ---
+lib/glob/gmisc.c
+ - fix wmatchlen and umatchlen to initialize all state variables. Fix
+ from Andreas Schwab <schwab@linux-m68k.org>
+
+jobs.c
+ - change wait_for to call restore_sigint_handler right after exiting
+ the wait loop, instead of right before function returns. Reduces
+ the window for a SIGINT to be lost because a child does not exit
+ due to SIGINT
+
+ 2/7
+ ---
+configure.in
+ - changed release status to `release'
+
+ 2/9
+ ---
+execute_cmd.c
+ - make sure some variables are declared as volatile if necessary. Bug
+ report and fix from Eric Blake <eblake@redhat.com>
+
+[bash-4.2 frozen]
+
+ 2/11
+ ----
+print_cmd.c
+ - in indirection_level_string, change to simpler test of result of
+ MBLEN (< 0 instead of MB_INVALIDCH)
+
+ 2/14
+ ----
+[bash-4.2 released]
+
+ 2/15
+ ----
+lib/glob/gmisc.c
+ - fix wmatchlen and umatchlen to avoid going past the end of the
+ string on an incomplete bracket expression that ends with a
+ NUL. Partial fix for bug reported by Clark Wang <dearvoid@gmail.com>
+
+ 2/16
+ ----
+subst.h
+ - new string extract flag value: SX_WORD. Used when calling
+ extract_dollar_brace_string to skip over the word in
+ ${param op word} from parameter_brace_expand
+
+subst.c
+ - change parameter_brace_expand to add SX_WORD to flags passed to
+ extract_dollar_brace_string
+ - change parameter_brace_expand to use SX_POSIXEXP for all non-posix
+ word expansion operators that treat single quotes as special, not
+ just % and #
+ - change extract_dollar_brace_string to initialize dolbrace_state to
+ DOLBRACE_WORD if SX_WORD flag supplied and we shouldn't use
+ DOLBRACE_QUOTE. Fixes bug reported by Juergen Daubert <jue@jue.li>
+
+doc/{bash.1,bashref.texi}
+ - document the exact expansions here strings undergo
+
+ 2/17
+ ----
+lib/readline/vi_mode.c
+ - make sure that `dd', `cc', and `yy' call vidomove_dispatch from
+ rl_domove_read_callback. Fixes bug reported by Clark Wang
+ <dearvoid@gmail.com>
+
+lib/readline/callback.c
+ - make sure _rl_internal_char_cleanup is called after the
+ vi-motion callbacks (rl_vi_domove_callback) in rl_callback_read_char.
+ Companion to above fix
+
+doc/{bash.1,bashref.texi}
+ - make sure that the text describing the rhs of the == and =~
+ operators to [[ states that only the quoted portion of the pattern
+ is matched as a string
+
+ 2/18
+ ----
+lib/glob/gmisc.c
+ - better fix for umatchlen/wmatchlen: keep track of the number of
+ characters in a bracket expression as the value to increase
+ matchlen by if the bracket expression is not well-formed. Fixes
+ bug reported by Clark Wang <dearvoid@gmail.com>
+
+subst.c
+ - change expand_string_for_rhs so that it sets the W_NOSPLIT2 flag
+ in the word flags. We will not perform word splitting or quote
+ removal on the result, so we do not want to add quoted nulls if
+ we see "" or ''. Fixes bug reported by Mike Frysinger
+ <vapier@gentoo.org>
+
+ 2/19
+ ----
+variables.c
+ - new function, int chkexport(name), checks whether variable NAME is
+ exported and remakes the export environment if necessary. Returns
+ 1 if NAME is exported and 0 if not
+ - call chkexport(name) to get tzset to look at the right variable in
+ the environment when modifying TZ in sv_tz. Don't call tzset if
+ chkexport doesn't indicate that the variable is exported
+
+variables.h
+ - new extern declaration for chkexport
+
+
+{parse.y,builtins/printf.def}
+ - call sv_tz before calling localtime() when formatting time strings
+ in prompt strings or using printf. Fixes bug reported by
+ Dennis Williamson <dennistwilliamson@gmail.com>
+
+execute_cmd.c
+ - modify fix of 2/9 to add casts when those variables are passed to
+ functions; some compilers throw errors instead of warnings. Report
+ and fix from Joachim Schmitz <jojo@schmitz-digital.de>
+
+support/shobj-conf
+ - add a stanza for nsk on the Tandem from Joachim Schmitz
+ <jojo@schmitz-digital.de>
+
+{shell,lib/readline/shell}.c
+ - Tandem systems should use getpwnam (getlogin()); for some reason
+ they don't do well with using getuid(). Fix from Joachim Schmitz
+ <jojo@schmitz-digital.de>
+
+ 3/1
+ ---
+variables.c
+ - make sure that the return value from find_variable is non-null
+ before trying to use it in chkexport. Fixes bug reported by
+ Evangelos Foutras <foutrelis@gmail.com>
+
+ 3/3
+ ---
+parse.y
+ - when adding $$ to the current token buffer in read_token_word(),
+ don't xmalloc a buffer for two characters and then strcpy it, just
+ copy the characters directly into the token buffer. Fix from
+ Michael Whitten <mfwitten@gmail.com>
+
+execute_cmd.c
+ - fix expand_word_unsplit to add the W_NOSPLIT2 flag to the word to
+ be expanded, so "" doesn't add CTLNUL. Similar to fix of 2/18 to
+ expand_string_for_rhs. Fixes bug reported by Nathanael D. Noblet
+ <nathanael@gnat.ca> and Matthias Klose <doko@debian.org>
+
+parse.y
+ - fix extended_glob case of read_token_word to allocate an extra
+ space in the buffer for the next character read after the extended
+ glob specification if it's a CTLESC or CTLNUL. Report and fix from
+ Michael Witten <mfwitten@gmail.com>
+ - fix shell expansions case of read_token_word to allocate an extra
+ space in the buffer for the next character read after the shell
+ expansion if it's a CTLESC or CTLNUL. Report and fix from
+ Michael Witten <mfwitten@gmail.com>
+ - TENTATIVE: fix read_token_word to reduce the amount of buffer space
+ required to hold the translated and double-quoted value of $"..."
+ strings. Report and fix from Michael Witten <mfwitten@gmail.com>
+ - change code around got_character and got_escaped_character labels to
+ make sure that we call RESIZE_MALLOCED_BUFFER before adding the
+ CTLESC before a CTLESC or CTLNUL, and before adding the character if
+ we're not adding a CTLESC. Report and fix from
+ Michael Witten <mfwitten@gmail.com>
+
+subst.c
+ - new param flags value, PF_ASSIGNRHS, mirrors W_ASSIGNRHS, noting that
+ parameter expansion is on rhs of assignment statement. That inhibits
+ word splitting
+ - change param_expand to call string_list_dollar_at with quoted == 1
+ if PF_ASSIGNRHS is set, so it will quote IFS characters in the
+ positional parameter before separating them with the first char of
+ $IFS. This keeps the rhs from being split inappropriately. Fixes
+ bug reported by Andres Perera <andres.p@zoho.com>
+
+ 3/4
+ ---
+lib/readline/bind.c
+ - add a missing free of `names' in rl_function_dumper. Bug report
+ and fix from Michael Snyder <msnyder@vmware.com>
+
+ 3/5
+ ---
+lib/readline/rltty.c
+ - change rl_deprep_terminal so it uses fileno (stdin) for the tty fd
+ if rl_instream is not set, like rl_prep_terminal
+
+ 3/6
+ ---
+lib/readline/display.c
+ - fix rl_message to use a dynamically-allocated buffer instead of a
+ fixed-size buffer of 128 chars for the `local message prompt'. Bug
+ report and fix from Micah Cowan <micah@cowan.name>
+
+ 3/7
+ ---
+jobs.c
+ - add sentinel to wait_sigint_handler so it only sets wait_sigint_received
+ if waiting_for_child is non-zero; otherwise, it restores the old
+ SIGINT handler and sends itself the SIGINT
+ - set waiting_for_child around the calls to waitchld that use it to
+ synchronously wait for a process
+ - change logic that decides whether or not the child process blocked
+ or handled SIGINT based on whether or not waitpid returns -1/EINTR
+ and the shell receives a SIGINT and the child does not exit. If
+ the child later exits due to SIGINT, cancel the assumoption that it
+ was handled
+ - instead of testing whether or not the child exited due to SIGINT
+ when deciding whether the shell should act on a SIGINT it received
+ while waiting, test whether or not we think the child caught
+ SIGINT. If it did, we let it go (unless the shell has it trapped);
+ if it did not catch it, the shell acts on the SIGINT. Fix from
+ Linus Torvalds <torvalds@linux-foundation.org>, bug report originally
+ from Oleg Nesterov <oleg@redhat.com>
+
+ 3/8
+ ---
+shell.c
+ - initialize no_line_editing to 1 if READLINE is not defined -- we
+ can't have line editing without readline
+
+ 3/12
+ ----
+lib/readline/signals.c
+ - add SIGHUP to the set of signals readline handles
+
+lib/readline/doc/rltech.texi
+ - document that SIGHUP is now part of the set of signals readline
+ handles
+
+lib/readline/input.c
+ - if _rl_caught_signal indicates that read() was interrupted by a
+ SIGHUP or SIGTERM, return READERR or EOF as appropriate
+ - call rl_event_hook, if it's set, if call to read in rl_getc
+ returns -1/EINTR. If rl_event_hook doesn't do anything, this
+ continues the loop as before. This handles the other fatal
+ signals
+
+execute_cmd.c
+ - add a couple of QUIT; calls to execute_disk_command and
+ execute_simple_command to improve responsiveness to interrupts
+ and fatal signals
+
+input.c
+ - rearrange getc_with_restart so that the return values from read()
+ are handled right
+
+parse.y
+ - don't need to set terminate_immediately in yy_stream_get, since
+ getc_with_restart checks for terminating signals itself
+ - since readline returns READERR on SIGHUP or SIGTERM, don't need
+ to set terminate_immediately. Still doesn't handle other
+ signals well -- will have to check that some more
+
+bashline.c
+ - new function, bash_event_hook, for rl_event_hook. Just checks for
+ terminating signals and acts on them using CHECK_TERMSIG.
+ - set rl_event_hook to bash_event_hook
+
+builtins/read.def
+ - take out setting terminate_immediately; add calls to CHECK_TERMSIG
+ after read calls
+
+doc/{bash.1,bashref.texi}
+ - move the text describing the effect of negative subscripts used to
+ reference indexed array elements to the paragraphs describing
+ ${parameter[subscript]}, since that's where they are implemented.
+ Pointed out by Christopher F. A. Johnson <cfajohnson@gmail.com>
+
+arrayfunc.[ch],subst.c
+ - array_expand_index now takes a new first argument: a SHELL_VAR *
+ of the array variable being subscripted. Can be used later to fully
+ implement negative subscripts
+
+ 3/14
+ ----
+lib/glob/glob.c
+ - fix mbskipname to not turn the directory entry name into a wide char
+ string if the conversion of the pattern to a wide char string fails
+ - fix mbskipname to call skipname if either the pattern or the filename
+ can't be converted into a wide-char string
+
+lib/glob/xmbsrtowcs.c
+ - fix xdupmbstowcs2 to handle return value of 0 from mbsnrtowcs and
+ short-circuit with failure in that case. Fixes bug reported by
+ Roman Rakus <rrakus@redhat.com>
+
+ 3/15
+ ----
+bashline.c
+ - new variable, bash_filename_quote_characters to store the value
+ assigned to rl_filename_quote_characters so it can be restored
+ if changed.
+ - change bashline_reset and attempt_shell_completion to restore
+ rl_filename_quote_characters if not set to default
+
+ 3/22
+ ----
+lib/glob/glob.c
+ - wdequote_pathname falls back to udequote_pathname if xdupmbstowcs
+ fails to convert the pathname to a wide-character string
+
+lib/glob/xmbsrtowcs.c
+ - xdupmbstowcs2: change to fix problem with leading '\\' (results in
+ nms == 0, which causes it to short-circuit with failure right
+ away). Fixes bug pointed out by Werner Fink <werner@suse.de>
+ - xdupmbstowcs2: compensate for mbsnrtowcs returning 0 by taking the
+ next single-byte character and going on
+ - xdupmbstowcs2: change memory allocation to increase by WSBUF_INC
+ bytes; try to avoid calls to realloc (even if they don't actually
+ result in more memory being allocated)
+
+ 3/24
+ ----
+doc/{bash.1,bashref.texi}
+ - slightly modify BASH_SUBSHELL description based on complaint from
+ Sam Liddicott <sam@liddicott.com>
+
+ 3/25
+ ----
+trap.c
+ - change free_trap_strings to not call free_trap_string for signals
+ that are being ignored, like reset_or_restore_signal_handlers.
+ Fixes bug reported by Satoshi Takahashi <blue3waters@gmail.com>
+
+ 3/26
+ ----
+lib/readline/rltypedefs.h
+ - remove old Function/VFunction/CPFunction/CPPFunction typedefs as
+ suggested by Tom Tromey <tromey@redhat.com>
+
+lib/readline/rlstdc.h
+ - move defines for USE_VARARGS/PREFER_STDARG/PREFER_VARARGS from
+ config.h.in to here because declaration of rl_message in
+ readline.h uses the defines. This makes it hard for another packages
+ to use after the header files are installed, since config.h is not
+ one of the installed files. Suggested by Tom Tromey
+ <tromey@redhat.com>
+
+ 3/27
+ ----
+print_cmd.c
+ - change indirection_string from a static buffer to a dynamic one
+ managed by indirection_level_string(), so we don't end up truncating
+ PS4. Suggested by Dennis Williamson <dennistwilliamson@gmail.com>
+
+lib/readline/shell.c
+ - change sh_set_lines_and_columns to use static buffers instead of
+ allocating the buffers to pass to setenv/putenv
+
+lib/readline/terminal.c
+ - change _rl_get_screen_size to not call sh_set_lines_and_columns if
+ ignore_env == 0
+ - _rl_sigwinch_resize_terminal: new function to just retrieve terminal
+ size, ignoring environment
+
+lib/readline/rlprivate.h
+ - new external declaration for _rl_sigwinch_resize_terminal() (currently
+ unused)
+
+lib/readline/signals.c
+ - rl_sigwinch_handler: set _rl_caught_signal to SIGWINCH
+ - rl_sigwinch_handler: don't immediately call rl_resize_terminal; just
+ leave _rl_caught_signal set for RL_CHECK_SIGNALS to handle
+ - _rl_signal_handler: call rl_resize_terminal if sig == SIGWINCH.
+ Should fix hang when sending multiple repeated SIGWINCH reported by
+ Henning Bekel <h.bekel@googlemail.com>
+
+ 3/29
+ ----
+lib/sh/snprintf.c
+ - include math.h for any defines for isinf/isnan
+ - use code from gnulib documentation to implement isinf/isnan if they
+ are not defined
+
+configure.in
+ - don't check for isinf or isnan; c99 says they're macros anyway
+
+config.h.in
+ - remove defines for ISINF_IN_LIBC and ISNAN_IN_LIBC, no longer used
+ by snprintf.c
+
+ 4/2
+ ---
+braces.c
+ - brace_gobbler: fix to understand double-quoted command substitution,
+ since the shell understands unquoted comsubs. Fixes bug reported
+ by Michael Whitten <mfwitten@gmail.com>
+
+lib/readline/display.c
+ - include <pc.h> on MDOS
+ - get and set screen size using DJGPP-specific calls on MSDOS
+ - move cursor up clear screen using DJGPP-specific calls
+ - don't call tputs on DJGPP; there is no good terminfo support
+
+lib/readline/terminal.c
+ - include <pc.h> on MDOS
+ - get and set screen size using DJGPP-specific calls on MSDOS
+ - use DJGPP-specific initialization on MSDOS, zeroing all the
+ _rl_term_* variables
+ - don't call tputs on DJGPP; there is no good terminfo support
+ DJGPP support from Eli Zaretskii <eliz@gnu.org>
+
+ 4/6
+ ---
+
+config-top.h
+ - change DEFAULT_PATH_VALUE to something more useful and modern
+
+ 4/8
+ ---
+tests/printf2.sub
+ - make sure LC_ALL and LC_CTYPE are set so LANG assignment takes effect.
+ Reported by Cedric Arbogast <arbogast.cedric@gmail.com>
+
+ 4/11
+ ----
+include/chartypes.h
+ - fix a couple of dicey defines (though ones that don't cause any
+ compiler warnings) in IN_CTYPE_DOMAIN
+
+doc/{bashref.texi,bash.1}
+ - add note referring to duplicating file descriptors in sections
+ describing redirecting stdout and stderr and appending to stdout
+ and stderr. Suggested by Matthew Dinger <mdinger.bugzilla@gmail.com>
+
+pcomplete.c
+ - it_init_helptopics: new function to support completing on help topics,
+ not just builtins
+ - it_helptopics: new programmable completion list of help topics
+ - build list of helptopic completions in gen_action_completions on
+ demand
+
+pcomplete.h
+ - new extern declaration for it_helptopics
+
+builtins/complete.def
+ - the `helptopic' action now maps to CA_HELPTOPIC intead of CA_BUILTIN,
+ since there are more help topics than just builtins. Suggested by
+ Clark Wang <dearvoid@gmail.com>
+
+ 4/12
+ ----
+print_cmd.c
+ - fix print_arith_for_command to add a call to PRINT_DEFERRED_HEREDOCS
+ before ending the body of the command, so heredocs get attached to
+ the right command instead of to the loop. From gentoo bug 363371
+ http://bugs.gentoo.org/show_bug.cgi?id=363371
+
+execute_cmd.c
+ - change coproc_pidchk to unset the appropriate shell variables when
+ the (currently single) known coproc pid terminates
+ - cleanup and new functions to fully support multiple coprocesses when
+ and if I decide to go there
+
+ 4/13
+ ----
+print_cmd.c
+ - fix print_group_command to add a call to PRINT_DEFERRED_HEREDOCS
+ after call to make_command_string_internal before printing closing
+ `}'
+ - fix make_command_string_internal to add a call to
+ PRINT_DEFERRED_HEREDOCS after recursive call to
+ make_command_string_internal in case cm_subshell before printing
+ closing `)'
+
+ 4/14
+ ----
+print_cmd.c
+ - change overlapping strcpy in named_function_string to memmove
+
+sig.h
+ - UNBLOCK_SIGNAL: convenience define, same as UNBLOCK_CHILD, just
+ restores an old signal mask
+
+trap.c
+ - set_signal: instead of setting the signal handler to SIG_IGN while
+ installing the new trap handler, block the signal and unblock it
+ after the new handler is installed. Fixes bug reported by Roman
+ Rakus <rrakus@redhat.com>
+
+ 4/15
+ ----
+doc/{bash.1,bashref.texi}
+ - make it clear that enabling monitor mode means that all jobs run in
+ separate process groups
+
+ 4/18
+ ----
+builtins/fc.def
+ - update fix of 4/15/2010 to not take saved_command_line_count into
+ account when stepping down the history list to make sure that
+ last_hist indexes something that is valid. Fixes bug reported by
+ <piuma@piumalab.org>
+
+ 4/19
+ ----
+builtins/fc.def
+ - fc_gethnum: make sure the calculation to decide the last history
+ entry is exactly the same as fc_builtin. Fixes bug uncovered by
+ fix of 4/18 to stop seg fault
+
+ 4/22
+ ----
+lib/readline/terminal.c
+ - change _rl_enable_meta_key to set a flag indicating that it sent the
+ enable-meta sequence
+ - _rl_disable_meta_key: new function to turn off meta mode after we
+ turned it on with _rl_enable_meta_key
+
+lib/readline/rlprivate.h
+ - extern declaration for _rl_disable_meta_key
+
+configure.in
+ - if not cross-compiling, set CFLAGS_FOR_BUILD from any CFLAGS inherited
+ from the environment. Fixes HP/UX build problem reported by
+ "Daniel Richard G." <skunk@iSKUNK.ORG>
+
+ 4/26
+ ----
+config-top.h
+ - define MULTIPLE_COPROCS to 0 so the code is still disabled but easy
+ to enable via configure option or editing this file
+
+ 4/29
+ ----
+lib/sh/eaccess.c
+ - freebsd provides faccessat, with the same misfeature as their eaccess
+ and access implementations (X_OK returns true for uid==0 regardless
+ of the actual file permissions), so reorganize code to check the
+ file permissions as with eaccess. Report and fix from Johan Hattne
+ <johan.hattne@utsouthwestern.edu>
+
+ 5/2
+ ---
+doc/{bash.1,bashref.texi}
+ - add forward reference to `Pattern Matching' from `Pathname
+ Expansion', suggested by Greg Wooledge <wooledg@eeg.ccf.org>
+
+ 5/5
+ ---
+pcomplib.c
+ - the bash_completion project now distributes over 200 completions
+ for various programs, with no end in sight, so increase the value
+ of COMPLETE_HASH_BUCKETS from 32 to 128
+
+pathexp.c
+ - quote_string_for_globbing: make sure CTLESC quoting CTLESC is
+ translated into \<CTLESC> even if the flags include QGLOB_REGEXP.
+ We don't want to process the second CTLESC as a quote character.
+ Fixes bug reported by Shawn Bohrer <sbohrer@rgmadvisors.com>
+
+ 5/6
+ ---
+builtins/printf.def
+ - change PRETURN to not call fflush if ferror(stdout) is true
+ - if a call to one of the stdio functions or printstr leaves
+ ferror(stdout) true, and PRETURN is going to be called, let PRETURN
+ print the error message rather than doubling up the messages. Fixes
+ problem reported by Roman Rakus <rrakus@redhat.com>
+
+ 5/9
+ ---
+doc/{bash.1,bashref.texi}
+ - add note to the effect that lists inside compound command can be
+ terminated by newlines as well as semicolons. Suggested by
+ Roman Byshko <rbyshko@gmail.com>
+
+ 5/10
+ ----
+subst.c
+ - remove_quoted_nulls: fix problem that caused it to skip over the
+ character after a CTLNUL, which had the effect of skipping every
+ other of a series of CTLNULs. Fixes bug reported by
+ Marten Wikstrom <marten.wikstrom@keystream.se>
+
+ 5/11
+ ----
+subst.c
+ - extract_process_subst: add SX_COMMAND flag to call to
+ extract_delimited_string, since we're expanding the same sort of
+ command as command substitution. Fixes bug reported in Ubuntu
+ bug 779848
+
+ 5/12
+ ----
+configure.in
+ - set the prefer_shared and prefer_static variables appropriately
+ depending on the value of $opt_static_link
+
+aclocal.m4
+ - AC_LIB_LINKFLAGS_BODY: change to not prefer shared versions of the
+ libraries it's searching for if the prefer_shared variable is "no".
+ Fixes problem reported by Cedric Arbogast <arbogast.cedric@gmail.com>
+
+ 5/13
+ ----
+lib/readline/readline.c
+ - _rl_internal_teardown: add call to _rl_disable_meta_key to make the
+ meta key active only for the duration of the call to readline()
+ - _rl_internal_setup: move call to _rl_enable_meta_key here from
+ readline_initialize_everything so the meta key is active only for
+ the duration of the call to readline(). Suggestion from Miroslav
+ Lichvar <mlichvar@redhat.com>
+
+builtins/help.def
+ - help_builtin: change strncmp to strcmp so that `help read' no longer
+ matches `readonly'. Suggested by Clark Wang <dearvoid@gmail.com>
+
+config.h.in
+ - add define for GLIBC21, checked using jm_GLIBC21 as part of the tests
+ for libintl
+
+lib/malloc/malloc.c
+ - internal_free: don't use the cached value of memtop when deciding
+ whether or not to adjust the break and give memory back to the kernel
+ when using the GNU C library, since glibc uses sbrk for its own
+ internal purposes. From Debian bug 614815, reported by Samuel
+ Thibault <samuel.thibault@gnu.org>
+
+aclocal.m4
+ - BASH_STRUCT_WEXITSTATUS_OFFSET: change AC_RUN_IFELSE to AC_TRY_RUN
+ to avoid warning about not using AC_LANG_SOURCE
+
+ 5/14
+ ----
+bashline.[ch]
+ - two new functions, bashline_set_event_hook and bashline_reset_event_hook,
+ to set rl_event_hook to bash_event_hook and back to NULL, respectively
+ - don't set rl_event_hook unconditionally
+
+sig.c
+ - termsig_sighandler: if the shell is currently interactive and
+ readline is active, call bashline_set_event_hook to cause
+ termsig_handler to be called via bash_event_hook when the shell
+ returns from the signal handler
+
+ 5/15
+ ----
+lib/readline/display.c
+ - _rl_col_width: Mac OS X has a bug in wcwidth: it does not return 0
+ for UTF-8 combining characters. Added workaround dependent on
+ MACOSX. Fixes problem pointed out by Thomas De Contes
+ <d.l.tDecontes@free.fr>
+
+ 5/16
+ ----
+lib/readline/rlmbutil.h
+ - WCWIDTH: wrapper for wcwidth that returns 0 for Unicode combining
+ characters on systems where wcwidth is broken (e.g., Mac OS X).
+
+lib/readline/{complete,display,mbutil}.c
+ - use WCWIDTH instead of wcwidth
+
+ 5/17
+ ----
+lib/readline/display.c
+ - update_line: after computing ofd and nfd, see whether the next
+ character in ofd is a zero-width combining character. If it is,
+ back ofd and nfd up one, so the base characters no longer compare
+ as equivalent. Fixes problem reported by Keith Winstein
+ <keithw@mit.edu>
+
+lib/readline/nls.c
+ - _rl_utf8locale: new flag variable, set to non-zero if the current
+ locale is UTF-8
+ - utf8locale(): new function, returns 1 if the passed lspec (or the
+ current locale) indicates that the locale is UTF-8. Called from
+ _rl_init_eightbit
+
+lib/readline/rlprivate.h
+ - extern declaration for _rl_utf8locale
+
+locale.c
+ - locale_utf8locale: new flag variable, set to non-zero if the current
+ locale is UTF-8 (currently unused)
+ - locale_isutf8(): new function, returns 1 if the passed lspec (or the
+ current locale) indicates that the locale is UTF-8. Should be called
+ whenever the locale or LC_CTYPE value is modified
+
+aclocal.m4
+ - BASH_WCWIDTH_BROKEN: new test for whether or not wcwidth returns
+ zero-width characters like unicode combining characters as having
+ display length 1; define WCWIDTH_BROKEN in this case
+
+config.h.in
+ - WCWIDTH_BROKEN: new define
+
+lib/readline/rlmbutil.h
+ - change WCWIDTH macro to use _rl_utf8locale and the full range of
+ Unicode combining characters (U+0300-U+036F)
+
+ 5/19
+ ----
+lib/readline/rlprivate.h
+ - _rl_search_context: new member, prevc, will hold character read
+ prior to lastc
+
+lib/readline/isearch.c
+ - _rl_isearch_dispatch: if the character causes us to index into
+ another keymap, save that character in cxt->prevc
+ - _rl_isearch_dispatch: if we index into another keymap, but don't
+ find a function that's special to i-search, and the character that
+ caused us to index into that keymap would have terminated the
+ search, push back cxt->prevc and cxt->lastc to make it appear as
+ if `prevc' terminated the search, and execute lastc as a command.
+ We have to push prevc back so we index into the same keymap before
+ we read lastc. Fixes bug report from Davor Cubranic
+ <cubranic@stat.ubc.ca>
+
+ 5/20
+ ----
+expr.c
+ - expr_bind_variable: pay attention to the return value from
+ bind_variable and check whether or not we should error out due to
+ a readonly or noassign variable. Fixes bug reported by Eric
+ Blake <eblake@redhat.com>
+
+ 5/26
+ ----
+
+lib/readline/search.c
+ - include histlib.h for ANCHORED_SEARCH defines
+ - rl_history_search_flags: new variable, holds ANCHORED_SEARCH flag for
+ the duration of a history search
+ - rl_history_search_reinit: takes a new flags variable, defines whether
+ or not the search is anchored; assigned to rl_history_search_flags
+ - rl_history_serarch_reinit: if ANCHORED_SEARCH flag passed, add ^ to
+ beginning of search string; otherwise search string is unmodified
+ - rl_history_search_internal: set rl_point appropriately based on
+ whether or not rl_history_search_flags includes ANCHORED_SEARCH
+ - rl_history_substr_search_forward: new function, for non-anchored
+ substring search forward through history for string of characters
+ preceding rl_point
+ - rl_history_substr_search_backward: new function, for non-anchored
+ substring search backward through history for string of characters
+ preceding rl_point. Original code from Niraj Kulkarni
+ <kulkarniniraj14@gmail.com>
+
+lib/readline/readline.h
+ - extern declarations for rl_history_substr_search_{for,back}ward
+
+lib/readline/funmap.c
+ - history-substring-search-forward: new bindable command, invokes
+ rl_history_substr_search_forward
+ - history-substring-search-backward: new bindable command, invokes
+ rl_history_substr_search_backward
+
+lib/readline/doc/{rluser.texi,readline.3}
+ - document history-substring-search-forward and
+ history-substring-search-backward
+
+ 5/27
+ ----
+{nojobs,jobs}.c
+ - add support for DONT_REPORT_SIGTERM so that the shell doesn't print
+ a message when a job exits due to SIGTERM since that's the default
+ signal sent by the kill builtin. Suggested by Marc Herbert
+ <mark.herbert@gmail.com>
+
+config-top.h
+ - DONT_REPORT_SIGTERM: new user-modifiable setting. Commented out
+ by default
+
+ 5/28
+ ----
+lib/readline/bind.c
+ - _rl_skip_to_delim: skip to a closing double quote or other delimiter,
+ allowing backslash to quote any character, including the delimiter
+ - rl_parse_and_bind: call _rl_skip_to_delim instead of using inline
+ code
+ - rl_parse_and_bind: allow quoted strings as the values of string
+ variables. Variable values without double quotes have trailing
+ whitespace removed (which still allows embedded whitespace, for
+ better or worse). Fixes problem with string variables not matching
+ in `set' command if values happen to have trailing spaces or tabs
+ (debian bash bug #602762), but introduces slight incompatibility.
+
+ 5/29
+ ----
+doc/{bash.1,bashref.texi}
+ - clarify unset description to specify that without options, a
+ variable, then a shell function if there is no variable by that
+ name, is unset. Fixes discrepancy reported by Mu Qiao
+ <qiaomuf@gentoo.org>
+
+ 6/4
+ ----
+doc/{bash.1,bashref.texi}
+ - clarify description of LINES and COLUMNS (and checkwinsize shopt
+ option) to make it clear that only interactive shells set a
+ handler for SIGWINCH and update LINES and COLUMNS. Original
+ report submitted by Jonathan Nieder <jrnieder@gmail.com>
+
+arrayfunc.c
+ - expand_compound_array_assignment: defer expansion of words between
+ parens when performing compound assignmnt to an associative array
+ variable
+ - assign_compound_array_list: perform the same expansions when doing
+ a compound array assignment to an associative array variable as
+ when doing a straight array index assignment. The idea is that
+ foo=( [ind1]=bar [ind2]=quux)
+ is the same as
+ foo[ind1]=bar ; foo[ind2]=quux
+
+ This fixes problems with double-expansion and quote removal being
+ performed on the array indices
+
+ 6/13
+ ----
+doc/{bash.1,bashref.texi}
+ - Add a little text to make it clear that the locale determines how
+ range expressions in glob patterns are handled.
+
+
+ 6/21
+ ----
+builtins/read.def
+ - display a message and return error status if -a is used with an
+ existing associative array. Fixes bug reported by Curtis Doty
+ <curtis@greenkey.net>
+
+ 6/24
+ ----
+{jobs,nojobs}.c
+ - non-interactive shells now react to the setting of checkwinsize
+ and set LINES and COLUMNS after a foreground job exits. From a
+ suggestion by Leslie Rhorer <lrhorer@satx.rr.com>
+
+doc/{bash.1,bashref.texi}
+ - checkwinsize: remove language saying that only interactive shells
+ check the window size after each command
+
+lib/readline/histfile.c
+ - history_backupfile: new file, creates a backup history file name
+ given a filename (appending `-')
+ - history_do_write: when overwriting the history file, back it up
+ before writing. Restore backup file on a write error. Suggested
+ by chkno@chkno.net
+
+bashline.c
+ - find_cmd_name: two new arguments, return the start and end of the
+ actual text string used to find the command name, without taking
+ whitespace into account
+ - attempt_shell_completion: small changes to make sure that completion
+ attempted at the beginning of a non-empty line does not find a
+ programmable completion, even if the command name starts at point
+ - attempt_shell_completion: small change to make sure that completion
+ does not find a progcomp when in whitespace before the command
+ name
+ - attempt_shell_completion: small change to make sure that completion
+ does not find a progcomp when point is at the first character of a
+ command name, even when there is leading whitespace (similar to
+ above). Fixes problems noted by Ville Skytta <ville.skytta@iki.fi>
+
+subst.c
+ - brace_expand_word_list: since the individual strings in the strvec
+ returned by brace_expand are already allocated, don't copy them to
+ newly-allocated memory when building the WORD_LIST, just use them
+ intact
+
+locale.c
+ - locale_mb_cur_max: cache value of MB_CUR_MAX when we set or change
+ the locale to avoid a function call every time we need to read it
+
+shell.h
+ - new struct to save shell_input_line and associated variables:
+ shell_input_line_state_t
+ - add members of sh_parser_state_t to save and restore token and the
+ size of the token buffer
+
+parse.y
+ - {save,restore}_input_line_state: new functions to save and restore
+ shell_input_line and associated variables
+ - {save,restore}_parser_state: add code to save and restore the token
+ and token buffer size
+ - xparse_dolparen: call save_ and restore_input_line_state to avoid
+ problems with overwriting shell_input_line when we recursively
+ call the parser to parse a command substitution. Fixes bug
+ reported by Rui Santos <rsantos@grupopie.com>
+
+include/shmbutil.h
+ - use locale_mb_cur_max instead of MB_CUR_MAX in ADVANCE_CHAR and
+ similar macros
+
+lib/glob/smatch.c
+ - rangecmp,rangecmp_wc: change to take an additional argument, which
+ forces the use of strcoll/wscoll when non-zero. If it's 0, a new
+ variable `glob_asciirange' controls whether or not we use strcoll/
+ wscoll. If it's non-zero, we use straight C-locale-like ordering.
+ Suggested by Aharon Robbins <arnold@skeeve.com>
+
+ 6/30
+ ----
+execute_cmd.c
+ - execute_pipeline: make sure the lastpipe code is protected by
+ #ifdef JOB_CONTROL. Fixes problem reported by Thomas Cort
+ <tcort@minix3.org>
+
+ 7/2
+ ---
+lib/readline/complete.c
+ - EXPERIMENTAL: remove setting of _rl_interrupt_immediately around
+ completion functions that touch the file system. Idea from Jan
+ Kratochvil <jan.ktratochvil@redhat.com> and the GDB development
+ team
+
+lib/readline/signals.c
+ - rl_signal_handler: if we're in callback mode, don't interrupt
+ immediately on a SIGWINCH
+
+ 7/3
+ ---
+bashline.c
+ - set_directory_hook: and its siblings are a new set of functions to
+ set, save, and restore the appropriate directory completion hook
+ - change callers to use {set,save,restore}_directory_hook instead of
+ manipulating rl_directory_rewrite_hook directly
+ - dircomplete_expand: new variable, defaults to 0, if non-zero causes
+ directory names to be word-expanded during word and filename
+ completion
+ - change {set,save,restore}_directory_hook to look at dircomplete_expand
+ and change rl_directory_completion_hook or rl_directory_rewrite_hook
+ appropriately
+
+bashline.h
+ - extern declaration for set_directory_hook so shopt code can use it
+
+ 7/6
+ ---
+builtins/shopt.def
+ - globasciiranges: new settable shopt option, makes glob ranges act
+ as if in the C locale (so b no longer comes between A and B).
+ Suggested by Aharon Robbins <arnold@skeeve.com>
+
+ 7/7
+ ---
+doc/{bash.1,bashref.texi}
+ - document new `globasciiranges' shopt option
+
+ 7/8
+ ---
+builtins/shopt.def
+ - direxpand: new settable option, makes filename completion expand
+ variables in directory names like bash-4.1 did.
+ - shopt_set_complete_direxpand: new function, does the work for the
+ above by calling set_directory_hook
+
+doc/{bash.1,bashref.texi}
+ - document new `direxpand' shopt option
+
+ 7/15
+ ----
+lib/readline/isearch.c
+ - _rl_isearch_dispatch: when adding character to search string, use
+ cxt->lastc (which we use in the switch statement) instead of c,
+ since lastc can be modified earlier in the function
+
+ 7/18
+ ----
+lib/readline/rlprivate.h
+ - _rl_search_context: add another member to save previous value of
+ (multibyte) lastc: pmb is to mb as prevc is to lastc
+
+lib/readline/isearch.c:
+ - _rl_isearch_dispatch: if a key sequence indexes into a new keymap,
+ but doesn't find any bound function (k[ind].function == 0) or is
+ bound to self-insert (k[ind].function == rl_insert), back up and
+ insert the previous character (the one that caused the index into a
+ new keymap) and arrange things so the current character is the next
+ one read, so both of them end up in the search string. Fixes bug
+ reported by Clark Wang <dearvoid@gmail.com>
+ - _rl_isearch_dispatch: a couple of efficiency improvements when adding
+ characters to the isearch string
+
+ 7/24
+ ----
+lib/readline/isearch.c
+ - _rl_isearch_dispatch: save and restore cxt->mb and cxt->pmb
+ appropriately when in a multibyte locale
+
+doc/{bash.1,bashref.texi}
+ - correct description of {x}>file (and other redirection operators
+ that allocate a file descriptor) to note the the fd range is
+ greater than or equal to 10. Fixes problem reported by
+ Christian Ullrich
+
+lib/readline/signals.c
+ - rl_signal_handler: don't interrupt immediately if in callback mode
+
+lib/readline/callback.c
+ - rl_callback_read_char: install signal handlers only when readline
+ has control in callback mode, so readline's signal handlers aren't
+ called when the application is active (e.g., between the calls to
+ rl_callback_handler_install and rl_callback_read_char). If the
+ readline signal handlers only set a flag, which the application
+ doesn't know about, the signals will effectively be ignored until
+ the next time the application calls into the readline callback
+ interface. Fixes problem of calling unsafe functions from signal
+ handlers when in callback mode reported by Jan Kratochvil
+ <jan.kratochvil@redhat.com>
+
+execute_cmd.c
+ - fix_assignment_words: when in Posix mode, the `command' builtin
+ doesn't change whether or not the command name it protects is an
+ assignment builtin. One or more instances of `command'
+ preceding `export', for instance, doesn't make `export' treat its
+ assignment statement arguments differently. Posix interpretation
+ #351
+
+doc/{bash.1,bashref.texi}
+ - document new Posix-mode behavior of `command' when preceding builtins
+ that take assignment statements as arguments
+
+builtins/printf.def
+ - printstr: if fieldwidth or precision are < 0 or > INT_MAX when
+ supplied explicitly (since we take care of the `-' separately),
+ clamp at INT_MAX like when using getint(). Fixes issue reported
+ by Ralph Coredroy <ralph@inputplus.co.uk>
+
+ 7/25
+ ----
+lib/readline/chardefs.h
+ - isxdigit: don't define if compiling with c++; declared as a c++
+ template function. Fixes bug reported by Miroslav Lichvar
+ <mlichvar@redhat.com>
+
+builtins/printf.def
+ - getint: if garglist == 0, return whatever getintmax returns (0).
+ Fixes bug reported by Ralph Coredroy <ralph@inputplus.co.uk>
+
+ 7/28
+ ----
+doc/{bash.1,bashref.texi}
+ - minor changes to the descriptions of the cd and pushd builtins
+
+lib/sh/zread.c
+ - zsyncfd: change variable holding return value from lseek to
+ off_t. Bug report and fix from Gregory Margo <gmargo@pacbell.net>
+
+ 8/1
+ ---
+expr.c
+ - don't check for division by 0 when in a context where no evaluation
+ is taking place. Fixes bug reported by dnade.ext@orange-ftgroup.com
+
+ 8/6
+ ---
+execute_cmd.c
+ - execute_command_internal: the parent branch of the subshell code
+ (where the child calls execute_in_subshell) should not close all
+ open FIFOs with unlink_fifo_list if it's part of a shell function
+ that's still executing. Fixes bug reported by Maarten Billemont
+ <lhunath@lyndir.com>
+
+ 8/9
+ ---
+builtins/common.c
+ - get_exitstat: return EX_BADUSAGE (2) on a non-numeric argument
+
+builtins/return.def
+ - return_builtin: just call get_exitstat to get the return status,
+ let it handle proper parsing and handling of arguments. Fixes
+ issue most recently raised by Linda Walsh <bash@tlinx.org>.
+ Reverses change from 9/11/2008 (see above)
+
+ 8/16
+ ----
+doc/{bash.1,bashref.texi}
+ - clean up `set -e' language to make it clearer that any failure of
+ a compound command will cause the shell to exit, not just subshells
+ and brace commands
+
+ 8/17
+ ----
+configure.in
+ - make the various XXX_FOR_BUILD variables `precious' to autoconf to
+ avoid stale data
+ - change how CC_FOR_BUILD is initialized when cross-compiling and not,
+ but do not change behavior
+ - initialize CFLAGS_FOR_BUILD to -g when cross-compiling
+ - initialize LIBS_FOR_BUILD to $(LIBS) when not cross-compiling, empty
+ when cross-compiling
+ - create AUTO_CFLAGS variable to hold basic CFLAGS defaults; used when
+ CFLAGS not inherited from environment (like effect of old
+ auto_cflags variable)
+ - substitute LIBS_FOR_BUILD into output Makefiles
+ [changes inspired by bug report from Nathan Phillip Brink
+ <ohnobinki@ohnopublishing.net> -- gentoo bug 378941]
+
+builtins/Makefile.in
+ - substitute LIBS_FOR_BUILD from configure, not strictly initialized
+ to $(LIBS)
+
+ 8/27
+ ----
+doc/{bash.1,bashref.texi}
+ - minor changes to the here string description to clarify the
+ expansions performed on the word
+
+support/shobj-conf
+ - handle compilation on Lion (Mac OS X 10.7/darwin11) with changes
+ to darwin stanzas. Fixes readline bug reported by Vincent
+ Sheffer <vince.sheffer@apisphere.com>
+
+lib/sh/strtrans.c
+ - ansic_wshouldquote: check a string with multi-byte characters for
+ characters that needs to be backslash-octal escaped for $'...'
+ - ansic_shouldquote: if is_basic fails for one character, let
+ ansic_wshouldquote examine the rest of the string and return what
+ it returns. From a patch sent by Roman Rakus <rrakus@redhat.com>
+
+ 8/30
+ ----
+lib/sh/strtrans.c
+ - ansic_quote: changes to quote (or not) multibyte characters. New
+ code converts them to wide characters and uses iswprint to check
+ valid wide chars. From a patch sent by Roman Rakus
+ <rrakus@redhat.com>
+
+ 9/7
+ ---
+lib/sh/shquote.c
+ - sh_backslash_quote: change to be table-driven so we can use a
+ different table if we want to
+ - sh_backslash_quote: takes a second char table[256] argument;
+
+externs.h
+ - sh_backslash_quote: add second argument to function prototype
+
+bashline.c,braces.c,parse.y,builtins/printf.def
+ - change callers of sh_backslash_quote to add second argument
+
+bashline.c
+ - filename_bstab: table of characters to pass to sh_backslash_quote;
+ characters with value 1 will be backslash-quoted
+ - set_filename_bstab: turn on characters in filename backslash-quote
+ table according to passed string argument
+ - call set_filename_bstab every time rl_filename_quote_characters is
+ assigned a value
+ - bash_quote_filename: call sh_backslash_quote with filename_bstab
+ as second argument. This allows other characters in filenames to
+ be quoted without quoting, for instance, a dollar sign in a shell
+ variable reference
+
+ 9/8
+ ---
+bashline.c
+ - complete_fullquote: new variable, controls table passed to
+ sh_backslash_quote. If non-zero (the default), the standard set
+ of shell metacharacters -- as in bash versions up to and including
+ bash-4.2 -- gets backslash-quoted by the completion code. If zero,
+ sh_backslash_quote gets the table with the characters in the
+ variable reference removed, which means they are removed from the
+ set of characters to be quoted in filenames
+
+ 9/10
+ ----
+bashline.c
+ - bash_filename_stat_hook: new function, designed to expand variable
+ references in filenames before readline passes them to stat(2)
+ to determine whether or not they are a directory
+
+ 9/15
+ ----
+builtins/declare.def
+ - if assign_array_element fails due to a bad (or empty) subscript, mark
+ it as an assignment error and don't attempt any further processing
+ of that declaration. Fixes segfault bug reported by Diego Augusto
+ Molina <diegoaugustomolina@gmail.com>
+
+ 9/19
+ ----
+expr.c
+ - exppower: replace the simple exponentiation algorithm with an
+ implementation of exponentiation by squaring. Inspired by report
+ from Nicolas ARGYROU <nargy@yahoo.com>
+
+bashline.c
+ - bash_quote_filename: check for rtext being non-null before
+ dereferencing it
+ - set_saved_history: operate_and_get_next assumes that the previous
+ line was added to the history, even when the history is stifled and
+ at the max number of entries. If it wasn't, make sure the history
+ number is incremented properly. Partial fix for bug reported by
+ gregrwm <backuppc-users@whitleymott.net>
+
+doc/{bash.1,bashref.texi},lib/readline/doc/{hsuser,rluser}.texi
+ - minor editorial changes inspired by suggestions from
+ Roger Zauner <rogerx.oss@gmail.com>
+
+ 9/20
+ ----
+lib/intl/localealias.c
+ - read_alias_file: close resource leak (fp) when returning on error
+
+ 9/22
+ ----
+execute_command.c
+ - execute_intern_function: implement Posix interpretation 383 by making
+ it an error to define a function with the same name as a special
+ builtin when in Posix mode.
+ http://austingroupbugs.net/view.php?id=383#c692
+
+ 9/25
+ ----
+doc/{bash.1,bashref.texi}
+ - formatting and some content changes from Benno Schulenberg
+ <bensberg@justemail.net>
+ - document new posix-mode behavior from interp 383 change of 9/22
+
+ 9/30
+ ----
+execute_cmd.c
+ - shell_execve: add strerror to error message about executable file
+ that shell can't execute as a shell script. From suggestion by
+ daysleeper <daysleeper@centrum.cz>
+
+ 10/1
+ ----
+bashhist.c
+ - maybe_add_history: act as if literal_history is set when parser_state
+ includes PST_HEREDOC, so we save the bodies of here-documents just
+ as they were entered. Fixes bug reported by Jonathan Wakely
+ <bugs@kayari.org>
+ - bash_add_history: make sure that the second and subsequent lines of
+ a here document don't have extra newlines or other delimiting
+ chars added, since they have the trailing newline preserved, when
+ `lithist' is set and history_delimiting_chars isn't called
+
+execute_cmd.c
+ - execute_command_internal: avoid fd exhaustion caused by using
+ process substitution in loops inside shell functions by using
+ copy_fifo_list and close_new_fifos (). Fixes debian bash bug
+ 642504
+
+lib/readline/complete.c
+ - new variable, rl_filename_stat_hook, used by append_to_match. If
+ filename completion is desired, and rl_filename_stat_hook points
+ to a function, call that function to expand the filename in an
+ application-specific way before calling stat.
+
+bashline.c
+ - bash_default_completion: if variable completion returns a single
+ match, use bash_filename_stat_hook and file_isdir to determine
+ whether or not the variable name expands to a directory. If it
+ does, set the filename_append_character to `/'. This is not
+ perfect, so we will see how it works out. Adds functionality
+ requested by Peter Toft <pto@linuxbog.dk> and Patrick Pfeifer
+ <patrick@pfeifer.de>
+ - rl_filename_stat_hook: assigned bash_filename_stat_hook, so things
+ like $HOME/Downloads (after completion) have a slash appended.
+ In general, this causes the stat hook to be called whenever
+ filename completion is appended. Adds functionality requested by
+ Patrick Pfeifer <patrick@pfeifer.de>
+
+lib/readline/readline.h
+ - new extern declaration for rl_filename_stat_hook
+
+lib/readline/doc/rltech.texi
+ - rl_directory_rewrite_hook: now documented
+ - rl_filename_stat_hook: document
+
+pcomplete.c
+ - gen_action_completions: in the CA_DIRECTORY case, turn off
+ rl_filename_completion_desired if it was off before we called
+ rl_filename_completion_function and we didn't get any matches.
+ Having it on causes readline to quote the matches as if they
+ were filenames. Adds functionality requested by many,
+ including Clark Wang <dearvoid@gmail.com>
+
+assoc.[ch]
+ - assoc_replace: new function, takes the same arguments as
+ assoc_insert, but returns the old data instead of freeing it
+ - assoc_insert: if the object returned by hash_insert doesn't have
+ the same value for its key as the key passed as an argument, we
+ are overwriting an existing value. In this case, we can free the
+ key. Fixes bug reported by David Parks <davidparks21@yahoo.com>
+
+ 10/5
+ ----
+print_cmd.c
+ - indirection_level_string: small change to only re-enable `x'
+ option after calling decode_prompt_string if it was on before. In
+ normal mode, it will be, but John Reiser <jreiser@bitwagon.com>
+ has a novel use for that code in conjunction with a pre-loaded
+ shared library that traces system call usage in shell scripts
+
+ 10/10
+ -----
+Makefile.in
+ - Fix from Mike Frysinger <vapier@gentoo.org> to avoid trying to
+ build y.tab.c and y.tab.h with two separate runs of yacc if
+ parse.y changes. Problem with parallel makes
+ - Fix from Mike Frysinger <vapier@gentoo.org> to avoid subdirectory
+ builds each trying to make version.h (and all its dependencies)
+
+lib/sh/Makefile.in
+ - remove some dependencies on version.h where it doesn't make sense
+
+variables.c
+ - initialize_shell_variables: while reading the environment, a shell
+ running in posix mode now checks for SHELLOPTS being readonly (it
+ gets set early on in main()) before trying to assign to it. It
+ saves an error message and the variable gets parsed as it should.
+ Fixes bug reported by Len Giambrone <Len.Giambrone@intersystems.com>
+
+ 10/14
+ -----
+doc/{bash.1,bashref.texi}
+ - add to the "duplicating file descriptors" description that >&word
+ doesn't redirect stdout and stderr if word expands to `-'
+ - add to the "appending standard output and standard error"
+ description a note that >&word, where word is a number or `-',
+ causes other redirection operators to apply for sh and Posix
+ compatibility reasons. Suggested by Greg Wooledge
+ <wooledg@eeg.ccf.org>
+
+ 10/15
+ -----
+pcomplete.c
+ - change pcomp_filename_completion_function to only run the filename
+ dequoting function in the cases (as best as it can figure) where
+ readline won't do it via rl_filename_completion_function. Based
+ on reports from <lolilolicon@gmail.com>
+
+ 10/19
+ -----
+bashline.c
+ - attempt_shell_completion: add call to set_directory_hook() to make
+ sure the rewrite functions are correct. It's cheap and doesn't
+ hurt
+ - command_word_completion_function: if completing a command name that
+ starts with `.' or `..', temporarily suppress the effects of the
+ `direxpand' option and restore the correct value after calling
+ rl_filename_completion_function. If it's enabled, the directory
+ name will be rewritten and no longer match `./' or `../'. Fixes
+ problem reported by Michael Kalisz <michael@kalisz.homelinux.net>
+
+ 10/22
+ -----
+builtins/history.def
+ - push_history: make sure remember_on_history is enabled before we
+ try to delete the last history entry -- the `history -s' command
+ might not have been saved. Fixes bug reported by
+ lester@vmw-les.eng.vmware.com
+
+lib/readline/complete.c
+ - rl_callback_read_char: add calls to a macro CALLBACK_READ_RETURN
+ instead of straight return; add same call at end of function.
+ Placeholder for future work in deinstalling signal handlers when
+ readline is not active
+
+ 10/25
+ -----
+expr.c
+ - exp2: catch arithmetic overflow when val1 == INTMAX_MIN and val2 == -1
+ for DIV and MOD and avoid SIGFPE. Bug report and pointer to fix
+ from Jaak Ristioja <jaak.ristioja@cyber.ee>
+ - expassign: same changes for arithmetic overflow for DIV and MOD
+
+ 10/28
+ -----
+subst.c
+ - parameter_brace_expand: allow pattern substitution when there is an
+ expansion of the form ${var/} as a no-op: replacing nothing with
+ nothing
+ - parameter_brace_patsub: don't need to check for PATSUB being NULL;
+ it never is
+
+flags.c
+ - if STRICT_POSIX is defined, initialize history_expansion to 0, since
+ history expansion (and its treatment of ! within double quotes) is
+ not a conforming posix environment. From austin-group issue 500
+
+lib/readline/histexpand.c
+ - history_expand: when processing a string within double quotes
+ (DQUOTE == 1), make the closing double quote inhibit history
+ expansion, as if the word were outside double quotes. In effect,
+ we assume that the double quote is followed by a character in
+ history_no_expand_chars. tcsh and csh seem to do this. This
+ answers a persistent complaint about history expansion
+
+ 10/29
+ -----
+make_cmd.c
+ - make_arith_for_command: use skip_to_delim to find the next `;'
+ when breaking the string between the double parens into three
+ separate components instead of a simple character loop. Fixes
+ bug reported by Dan Douglas <ormaaj@gmail.com>
+
+ 11/2
+ ----
+Makefile.in
+ - make libbuiltins.a depend on builtext.h to serialize its creation
+ and avoid conflict between multiple invocations of mkbuiltins.
+ Fix from Mike Frysinger <vapier@gentoo.org>
+
+ 11/5
+ ----
+findcmd.c
+ - user_command_matches: if stat(".", ...) returns -1, set st_dev
+ and st_ino fields in dotinfo to 0 to avoid same_file matches
+ - find_user_command_in_path: check stat(2) return the same way
+
+lib/glob/glob.c
+ - glob_vector: don't call strlen(pat) without checking pat == 0
+ - glob_dir_to_array: make sure to free `result' and all allocated
+ members before returning error due to malloc failure
+ - glob_vector: make sure to free `nextname' and `npat' on errors
+ (mostly when setting lose = 1)
+ - glob_vector: if flags & GX_MATCHDIRS but not GX_ALLDIRS, make
+ sure we free `subdir'
+ - glob_filename: when expanding ** (GX_ALLDIRS), make sure we
+ free temp_results (return value from glob_vector)
+
+lib/glob/xmbsrtowcs.c
+ - xdupmbstowcs: fix call to realloc to use sizeof (char *) instead
+ of sizeof (char **) when assigning idxtmp
+
+execute_cmd.c
+ - print_index_and_element: return 0 right away if L == 0
+ - is_dirname: fix memory leak by freeing `temp'
+ - time_command: don't try to deref NULL `command' when assigning
+ to `posix_time'
+ - shell_execve: null-terminate `sample' after READ_SAMPLE_BUF so it's
+ terminated for functions that expect that
+
+builtins/read.def
+ - read_builtin: don't call bind_read_variable with a potentially-null
+ string
+
+pcomplete.c
+ - gen_command_matches: don't call dispose_word_desc with a NULL arg
+ - gen_compspec_completions: fix memory leak by freeing `ret' before
+ calling gen_action_completions (tcs, ...). happens when
+ performing directory completion as default and no completions
+ have been generated
+ - gen_progcomp_completions: make sure to set foundp to 0 whenever
+ returning NULL
+ - it_init_aliases: fix memory leak by freeing alias_list before
+ returning
+
+bashline.c
+ - command_word_completion_function: don't call restore_tilde with a
+ NULL directory_part argument
+ - bash_directory_expansion: bugfix: don't throw away results of
+ rl_directory_rewrite_hook if it's set and returns non-zero
+ - bind_keyseq_to_unix_command: free `kseq' before returning error
+
+arrayfunc.c
+ - assign_array_element_internal: make sure `akey' is freed if non-null
+ before returning error
+ - assign_compound_array_list: free `akey' before returning error
+ - array_value_internal: free `akey' before returning error
+ - unbind_array_element: free `akey' before returning error
+
+subst.c
+ - array_length_reference: free `akey' before returning error in case
+ of expand_assignment_string_to_string error
+ - array_length_reference: free `akey' after call to assoc_reference
+ - skip_to_delim: if skipping process and command substitution, free
+ return value from extract_process_subst
+ - parameter_brace_substring: free `val' (vtype == VT_VARIABLE) before
+ returning if verify_substring_values fails
+ - parameter_brace_expand: remove two duplicate lines that allocate
+ ret in parameter_brace_substring case
+ - parameter_brace_expand: convert `free (name); name = xmalloc (...)'
+ to use `xrealloc (name, ...)'
+ - parameter_brace_expand: free `name' before returning when handling
+ ${!PREFIX*} expansion
+ - split_at_delims: fix memory leak by freeing `d2' before returning
+
+redir.c
+ - redirection_error: free `filename' if the redirection operator is
+ REDIR_VARASSIGN by assigning allocname
+
+eval.c
+ - send_pwd_to_eterm: fix memory leak by freeing value returned by
+ get_working_directory()
+
+builtins/cd.def
+ - change_to_directory: fix memory leak by freeing return value from
+ resetpwd()
+ - cd_builtin: fix memory leak by freeing value returned by dirspell()
+ - cd_builtin: fix memory leak by freeing `directory' if appropriate
+ before overwriting with return value from resetpwd()
+
+builtins/type.def
+ - describe_command: free `full_path' before overwriting it with return
+ value from sh_makepath
+
+builtins/complete.def
+ - compgen_builtin: fix memory leak by calling strlist_dispose (sl)
+ before overwriting sl with return value from completions_to_stringlist
+
+builtins/hash.def
+ - list_hashed_filename_targets: fix memory leak by freeing `target'
+
+make_cmd.c
+ - make_arith_for_command: free `init', `test', and `step' before
+ returning error on parse error
+
+jobs.c
+ - initialize_job_control: don't call move_to_high_fd if shell_tty == -1
+
+general.c
+ - check_dev_tty: don't call close with an fd < 0
+ - legal_number: deal with NULL `string' argument, return invalid
+
+lib/sh/fmtulong.c
+ - fmtulong: if the `base' argument is invalid, make sure we index
+ buf by `len-1' at maximum
+
+print_cmd.c
+ - print_deferred_heredocs: don't try to dereference a NULL `cstring'
+ - cprintf: make sure to call va_end (args)
+
+variables.c
+ - push_dollar_vars: fix call to xrealloc to use sizeof (WORD_LIST *)
+ instead of sizeof (WORD_LIST **)
+
+lib/sh/zmapfd.c
+ - zmapfd: if read returns error, free result and return -1 immediately
+ instead of trying to reallocate it
+
+ 11/6
+ ----
+execute_cmd.c
+ - cpl_reap: rewrote to avoid using pointer after freeing it; now builds
+ new coproc list on the fly while traversing the old one and sets the
+ right values for coproc_list when done
+
+ 11/12
+ -----
+builtins/set.def
+ - if neither -f nor -v supplied, don't allow a readonly function to
+ be implicitly unset. Fixes bug reported by Jens Schmidt
+ <jens.schmidt35@arcor.de>
+
+lib/readline/callback.c
+ - change CALLBACK_READ_RETURN to clear signal handlers before returning
+ from rl_callback_read_char so readline's signal handlers aren't
+ installed when readline doesn't have control. Idea from Jan
+ Kratochvil <jan.ktratochvil@redhat.com> and the GDB development
+ team
+
+pcomplete.h
+ - COPT_NOQUOTE: new complete/compgen option value
+
+builtins/complete.def
+ - noquote: new complete/compgen option; will be used to disable
+ filename completion quoting
+
+pcomplete.c
+ - pcomp_set_readline_variables: pay attention to COPT_NOQUOTE; turns
+ of rl_filename_quoting_desired if set; turns it on if unset (value
+ is inverted, since default is on)
+
+doc/bash.1,lib/readline/doc/rluser.texi
+ - document new -o noquote option to complete/compgen/compopt
+
+pathexp.c
+ - quote_string_for_globbing: if QGLOB_REGEXP, make sure characters
+ between brackets in an ERE bracket expression are not inappropriately
+ quoted with backslashes. This is a pretty substantial change,
+ should be stressed when opening bash up for alpha and beta tests.
+ Fixes bug pointed out by Stephane Chazleas
+ <stephane_chazelas@yahoo.fr>
+
+doc/{bash.1,bashref.texi}
+ - document that regexp matches can be inconsistent when quoting
+ characters in bracket expressions, since usual quoting characters
+ lose their meaning within brackets
+ - note that regular expression matching when the pattern is stored
+ in a shell variable which is quoted for expansion causes string
+ matching
+
+redir.h
+ - RX_SAVEFD: new flag value; notes that a redirection denotes an
+ fd used to save another even if it's not >= SHELL_FD_BASE
+
+redir.c
+ - do_redirection_internal: when deciding whether or not to reset the
+ close-on-exec flag on a restored file descriptor, trust the value
+ of redirect->flags & RX_SAVCLEXEC even if the fd is < SHELL_FD_BASE
+ if the RX_SAVEFD flag is set
+ - add_undo_redirect: set the RX_SAVEFD flag if the file descriptor
+ limit is such that the shell can't duplicate to a file descriptor
+ >= 10. Fixes a limitation that tripped a coreutils test reported
+ by Paul Eggert <eggert@cs.ucla.edu>
+
+ 11/19
+ -----
+doc/{bash.1,bashref.texi},lib/readline/doc/hsuser.texi
+ - make it clear that bash runs HISTFILESIZE=$HISTSIZE after reading
+ the startup files
+ - make it clear that bash runs HISTSIZE=500 after reading the
+ startup files
+ - make it clear that setting HISTSIZE=0 causes commands to not be
+ saved in the history list
+ - make it clear that setting HISTFILESIZE=0 causes the history file
+ to be truncated to zero size
+
+variables.c
+ - sv_histsize: change so setting HISTSIZE to a value less than 0
+ causes the history to be `unstifled'
+ - sv_histsize: change so setting HISTFILESIZE to a value less than 0
+ results in no file truncation
+ - make it clear that numeric values less than 0 for HISTFILESIZE or
+ HISTSIZE inhibit the usual functions
+
+ 11/23
+ -----
+parse.y
+ - save_input_line_state: add missing `return ls' at the end, since the
+ function is supposed to return its argument. Pointed out by
+ Andreas Schwab <schwab@linux-m68k.org>
+
+builtins/read.def
+ - skip over NUL bytes in input, as most modern shells seem to. Bug
+ report by Matthew Story <matt@tablethotels.com>
+
+lib/readline/vi_mode.c
+ - rl_vi_replace: set _rl_vi_last_key_before_insert to invoking key
+
+ 11/25
+ -----
+builtins/read.def
+ - read_builtin: if xrealloc returns same pointer as first argument,
+ don't bother with the remove_unwind_protect/add_unwind_protect pair
+ - read_builtin: set a flag (`reading') around calls to zread/zreadc
+ and readline()
+ - sigalrm: change to set flag (`sigalrm_seen') and only longjmp if
+ currently in read(2) (reading != 0)
+ - CHECK_ALRM: new macro, checks sigalrm_seen and longjmps if non-zero,
+ behavior of old SIGALRM catching function
+ - read_builtin: call CHECK_ALRM in appropriate places while reading
+ line of input. Fixes bug reported by Pierre Gaston
+ <pierre.gaston@gmail.com>
+
+lib/readline/vi_mode.c
+ - rl_vi_replace: initialize characters before printing characters in
+ vi_replace_keymap to their default values in vi_insertion_keymap,
+ since we're supposed to be in insert mode replacing characters
+ - rl_vi_replace: call rl_vi_start_inserting to set last command to
+ `R' for undo
+ - rl_vi_replace: set _rl_vi_last_key_before_insert to `R' for future
+ use by _rl_vi_done_inserting
+ - vi_save_insert_buffer: new function, broke out code that copies text
+ into vi_insert_buffer from _rl_vi_save_insert
+ - _rl_vi_save_replace: new function, saves text modified by
+ rl_vi_replace (using current point and vi_replace_count to figure
+ it out) to vi_replace_buffer
+ - _rl_vi_save_insert: call vi_save_insert_buffer
+ - _rl_vi_done_inserting: if _rl_vi_last_key_before_insert == 'R', call
+ _rl_vi_save_replace to save text modified in replace mode (uses
+ vi_save_insert_buffer)
+ - _rl_vi_replace_insert: new function, replaces the number of chars
+ in vi_insert_buffer after rl_point with contents ov vi_insert_buffer
+ - rl_vi_redo: call _rl_vi_replace_insert if last command == 'R' and
+ there's something in vi_insert_buffer. Fixes bug with `.' not
+ redoing the most recent `R' command, reported by Geoff Clare
+ <g.clare@opengroup.org> in readline area on savannah
+
+ 11/26
+ -----
+lib/readline/rlprivate.h
+ - RL_SIG_RECEIVED(): evaluate to non-zero if there is a pending signal
+ to be handled
+ - RL_SIGINT_RECEIVED(): evaluate to non-zero if there is a pending
+ SIGINT to be handled
+
+lib/readline/complete.c
+ - remove all mention of _rl_interrupt_immediately
+ - rl_completion_matches: check RL_SIG_RECEIVED after each call to
+ the entry function, call RL_CHECK_SIGNALS if true to handle the
+ signal
+ - rl_completion_matches: if RL_SIG_RECEIVED evaluates to true, free
+ and zero out the match_list this function allocated
+ - rl_completion_matches: if the completion entry function is
+ rl_filename_completion_function, free the contents of match_list,
+ because that function does not keep state and will not free the
+ entries; avoids possible memory leak pointed out by
+ Garrett Cooper <yanegomi@gmail.com>
+ - gen_completion_matches: if RL_SIG_RECEIVED evalutes to true after
+ calling rl_attempted_completion_function, free the returned match
+ list and handle the signal with RL_CHECK_SIGNALS; avoids
+ possible memory leak pointed out by Garrett Cooper
+ <yanegomi@gmail.com>
+ - gen_completion_matches: if RL_SIG_RECEIVED evaluates to true after
+ calling rl_completion_matches, free the returned match list and
+ handle the signal with RL_CHECK_SIGNALS
+
+lib/readline/util.c
+ - rl_settracefp: new utility function to set the tracing FILE *
+
+lib/readline/signals.c
+ - _rl_sigcleanup: pointer to a function that will be called with the
+ signal and a void * argument from _rl_handle_signal
+ - _rl_sigcleanarg: void * that the rest of the code can set to have
+ passed to the signal cleanup function
+ - _rl_handle_signal: if _rl_sigcleanup set, call as
+ (*_rl_sigcleanup) (sig, _rl_sigcleanarg)
+
+lib/readline/rlprivate.h
+ - extern declarations for _rl_sigcleanup and _rl_sigcleanarg
+
+lib/readline/complete.c
+ - _rl_complete_sigcleanup: signal cleanup function for completion code;
+ calls _rl_free_match_list on _rl_sigcleanarg if signal == SIGINT
+ - rl_complete_internal: before calling display_matches if what_to_do
+ == `?', set _rl_sigcleanup to _rl_complete_sigcleanup so the match
+ list gets freed on SIGINT; avoids possible memory leak pointed out
+ by Garrett Cooper <yanegomi@gmail.com>
+ - rl_complete_internal: in default switch case, call _rl_free_match_list
+ before returning to avoid memory leak
+
+doc/bashref.texi
+ - start at a set of examples for the =~ regular expression matching
+ operator, touching on keeping the pattern in a shell variable and
+ quoting portions of the pattern to remove their special meaning
+
+ 12/1
+ ----
+lib/glob/gmisc.c
+ - extglob_pattern: new function, returns 1 if pattern passed as an
+ argument looks like an extended globbing pattern
+
+lib/glob/glob.c
+ - skipname: return 0 immediately if extglob_pattern returns non-zero,
+ let the extended globbing code do the right thing with skipping
+ names beginning with a `.'
+ - mbskipname: return 0 immediately if extglob_pattern returns non-zero,
+ let the extended globbing code do the right thing with skipping
+ names beginning with a `.'. Fixes bug reported by Yongzhi Pan
+ <panyongzhi@gmail.com>
+
+ 12/2
+ ----
+lib/glob/smatch.c
+ - patscan, patscan_wc: no longer static so other parts of the glob
+ library can use them, renamed to glob_patscan, glob_patscan_wc
+
+lib/glob/glob.c
+ - extern declarations for glob_patscan, glob_patscan_wc
+ - wchkname: new function, does skipname on wchar_t pattern and dname,
+ old body of mbskipname after converting to wide chars
+ - extglob_skipname: new function, checks all subpatterns in an extglob
+ pattern to determine whether or not a filename should be skipped.
+ Calls skipname for each subpattern. Dname is only skipped if all
+ subpatterns indicate it should be. Better fix for bug reported by
+ Yongzhi Pan <panyongzhi@gmail.com>
+ - wextglob_skipname: wide-char version of extglob_skipname, calls
+ wchkname instead of calling back into mbskipname for each
+ subpattern to avoid problems with char/wchar_t mismatch
+ - skipname: call extglob_skipname if extglob_pattern returns non-zero
+ - mbskipname: call wextglob_skipname if extglob_pattern returns non-zero
+ - mbskipname: short-circuit immediately if no multibyte chars in
+ pattern or filename
+
+execute_cmd.c
+ - execute_cond_node: added parens to patmatch assignment statement to
+ make intent clearer
+
+ 12/3
+ ----
+configure.in,config.h.in
+ - check for imaxdiv, define HAVE_IMAXDIV if present
+
+expr.c
+ - expassign, exp2: use imaxdiv if available. Doesn't help with checks
+ for overflow from 10/25
+
+ 12/6
+ ----
+lib/readline/complete.c
+ - compute_lcd_of_matches: if we're ignoring case in the matches, only
+ use what the user typed as the lcd if it matches the first match
+ (after sorting) up to the length of what was typed (if what the
+ user typed is longer than the shortest of the possible matches, use
+ the shortest common length of the matches instead). If it doesn't
+ match, use the first of the list of matches, as if case were not
+ being ignored. Fixes bug reported by Clark Wang
+ <dearvoid@gmail.com>
+
+ 12/7
+ ----
+builtins/cd.def
+ - cd_builtin: add code to return error in case cd has more than one
+ non-option argument, conditional on CD_COMPLAINS define (which is
+ not defined anywhere)
+
+doc/{bash.1,bashref.texi}
+ - note that additional arguments to cd following the directory name
+ are ignored. Suggested by Vaclav Hanzl <hanzl@noel.feld.cvut.cz>
+
+ 12/10
+ -----
+lib/readline/input.c
+ - rl_read_key: don't need to increment key sequence length here; doing
+ it leads to an off-by-one error
+
+lib/readline/macro.c
+ - rl_end_kbd_macro: after off-by-one error with rl_key_sequence_length
+ fixed, can decrement current_macro_index by rl_key_sequence_length
+ (length of key sequence that closes keyboard macro)
+
+lib/readline/readline.c
+ - _rl_dispatch_subseq: fix extra increment of rl_key_sequence_length
+ when ESC maps to a new keymap and we're converting meta characters
+ to ESC+key
+ - _rl_dispatch_subseq: better increment of rl_key_sequence_length
+ before we dispatch to a function in the ISFUNC case (where the
+ second increment above should have happened)
+ - rl_executing_keyseq: the full key sequence that ended up executing
+ a readline command. Available to the calling application, maintained
+ by _rl_dispatch_subseq, indexed by rl_key_sequence_length
+ - rl_executing_key: the key that was bound to the currently-executing
+ readline command. Same as the `key' argument to the function
+
+lib/readline/readline.h
+ - rl_executing_keyseq: extern declaration
+ - rl_executing_key: extern declaration
+ - rl_key_sequence_length: declaration moved here from rlprivate.h,
+ now part of public interface
+
+lib/readline/rlprivate.h
+ - new extern declaration for _rl_executing_keyseq_size, buffer size
+ for rl_executing_keyseq
+
+lib/readline/doc/rltech.texi
+ - documented new variables: rl_executing_key, rl_executing_keyseq,
+ rl_key_sequence_length
+
+ 12/13
+ -----
+bashline.c
+ - bash_execute_unix_command: replace ad-hoc code that searches
+ cmd_xmap for correct command with call to rl_function_of_keyseq
+ using rl_executing_keyseq; now supports key sequences longer
+ than two characters. Fixes bug reported by Michael Kazior
+ <kazikcz@gmail.com>
+
+ 12/15
+ -----
+make_cmd.c
+ - make_function_def: don't null out source_file before calling
+ make_command so it can be used later on when the function definition
+ is executed
+
+execute_cmd.c
+ - execute_intern_function: second argument is now FUNCTION_DEF *
+ instead of COMMAND *
+ - execute_command_internal: call execute_intern_function with the
+ new second argument (the entire FUNCTION_DEF instead of just the
+ command member)
+ - execute_intern_function: if DEBUGGER is defined, call
+ bind_function_def before calling bind_function, just like
+ make_function_def does (might be able to take out the call in
+ make_function_def depending on what the debugger does with it).
+ Fixes bug reported by <dethrophes@motd005>
+
+expr.c
+ - more minor changes to cases of INTMAX_MIN % -1 and INTMAX_MIN / 1;
+ fix typos and logic errors
+
+ 12/16
+ -----
+bashline.c
+ - find_cmd_start: change flags to remove SD_NOSKIPCMD so it skips over
+ command substitutions and doesn't treat them as command separators
+ - attempt_shell_completion: instead of taking first return from
+ find_cmd_name as command name to use for programmable completion,
+ use loop to skip over assignment statements. Fixes problem reported
+ by Raphael Droz <raphael.droz+floss@gmail.com>
+ - attempt_shell_completion: if we don't find a command name but the
+ command line is non-empty, assume the other words are all assignment
+ statements and flag that point is in a command position so we can
+ do command name completion
+ - attempt_shell_completion: if the word being completed is the first
+ word following a series of assignment statements, and the
+ command line is non-empty, flag that point is in a command position
+ so we can do command name completion
+
+lib/readline/history.c
+ - history_get_time: atol -> strtol
+
+ 12/18
+ -----
+parse.y
+ - parser_in_command_position: external interface to the
+ command_token_position macro for use by other parts of the shell,
+ like the completion mechanism
+
+externs.h
+ - extern declaration for parser_in_command_position
+
+ 12/19
+ -----
+
+builtins/read.def
+ - read_builtin: make sure all calls to bind_read_variable are passed
+ a non-null string. Fixes bug reported by Dan Douglas
+ <ormaaj@gmail.com>
+
+bashline.c
+ - attempt_shell_completion: mark that we're in a command position if
+ we're at the start of the line and the parser is ready to accept
+ a reserved word or command name. Feature most recently suggested
+ by Peng Yu <pengyu.ut@gmail.com>
+
+ 12/21
+ -----
+lib/readline/bind.c
+ - _rl_escchar: return the character that would be backslash-escaped
+ to denote the control character passed as an argument ('\n' -> 'n')
+ - _rl_isescape: return 1 if character passed is one that has a
+ backslash escape
+ - _rl_untranslate_macro_value: new second argument: use_escapes, if
+ non-zero translate to backslash escapes where possible instead of
+ using straight \C-x for control character `x'. Change callers
+ - _rl_untranslate_macro_value: now global
+
+lib/readline/rlprivate.h
+ - _rl_untranslate_macro_value: extern declaration
+
+lib/readline/{macro.c,readline.h}
+ - rl_print_last_kbd_macro: new bindable function, inspired by patch
+ from Mitchel Humpherys
+
+lib/readline/funmap.c
+ - print-last-kbd-macro: new bindable command, bound to
+ rl_print_last_kbd_macro
+
+lib/readline/doc/{rluser.texi,readline.3},doc/bash.1
+ - print-last-kbd-macro: document.
+
+lib/readline/text.c
+ - _rl_insert_next: if we're defining a macro, make sure the key gets
+ added to the macro text (should really audit calls to rl_read_key()
+ and make sure the right thing is happening for all of them)
+
+bashline.[ch]
+ - print_unix_command_map: new function, prints all bound commands in
+ cmd_xmap using rl_macro_dumper in a reusable format
+
+builtins/bind.def
+ - new -X option: print all keysequences bound to Unix commands using
+ print_unix_command_map. Feature suggested by Dennis Williamson
+ (2/2011)
+
+doc/{bash.1,bashref.texi}
+ - document new `bind -X' option
+
+ 12/24
+ -----
+
+doc/{bash.1,bashref.texi}
+ - add a couple of sentences to the description of the case modification
+ operators making it clearer that each character of parameter is
+ tested against the pattern, and that the pattern should only attempt
+ to match a single character. Suggested by Bill Gradwohl
+ <bill@ycc.com>
+
+ 12/28
+ -----
+shell.c
+ - init_noninteractive: instead of calling set_job_control(0) to
+ unconditionally turn off job control, turn on job control if
+ forced_interactive or jobs_m_flag is set
+ - shell_initialize: call initialize_job_control with jobs_m_flag as
+ argument so `bash -m script' enables job control while running the
+ script
+
+jobs.c
+ - initialize_job_control: if the `force' argument is non-zero, turn on
+ job control even if the shell is not currently interactive
+ (interactive == 0)
+
+ 12/29
+ -----
+
+flags.h
+ - new extern declaration for jobs_m_flag
+
+builtins/{cd,set}.def,doc/{bash.1,bashref.texi}
+ - added text clarifying the descriptions of cd -L and -P, suggested by
+ Padraig Brady <p@draigbrady.com>
+ - slight change to the description of `set -P' about resolving symbolic
+ links
+
+lib/readline/doc/rluser.texi
+ - Added an example to the programmable completion section: _comp_cd,
+ a completion function for cd, with additional verbiage. Text
+ includes a reference to the bash_completion project
+
+ 1/1/2012
+ --------
+jobs.c
+ - set_job_status_and_cleanup: note that a job is stopped due to
+ SIGTSTP (any_tstped) if job_control is set; there's no need to
+ test interactive
+
+ 1/5
+ ---
+quit.h
+ - LASTSIG(): new macro, expands to signal number of last terminating
+ signal received (terminating_signal or SIGINT)
+
+trap.c
+ - first_pending_trap: returns lowest signal number with a trap pending
+ - trapped_signal_received: set to the last trapped signal the shell
+ received in trap_handler(); reset to 0 in run_pending_traps
+
+builtins/read.def
+ - read_builtin: changes to posix-mode (posixly_correct != 0) to make
+ `read' interruptible by a trapped signal. After the trap runs,
+ read returns 128+sig and does not assign the partially-read line
+ to the named variable(s). From an austin-group discussion started
+ by David Korn
+
+ 1/11
+ ----
+doc/{bash.1,bashref.texi}
+ - slight changes to the descriptions of the compat32 and compat40 shell
+ options to clarify their meaning
+
+ 1/12
+ ----
+lib/readline/{colors.[ch],parse-colors.[ch]}
+ - new files, part of color infrastructure support
+
+Makefile.in,lib/readline/Makefile.in
+ - arrange to have colors.o and parse-colors.o added to readline
+ library
+
+{configure,config.h}.in
+ - check for stdbool.h, define HAVE_STDBOOL_H if found
+
+ 1/14
+ ----
+lib/readline/bind.c
+ - colored_stats: new bindable variable, enables using colors to
+ indicate file type when listing completions
+
+lib/readline/complete.c
+ - _rl_colored_stats: new variable, controlled by colored-stats bindable
+ variable
+ - colored_stat_start, colored_stat_end: new functions to set and reset
+ the terminal color appropriately depending on the type of the
+ filename to be printed
+ - print_filename: changes to print colors if `colored-stats' variable
+ set. Changes contributed by Raphael Droz
+ <raphael.droz+floss@gmail.com>
+
+lib/readline/readline.c
+ - rl_initialize_everything: add call to _rl_parse_colors to parse
+ color values out of $LS_COLORS. May have to add to rl_initialize
+ to make more dynamic if LS_COLORS changes (which doesn't happen
+ very often, if at all)
+
+lib/readline/rlprivate.h
+ - _rl_colored_stats: new extern declaration
+
+lib/readline/doc/{readline.3,rluser.texi},doc/bash.1
+ - colored-stats: document new bindable readline variable
+
+lib/readline/colors.c
+ - _rl_print_color_indicator: call rl_filename_stat_hook before calling
+ lstat/stat so we can get color indicators for stuff like
+ $HOME/Applications
+
+lib/readline/complete.c
+ - stat_char: call rl_filename_stat_hook before calling lstat/stat
+
+findcmd.[ch],execute_cmd.c
+ - search_for_command: now takes a second `flags' argument; changed
+ header function prototype and callers
+ - search_for_command: if (flags & 1), put the command found in $PATH
+ into the command hash table (previous default behavior)
+
+execute_cmd.c
+ - is_dirname: call search_for_command with flags argument of 0 so it
+ doesn't try to put something in the command hash table
+
+bashline.c
+ - bash_command_name_stat_hook: a hook function for readline's
+ filename_stat_hook that does $PATH searching the same way that
+ execute_cmd.c:execute_disk_command() does it, and rewrites the
+ passed filename if found. Does not put names into command hash
+ table. This allows command name completion to take advantage
+ of `visible-stats' and `colored-stats' settings.
+ - executable_completion: new function, calls the directory completion
+ hook to expand the filename before calling executable_file or
+ executable_or_directory; change command_word_completion_function to
+ call executable_completion. This allows $HOME/bin/[TAB] to do
+ command completion and display alternatives
+
+ 1/17
+ ----
+pcomplete.c
+ - gen_command_matches: now takes a new second argument: the command
+ name as deciphered by the programmable completion code and used
+ to look up the compspec; changed callers (gen_compspec_completions)
+ - gen_shell_function_matches: now takes a new second argument: the
+ command that originally caused the completion function to be
+ invoked; changed callers (gen_compspec_completions))
+ - build_arg_list: now takes a new second argument: the command name
+ corresponding to the current compspec; changed callers
+ (gen_command_matches, gen_shell_function_matches)
+ - build_arg_list: now uses `cmd' argument to create $1 passed to
+ invoked command or shell function
+ - gen_compspec_completions: if we skipped a null command at the
+ beginning of the line (e.g., for completing `>'), add a new word for
+ it at the beginning of the word list and increment nw and cw
+ appropriately. This is all a partial fix for the shortcoming
+ pointed out by Sung Pae <sungpae@gmail.com>
+
+ 1/18
+ ----
+
+{configure,config.h}.in
+ - new check: check for AUDIT_USER_TTY defined in <linux/audit.h>,
+ define HAVE_DECL_AUDIT_USER_TTY if both are found
+
+lib/readline/rlconf.h
+ - ENABLE_TTY_AUDIT_SUPPORT: new define, allows use of the Linux kernel
+ tty auditing system if it's available and enabled
+
+lib/readline/util.c
+ - _rl_audit_tty: new function, send a string to the kernel tty audit
+ system
+
+lib/readline/rlprivate.h
+ - _rl_audit_tty: new extern declaration
+
+lib/readline/readline.c
+ - readline: call _rl_audit_tty with line to be returned before returning
+ it if the Linux tty audit system is available and it's been enabled
+ in rlconf.h Original patch from Miroslav Trmac; recent request
+ from Miroslav Lichvar <mlichvar@redhat.com>
+
+ 1/21
+ ----
+
+lib/readline/readline.c:
+ - _rl_dispatch_subseq: add an inter-character timeout for multi-char
+ key sequences. Suggested by <rogerx.oss@gmail.com>. Still needs
+ work to make a user-settable variable
+
+parse.y
+ - shell_getc: make code that uses the pop_alias dependent on ALIAS
+ define
+
+variables.h
+ - sv_tz: extern define should only depend on HAVE_TZSET
+
+expr.c
+ - expr_streval: if ARRAY_VARS is not defined, set lvalue->ind to -1;
+ move assignment to `ind' inside define
+ - expr_bind_array_element: declaration and uses need to be #ifdef
+ ARRAY_VARS
+
+arrayfunc.h
+ - AV_ALLOWALL, AV_QUOTED, AV_USEIND: define to 0 if ARRAY_VARS not
+ defined; used in subst.c unconditionally
+
+sig.h
+ - make the signal blocking functions not dependent on JOB_CONTROL
+
+sig.c
+ - sigprocmask: make the replacement definition not dependent on
+ JOB_CONTROL
+
+trap.c
+ - use BLOCK_SIGNAL/UNBLOCK_SIGNAL instead of code dependent on
+ HAVE_POSIX_SIGNALS and BSD signals
+
+ 1/24
+ ----
+
+print_cmd.c
+ - print_redirection_list: change the conditions under which
+ r_duplicating_output_word is mapped to r_err_and_out to more or
+ less match those used in redir.c. Fixes bug pointed out by
+ Dan Douglas <ormaaj@gmail.com>
+
+
+ 1/29
+ ----
+lib/readline/signals.c
+ - _rl_block_sigwinch,_rl_release_sigwinch: don't compile in bodies
+ unless SIGWINCH is defined. Fixes bug reported by Pierre Muller
+ <pierre.muller@ics-cnrs.unistra.fr>
+
+doc/{bash.1,bashref.texi}
+ - small modifications to the introduction to the REDIRECTION section
+ to describe how redirections can modify file handles
+ - small modification to the section describing base#n to make it
+ clearer that n can be denoted using non-numerics. From a posting
+ by Linda Walsh <bash@tlinx.org>
+
+ 2/2
+ ---
+builtins/printf.def
+ - printf_builtin: make sure vbuf is intialized and non-null when -v
+ is supplied, since other parts of the code assume that it's not
+ null (e.g., bind_printf_variable()). Fixes bug reported by Jim
+ Avera <james_avera@yahoo.com>
+
+ 2/4
+ ---
+lib/readline/undo.c
+ - _rl_free_undo_list: new function, old body of rl_free_undo_list,
+ frees undo entries in UNDO_LIST * passed as argument
+ - rl_free_undo_list: call _rl_free_undo_list
+
+lib/readline/rlprivate.h
+ - _rl_free_undo_list: new extern declaration
+ - _rl_keyseq_timeout: new extern declaration (see below)
+
+lib/readline/misc.c
+ - rl_clear_history: new function. Clears the history list and frees
+ all associated data similar to history.c:clear_history(), but
+ takes rl_undo_list into account and frees and UNDO_LISTs saved as
+ `data' members of a history list entry
+
+lib/readline/doc/rltech.texi
+ - rl_clear_history: documented
+
+lib/readline/readline.c
+ - _rl_keyseq_timeout: new variable to hold intra-key timeout value
+ from 1/21 fix; specified in milliseconds. Default value is 500
+ - _rl_dispatch_subseq: change to use _rl_keyseq_timeout as intra-key
+ timeout if it's greater than 0; no timeout if <= 0
+ - _rl_dispatch_subseq: don't check for queued keyboard input if we have
+ pushed or pending input, or if we're reading input from a macro
+
+lib/readline/bind.c
+ - keyseq-timeout: new bindable variable, shadows _rl_keyseq_timeout
+ - string_varlist: add keyseq-timeout
+ - sv_seqtimeout: new function to modify value of _rl_keyseq_timeout;
+ clamps negative values at 0 for now
+ - _rl_get_string_variable_value: return value for keyseq-timeout
+
+doc/bash.1,lib/readline/doc/{rluser.texi,readline.3}
+ - keyseq-timeout: documented
+
+lib/readline/isearch.c
+ - _rl_isearch_dispatch: modification to fix from 7/18 to not use
+ cxt->keymap and cxt->okeymap, since by the time this code is
+ executed, they are equal. Use `f' to check for rl_insert or
+ unbound func
+ - _rl_isearch_dispatch: if we're switching keymaps, not in
+ callback mode, and don't have pending or pushed input, use
+ _rl_input_queued to resolve a potentially ambiguous key sequence.
+ Suggested by Roger Zauner <rogerx.oss@gmail.com>
+ - _rl_isearch_dispatch: if we have changed keymaps and resolved to
+ an editing function (not self-insert), make sure we stuff the
+ right characters back onto the input after changing the keymap
+ back so the right editing function is executed after the search
+ is terminated. Rest of fix for bug reported by Roger Zauner
+ <rogerx.oss@gmail.com>
+
+ 2/5
+ ---
+builtins/gen-helpfiles.c
+ - new file: reads struct builtin and writes the long docs to files
+ in the `helpdirs' subdirectory. The filename is given in the
+ previously-unused `handle' member of the struct builtin. Links
+ with `tmpbuiltins.o', which is created by Makefile to have the
+ right long documentation. When not cross-compiling, gets the
+ right #defines based on configuration options from config.h instead
+ of trying to parse conditional parts of def files. Fixes
+ shortcoming pointed out by Andreas Schwab <schwab@linux-m68k.org>
+
+builtins/Makefile.in
+ - tmpbuiltins.c: new generated file, created to enable creation of
+ separate helpfiles based on correct #defines instead of trying to
+ parse conditional parts of def files
+ - gen-helpfiles: new program to generate helpfiles, links with
+ tmpbuiltins.o
+ - HELPFILES_TARGET: new target, substituted by configure to `helpdoc'
+ if separate helpfiles requested
+ - targets: new target, libbuiltins.a and $(HELPFILES_TARGET)
+ - CREATED_OBJECTS: new variable, holds created object files for
+ make clean; changed make clean to remove created objects
+ - helpdoc: changed to call gen-helpfiles instead of mkbuiltins
+
+Makefile.in
+ - when building libbuiltins.a, recursively call make with `targets'
+ argument to make sure separate helpfiles get built
+
+configure.in
+ - substitute `helpdoc' as value of HELPFILES_TARGET if
+ --enable-separate-helpfiles supplied as configure argument
+
+builtins/mkbuiltins.c
+ - `-nofunctions': new argument, causes mkbuiltins to not write value
+ for function implementing a particular builtin to struct builtin
+ and to write document file name to `handle' member of struct builtin
+ - no longer writes separate helpfiles; that is left to gen-helpfiles
+
+ 2/8
+ ---
+subst.c
+ - make sure last_command_exit_value is set to a non-zero value before
+ any calls to report_error, since `-e' set will short-circuit
+ report_error. Fixes bug reported by Ewan Mellor
+ <Ewan.Mellor@eu.citrix.com>
+
+variables.c
+ - make_local_array_variable: added second argument; if non-zero,
+ function will return an existing local associative array variable
+ instead of insisting on an indexed array
+
+variable.h,subst.c
+ - make_local_array_variable: changed prototype and caller
+
+builtins/declare.def
+ - declare_internal: add second arg to call to make_local_array_variable;
+ making_array_special, which indicates we're processing an
+ assignment like declare a[b]=c. Fixes seg fault resulting from
+ a being an already-declared local associative array variable in a
+ function. Ubuntu bash bug 928900.
+
+ 2/14
+ ----
+
+execute_cmd.c
+ - execute_command_internal: if redirections into or out of a loop fail,
+ don't try to free ofifo_list unless saved_fifo is non-zero. It's
+ only valid if saved_fifo is set
+
+ 2/15
+ ----
+{arrayfunc,braces,variables}.c
+ - last_command_exit_value: make sure it's set before any calls to
+ report_error, since -e will cause that to exit the shell
+
+builtins/common.c
+ - get_job_by_name: call internal_error instead of report_error so this
+ doesn't exit the shell
+
+ 2/18
+ ----
+builtins/evalstring.c
+ - parse_and_execute: make sure the file descriptor to be redirected to
+ is 1 before calling cat_file. One fix for bug reported by Dan Douglas
+ <ormaaj@gmail.com>
+
+parse.y
+ - read_token_word: don't return NUMBER if a string of all digits
+ resolves to a number that overflows the bounds of an intmax_t.
+ Other fix for bug reported by Dan Douglas <ormaaj@gmail.com>
+
+ 2/19
+ ----
+lib/sh/strtrans.c
+ - ansicstr: use 0x7f as the boundary for characters that translate
+ directly from ASCII to unicode (\u and \U escapes) instead of
+ UCHAR_MAX, since everything >= 0x80 requires more than one byte.
+ Bug and fix from John Kearney <dethrophes@web.de>
+
+builtins/printf.def
+ - tescape: ditto for printf \u and \U escape sequences
+
+ 2/20
+ ----
+lib/sh/unicode.c
+ - u32toutf8: fix to handle encodings up to six bytes long correctly
+ (though technically UTF-8 only has characters up to 4 bytes long).
+ Report and fix from John Kearney <dethrophes@web.de>
+ - u32toutf8: first argument is now an unsigned 32-bit quantity,
+ changed callers (u32cconv) to pass c instead of wc
+ - u32reset: new function, resets local static state to uninitialized
+ (locale information, currently)
+
+locale.c
+ - call u32reset whenever LC_CTYPE/LC_ALL/LANG is changed to reset the
+ cached locale information used by u32cconv. From a report from
+ John Kearney <dethrophes@web.de>
+
+ 2/21
+ ----
+doc/{bash,builtins}.1
+ - minor changes from Bjarni Ingi Gislason <bjarniig@rhi.hi.is>
+
+lib/sh/unicode.c
+ - u32cconv: only assume you can directly call wctomb on the passed
+ value if __STDC_ISO_10646__ is defined and the value is <=
+ 0x7fffffff
+ - stub_charset: return locale as default instead of "ASCII", let
+ rest of code decide what to do with it
+
+lib/readline/parens.c
+ - _rl_enable_paren_matching: make paren matching work in vi insert
+ mode. Bug report from <derflob@derflob.de>
+
+ 2/22
+ ----
+lib/sh/shquote.c
+ - sh_backslash_quote: quote tilde in places where it would be
+ expanded. From a report from John Kearney <dethrophes@web.de>
+
+ 2/23
+ ----
+execute_cmd.c
+ - execute_pipeline: wrap the discard_unwind_frame call in #ifdef
+ JOB_CONTROL, since the frame is only created if JOB_CONTROL is
+ defined. Bug and fix from Doug Kehn <rdkehn@yahoo.com>
+
+ 2/25
+ ----
+error.c
+ - report_error: make sure last_command_exit_value is non-zero before
+ we call exit_shell, since the exit trap may reference it. Call
+ exit_shell with last_command_exit_value to allow exit statuses
+ other than 1
+
+unicode.c
+ - stub_charset: use local static buffer to hold charset, don't change
+ value returned by get_locale_var. Based on idea and code from
+ John Kearney <dethrophes@web.de>
+ - u32toutf16: function to convert unsigned 32-bit value (unicode) to
+ UTF-16. From John Kearney <dethrophes@web.de>
+ - u32cconv: call u32toutf16 if __STDC_ISO_10646__ defined and wchar_t
+ is two bytes, send result to wcstombs, return if not encoding error.
+ From John Kearney <dethrophes@web.de>
+ - u32cconv: return UTF-8 conversion if iconv conversion to local
+ charset is unsupported
+
+ 3/2
+ ---
+lib/readline/complete.c
+ - print_filename: if there is no directory hook, but there is a stat
+ hook, and we want to append a slash to directories, call the stat
+ hook before calling path_isdir on the expanded directory name.
+ Report and pointer to fix from Steve Rago <sar@nec-labs.com>
+
+ 3/3
+ ---
+builtins/evalstring.c
+ - parse_and_execute: fix to change of 2/18: make sure the file
+ descriptor being redirected to is 0 before calling cat_file when
+ we see something like $(< file). Real fix for bug reported by
+ Dan Douglas <ormaaj@gmail.com>
+
+subst.c
+ - parameter_brace_patsub: run the replacement string through quote
+ removal even if the expansion is within double quotes, because
+ the parser and string extract functions treat the quotes and
+ backslashes as special. If they're treated as special, quote
+ removal should remove them (this is the Posix position and
+ compatible with ksh93). THIS IS NOT BACKWARDS COMPATIBLE.
+
+ 3/4
+ ---
+lib/readline/complete.c
+ - rl_menu_complete: fix to make show-all-if-ambiguous and
+ menu-complete-display-prefix work together if both are set. Fix
+ from Sami Pietila <sami.pietila@gmail.com>
+
+ 3/5
+ ---
+bashline.c
+ - dircomplete_expand_relpath: new variable, if non-zero, means that
+ `shopt -s direxpand' should expand relative pathnames. Zero by
+ default, not user-settable yet
+ - bash_directory_completion_hook: if we have a relative pathname that
+ isn't changed by canonicalization or spell checking after being
+ appended to $PWD, then don't change what the user typed. Controlled
+ by dircomplete_expand_relpath
+
+ 3/7
+ ---
+m4/timespec.m4
+ - new macros, cribbed from gnulib and coreutils: find out whether we
+ have `struct timespec' and what file includes it
+
+m4/stat-time.m4
+ - new macros, cribbed from gnulib and coreutils: find out whether the
+ mtime/atime/ctime/etctime fields of struct stat are of type
+ struct timespec, and what the name is
+
+include/stat-time.h
+ - new file, cribbed from gnulib, with additions from coreutils: include
+ the right file to get the struct timespec define, or provide our own
+ replacement. Provides a bunch of inline functions to turn the
+ appropriate members of struct stat into `struct timespec' values,
+ zeroing out the tv_nsec field if necessary
+
+test.c
+ - include "stat-time.h" for the nanosecond timestamp resolution stuff
+ - stat_mtime: new function, returns struct stat and the mod time
+ normalized into a `struct timespec' for the filename passed as the
+ first argument
+ - filecomp: call stat_mtime instead of sh_stat for each filename
+ argument to get the mtime as a struct timespec
+ - filecomp: call timespec_cmp instead of using a straight arithmetic
+ comparison for the -nt and -ot operators, using timespec returned by
+ stat_mtime. Added functionality requested by by Werner Fink
+ <werner@suse.de> for systems that can support it
+
+ 3/10
+ ----
+include/posixdir.h
+ - REAL_DIR_ENTRY: remove dependency on _POSIX_SOURCE, only use feature
+ test macros to decide whether dirent.d_ino is present and usable;
+ define D_INO_AVAILABLE. Report and fix from Fabrizion Gennari
+ <fabrizio.ge@tiscali.it>
+ - D_FILENO_AVAILABLE: define if we can use dirent.d_fileno
+
+lib/sh/getcwd.c
+ - use D_FILENO_AVAILABLE to decide whether or not to compile in
+ _path_checkino and whether or not to call it. Report and initial
+ fix from Fabrizion Gennari <fabrizio.ge@tiscali.it>
+
+lib/readline/signals.c
+ - make sure all occurrences of SIGWINCH are protected by #ifdef
+
+sig.c
+ - make sure all occurrences of SIGCHLD are protected by #ifdef
+
+nojobs.c
+ - make sure SA_RESTART is defined to 0 if the OS doesn't define it
+
+version.c
+ - show_shell_version: don't use string literals in printf, use %s.
+ Has added benefit of removing newline from string to be translated
+
+trap.c
+ - queue_sigchld_trap: new function, increments the number of pending
+ SIGCHLD signals by the argument, which is by convention the number
+ of children reaped in a call to waitchld()
+
+trap.h
+ - queue_sigchld_trap: new extern declaration
+
+jobs.c
+ - waitchld: if called from the SIGCHLD signal handler (sigchld > 0),
+ then call queue_sigchld_trap to avoid running the trap in a signal
+ handler context. Report and original fix from Siddhesh Poyarekar
+ <siddhesh@redhat.com>
+
+lib/sh/unicode.c
+ - u32tocesc: take an unsigned 32-bit quantity and encode it using
+ ISO C99 string notation (\u/\U)
+ - u32cconv: call u32tocesc as a fallback instead of u32cchar
+ - u32cconv: call u32tocesc if iconv cannot convert the character.
+ Maybe do the same thing if iconv_open fails
+ - u32reset: call iconv_close on localconv if u32init == 1
+
+ 3/11
+ ----
+config-top.h
+ - CHECKWINSIZE_DEFAULT: new define, set to initial value of
+ check_window_size (shopt checkwinsize): 0 for off, 1 for on.
+ Default is 0
+
+{jobs,nojobs}.c
+ - check_window_size: default initial value to CHECKWINSIZE_DEFAULT
+
+ 3/13
+ ----
+doc/bashref.texi
+ - change text referring to the copying restrictions to that
+ recommended by the FSF (no Front-Cover Texts and no Back-Cover
+ Texts)
+
+lib/readline/doc/{history,rlman,rluserman}.texi
+ - change text referring to the copying restrictions to that
+ recommended by the FSF (no Front-Cover Texts and no Back-Cover
+ Texts)
+
+ 3/15
+ ----
+array.c
+ - LASTREF_START: new macro to set the starting position for an array
+ traversal to `lastref' if that's valid, and to the start of the array
+ if not. Used in array_reference, array_insert, array_remove
+ - array_remove: try to be a little smarter with lastref instead of
+ unconditionally invalidating it
+
+ 3/16
+ ----
+array.c
+ - array_insert: fix memory leak by deleting element to be added in the
+ case of an error
+
+ 3/18
+ ----
+lib/sh/mbschr.c
+ - mbschr: don't call mbrlen unless is_basic is false; devolves to a
+ straight character-by-character run through the string
+
+ 3/19
+ ----
+stringlib.c
+ - substring: use memcpy instead of strncpy, since we know the length
+ and are going to add our own NUL terminator
+
+ 3/20
+ ----
+subst.c
+ - parameter_brace_expand_rhs: if expand_string_for_rhs returns a quoted
+ null string (a list with one element for which
+ QUOTED_NULL(list->word->word) returns true), return the quoted null
+ and set the flags in the returned word to indicate it. Fixes bug
+ reported by Mark Edgar <medgar123@gmail.com>
+
+lib/sh/tmpfile.c
+ - use random(3) instead of get_random_number to avoid perturbing the
+ random sequence you get using $RANDOM. Bug report and fix from
+ Jurij Mihelic <jurij.mihelic@fri.uni-lj.si>
+
+ 3/21
+ ----
+config-top.h
+ - OPTIMIZE_SEQUENTIAL_ARRAY_ASSIGNMENT: define to 1 to optimize
+ sequential indexed array assignment patterns. Defined to 1 by
+ default
+
+array.c
+ - array_insert: if OPTIMIZE_SEQUENTIAL_ARRAY_ASSIGNMENT is defined,
+ start the search at lastref (see change from 3/15)
+
+ 3/27
+ ----
+print_cmd.c
+ - debug_print_word_list: new debugging function, prints a word list
+ preceded by an optional string and using a caller-specified
+ separator
+
+ 4/1
+ ---
+command.h
+ - W_ASSNGLOBAL: new flag, set to indicate declare -g
+
+execute_cmd.c
+ - fix_assignment_words: note that we have a -g argument to an assignment
+ builtin and set the W_ASSNGLOBAL flag in the variable word
+
+subst.c
+ - dump_word_flags: print out W_ASSNGLOBAL if present
+ - do_assignment_internal: only set ASS_MKLOCAL if W_ASSIGNARG is set
+ and W_ASSNGLOBAL is not. Don't want to create a local variable even
+ if variable_context is non-zero if ASSNGLOBAL is set. Fixes bug
+ reported by Bill Gradwohl <bill@ycc.com>
+
+ 4/7
+ ---
+lib/readline/readline.c
+ - _rl_dispatch_subseq: make the `keyseq-timeout' variable apply to
+ ESC processing when in vi mode. After hitting ESC, readline will
+ wait up to _rl_keyseq_timeout*1000 microseconds (if set) for
+ additional input before dispatching on the ESC and switching to
+ command/movement mode. Completes timeout work suggested by
+ <rogerx.oss@gmail.com>; this prompted by report from Barry Downes
+ <barry.downes@gmail.com>
+
+lib/sh/shmbchar.c
+ - sh_mbsnlen: new function, returns the number of (possibly multibyte)
+ characters in a passed string with a passed length, examining at most
+ maxlen (third argument) bytes
+
+externs.h
+ - sh_mbsnlen: extern declaration for new function
+
+shell.c
+ - exit_shell: call maybe_save_shell_history if remember_on_history is
+ set, not just in interactive shells. That means the history is
+ saved if history is enabled, regardless of whether or not the shell
+ is interactive
+
+doc/{bash.1,bashref.texi}
+ - TMOUT: fix description to make it explicit that TMOUT is the timeout
+ period for a complete line of input, not just any input. Fixes
+ problem reported in Ubuntu bug 957303:
+ https://bugs.launchpad.net/ubuntu/+source/bash/+bug/957303
+ - HISTFILE: document change to write history list to history file in
+ any shell with history enabled, not just interactive shells. This
+ seems to be more logical behavior. Suggested by Greg Wooledge
+ <wooledg@eeg.ccf.org>
+
+ 4/12
+ ----
+lib/readline/colors.h
+ - only include stdbool.h if HAVE_STDBOOL_H is defined
+ - if HAVE_STDBOOL_H is not defined, provide enough definition for the
+ library to use `bool', `true', and `false'
+
+lib/readline/parse-colors.[ch]
+ - don't try to include <stdbool.h> at all; rely on colors.h to do it
+
+lib/sh/snprintf.c
+ - vsnprintf_internal: only treat '0' as a flag to indicate zero padding
+ if `.' hasn't been encountered ((flags&PF_DOT) == 0); otherwise treat
+ it as the first digit of a precision specifier. Fixes bug reported
+ by Petr Sumbera <petr.sumbera@sun.com>
+
+ 4/15
+ ----
+lib/sh/snprintf.c
+ - vsnprintf_internal: if the '0' and '-' flags both occur, the '0'
+ flag is ignored -- Posix. Start of a series of fixes based on
+ tests and patches from Petr Sumbera <petr.sumbera@sun.com>
+ - PUT_PLUS: make sure PF_PLUS flag is specified before putting the `+'
+ - vsnprintf_internal: when '+' is read as a flag, don't set right-
+ justify flag if the LADJUST (`-') flag has already been supplied
+ - floating: make sure to output space padding before the `+', zero
+ padding after
+ - exponent: make sure to output space padding before the `+', zero
+ padding after
+ - exponent: only subtract one from the width for the decimal point
+ if we're really going to print one
+ - floating: use presence of PF_PLUS flag to decide whether to account
+ for the `+' in the padded field width. Ditto for exponent()
+
+ 4/16
+ ----
+lib/sh/snprintf.c
+ - vsnprint_internal: only reduce precision by 1 when processing the `g'
+ format if it's > 0. A precision of 0 should stay 0; otherwise it
+ gets set to -1 (NOT_FOUND) and converted to the default
+ - number, lnumber: if an explicit precision is supplied, turn off the
+ zero-padding flag and set the pad character back to space
+ - number, lnumber: only account for a `+' when performing the field
+ width calculation if the coversion is base 10; we don't add a `+'
+ for other bases
+
+ 4/18
+ ----
+tests/printf3.sub
+ - try using "perl -e 'print time'" to get the current time in seconds
+ since the epoch if "date +%s" is not available (solaris 8-10)
+
+ 4/19
+ ----
+tests/run-printf
+ - use cat -v instead of relying on diff -a being available to convert
+ control characters to ascii and avoid the dreaded "Binary files
+ /tmp/xx and printf.right differ"
+
+ 4/20
+ ----
+lib/sh/strftime.c
+ - incoporated new version from Aharon Robbins <arnold@skeeve.com>
+
+ 4/22
+ ----
+doc/{bash.1,bashref.texi}
+ - slight change to the description of /dev/tcp and /dev/udp
+
+subst.c
+ - match_wpattern: logic fix to the calculation of `simple' (was |=,
+ needs to be &=). Bug report from Mike Frysinger <vapier@gentoo.org>,
+ fix from Andreas Schwab <schwab@linux-m68k.org>
+
+bashline.c
+ - bash_filename_stat_hook: add code from bash_directory_completion_hook
+ that performs pathname canonicalization in the same way that cd and
+ other builtins will do
+
+ 4/25
+ ----
+execute_cmd.c
+ - execute_pipeline: change the call to move_to_high_fd to make it use
+ getdtablesize() and to not stomp on existing open file descriptors,
+ like the fd the shell is using to read a script. Bug report from
+ Greg Wooledge <wooledg@eeg.ccf.org>
+
+ 5/6
+ ---
+subst.c
+ - expand_word_internal: case '$': after calling param_expand and
+ setting had_quoted_null, set TEMP to null. The code that builds the
+ returned string at the end of the function will take care of making
+ and returning a quoted null string if there's nothing else in
+ ISTRING. If there is, the quoted null should just go away. Part of
+ fix for bug reported by Ruediger Kuhlmann <RKuhlmann@orga-systems.com>
+ - expand_word_internal: when processing ISTRING to build return value,
+ only set W_HASQUOTEDNULL in the returned word flags if the word is
+ a quoted null string AND had_quoted_null is set. Rest of fix
+
+ 5/9
+ ---
+variables.c
+ - bind_variable_internal: if we get an array variable here (implicit
+ assignment to index 0), call make_array_variable_value, which
+ dummies up a fake SHELL_VAR * from array[0]. This matters when
+ we're appending and have to use the current value
+ - bind_variable_internal: after computing the new value, treat assoc
+ variables with higher precedence than simple array variables; it
+ might be that a variable has both attributes set
+
+arrayfunc.c
+ - bind_array_var_internal: break code out that handles creating the
+ new value to be assigned to an array variable index into a new
+ function, make_array_variable_value. This handles creating a
+ dummy SHELL_VAR * for implicit array[0] assignment. Fixes bug
+ reported by Dan Douglas <ormaaj@gmail.com>
+
+arrayfunc.h
+ - make_array_variable_value: new extern declaration
+
+ 5/19
+ ----
+variables.c
+ - bind_int_variable: if an assignment statement like x=y comes in
+ from the expression evaluator, and x is an array, handle it like
+ x[0]=y. Fixes bug reported by Dan Douglas <ormaaj@gmail.com>
+
+ 5/24
+ ----
+
+braces.c
+ - mkseq: handle possible overflow and break the sequence generating
+ loop if it occurs. Fixes OpenSUSE bug 763591:
+ https://bugzilla.novell.com/show_bug.cgi?id=763591
+
+ 5/25
+ ----
+Makefile.in
+ - LDFLAGS_FOR_BUILD: add to compilation recipes for build tools
+ buildversion, mksignames, mksyntax
+ - LDFLAGS_FOR_BUILD: add to compilation recipes for test tools
+ recho, zecho, printenv, xcase
+
+builtins/Makefile.in
+ - LDFLAGS_FOR_BUILD: add to compilation recipes for build tools
+ gen-helpfiles, psize.aux
+
+variables.c
+ - bind_int_variable: if LHS is a simple variable name without an array
+ reference, but resolves to an array variable, call
+ bind_array_variable with index 0 to make x=1 equivalent to x[0]=1.
+ Fixes bug reported by Dan Douglas <ormaaj@gmail.com>
+
+ 5/27
+ ----
+subst.c
+ - expand_word_internal: make sure has_dollar_at doesn't get reset before
+ recursive calls to param_expand or expand_word_internal, since it has
+ to save state of what came before. Use temp variable and make sure
+ has_dollar_at is incremented if recursive call processes "$@".
+ Fixes bug reported by gregrwm <backuppc-users@whitleymott.net> and
+ supplemented by Dan Douglas <ormaaj@gmail.com>
+
+doc/{bash.1,bashref.texi}
+ - changes to the description of substring expansion inspired by
+ suggestions from Bill Gradwohl <bill@ycc.com>
+
+doc/bashref.texi
+ - added substring expansion examples inspired by suggestions from
+ Bill Gradwohl <bill@ycc.com>
+
+variables.c
+ - find_shell_variable: search for a variable in the list of shell
+ contexts, ignore the temporary environment
+ - find_variable_tempenv: search for a variable in the list of shell
+ contexts, force search of the temporary environment
+ - find_variable_notempenv: search for a variable in the list of shell
+ contexts, don't force search of the temporary environment
+
+variables.h
+ - find_shell_variable: extern declaration
+ - find_variable_tempenv: extern declaration
+ - find_variable_notempenv: extern declaration
+
+arrayfunc.c
+ - bind_array_variable: call find_shell_variable instead of calling
+ var_lookup directly
+
+findcmd.c
+ - search_for_command: call find_variable_tempenv instead of
+ find_variable_internal directly
+ - _find_user_command_internal: call find_variable_tempenv instead of
+ find_variable_internal directly
+
+builtins/setattr.def
+ - set_var_attribute: call find_variable_notempenv instead of
+ find_variable_internal directly
+ - show_name_attributes: call find_variable_tempenv instead of
+ find_variable_internal directly
+
+ 6/1
+ ---
+sig.c
+ - termsig_handler: don't try to save the shell history on a terminating
+ signal any more, since it just causes too many problems on Linux
+ systems using glibc and glibc malloc
+
+lib/readline/vi_mode.c
+ - rl_vi_change_to: change to correctly redo `cc', since `c' is not a vi
+ motion character. From Red Hat bug 813289
+ - rl_vi_delete_to: change to correctly redo `dd', since `d' is not a vi
+ motion character
+ - rl_vi_yank_to: change to correctly redo `yy', since `y' is not a vi
+ motion character
+
+ 6/4
+ ---
+lib/sh/mktime.c
+ - current versions of VMS do not need to include <stddef.h>. Fix from
+ John E. Malmberg <wb8tyw@qsl.net>
+
+ 6/5
+ ---
+lib/sh/eaccess.c
+ - sh_stat: instead of using a static buffer to do the DEV_FD_PREFIX
+ translation, use a dynamically-allocated buffer that we keep
+ resizing. Fixes potential security hole reported by David Leverton
+ <levertond@googlemail.com>
+
+ 6/5
+ ---
+braces.c
+ - expand_seqterm: check errno == ERANGE after calling strtoimax for
+ rhs and incr. Part of a set of fixes from Scott McMillan
+ <scotty.mcmillan@gmail.com>
+ - expand_seqterm: incr now of type `intmax_t', which changes
+ arguments to mkseq
+ - mkseq: a better fix for detecting overflow and underflow since it's
+ undefined in C and compilers `optimize' out overflow checks. Uses
+ ADDOVERFLOW and SUBOVERFLOW macros
+ - mkseq: use sh_imaxabs (new macro) instead of abs() for intmax_t
+ variables
+ - mkseq: don't allow incr to be converted to -INTMAX_MIN
+ - mkseq: make sure that strvec_create isn't called with a size argument
+ greater than INT_MAX, since it only takes an int
+
+ 6/6
+ ---
+braces.c
+ - mkseq: try and be smarter about not overallocating elements in
+ the return array if the increment is not 1 or -1
+
+ 6/8
+ ---
+bashline.c
+ - bash_directory_completion_hook: don't attempt spelling correction
+ on the directory name unless the direxpand option is set and we are
+ going to replace the directory name with the corrected one in the
+ readline line. Suggested by Linda Walsh <bash@tlinx.org>
+
+lib/sh/shquote.c
+ - sh_backslash_quote: now takes a third argument: flags. If non-zero,
+ tildes are not backslash-escaped. Have to handle both printf %q,
+ where they should be escaped, and filename completion, where they
+ should not when used as usernames
+
+externs.h
+ - sh_backslash_quote: declaration now takes a third argument
+
+builtins/printf.def
+ - printf_builtin: call sh_backslash_quote with 1 as third argument
+ so tildes get escaped
+
+{bashline,bracecomp}.c
+ - call sh_backslash_quote with 0 as third argument so tildes are not
+ escaped in completed words
+
+doc/bash.1
+ - add `coproc' to the list of reserved words. From a report by
+ Jens Schweikhardt <schweikh@schweikhardt.net>
+
+ 6/10
+ ----
+execute_cmd.c
+ - line_number_for_err_trap: now global, so parse_and_execute can save
+ and restore it with unwind-protect
+
+builtins/evalstring.c
+ - parse_prologue: save and restore line_number_for_err_trap along
+ with line_number
+ - restore_lastcom: new function, unwind-protect to restore
+ the_printed_command_except_trap
+ - parse_prologue: use restore_lastcom to save and restore the value
+ of the_printed_command_except_trap around calls to parse_and_execute
+ (eval/source/.)
+
+ 6/15
+ ----
+lib/readline/complete.c
+ - complete_fncmp: change filename comparison code to understand
+ multibyte characters, even when doing case-sensitive or case-mapping
+ comparisons. Fixes problem reported by Nikolay Shirokovskiy
+ <nshyrokovskiy@gmail.com>
+
+ 6/20
+ ----
+builtins/mapfile.def
+ - mapfile: move the line count increment and check for having read
+ the specified number of lines to the end of the loop to avoid
+ reading an additional line with zgetline. Fixes bug reported by
+ Dan Douglas <ormaaj@gmail.com>
+
+ 6/21
+ ----
+
+execute_cmd.c
+ - execute_pipeline: make sure `lastpipe_flag' is initialized to 0 on
+ all systems, since it's tested later in the function. Fixes bug
+ reported by John E. Malmberg <wb8tyw@qsl.net>
+
+ 6/22
+ ----
+mailcheck.c
+ - file_mod_date_changed: return 0 right away if mailstat() does not
+ return success. Fixes bug with using uninitialized values reported
+ by szymon.kalasz@uj.edu.pl
+
+builtins/set.def
+ - the `monitor' option is not available when the shell is compiled
+ without job control, since the underlying `m' flag is not available
+
+nojobs.c
+ - job_control: now declared as int variable, initialized to 0, never
+ modified
+
+jobs.h
+ - job_control: extern declaration no longer dependent on JOB_CONTROL
+
+execute_cmd.c
+ - execute_pipeline: made necessary changes so `lastpipe' shell option
+ is now available in all shells, even those compiled without
+ JOB_CONTROL defined
+
+ 6/23
+ ----
+lib/glob/glob.c
+ - glob_filename: check for interrupts before returning if glob_vector
+ returns NULL or an error. Bug reported by Serge van den Boom
+ <svdb@stack.nl>, fix from Andreas Schwab <schwab@linux-m68k.org>
+ - call run_pending_traps after each call to QUIT or test of
+ interrupt_state, like we do in mainline shell code
+ - glob_vector: don't call QUIT; in `if (lose)' code block; just free
+ memory, return NULL, and let callers deal with interrupt_state or
+ other signals and traps
+
+ 6/25
+ ----
+lib/readline/input.c
+ - rl_read_key: restructure the loop that calls the event hook a little,
+ so that the hook is called only after rl_gather_tyi returns no input,
+ and any pending input is returned first. This results in better
+ efficiency for processing pending input without calling the hook
+ on every input character as bash-4.1 did. From a report from
+ Max Horn <max@quendi.de>
+
+ 6/26
+ ----
+trap.c
+ - signal_is_pending: return TRUE if SIG argument has been received and
+ a trap is waiting to execute
+
+trap.h
+ - signal_is_pending: extern declaration
+
+lib/glob/glob.c
+ - glob_vector: check for pending SIGINT trap each time through the loop,
+ just like we check for interrupt_state or terminating_signal, and
+ set `lose = 1' so we clean up after ourselves and interrupt the
+ operation before running the trap. This may require a change later,
+ maybe call run_pending_traps and do that if run_pending_traps returns?
+
+variables.c
+ - sv_histtimefmt: set history_comment_character to default (`#') if
+ it's 0 when we're turning on history timestamps. The history code
+ uses the history comment character to prefix timestamps, and
+ leaving it at 0 effectively removes them from the history. From a
+ report to help-bash by Dennis Williamson <dennistwilliamson@gmail.com>
+
+ 6/27
+ ----
+lib/readline/signals.c
+ - rl_maybe_restore_sighandler: new function, sets handler for SIG to
+ HANDLER->sa_handler only if it's not SIG_IGN. Needs to be called
+ on same signals set using rl_maybe_set_sighandler, which does not
+ override an existing SIG_IGN handler (SIGALRM is ok since it does
+ the check inline; doesn't mess with SIGWINCH)
+
+ 6/30
+ ----
+variables.h
+ - additional defines for the new `nameref' variable attribute
+ (att_nameref): nameref_p, nameref_cell, var_setref
+
+variables.c
+ - find_variable_nameref: resolve SHELL_VAR V through chain of namerefs
+ - find_variable_last_nameref: resolve variable NAME until last in a
+ chain of possibly more than one nameref starting at shell_variables
+ - find_global_variable_last_nameref: resolve variable NAME until last
+ in a chain of possibly more than one nameref starting at
+ global_variables
+ - find_nameref_at_context: resolve SHELL_VAR V through chain of namerefs
+ in a specific variable context (usually a local variable hash table)
+ - find_variable_nameref_context: resolve SHELL_VAR V through chain of
+ namerefs following a chain of varible contexts
+ - find_variable_last_nameref_context: resolve SHELL_VAR V as in
+ find_variable_last_context, but return the final nameref instead of
+ what the final nameref resolves to
+ - find_variable_tempenv, find_variable_notempenv, find_global_variable,
+ find_shell_variable, find_variable: modified to follow namerefs
+ - find_global_variable_noref: look up a global variable without following
+ any namerefs
+ - find_variable_noref: look up a shell variable without following any
+ namerefs
+ - bind_variable_internal: modify to follow a chain of namerefs in the
+ global variables table; change to handle assignments to a nameref by
+ following nameref chain
+ - bind_variable: modify to follow chain of namerefs when binding to a
+ local variable
+ - unbind_variable: changes to unset nameref variables (unsets both
+ nameref and variable it resolves to)
+
+subst.c
+ - parameter_brace_expand_word: change to handle expanding nameref whose
+ value is x[n]
+ - parameter_brace_expand_indir: change to expand in ksh93-compatible
+ way if variable to be indirected is nameref and a simple (non-array)
+ expansion
+ - param_expand: change to expand $foo where foo is a nameref whose value
+ is x[n]
+
+execute_cmd.c
+ - execute_for_command: changes to implement ksh93 semantics when index
+ variable is a nameref
+
+builtins/setattr.def
+ - show_var_attributes: change to add `n' to flags list if att_nameref
+ is set
+
+builtins/set.def
+ - unset_builtin: changes to error messages to follow nameref variables
+
+builtins/declare.def
+ - document new -n option
+ - declare_internal: new `-n' and `+n' options
+ - declare_internal: handle declare -n var[=value] and
+ declare +n var[=value] for existing and non-existant variables.
+ Enforce restriction that nameref variables cannot be arrays.
+ Implement semi-peculiar ksh93 semantics for typeset +n ref=value
+
+ 7/5
+ ---
+variables.c
+ - unbind_variable: unset whatever a nameref resolves to, leaving the
+ nameref variable itself alone
+ - unbind_nameref: new function, unsets a nameref variable, not the
+ variable it references
+
+variables.h
+ - unbind_nameref: extern declaration
+
+builtins/set.def
+ - unset_builtin: modify to add -n option, which calls unbind_nameref
+ leaving unbind_variable for the usual case. This required slight
+ changes and additions to the test suite
+
+doc/{bash.1,bashref.texi}
+ - document namerefs and typeset/declare/local/unset -n
--- /dev/null
+Starting bash with the `--posix' command-line option or executing
+`set -o posix' while bash is running will cause bash to conform more
+closely to the Posix.2 standard by changing the behavior to match that
+specified by Posix.2 in areas where the bash default differs.
+
+The following list is what's changed when `posix mode' is in effect:
+
+1. When a command in the hash table no longer exists, bash will re-search
+ $PATH to find the new location. This is also available with
+ `shopt -s checkhash'.
+
+2. The >& redirection does not redirect stdout and stderr.
+
+3. The message printed by the job control code and builtins when a job
+ exits with a non-zero status is `Done(status)'.
+
+4. Reserved words may not be aliased.
+
+5. The Posix.2 PS1 and PS2 expansions of `!' -> history number and
+ `!!' -> `!' are enabled, and parameter expansion is performed on
+ the value regardless of the setting of the `promptvars' option.
+
+6. Interactive comments are enabled by default. (Note that bash has
+ them on by default anyway.)
+
+7. The Posix.2 startup files are executed ($ENV) rather than the normal
+ bash files.
+
+8. Tilde expansion is only performed on assignments preceding a command
+ name, rather than on all assignment statements on the line.
+
+9. The default history file is ~/.sh_history (default value of $HISTFILE).
+
+10. The output of `kill -l' prints all the signal names on a single line,
+ separated by spaces.
+
+11. Non-interactive shells exit if `file' in `. file' is not found.
+
+12. Redirection operators do not perform pathname expansion on the word
+ in the redirection unless the shell is interactive
+
+13. Function names must be valid shell identifiers. That is, they may not
+ contain characters other than letters, digits, and underscores, and
+ may not start with a digit. Declaring a function with an illegal name
+ causes a fatal syntax error in non-interactive shells.
+
+14. Posix.2 `special' builtins are found before shell functions during command
+ lookup.
+
+15. If a Posix.2 special builtin returns an error status, a non-interactive
+ shell exits. The fatal errors are those listed in the POSIX.2 standard,
+ and include things like passing incorrect options, redirection errors,
+ variable assignment errors for assignments preceding the command name,
+ and so on.
+
+16. The environment passed to executed commands is not sorted. Neither is
+ the output of `set'. This is not strictly Posix.2 behavior, but sh
+ does it this way. Ksh does not. It's not necessary to sort the
+ environment; no program should rely on it being sorted.
+
+17. If the `cd' builtin finds a directory to change to using $CDPATH, the
+ value it assigns to $PWD does not contain any symbolic links, as if
+ `cd -P' had been executed.
+
+18. A non-interactive shell exits with an error status if a variable
+ assignment error occurs when no command name follows the assignment
+ statements. A variable assignment error occurs, for example, when
+ trying to assign a value to a read-only variable.
+
+19. A non-interactive shell exits with an error status if the iteration
+ variable in a for statement or the selection variable in a select
+ statement is a read-only variable.
+
+20. Process substitution is not available.
+
+21. Assignment statements preceding POSIX.2 `special' builtins persist in
+ the shell environment after the builtin completes.
+
+There is other Posix.2 behavior that bash does not implement. Specifically:
+
+1. Assignment statements affect the execution environment of all builtins,
+ not just special ones.
--- /dev/null
+This file is set.def, from which is created set.c.
+It implements the "set" and "unset" builtins in Bash.
+
+Copyright (C) 1987, 1989, 1991 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 1, 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; see the file COPYING. If not, write to the Free Software
+Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+
+$PRODUCES set.c
+
+#include <stdio.h>
+#include "../shell.h"
+#include "../flags.h"
+
+#include "bashgetopt.h"
+
+extern int interactive;
+extern int noclobber, posixly_correct;
+#if defined (READLINE)
+extern int rl_editing_mode, no_line_editing;
+#endif /* READLINE */
+
+$BUILTIN set
+$FUNCTION set_builtin
+$SHORT_DOC set [--abefhkmnptuvxldBCHP] [-o option] [arg ...]
+ -a Mark variables which are modified or created for export.
+ -b Notify of job termination immediately.
+ -e Exit immediately if a command exits with a non-zero status.
+ -f Disable file name generation (globbing).
+ -h Locate and remember function commands as functions are
+ defined. Function commands are normally looked up when
+ the function is executed.
+ -i Force the shell to be an "interactive" one. Interactive shells
+ always read `~/.bashrc' on startup.
+ -k All keyword arguments are placed in the environment for a
+ command, not just those that precede the command name.
+ -m Job control is enabled.
+ -n Read commands but do not execute them.
+ -o option-name
+ Set the variable corresponding to option-name:
+ allexport same as -a
+ braceexpand same as -B
+#if defined (READLINE)
+ emacs use an emacs-style line editing interface
+#endif /* READLINE */
+ errexit same as -e
+ histexpand same as -H
+ ignoreeof the shell will not exit upon reading EOF
+ interactive-comments
+ allow comments to appear in interactive commands
+ monitor same as -m
+ noclobber disallow redirection to existing files
+ noexec same as -n
+ noglob same as -f
+ nohash same as -d
+ notify save as -b
+ nounset same as -u
+ physical same as -P
+ posix change the behavior of bash where the default
+ operation differs from the 1003.2 standard to
+ match the standard
+ privileged same as -p
+ verbose same as -v
+#if defined (READLINE)
+ vi use a vi-style line editing interface
+#endif /* READLINE */
+ xtrace same as -x
+ -p Turned on whenever the real and effective user ids do not match.
+ Disables processing of the $ENV file and importing of shell
+ functions. Turning this option off causes the effective uid and
+ gid to be set to the real uid and gid.
+ -t Exit after reading and executing one command.
+ -u Treat unset variables as an error when substituting.
+ -v Print shell input lines as they are read.
+ -x Print commands and their arguments as they are executed.
+ -l Save and restore the binding of the NAME in a FOR command.
+ -d Disable the hashing of commands that are looked up for execution.
+ Normally, commands are remembered in a hash table, and once
+ found, do not have to be looked up again.
+#if defined (BRACE_EXPANSION)
+ -B the shell will perform brace expansion
+#endif /* BRACE_EXPANSION */
+#if defined (BANG_HISTORY)
+ -H Enable ! style history substitution. This flag is on
+ by default.
+#endif /* BANG_HISTORY */
+ -C If set, disallow existing regular files to be overwritten
+ by redirection of output.
+ -P If set, do not follow symbolic links when executing commands
+ such as cd which change the current directory.
+
+Using + rather than - causes these flags to be turned off. The
+flags can also be used upon invocation of the shell. The current
+set of flags may be found in $-. The remaining n ARGs are positional
+parameters and are assigned, in order, to $1, $2, .. $n. If no
+ARGs are given, all shell variables are printed.
+$END
+
+/* An a-list used to match long options for set -o to the corresponding
+ option letter. */
+struct {
+ char *name;
+ int letter;
+} o_options[] = {
+ { "allexport", 'a' },
+#if defined (BRACE_EXPANSION)
+ { "braceexpand",'B' },
+#endif
+ { "errexit", 'e' },
+ { "histexpand", 'H' },
+ { "monitor", 'm' },
+ { "noexec", 'n' },
+ { "noglob", 'f' },
+ { "nohash", 'd' },
+#if defined (JOB_CONTROL)
+ { "notify", 'b' },
+#endif /* JOB_CONTROL */
+ {"nounset", 'u' },
+ {"physical", 'P' },
+ {"privileged", 'p' },
+ {"verbose", 'v' },
+ {"xtrace", 'x' },
+ {(char *)NULL, 0},
+};
+
+#define MINUS_O_FORMAT "%-15s\t%s\n"
+
+void
+list_minus_o_opts ()
+{
+ register int i;
+ char *on = "on", *off = "off";
+
+ printf (MINUS_O_FORMAT, "noclobber", (noclobber == 1) ? on : off);
+
+ if (find_variable ("ignoreeof") || find_variable ("IGNOREEOF"))
+ printf (MINUS_O_FORMAT, "ignoreeof", on);
+ else
+ printf (MINUS_O_FORMAT, "ignoreeof", off);
+
+ printf (MINUS_O_FORMAT, "interactive-comments",
+ interactive_comments ? on : off);
+
+ printf (MINUS_O_FORMAT, "posix", posixly_correct ? on : off);
+
+#if defined (READLINE)
+ if (no_line_editing)
+ {
+ printf (MINUS_O_FORMAT, "emacs", off);
+ printf (MINUS_O_FORMAT, "vi", off);
+ }
+ else
+ {
+ /* Magic. This code `knows' how readline handles rl_editing_mode. */
+ printf (MINUS_O_FORMAT, "emacs", (rl_editing_mode == 1) ? on : off);
+ printf (MINUS_O_FORMAT, "vi", (rl_editing_mode == 0) ? on : off);
+ }
+#endif /* READLINE */
+
+ for (i = 0; o_options[i].name; i++)
+ {
+ int *on_or_off, zero = 0;
+
+ on_or_off = find_flag (o_options[i].letter);
+ if (on_or_off == FLAG_UNKNOWN)
+ on_or_off = &zero;
+ printf (MINUS_O_FORMAT, o_options[i].name, (*on_or_off == 1) ? on : off);
+ }
+}
+
+set_minus_o_option (on_or_off, option_name)
+ int on_or_off;
+ char *option_name;
+{
+ int option_char = -1;
+
+ if (STREQ (option_name, "noclobber"))
+ {
+ if (on_or_off == FLAG_ON)
+ bind_variable ("noclobber", "");
+ else
+ unbind_variable ("noclobber");
+ stupidly_hack_special_variables ("noclobber");
+ }
+ else if (STREQ (option_name, "ignoreeof"))
+ {
+ unbind_variable ("ignoreeof");
+ unbind_variable ("IGNOREEOF");
+ if (on_or_off == FLAG_ON)
+ bind_variable ("IGNOREEOF", "10");
+ stupidly_hack_special_variables ("IGNOREEOF");
+ }
+
+#if defined (READLINE)
+ else if ((STREQ (option_name, "emacs")) || (STREQ (option_name, "vi")))
+ {
+ if (on_or_off == FLAG_ON)
+ {
+ rl_variable_bind ("editing-mode", option_name);
+
+ if (interactive)
+ with_input_from_stdin ();
+ no_line_editing = 0;
+ }
+ else
+ {
+ int isemacs = (rl_editing_mode == 1);
+ if ((isemacs && STREQ (option_name, "emacs")) ||
+ (!isemacs && STREQ (option_name, "vi")))
+ {
+ if (interactive)
+ with_input_from_stream (stdin, "stdin");
+ no_line_editing = 1;
+ }
+ else
+ builtin_error ("not in %s editing mode", option_name);
+ }
+ }
+#endif /* READLINE */
+ else if (STREQ (option_name, "interactive-comments"))
+ interactive_comments = (on_or_off == FLAG_ON);
+ else if (STREQ (option_name, "posix"))
+ {
+ posixly_correct = (on_or_off == FLAG_ON);
+ unbind_variable ("POSIXLY_CORRECT");
+ unbind_variable ("POSIX_PEDANTIC");
+ if (on_or_off == FLAG_ON)
+ {
+ bind_variable ("POSIXLY_CORRECT", "");
+ stupidly_hack_special_variables ("POSIXLY_CORRECT");
+ }
+ }
+ else
+ {
+ register int i;
+ for (i = 0; o_options[i].name; i++)
+ {
+ if (STREQ (option_name, o_options[i].name))
+ {
+ option_char = o_options[i].letter;
+ break;
+ }
+ }
+ if (option_char == -1)
+ {
+ builtin_error ("%s: unknown option name", option_name);
+ return (EXECUTION_FAILURE);
+ }
+ if (change_flag (option_char, on_or_off) == FLAG_ERROR)
+ {
+ bad_option (option_name);
+ return (EXECUTION_FAILURE);
+ }
+ }
+ return (EXECUTION_SUCCESS);
+}
+
+/* Set some flags from the word values in the input list. If LIST is empty,
+ then print out the values of the variables instead. If LIST contains
+ non-flags, then set $1 - $9 to the successive words of LIST. */
+set_builtin (list)
+ WORD_LIST *list;
+{
+ int on_or_off, flag_name, force_assignment = 0;
+
+ if (!list)
+ {
+ SHELL_VAR **vars;
+
+ vars = all_shell_variables ();
+ if (vars)
+ {
+ print_var_list (vars);
+ free (vars);
+ }
+
+ vars = all_shell_functions ();
+ if (vars)
+ {
+ print_var_list (vars);
+ free (vars);
+ }
+
+ return (EXECUTION_SUCCESS);
+ }
+
+ /* Check validity of flag arguments. */
+ if (*list->word->word == '-' || *list->word->word == '+')
+ {
+ register char *arg;
+ WORD_LIST *save_list = list;
+
+ while (list && (arg = list->word->word))
+ {
+ char c;
+
+ if (arg[0] != '-' && arg[0] != '+')
+ break;
+
+ /* `-' or `--' signifies end of flag arguments. */
+ if (arg[0] == '-' &&
+ (!arg[1] || (arg[1] == '-' && !arg[2])))
+ break;
+
+ while (c = *++arg)
+ {
+ if (find_flag (c) == FLAG_UNKNOWN && c != 'o')
+ {
+ char s[2];
+ s[0] = c; s[1] = '\0';
+ bad_option (s);
+ if (c == '?')
+ builtin_usage ();
+ return (c == '?' ? EXECUTION_SUCCESS : EXECUTION_FAILURE);
+ }
+ }
+ list = list->next;
+ }
+ list = save_list;
+ }
+
+ /* Do the set command. While the list consists of words starting with
+ '-' or '+' treat them as flags, otherwise, start assigning them to
+ $1 ... $n. */
+ while (list)
+ {
+ char *string = list->word->word;
+
+ /* If the argument is `--' or `-' then signal the end of the list
+ and remember the remaining arguments. */
+ if (string[0] == '-' && (!string[1] || (string[1] == '-' && !string[2])))
+ {
+ list = list->next;
+
+ /* `set --' unsets the positional parameters. */
+ if (string[1] == '-')
+ force_assignment = 1;
+
+ /* Until told differently, the old shell behaviour of
+ `set - [arg ...]' being equivalent to `set +xv [arg ...]'
+ stands. Posix.2 says the behaviour is marked as obsolescent. */
+ else
+ {
+ change_flag ('x', '+');
+ change_flag ('v', '+');
+ }
+
+ break;
+ }
+
+ if ((on_or_off = *string) &&
+ (on_or_off == '-' || on_or_off == '+'))
+ {
+ int i = 1;
+ while (flag_name = string[i++])
+ {
+ if (flag_name == '?')
+ {
+ builtin_usage ();
+ return (EXECUTION_SUCCESS);
+ }
+ else if (flag_name == 'o') /* -+o option-name */
+ {
+ char *option_name;
+ WORD_LIST *opt;
+
+ opt = list->next;
+
+ if (!opt)
+ {
+ list_minus_o_opts ();
+ continue;
+ }
+
+ option_name = opt->word->word;
+
+ if (!option_name || !*option_name || (*option_name == '-'))
+ {
+ list_minus_o_opts ();
+ continue;
+ }
+ list = list->next; /* Skip over option name. */
+
+ if (set_minus_o_option (on_or_off, option_name) != EXECUTION_SUCCESS)
+ return (EXECUTION_FAILURE);
+ }
+ else
+ {
+ if (change_flag (flag_name, on_or_off) == FLAG_ERROR)
+ {
+ char opt[3];
+ opt[0] = on_or_off;
+ opt[1] = flag_name;
+ opt[2] = '\0';
+ bad_option (opt);
+ builtin_usage ();
+ return (EXECUTION_FAILURE);
+ }
+ }
+ }
+ }
+ else
+ {
+ break;
+ }
+ list = list->next;
+ }
+
+ /* Assigning $1 ... $n */
+ if (list || force_assignment)
+ remember_args (list, 1);
+ return (EXECUTION_SUCCESS);
+}
+
+$BUILTIN unset
+$FUNCTION unset_builtin
+$SHORT_DOC unset [-f] [-v] [name ...]
+For each NAME, remove the corresponding variable or function. Given
+the `-v', unset will only act on variables. Given the `-f' flag,
+unset will only act on functions. With neither flag, unset first
+tries to unset a variable, and if that fails, then tries to unset a
+function. Some variables (such as PATH and IFS) cannot be unset; also
+see readonly.
+$END
+
+#define NEXT_VARIABLE() any_failed++; list = list->next; continue;
+
+unset_builtin (list)
+ WORD_LIST *list;
+{
+ int unset_function, unset_variable, unset_array, opt, any_failed;
+ char *name;
+
+ unset_function = unset_variable = unset_array = any_failed = 0;
+
+ reset_internal_getopt ();
+ while ((opt = internal_getopt (list, "fv")) != -1)
+ {
+ switch (opt)
+ {
+ case 'f':
+ unset_function = 1;
+ break;
+ case 'v':
+ unset_variable = 1;
+ break;
+ default:
+ builtin_usage ();
+ return (EXECUTION_FAILURE);
+ }
+ }
+
+ list = loptend;
+
+ if (unset_function && unset_variable)
+ {
+ builtin_error ("cannot simultaneously unset a function and a variable");
+ return (EXECUTION_FAILURE);
+ }
+
+ while (list)
+ {
+ SHELL_VAR *var;
+ int tem;
+#if defined (ARRAY_VARS)
+ char *t;
+#endif
+
+ name = list->word->word;
+
+#if defined (ARRAY_VARS)
+ if (!unset_function && valid_array_reference (name))
+ {
+ t = strchr (name, '[');
+ *t++ = '\0';
+ unset_array++;
+ }
+#endif
+
+ var = unset_function ? find_function (name) : find_variable (name);
+
+ if (var && !unset_function && non_unsettable_p (var))
+ {
+ builtin_error ("%s: cannot unset", name);
+ NEXT_VARIABLE ();
+ }
+
+ /* Posix.2 says that unsetting readonly variables is an error. */
+ if (var && readonly_p (var))
+ {
+ builtin_error ("%s: cannot unset: readonly %s",
+ name, unset_function ? "function" : "variable");
+ NEXT_VARIABLE ();
+ }
+
+ /* Unless the -f option is supplied, the name refers to a variable. */
+#if defined (ARRAY_VARS)
+ if (var && unset_array)
+ {
+ if (array_p (var) == 0)
+ {
+ builtin_error ("%s: not an array variable", name);
+ NEXT_VARIABLE ();
+ }
+ else
+ tem = unbind_array_element (var, t);
+ }
+ else
+#endif /* ARRAY_VARS */
+ tem = makunbound (name, unset_function ? shell_functions : shell_variables);
+
+ /* This is what Posix.2 draft 11+ says. ``If neither -f nor -v
+ is specified, the name refers to a variable; if a variable by
+ that name does not exist, a function by that name, if any,
+ shall be unset.'' */
+ if ((tem == -1) && !unset_function && !unset_variable)
+ tem = makunbound (name, shell_functions);
+
+ if (tem == -1)
+ any_failed++;
+ else if (!unset_function)
+ stupidly_hack_special_variables (name);
+
+ list = list->next;
+ }
+
+ if (any_failed)
+ return (EXECUTION_FAILURE);
+ else
+ return (EXECUTION_SUCCESS);
+}
--- /dev/null
+/* unwind_prot.h - Macros and functions for hacking unwind protection. */
+
+/* Copyright (C) 1993 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 2, 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; see the file COPYING. If not, write to the Free Software
+ Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+#if !defined (_UNWIND_PROT_H)
+#define _UNWIND_PROT_H
+
+/* Run a function without interrupts. */
+extern void begin_unwind_frame ();
+extern void discard_unwind_frame ();
+extern void run_unwind_frame ();
+extern void add_unwind_protect ();
+extern void remove_unwind_protect ();
+extern void run_unwind_protects ();
+extern void unwind_protect_var ();
+
+/* Define for people who like their code to look a certain way. */
+#define end_unwind_frame()
+
+/* How to protect an integer. */
+#define unwind_protect_int(X) unwind_protect_var (&(X), (char *)(X), sizeof (int))
+
+/* How to protect a pointer to a string. */
+#define unwind_protect_string(X) \
+ unwind_protect_var ((int *)&(X), (X), sizeof (char *))
+
+/* How to protect any old pointer. */
+#define unwind_protect_pointer(X) unwind_protect_string (X)
+
+/* How to protect the contents of a jmp_buf. */
+#define unwind_protect_jmp_buf(X) \
+ unwind_protect_var ((int *)(X), (char *)(X), sizeof (procenv_t))
+
+#endif /* _UNWIND_PROT_H */
--- /dev/null
+# This file is a shell script that caches the results of configure
+# tests for CYGWIN32 so they don't need to be done when cross-compiling.
+
+# AC_FUNC_GETPGRP should also define GETPGRP_VOID
+ac_cv_func_getpgrp_void=${ac_cv_func_getpgrp_void='yes'}
+# AC_FUNC_SETVBUF_REVERSED should not define anything else
+ac_cv_func_setvbuf_reversed=${ac_cv_func_setvbuf_reversed='no'}
+# on CYGWIN32, system calls do not restart
+ac_cv_sys_restartable_syscalls=${ac_cv_sys_restartable_syscalls='no'}
+bash_cv_sys_restartable_syscalls=${bash_cv_sys_restartable_syscalls='no'}
+
+# these may be necessary, but they are currently commented out
+#ac_cv_c_bigendian=${ac_cv_c_bigendian='no'}
+ac_cv_sizeof_char_p=${ac_cv_sizeof_char_p='4'}
+ac_cv_sizeof_int=${ac_cv_sizeof_int='4'}
+ac_cv_sizeof_long=${ac_cv_sizeof_long='4'}
+ac_cv_sizeof_double=${ac_cv_sizeof_double='8'}
+
+bash_cv_dup2_broken=${bash_cv_dup2_broken='no'}
+bash_cv_pgrp_pipe=${bash_cv_pgrp_pipe='no'}
+bash_cv_type_rlimit=${bash_cv_type_rlimit='long'}
+bash_cv_decl_under_sys_siglist=${bash_cv_decl_under_sys_siglist='no'}
+bash_cv_under_sys_siglist=${bash_cv_under_sys_siglist='no'}
+bash_cv_sys_siglist=${bash_cv_sys_siglist='no'}
+bash_cv_opendir_not_robust=${bash_cv_opendir_not_robust='no'}
+bash_cv_getenv_redef=${bash_cv_getenv_redef='yes'}
+bash_cv_printf_declared=${bash_cv_printf_declared='yes'}
+bash_cv_ulimit_maxfds=${bash_cv_ulimit_maxfds='no'}
+bash_cv_getcwd_calls_popen=${bash_cv_getcwd_calls_popen='no'}
+bash_cv_must_reinstall_sighandlers=${bash_cv_must_reinstall_sighandlers='no'}
+bash_cv_job_control_missing=${bash_cv_job_control_missing='present'}
+bash_cv_sys_named_pipes=${bash_cv_sys_named_pipes='missing'}
+bash_cv_func_sigsetjmp=${bash_cv_func_sigsetjmp='missing'}
+bash_cv_mail_dir=${bash_cv_mail_dir='unknown'}
+bash_cv_func_strcoll_broken=${bash_cv_func_strcoll_broken='no'}
+
+bash_cv_type_int32_t=${bash_cv_type_int32_t='int'}
+bash_cv_type_u_int32_t=${bash_cv_type_u_int32_t='int'}
+
+ac_cv_type_bits64_t=${ac_cv_type_bits64_t='no'}
+
+# end of cross-build/cygwin32.cache
--- /dev/null
+This is the Bash FAQ, version 3.24, for Bash version 2.05b.
+
+This document contains a set of frequently-asked questions concerning
+Bash, the GNU Bourne-Again Shell. Bash is a freely-available command
+interpreter with advanced features for both interactive use and shell
+programming.
+
+Another good source of basic information about shells is the collection
+of FAQ articles periodically posted to comp.unix.shell.
+
+Questions and comments concerning this document should be sent to
+chet@po.cwru.edu.
+
+This document is available for anonymous FTP with the URL
+
+ftp://ftp.cwru.edu/pub/bash/FAQ
+
+The Bash home page is http://cnswww.cns.cwru.edu/~chet/bash/bashtop.html
+
+----------
+Contents:
+
+Section A: The Basics
+
+A1) What is it?
+A2) What's the latest version?
+A3) Where can I get it?
+A4) On what machines will bash run?
+A5) Will bash run on operating systems other than Unix?
+A6) How can I build bash with gcc?
+A7) How can I make bash my login shell?
+A8) I just changed my login shell to bash, and now I can't FTP into my
+ machine. Why not?
+A9) What's the `POSIX 1003.2 standard'?
+A10) What is the bash `posix mode'?
+
+Section B: The latest version
+
+B1) What's new in version 2.05b?
+B2) Are there any user-visible incompatibilities between bash-2.05b and
+ bash-1.14.7?
+
+Section C: Differences from other Unix shells
+
+C1) How does bash differ from sh, the Bourne shell?
+C2) How does bash differ from the Korn shell, version ksh88?
+C3) Which new features in ksh-93 are not in bash, and which are?
+
+Section D: Why does bash do some things differently than other Unix shells?
+
+D1) Why does bash run a different version of `command' than
+ `which command' says it will?
+D2) Why doesn't bash treat brace expansions exactly like csh?
+D3) Why doesn't bash have csh variable modifiers?
+D4) How can I make my csh aliases work when I convert to bash?
+D5) How can I pipe standard output and standard error from one command to
+ another, like csh does with `|&'?
+D6) Now that I've converted from ksh to bash, are there equivalents to
+ ksh features like autoloaded functions and the `whence' command?
+
+Section E: Why does bash do certain things the way it does?
+
+E1) Why is the bash builtin `test' slightly different from /bin/test?
+E2) Why does bash sometimes say `Broken pipe'?
+E3) When I have terminal escape sequences in my prompt, why does bash
+ wrap lines at the wrong column?
+E4) If I pipe the output of a command into `read variable', why doesn't
+ the output show up in $variable when the read command finishes?
+E5) I have a bunch of shell scripts that use backslash-escaped characters
+ in arguments to `echo'. Bash doesn't interpret these characters. Why
+ not, and how can I make it understand them?
+E6) Why doesn't a while or for loop get suspended when I type ^Z?
+E7) What about empty for loops in Makefiles?
+E8) Why does the arithmetic evaluation code complain about `08'?
+E9) Why does the pattern matching expression [A-Z]* match files beginning
+ with every letter except `z'?
+E10) Why does `cd //' leave $PWD as `//'?
+E11) If I resize my xterm while another program is running, why doesn't bash
+ notice the change?
+
+Section F: Things to watch out for on certain Unix versions
+
+F1) Why can't I use command line editing in my `cmdtool'?
+F2) I built bash on Solaris 2. Why do globbing expansions and filename
+ completion chop off the first few characters of each filename?
+F3) Why does bash dump core after I interrupt username completion or
+ `~user' tilde expansion on a machine running NIS?
+F4) I'm running SVR4.2. Why is the line erased every time I type `@'?
+F5) Why does bash report syntax errors when my C News scripts use a
+ redirection before a subshell command?
+F6) Why can't I use vi-mode editing on Red Hat Linux 6.1?
+F7) Why do bash-2.05a and bash-2.05b fail to compile `printf.def' on
+ HP/UX 11.x?
+
+Section G: How can I get bash to do certain common things?
+
+G1) How can I get bash to read and display eight-bit characters?
+G2) How do I write a function `x' to replace builtin command `x', but
+ still invoke the command from within the function?
+G3) How can I find the value of a shell variable whose name is the value
+ of another shell variable?
+G4) How can I make the bash `time' reserved word print timing output that
+ looks like the output from my system's /usr/bin/time?
+G5) How do I get the current directory into my prompt?
+G6) How can I rename "*.foo" to "*.bar"?
+G7) How can I translate a filename from uppercase to lowercase?
+G8) How can I write a filename expansion (globbing) pattern that will match
+ all files in the current directory except "." and ".."?
+
+Section H: Where do I go from here?
+
+H1) How do I report bugs in bash, and where should I look for fixes and
+ advice?
+H2) What kind of bash documentation is there?
+H3) What's coming in future versions?
+H4) What's on the bash `wish list'?
+H5) When will the next release appear?
+
+----------
+Section A: The Basics
+
+A1) What is it?
+
+Bash is a Unix command interpreter (shell). It is an implementation of
+the Posix 1003.2 shell standard, and resembles the Korn and System V
+shells.
+
+Bash contains a number of enhancements over those shells, both
+for interactive use and shell programming. Features geared
+toward interactive use include command line editing, command
+history, job control, aliases, and prompt expansion. Programming
+features include additional variable expansions, shell
+arithmetic, and a number of variables and options to control
+shell behavior.
+
+Bash was originally written by Brian Fox of the Free Software
+Foundation. The current developer and maintainer is Chet Ramey
+of Case Western Reserve University.
+
+A2) What's the latest version?
+
+The latest version is 2.05b, first made available on Wednesday, 17
+July, 2002.
+
+A3) Where can I get it?
+
+Bash is the GNU project's shell, and so is available from the
+master GNU archive site, ftp.gnu.org, and its mirrors. The
+latest version is also available for FTP from ftp.cwru.edu.
+The following URLs tell how to get version 2.05b:
+
+ftp://ftp.gnu.org/pub/gnu/bash/bash-2.05b.tar.gz
+ftp://ftp.cwru.edu/pub/bash/bash-2.05b.tar.gz
+
+Formatted versions of the documentation are available with the URLs:
+
+ftp://ftp.gnu.org/pub/gnu/bash/bash-doc-2.05b.tar.gz
+ftp://ftp.cwru.edu/pub/bash/bash-doc-2.05b.tar.gz
+
+A4) On what machines will bash run?
+
+Bash has been ported to nearly every version of UNIX. All you
+should have to do to build it on a machine for which a port
+exists is to type `configure' and then `make'. The build process
+will attempt to discover the version of UNIX you have and tailor
+itself accordingly, using a script created by GNU autoconf.
+
+More information appears in the file `INSTALL' in the distribution.
+
+The Bash web page (http://cnswww.cns.cwru.edu/~chet/bash/bashtop.html)
+explains how to obtain binary versions of bash for most of the major
+commercial Unix systems.
+
+A5) Will bash run on operating systems other than Unix?
+
+Configuration specifics for Unix-like systems such as QNX and
+LynxOS are included in the distribution. Bash-2.05 and later
+versions should compile and run on Minix 2.0 (patches were
+contributed), but I don't believe anyone has built bash-2.x on
+earlier Minix versions yet.
+
+Bash has been ported to versions of Windows implementing the Win32
+programming interface. This includes Windows 95 and Windows NT.
+The port was done by Cygnus Solutions as part of their CYGWIN
+project. For more information about the project, look at the URLs
+
+http://www.cygwin.com/
+http://sourceware.cygnus.com/cygwin
+
+Cygnus originally ported bash-1.14.7, and that port was part of their
+early GNU-Win32 (the original name) releases. Cygnus has also done a
+port of bash-2.05 to the CYGWIN environment, and it is available as
+part of their current release.
+
+Bash-2.05b should require no local Cygnus changes to build and run under
+CYGWIN.
+
+The Cygnus port works only on Intel machines. There is a port of bash
+(I don't know which version) to the alpha/NT environment available from
+
+ftp://ftp.gnustep.org//pub/win32/bash-alpha-nt-1.01.tar.gz
+
+DJ Delorie has a port of bash-2.x which runs under MS-DOS, as part
+of the DJGPP project. For more information on the project, see
+
+http://www.delorie.com/djgpp/
+
+I have been told that the original DJGPP port was done by Daisuke Aoyama.
+
+Mark Elbrecht <snowball3@bigfoot.com> has sent me notice that bash-2.04
+is available for DJGPP V2. The files are available as:
+
+ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/bsh204b.zip binary
+ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/bsh204d.zip documentation
+ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/bsh204s.zip source
+
+Mark has begun to work with bash-2.05, but I don't know the status.
+
+Ports of bash-1.12 and bash-2.0 are available for OS/2 from
+
+ftp://hobbes.nmsu.edu/pub/os2/util/shell/bash_112.zip
+ftp://hobbes.nmsu.edu/pub/os2/util/shell/bash-2.0(253).zip
+
+I haven't looked at either, but the second appears to be a binary-only
+distribution. Beware.
+
+I have received word that Bash (I'm not sure which version, but I
+believe that it's at least bash-2.02.1) is the standard shell on
+BeOS.
+
+A6) How can I build bash with gcc?
+
+Bash configures to use gcc by default if it is available. Read the
+file INSTALL in the distribution for more information.
+
+A7) How can I make bash my login shell?
+
+Some machines let you use `chsh' to change your login shell. Other
+systems use `passwd -s' or `passwd -e'. If one of these works for
+you, that's all you need. Note that many systems require the full
+pathname to a shell to appear in /etc/shells before you can make it
+your login shell. For this, you may need the assistance of your
+friendly local system administrator.
+
+If you cannot do this, you can still use bash as your login shell, but
+you need to perform some tricks. The basic idea is to add a command
+to your login shell's startup file to replace your login shell with
+bash.
+
+For example, if your login shell is csh or tcsh, and you have installed
+bash in /usr/gnu/bin/bash, add the following line to ~/.login:
+
+ if ( -f /usr/gnu/bin/bash ) exec /usr/gnu/bin/bash --login
+
+(the `--login' tells bash that it is a login shell).
+
+It's not a good idea to put this command into ~/.cshrc, because every
+csh you run without the `-f' option, even ones started to run csh scripts,
+reads that file. If you must put the command in ~/.cshrc, use something
+like
+
+ if ( $?prompt ) exec /usr/gnu/bin/bash --login
+
+to ensure that bash is exec'd only when the csh is interactive.
+
+If your login shell is sh or ksh, you have to do two things.
+
+First, create an empty file in your home directory named `.bash_profile'.
+The existence of this file will prevent the exec'd bash from trying to
+read ~/.profile, and re-execing itself over and over again. ~/.bash_profile
+is the first file bash tries to read initialization commands from when
+it is invoked as a login shell.
+
+Next, add a line similar to the above to ~/.profile:
+
+ [ -f /usr/gnu/bin/bash ] && [ -x /usr/gnu/bin/bash ] && \
+ exec /usr/gnu/bin/bash --login
+
+This will cause login shells to replace themselves with bash running as
+a login shell. Once you have this working, you can copy your initialization
+code from ~/.profile to ~/.bash_profile.
+
+I have received word that the recipe supplied above is insufficient for
+machines running CDE. CDE has a maze of twisty little startup files, all
+slightly different.
+
+If you cannot change your login shell in the password file to bash, you
+will have to (apparently) live with CDE using the shell in the password
+file to run its startup scripts. If you have changed your shell to bash,
+there is code in the CDE startup files (on Solaris, at least) that attempts
+to do the right thing. It is, however, often broken, and may require that
+you use the $BASH_ENV trick described below.
+
+`dtterm' claims to use $SHELL as the default program to start, so if you
+can change $SHELL in the CDE startup files, you should be able to use bash
+in your terminal windows.
+
+Setting DTSOURCEPROFILE in ~/.dtprofile will cause the `Xsession' program
+to read your login shell's startup files. You may be able to use bash for
+the rest of the CDE programs by setting SHELL to bash in ~/.dtprofile as
+well, but I have not tried this.
+
+You can use the above `exec' recipe to start bash when not logging in with
+CDE by testing the value of the DT variable:
+
+ if [ -n "$DT" ]; then
+ [ -f /usr/gnu/bin/bash ] && exec /usr/gnu/bin/bash --login
+ fi
+
+If CDE starts its shells non-interactively during login, the login shell
+startup files (~/.profile, ~/.bash_profile) will not be sourced at login.
+To get around this problem, append a line similar to the following to your
+~/.dtprofile:
+
+ BASH_ENV=${HOME}/.bash_profile ; export BASH_ENV
+
+and add the following line to the beginning of ~/.bash_profile:
+
+ unset BASH_ENV
+
+A8) I just changed my login shell to bash, and now I can't FTP into my
+ machine. Why not?
+
+You must add the full pathname to bash to the file /etc/shells. As
+noted in the answer to the previous question, many systems require
+this before you can make bash your login shell.
+
+Most versions of ftpd use this file to prohibit `special' users
+such as `uucp' and `news' from using FTP.
+
+A9) What's the `POSIX 1003.2 standard'?
+
+POSIX is a name originally coined by Richard Stallman for a
+family of open system standards based on UNIX. There are a
+number of aspects of UNIX under consideration for
+standardization, from the basic system services at the system
+call and C library level to applications and tools to system
+administration and management. Each area of standardization is
+assigned to a working group in the 1003 series.
+
+The POSIX Shell and Utilities standard has been developed by IEEE
+Working Group 1003.2 (POSIX.2). It concentrates on the command
+interpreter interface and utility programs commonly executed from
+the command line or by other programs. An initial version of the
+standard has been approved and published by the IEEE, and work is
+currently underway to update it.
+
+Bash is concerned with the aspects of the shell's behavior
+defined by POSIX.2. The shell command language has of course
+been standardized, including the basic flow control and program
+execution constructs, I/O redirection and pipelining, argument
+handling, variable expansion, and quoting.
+
+The `special' builtins, which must be implemented as part of the
+shell to provide the desired functionality, are specified as
+being part of the shell; examples of these are `eval' and
+`export'. Other utilities appear in the sections of POSIX.2 not
+devoted to the shell which are commonly (and in some cases must
+be) implemented as builtin commands, such as `read' and `test'.
+POSIX.2 also specifies aspects of the shell's interactive
+behavior as part of the UPE, including job control and command
+line editing. Only vi-style line editing commands have been
+standardized; emacs editing commands were left out due to
+objections.
+
+The Open Group has made an older version of its Single Unix
+Specification (version 2), which is very similar to POSIX.2,
+available on the web at
+
+http://www.opengroup.org/onlinepubs/007908799/
+
+The Single Unix Specification, version 3, is available on the web at
+
+http://www.opengroup.org/onlinepubs/007904975/
+
+A10) What is the bash `posix mode'?
+
+Although bash is an implementation of the POSIX.2 shell
+specification, there are areas where the bash default behavior
+differs from that spec. The bash `posix mode' changes the bash
+behavior in these areas so that it obeys the spec more closely.
+
+Posix mode is entered by starting bash with the --posix or
+'-o posix' option or executing `set -o posix' after bash is running.
+
+The specific aspects of bash which change when posix mode is
+active are listed in the file POSIX in the bash distribution.
+They are also listed in a section in the Bash Reference Manual
+(from which that file is generated).
+
+Section B: The latest version
+
+B1) What's new in version 2.05b?
+
+The raison d'etre for bash-2.05b is to make a second intermediate
+release containing the first of the new features to be available
+in bash-3.0 and get feedback on those features before proceeding.
+The major new feature is multibyte character support in both Bash
+and Readline.
+
+Bash-2.05b contains the following new features (see the manual page for
+complete descriptions and the CHANGES and NEWS files in the bash-2.05b
+distribution):
+
+o support for multibyte characters has been added to both bash and readline
+
+o the DEBUG trap is now run *before* simple commands, ((...)) commands,
+ [[...]] conditional commands, and for ((...)) loops
+
+o the shell now performs arithmetic in the largest integer size the machine
+ supports (intmax_t)
+
+o there is a new \D{...} prompt expansion; passes the `...' to strftime(3)
+ and inserts the result into the expanded prompt
+
+o there is a new `here-string' redirection operator: <<< word
+
+o when displaying variables, function attributes and definitions are shown
+ separately, allowing them to be re-used as input (attempting to re-use
+ the old output would result in syntax errors).
+
+o `read' has a new `-u fd' option to read from a specified file descriptor
+
+o the bash debugger in examples/bashdb has been modified to work with the
+ new DEBUG trap semantics, the command set has been made more gdb-like,
+ and the changes to $LINENO make debugging functions work better
+
+o the expansion of $LINENO inside a shell function is only relative to the
+ function start if the shell is interactive -- if the shell is running a
+ script, $LINENO expands to the line number in the script. This is as
+ POSIX-2001 requires
+
+
+A short feature history dating from Bash-2.0:
+
+Bash-2.05a introduced the following new features:
+
+o The `printf' builtin has undergone major work
+
+o There is a new read-only `shopt' option: login_shell, which is set by
+ login shells and unset otherwise
+
+o New `\A' prompt string escape sequence; expanding to time in 24-hour
+ HH:MM format
+
+o New `-A group/-g' option to complete and compgen; goes group name
+ completion
+
+o New [+-]O invocation option to set and unset `shopt' options at startup
+
+o ksh-like `ERR' trap
+
+o `for' loops now allow empty word lists after the `in' reserved word
+
+o new `hard' and `soft' arguments for the `ulimit' builtin
+
+o Readline can be configured to place the user at the same point on the line
+ when retrieving commands from the history list
+
+o Readline can be configured to skip `hidden' files (filenames with a leading
+ `.' on Unix) when performing completion
+
+Bash-2.05 introduced the following new features:
+
+o This version has once again reverted to using locales and strcoll(3) when
+ processing pattern matching bracket expressions, as POSIX requires.
+o Added a new `--init-file' invocation argument as a synonym for `--rcfile',
+ per the new GNU coding standards.
+o The /dev/tcp and /dev/udp redirections now accept service names as well as
+ port numbers.
+o `complete' and `compgen' now take a `-o value' option, which controls some
+ of the aspects of that compspec. Valid values are:
+
+ default - perform bash default completion if programmable
+ completion produces no matches
+ dirnames - perform directory name completion if programmable
+ completion produces no matches
+ filenames - tell readline that the compspec produces filenames,
+ so it can do things like append slashes to
+ directory names and suppress trailing spaces
+o A new loadable builtin, realpath, which canonicalizes and expands symlinks
+ in pathname arguments.
+o When `set' is called without options, it prints function defintions in a
+ way that allows them to be reused as input. This affects `declare' and
+ `declare -p' as well. This only happens when the shell is not in POSIX
+ mode, since POSIX.2 forbids this behavior.
+
+Bash-2.04 introduced the following new features:
+
+o Programmable word completion with the new `complete' and `compgen' builtins;
+ examples are provided in examples/complete/complete-examples
+o `history' has a new `-d' option to delete a history entry
+o `bind' has a new `-x' option to bind key sequences to shell commands
+o The prompt expansion code has new `\j' and `\l' escape sequences
+o The `no_empty_cmd_completion' shell option, if enabled, inhibits
+ command completion when TAB is typed on an empty line
+o `help' has a new `-s' option to print a usage synopsis
+o New arithmetic operators: var++, var--, ++var, --var, expr1,expr2 (comma)
+o New ksh93-style arithmetic for command:
+ for ((expr1 ; expr2; expr3 )); do list; done
+o `read' has new options: `-t', `-n', `-d', `-s'
+o The redirection code handles several filenames specially: /dev/fd/N,
+ /dev/stdin, /dev/stdout, /dev/stderr
+o The redirection code now recognizes /dev/tcp/HOST/PORT and
+ /dev/udp/HOST/PORT and tries to open a TCP or UDP socket, respectively,
+ to the specified port on the specified host
+o The ${!prefix*} expansion has been implemented
+o A new FUNCNAME variable, which expands to the name of a currently-executing
+ function
+o The GROUPS variable is no longer readonly
+o A new shopt `xpg_echo' variable, to control the behavior of echo with
+ respect to backslash-escape sequences at runtime
+o The NON_INTERACTIVE_LOGIN_SHELLS #define has returned
+
+The version of Readline released with Bash-2.04, Readline-4.1, had several
+new features as well:
+
+o Parentheses matching is always compiled into readline, and controllable
+ with the new `blink-matching-paren' variable
+o The history-search-forward and history-search-backward functions now leave
+ point at the end of the line when the search string is empty, like
+ reverse-search-history, and forward-search-history
+o A new function for applications: rl_on_new_line_with_prompt()
+o New variables for applications: rl_already_prompted, and rl_gnu_readline_p
+
+
+Bash-2.03 had very few new features, in keeping with the convention
+that odd-numbered releases provide mainly bug fixes. A number of new
+features were added to Readline, mostly at the request of the Cygnus
+folks.
+
+A new shopt option, `restricted_shell', so that startup files can test
+ whether or not the shell was started in restricted mode
+Filename generation is now performed on the words between ( and ) in
+ compound array assignments (this is really a bug fix)
+OLDPWD is now auto-exported, as POSIX.2 requires
+ENV and BASH_ENV are read-only variables in a restricted shell
+Bash may now be linked against an already-installed Readline library,
+ as long as the Readline library is version 4 or newer
+All shells begun with the `--login' option will source the login shell
+ startup files, even if the shell is not interactive
+
+There were lots of changes to the version of the Readline library released
+along with Bash-2.03. For a complete list of the changes, read the file
+CHANGES in the Bash-2.03 distribution.
+
+Bash-2.02 contained the following new features:
+
+a new version of malloc (based on the old GNU malloc code in previous
+ bash versions) that is more page-oriented, more conservative
+ with memory usage, does not `orphan' large blocks when they
+ are freed, is usable on 64-bit machines, and has allocation
+ checking turned on unconditionally
+POSIX.2-style globbing character classes ([:alpha:], [:alnum:], etc.)
+POSIX.2-style globbing equivalence classes
+POSIX.2-style globbing collating symbols
+the ksh [[...]] extended conditional command
+the ksh egrep-style extended pattern matching operators
+a new `printf' builtin
+the ksh-like $(<filename) command substitution, which is equivalent to
+ $(cat filename)
+new tilde prefixes that expand to directories from the directory stack
+new `**' arithmetic operator to do exponentiation
+case-insensitive globbing (filename expansion)
+menu completion a la tcsh
+`magic-space' history expansion function like tcsh
+the readline inputrc `language' has a new file inclusion directive ($include)
+
+Bash-2.01 contained only a few new features:
+
+new `GROUPS' builtin array variable containing the user's group list
+new bindable readline commands: history-and-alias-expand-line and
+ alias-expand-line
+
+Bash-2.0 contained extensive changes and new features from bash-1.14.7.
+Here's a short list:
+
+new `time' reserved word to time pipelines, shell builtins, and
+ shell functions
+one-dimensional arrays with a new compound assignment statement,
+ appropriate expansion constructs and modifications to some
+ of the builtins (read, declare, etc.) to use them
+new quoting syntaxes for ANSI-C string expansion and locale-specific
+ string translation
+new expansions to do substring extraction, pattern replacement, and
+ indirect variable expansion
+new builtins: `disown' and `shopt'
+new variables: HISTIGNORE, SHELLOPTS, PIPESTATUS, DIRSTACK, GLOBIGNORE,
+ MACHTYPE, BASH_VERSINFO
+special handling of many unused or redundant variables removed
+ (e.g., $notify, $glob_dot_filenames, $no_exit_on_failed_exec)
+dynamic loading of new builtin commands; many loadable examples provided
+new prompt expansions: \a, \e, \n, \H, \T, \@, \v, \V
+history and aliases available in shell scripts
+new readline variables: enable-keypad, mark-directories, input-meta,
+ visible-stats, disable-completion, comment-begin
+new readline commands to manipulate the mark and operate on the region
+new readline emacs mode commands and bindings for ksh-88 compatibility
+updated and extended builtins
+new DEBUG trap
+expanded (and now documented) restricted shell mode
+
+implementation stuff:
+autoconf-based configuration
+nearly all of the bugs reported since version 1.14 have been fixed
+most builtins converted to use builtin `getopt' for consistency
+most builtins use -p option to display output in a reusable form
+ (for consistency)
+grammar tighter and smaller (66 reduce-reduce conflicts gone)
+lots of code now smaller and faster
+test suite greatly expanded
+
+B2) Are there any user-visible incompatibilities between bash-2.05b and
+ bash-1.14.7?
+
+There are a few incompatibilities between version 1.14.7 and version 2.05b.
+They are detailed in the file COMPAT in the bash distribution. That file
+is not meant to be all-encompassing; send mail to bash-maintainers@gnu.org
+if if you find something that's not mentioned there.
+
+Section C: Differences from other Unix shells
+
+C1) How does bash differ from sh, the Bourne shell?
+
+This is a non-comprehensive list of features that differentiate bash
+from the SVR4.2 shell. The bash manual page explains these more
+completely.
+
+Things bash has that sh does not:
+ long invocation options
+ [+-]O invocation option
+ -l invocation option
+ `!' reserved word to invert pipeline return value
+ `time' reserved word to time pipelines and shell builtins
+ the `function' reserved word
+ the `select' compound command and reserved word
+ arithmetic for command: for ((expr1 ; expr2; expr3 )); do list; done
+ new $'...' and $"..." quoting
+ the $(...) form of command substitution
+ the $(<filename) form of command substitution, equivalent to
+ $(cat filename)
+ the ${#param} parameter value length operator
+ the ${!param} indirect parameter expansion operator
+ the ${!param*} prefix expansion operator
+ the ${param:offset[:length]} parameter substring operator
+ the ${param/pat[/string]} parameter pattern substitution operator
+ expansions to perform substring removal (${p%[%]w}, ${p#[#]w})
+ expansion of positional parameters beyond $9 with ${num}
+ variables: BASH, BASH_VERSION, BASH_VERSINFO, UID, EUID, REPLY,
+ TIMEFORMAT, PPID, PWD, OLDPWD, SHLVL, RANDOM, SECONDS,
+ LINENO, HISTCMD, HOSTTYPE, OSTYPE, MACHTYPE, HOSTNAME,
+ ENV, PS3, PS4, DIRSTACK, PIPESTATUS, HISTSIZE, HISTFILE,
+ HISTFILESIZE, HISTCONTROL, HISTIGNORE, GLOBIGNORE, GROUPS,
+ PROMPT_COMMAND, FCEDIT, FIGNORE, IGNOREEOF, INPUTRC,
+ SHELLOPTS, OPTERR, HOSTFILE, TMOUT, FUNCNAME, histchars,
+ auto_resume
+ DEBUG trap
+ ERR trap
+ variable arrays with new compound assignment syntax
+ redirections: <>, &>, >|, <<<, [n]<&word-, [n]>&word-
+ prompt string special char translation and variable expansion
+ auto-export of variables in initial environment
+ command search finds functions before builtins
+ bash return builtin will exit a file sourced with `.'
+ builtins: cd -/-L/-P, exec -l/-c/-a, echo -e/-E, hash -d/-l/-p/-t.
+ export -n/-f/-p/name=value, pwd -L/-P,
+ read -e/-p/-a/-t/-n/-d/-s/-u,
+ readonly -a/-f/name=value, trap -l, set +o,
+ set -b/-m/-o option/-h/-p/-B/-C/-H/-P,
+ unset -f/-v, ulimit -m/-p/-u,
+ type -a/-p/-t/-f/-P, suspend -f, kill -n,
+ test -o optname/s1 == s2/s1 < s2/s1 > s2/-nt/-ot/-ef/-O/-G/-S
+ bash reads ~/.bashrc for interactive shells, $ENV for non-interactive
+ bash restricted shell mode is more extensive
+ bash allows functions and variables with the same name
+ brace expansion
+ tilde expansion
+ arithmetic expansion with $((...)) and `let' builtin
+ the `[[...]]' extended conditional command
+ process substitution
+ aliases and alias/unalias builtins
+ local variables in functions and `local' builtin
+ readline and command-line editing with programmable completion
+ command history and history/fc builtins
+ csh-like history expansion
+ other new bash builtins: bind, command, compgen, complete, builtin,
+ declare/typeset, dirs, enable, fc, help,
+ history, logout, popd, pushd, disown, shopt,
+ printf
+ exported functions
+ filename generation when using output redirection (command >a*)
+ POSIX.2-style globbing character classes
+ POSIX.2-style globbing equivalence classes
+ POSIX.2-style globbing collating symbols
+ egrep-like extended pattern matching operators
+ case-insensitive pattern matching and globbing
+ variable assignments preceding commands affect only that command,
+ even for builtins and functions
+ posix mode
+ redirection to /dev/fd/N, /dev/stdin, /dev/stdout, /dev/stderr,
+ /dev/tcp/host/port, /dev/udp/host/port
+
+Things sh has that bash does not:
+ uses variable SHACCT to do shell accounting
+ includes `stop' builtin (bash can use alias stop='kill -s STOP')
+ `newgrp' builtin
+ turns on job control if called as `jsh'
+ $TIMEOUT (like bash $TMOUT)
+ `^' is a synonym for `|'
+ new SVR4.2 sh builtins: mldmode, priv
+
+Implementation differences:
+ redirection to/from compound commands causes sh to create a subshell
+ bash does not allow unbalanced quotes; sh silently inserts them at EOF
+ bash does not mess with signal 11
+ sh sets (euid, egid) to (uid, gid) if -p not supplied and uid < 100
+ bash splits only the results of expansions on IFS, using POSIX.2
+ field splitting rules; sh splits all words on IFS
+ sh does not allow MAILCHECK to be unset (?)
+ sh does not allow traps on SIGALRM or SIGCHLD
+ bash allows multiple option arguments when invoked (e.g. -x -v);
+ sh allows only a single option argument (`sh -x -v' attempts
+ to open a file named `-v', and, on SunOS 4.1.4, dumps core.
+ On Solaris 2.4 and earlier versions, sh goes into an infinite
+ loop.)
+ sh exits a script if any builtin fails; bash exits only if one of
+ the POSIX.2 `special' builtins fails
+
+C2) How does bash differ from the Korn shell, version ksh88?
+
+Things bash has or uses that ksh88 does not:
+ long invocation options
+ [-+]O invocation option
+ -l invocation option
+ `!' reserved word
+ arithmetic for command: for ((expr1 ; expr2; expr3 )); do list; done
+ arithmetic in largest machine-supported size (intmax_t)
+ posix mode and posix conformance
+ command hashing
+ tilde expansion for assignment statements that look like $PATH
+ process substitution with named pipes if /dev/fd is not available
+ the ${!param} indirect parameter expansion operator
+ the ${!param*} prefix expansion operator
+ the ${param:offset[:length]} parameter substring operator
+ the ${param/pat[/string]} parameter pattern substitution operator
+ variables: BASH, BASH_VERSION, BASH_VERSINFO, UID, EUID, SHLVL,
+ TIMEFORMAT, HISTCMD, HOSTTYPE, OSTYPE, MACHTYPE,
+ HISTFILESIZE, HISTIGNORE, HISTCONTROL, PROMPT_COMMAND,
+ IGNOREEOF, FIGNORE, INPUTRC, HOSTFILE, DIRSTACK,
+ PIPESTATUS, HOSTNAME, OPTERR, SHELLOPTS, GLOBIGNORE,
+ GROUPS, FUNCNAME, histchars, auto_resume
+ prompt expansion with backslash escapes and command substitution
+ redirection: &> (stdout and stderr), <<<, [n]<&word-, [n]>&word-
+ more extensive and extensible editing and programmable completion
+ builtins: bind, builtin, command, declare, dirs, echo -e/-E, enable,
+ exec -l/-c/-a, fc -s, export -n/-f/-p, hash, help, history,
+ jobs -x/-r/-s, kill -s/-n/-l, local, logout, popd, pushd,
+ read -e/-p/-a/-t/-n/-d/-s, readonly -a/-n/-f/-p,
+ set -o braceexpand/-o histexpand/-o interactive-comments/
+ -o notify/-o physical/-o posix/-o hashall/-o onecmd/
+ -h/-B/-C/-b/-H/-P, set +o, suspend, trap -l, type,
+ typeset -a/-F/-p, ulimit -u, umask -S, alias -p, shopt,
+ disown, printf, complete, compgen
+ `!' csh-style history expansion
+ POSIX.2-style globbing character classes
+ POSIX.2-style globbing equivalence classes
+ POSIX.2-style globbing collating symbols
+ egrep-like extended pattern matching operators
+ case-insensitive pattern matching and globbing
+ `**' arithmetic operator to do exponentiation
+ redirection to /dev/fd/N, /dev/stdin, /dev/stdout, /dev/stderr
+ arrays of unlimited size
+ TMOUT is default timeout for `read' and `select'
+
+Things ksh88 has or uses that bash does not:
+ tracked aliases (alias -t)
+ variables: ERRNO, FPATH, EDITOR, VISUAL
+ co-processes (|&, >&p, <&p)
+ weirdly-scoped functions
+ typeset +f to list all function names without definitions
+ text of command history kept in a file, not memory
+ builtins: alias -x, cd old new, fc -e -, newgrp, print,
+ read -p/-s/var?prompt, set -A/-o gmacs/
+ -o bgnice/-o markdirs/-o nolog/-o trackall/-o viraw/-s,
+ typeset -H/-L/-R/-Z/-A/-ft/-fu/-fx/-l/-u/-t, whence
+ using environment to pass attributes of exported variables
+ arithmetic evaluation done on arguments to some builtins
+ reads .profile from $PWD when invoked as login shell
+
+Implementation differences:
+ ksh runs last command of a pipeline in parent shell context
+ bash has brace expansion by default (ksh88 compile-time option)
+ bash has fixed startup file for all interactive shells; ksh reads $ENV
+ bash has exported functions
+ bash command search finds functions before builtins
+ bash waits for all commands in pipeline to exit before returning status
+ emacs-mode editing has some slightly different key bindings
+
+C3) Which new features in ksh-93 are not in bash, and which are?
+
+New things in ksh-93 not in bash-2.05b:
+ associative arrays
+ floating point arithmetic and variables
+ math library functions
+ ${!name[sub]} name of subscript for associative array
+ `.' is allowed in variable names to create a hierarchical namespace
+ more extensive compound assignment syntax
+ discipline functions
+ `sleep' and `getconf' builtins (bash has loadable versions)
+ typeset -n and `nameref' variables
+ KEYBD trap
+ variables: .sh.edchar, .sh.edmode, .sh.edcol, .sh.edtext, .sh.version,
+ .sh.name, .sh.subscript, .sh.value, .sh.match, HISTEDIT
+ backreferences in pattern matching (\N)
+ `&' operator in pattern lists for matching
+ print -f (bash uses printf)
+ `fc' has been renamed to `hist'
+ `.' can execute shell functions
+ exit statuses between 0 and 255
+ set -o pipefail
+ `+=' variable assignment operator
+ FPATH and PATH mixing
+ getopts -a
+ -I invocation option
+ DEBUG trap now executed before each simple command, instead of after
+ printf %H, %P, %T, %Z modifiers, output base for %d
+ lexical scoping for local variables in `ksh' functions
+ no scoping for local variables in `POSIX' functions
+
+New things in ksh-93 present in bash-2.05b:
+ [n]<&word- and [n]>&word- redirections (combination dup and close)
+ for (( expr1; expr2; expr3 )) ; do list; done - arithmetic for command
+ ?:, ++, --, `expr1 , expr2' arithmetic operators
+ expansions: ${!param}, ${param:offset[:len]}, ${param/pat[/str]},
+ ${!param*}
+ compound array assignment
+ the `!' reserved word
+ loadable builtins -- but ksh uses `builtin' while bash uses `enable'
+ `command', `builtin', `disown' builtins
+ new $'...' and $"..." quoting
+ FIGNORE (but bash uses GLOBIGNORE), HISTCMD
+ set -o notify/-C
+ changes to kill builtin
+ read -A (bash uses read -a)
+ read -t/-d
+ trap -p
+ exec -c/-a
+ `.' restores the positional parameters when it completes
+ POSIX.2 `test'
+ umask -S
+ unalias -a
+ command and arithmetic substitution performed on PS1, PS4, and ENV
+ command name completion
+ ENV processed only for interactive shells
+
+Section D: Why does bash do some things differently than other Unix shells?
+
+D1) Why does bash run a different version of `command' than
+ `which command' says it will?
+
+On many systems, `which' is actually a csh script that assumes
+you're running csh. In tcsh, `which' and its cousin `where'
+are builtins. On other Unix systems, `which' is a perl script
+that uses the PATH environment variable.
+
+The csh script version reads the csh startup files from your
+home directory and uses those to determine which `command' will
+be invoked. Since bash doesn't use any of those startup files,
+there's a good chance that your bash environment differs from
+your csh environment. The bash `type' builtin does everything
+`which' does, and will report correct results for the running
+shell. If you're really wedded to the name `which', try adding
+the following function definition to your .bashrc:
+
+ which()
+ {
+ builtin type "$@"
+ }
+
+If you're moving from tcsh and would like to bring `where' along
+as well, use this function:
+
+ where()
+ {
+ builtin type -a "$@"
+ }
+
+D2) Why doesn't bash treat brace expansions exactly like csh?
+
+The only difference between bash and csh brace expansion is that
+bash requires a brace expression to contain at least one unquoted
+comma if it is to be expanded. Any brace-surrounded word not
+containing an unquoted comma is left unchanged by the brace
+expansion code. This affords the greatest degree of sh
+compatibility.
+
+Bash, ksh, zsh, and pd-ksh all implement brace expansion this way.
+
+D3) Why doesn't bash have csh variable modifiers?
+
+Posix has specified a more powerful, albeit somewhat more cryptic,
+mechanism cribbed from ksh, and bash implements it.
+
+${parameter%word}
+ Remove smallest suffix pattern. The WORD is expanded to produce
+ a pattern. It then expands to the value of PARAMETER, with the
+ smallest portion of the suffix matched by the pattern deleted.
+
+ x=file.c
+ echo ${x%.c}.o
+ -->file.o
+
+${parameter%%word}
+
+ Remove largest suffix pattern. The WORD is expanded to produce
+ a pattern. It then expands to the value of PARAMETER, with the
+ largest portion of the suffix matched by the pattern deleted.
+
+ x=posix/src/std
+ echo ${x%%/*}
+ -->posix
+
+${parameter#word}
+ Remove smallest prefix pattern. The WORD is expanded to produce
+ a pattern. It then expands to the value of PARAMETER, with the
+ smallest portion of the prefix matched by the pattern deleted.
+
+ x=$HOME/src/cmd
+ echo ${x#$HOME}
+ -->/src/cmd
+
+${parameter##word}
+ Remove largest prefix pattern. The WORD is expanded to produce
+ a pattern. It then expands to the value of PARAMETER, with the
+ largest portion of the prefix matched by the pattern deleted.
+
+ x=/one/two/three
+ echo ${x##*/}
+ -->three
+
+
+Given
+ a=/a/b/c/d
+ b=b.xxx
+
+ csh bash result
+ --- ---- ------
+ $a:h ${a%/*} /a/b/c
+ $a:t ${a##*/} d
+ $b:r ${b%.*} b
+ $b:e ${b##*.} xxx
+
+
+D4) How can I make my csh aliases work when I convert to bash?
+
+Bash uses a different syntax to support aliases than csh does.
+The details can be found in the documentation. We have provided
+a shell script which does most of the work of conversion for you;
+this script can be found in ./examples/misc/aliasconv.sh. Here is
+how you use it:
+
+Start csh in the normal way for you. (e.g., `csh')
+
+Pipe the output of `alias' through `aliasconv.sh', saving the
+results into `bash_aliases':
+
+ alias | bash aliasconv.sh >bash_aliases
+
+Edit `bash_aliases', carefully reading through any created
+functions. You will need to change the names of some csh specific
+variables to the bash equivalents. The script converts $cwd to
+$PWD, $term to $TERM, $home to $HOME, $user to $USER, and $prompt
+to $PS1. You may also have to add quotes to avoid unwanted
+expansion.
+
+For example, the csh alias:
+
+ alias cd 'cd \!*; echo $cwd'
+
+is converted to the bash function:
+
+ cd () { command cd "$@"; echo $PWD ; }
+
+The only thing that needs to be done is to quote $PWD:
+
+ cd () { command cd "$@"; echo "$PWD" ; }
+
+Merge the edited file into your ~/.bashrc.
+
+There is an additional, more ambitious, script in
+examples/misc/cshtobash that attempts to convert your entire csh
+environment to its bash equivalent. This script can be run as
+simply `cshtobash' to convert your normal interactive
+environment, or as `cshtobash ~/.login' to convert your login
+environment.
+
+D5) How can I pipe standard output and standard error from one command to
+ another, like csh does with `|&'?
+
+Use
+ command 2>&1 | command2
+
+The key is to remember that piping is performed before redirection, so
+file descriptor 1 points to the pipe when it is duplicated onto file
+descriptor 2.
+
+D6) Now that I've converted from ksh to bash, are there equivalents to
+ ksh features like autoloaded functions and the `whence' command?
+
+There are features in ksh-88 and ksh-93 that do not have direct bash
+equivalents. Most, however, can be emulated with very little trouble.
+
+ksh-88 feature Bash equivalent
+-------------- ---------------
+compiled-in aliases set up aliases in .bashrc; some ksh aliases are
+ bash builtins (hash, history, type)
+coprocesses named pipe pairs (one for read, one for write)
+typeset +f declare -F
+cd, print, whence function substitutes in examples/functions/kshenv
+autoloaded functions examples/functions/autoload is the same as typeset -fu
+read var?prompt read -p prompt var
+
+ksh-93 feature Bash equivalent
+-------------- ---------------
+sleep, getconf Bash has loadable versions in examples/loadables
+${.sh.version} $BASH_VERSION
+print -f printf
+hist alias hist=fc
+$HISTEDIT $FCEDIT
+
+Section E: How can I get bash to do certain things, and why does bash do
+ things the way it does?
+
+E1) Why is the bash builtin `test' slightly different from /bin/test?
+
+The specific example used here is [ ! x -o x ], which is false.
+
+Bash's builtin `test' implements the Posix.2 spec, which can be
+summarized as follows (the wording is due to David Korn):
+
+Here is the set of rules for processing test arguments.
+
+ 0 Args: False
+ 1 Arg: True iff argument is not null.
+ 2 Args: If first arg is !, True iff second argument is null.
+ If first argument is unary, then true if unary test is true
+ Otherwise error.
+ 3 Args: If second argument is a binary operator, do binary test of $1 $3
+ If first argument is !, negate two argument test of $2 $3
+ If first argument is `(' and third argument is `)', do the
+ one-argument test of the second argument.
+ Otherwise error.
+ 4 Args: If first argument is !, negate three argument test of $2 $3 $4.
+ Otherwise unspecified
+ 5 or more Args: unspecified. (Historical shells would use their
+ current algorithm).
+
+The operators -a and -o are considered binary operators for the purpose
+of the 3 Arg case.
+
+As you can see, the test becomes (not (x or x)), which is false.
+
+E2) Why does bash sometimes say `Broken pipe'?
+
+If a sequence of commands appears in a pipeline, and one of the
+reading commands finishes before the writer has finished, the
+writer receives a SIGPIPE signal. Many other shells special-case
+SIGPIPE as an exit status in the pipeline and do not report it.
+For example, in:
+
+ ps -aux | head
+
+`head' can finish before `ps' writes all of its output, and ps
+will try to write on a pipe without a reader. In that case, bash
+will print `Broken pipe' to stderr when ps is killed by a
+SIGPIPE.
+
+You can build a version of bash that will not report SIGPIPE errors
+by uncommenting the definition of DONT_REPORT_SIGPIPE in the file
+config-top.h.
+
+E3) When I have terminal escape sequences in my prompt, why does bash
+ wrap lines at the wrong column?
+
+Readline, the line editing library that bash uses, does not know
+that the terminal escape sequences do not take up space on the
+screen. The redisplay code assumes, unless told otherwise, that
+each character in the prompt is a `printable' character that
+takes up one character position on the screen.
+
+You can use the bash prompt expansion facility (see the PROMPTING
+section in the manual page) to tell readline that sequences of
+characters in the prompt strings take up no screen space.
+
+Use the \[ escape to begin a sequence of non-printing characters,
+and the \] escape to signal the end of such a sequence.
+
+E4) If I pipe the output of a command into `read variable', why doesn't
+ the output show up in $variable when the read command finishes?
+
+This has to do with the parent-child relationship between Unix
+processes. It affects all commands run in pipelines, not just
+simple calls to `read'. For example, piping a command's output
+into a `while' loop that repeatedly calls `read' will result in
+the same behavior.
+
+Each element of a pipeline runs in a separate process, a child of
+the shell running the pipeline. A subprocess cannot affect its
+parent's environment. When the `read' command sets the variable
+to the input, that variable is set only in the subshell, not the
+parent shell. When the subshell exits, the value of the variable
+is lost.
+
+Many pipelines that end with `read variable' can be converted
+into command substitutions, which will capture the output of
+a specified command. The output can then be assigned to a
+variable:
+
+ grep ^gnu /usr/lib/news/active | wc -l | read ngroup
+
+can be converted into
+
+ ngroup=$(grep ^gnu /usr/lib/news/active | wc -l)
+
+This does not, unfortunately, work to split the text among
+multiple variables, as read does when given multiple variable
+arguments. If you need to do this, you can either use the
+command substitution above to read the output into a variable
+and chop up the variable using the bash pattern removal
+expansion operators or use some variant of the following
+approach.
+
+Say /usr/local/bin/ipaddr is the following shell script:
+
+#! /bin/sh
+host `hostname` | awk '/address/ {print $NF}'
+
+Instead of using
+
+ /usr/local/bin/ipaddr | read A B C D
+
+to break the local machine's IP address into separate octets, use
+
+ OIFS="$IFS"
+ IFS=.
+ set -- $(/usr/local/bin/ipaddr)
+ IFS="$OIFS"
+ A="$1" B="$2" C="$3" D="$4"
+
+Beware, however, that this will change the shell's positional
+parameters. If you need them, you should save them before doing
+this.
+
+This is the general approach -- in most cases you will not need to
+set $IFS to a different value.
+
+Some other user-supplied alternatives include:
+
+read A B C D << HERE
+ $(IFS=.; echo $(/usr/local/bin/ipaddr))
+HERE
+
+and, where process substitution is available,
+
+read A B C D < <(IFS=.; echo $(/usr/local/bin/ipaddr))
+
+E5) I have a bunch of shell scripts that use backslash-escaped characters
+ in arguments to `echo'. Bash doesn't interpret these characters. Why
+ not, and how can I make it understand them?
+
+This is the behavior of echo on most Unix System V machines.
+
+The bash builtin `echo' is modeled after the 9th Edition
+Research Unix version of `echo'. It does not interpret
+backslash-escaped characters in its argument strings by default;
+it requires the use of the -e option to enable the
+interpretation. The System V echo provides no way to disable the
+special characters; the bash echo has a -E option to disable
+them.
+
+There is a configuration option that will make bash behave like
+the System V echo and interpret things like `\t' by default. Run
+configure with the --enable-xpg-echo-default option to turn this
+on. Be aware that this will cause some of the tests run when you
+type `make tests' to fail.
+
+There is a shell option, `xpg_echo', settable with `shopt', that will
+change the behavior of echo at runtime. Enabling this option turns
+on expansion of backslash-escape sequences.
+
+E6) Why doesn't a while or for loop get suspended when I type ^Z?
+
+This is a consequence of how job control works on Unix. The only
+thing that can be suspended is the process group. This is a single
+command or pipeline of commands that the shell forks and executes.
+
+When you run a while or for loop, the only thing that the shell forks
+and executes are any commands in the while loop test and commands in
+the loop bodies. These, therefore, are the only things that can be
+suspended when you type ^Z.
+
+If you want to be able to stop the entire loop, you need to put it
+within parentheses, which will force the loop into a subshell that
+may be stopped (and subsequently restarted) as a single unit.
+
+E7) What about empty for loops in Makefiles?
+
+It's fairly common to see constructs like this in automatically-generated
+Makefiles:
+
+SUBDIRS = @SUBDIRS@
+
+ ...
+
+subdirs-clean:
+ for d in ${SUBDIRS}; do \
+ ( cd $$d && ${MAKE} ${MFLAGS} clean ) \
+ done
+
+When SUBDIRS is empty, this results in a command like this being passed to
+bash:
+
+ for d in ; do
+ ( cd $d && ${MAKE} ${MFLAGS} clean )
+ done
+
+In versions of bash before bash-2.05a, this was a syntax error. If the
+reserved word `in' was present, a word must follow it before the semicolon
+or newline. The language in the manual page referring to the list of words
+being empty referred to the list after it is expanded. These versions of
+bash required that there be at least one word following the `in' when the
+construct was parsed.
+
+The idiomatic Makefile solution is something like:
+
+SUBDIRS = @SUBDIRS@
+
+subdirs-clean:
+ subdirs=$SUBDIRS ; for d in $$subdirs; do \
+ ( cd $$d && ${MAKE} ${MFLAGS} clean ) \
+ done
+
+The latest drafts of the updated POSIX standard have changed this: the
+word list is no longer required. Bash versions 2.05a and later accept
+the new syntax.
+
+E8) Why does the arithmetic evaluation code complain about `08'?
+
+The bash arithmetic evaluation code (used for `let', $(()), (()), and in
+other places), interprets a leading `0' in numeric constants as denoting
+an octal number, and a leading `0x' as denoting hexadecimal. This is
+in accordance with the POSIX.2 spec, section 2.9.2.1, which states that
+arithmetic constants should be handled as signed long integers as defined
+by the ANSI/ISO C standard.
+
+The POSIX.2 interpretation committee has confirmed this:
+
+http://www.pasc.org/interps/unofficial/db/p1003.2/pasc-1003.2-173.html
+
+E9) Why does the pattern matching expression [A-Z]* match files beginning
+ with every letter except `z'?
+
+Bash-2.03, Bash-2.05 and later versions honor the current locale setting
+when processing ranges within pattern matching bracket expressions ([A-Z]).
+This is what POSIX.2 and SUSv3/XPG6 specify.
+
+The behavior of the matcher in bash-2.05 and later versions depends on the
+current LC_COLLATE setting. Setting this variable to `C' or `POSIX' will
+result in the traditional behavior ([A-Z] matches all uppercase ASCII
+characters). Many other locales, including the en_US locale (the default
+on many US versions of Linux) collate the upper and lower case letters like
+this:
+
+ AaBb...Zz
+
+which means that [A-Z] matches every letter except `z'. Others collate like
+
+ aAbBcC...zZ
+
+which means that [A-Z] matches every letter except `a'.
+
+The portable way to specify upper case letters is [:upper:] instead of
+A-Z; lower case may be specified as [:lower:] instead of a-z.
+
+Look at the manual pages for setlocale(3), strcoll(3), and, if it is
+present, locale(1). If you have locale(1), you can use it to find
+your current locale information even if you do not have any of the
+LC_ variables set.
+
+My advice is to put
+
+ export LC_COLLATE=C
+
+into /etc/profile and inspect any shell scripts run from cron for
+constructs like [A-Z]. This will prevent things like
+
+ rm [A-Z]*
+
+from removing every file in the current directory except those beginning
+with `z' and still allow individual users to change the collation order.
+Users may put the above command into their own profiles as well, of course.
+
+E10) Why does `cd //' leave $PWD as `//'?
+
+POSIX.2, in its description of `cd', says that *three* or more leading
+slashes may be replaced with a single slash when canonicalizing the
+current working directory.
+
+This is, I presume, for historical compatibility. Certain versions of
+Unix, and early network file systems, used paths of the form
+//hostname/path to access `path' on server `hostname'.
+
+E11) If I resize my xterm while another program is running, why doesn't bash
+ notice the change?
+
+This is another issue that deals with job control.
+
+The kernel maintains a notion of a current terminal process group. Members
+of this process group (processes whose process group ID is equal to the
+current terminal process group ID) receive terminal-generated signals like
+SIGWINCH. (For more details, see the JOB CONTROL section of the bash
+man page.)
+
+If a terminal is resized, the kernel sends SIGWINCH to each member of
+the terminal's current process group (the `foreground' process group).
+
+When bash is running with job control enabled, each pipeline (which may be
+a single command) is run in its own process group, different from bash's
+process group. This foreground process group receives the SIGWINCH; bash
+does not. Bash has no way of knowing that the terminal has been resized.
+
+There is a `checkwinsize' option, settable with the `shopt' builtin, that
+will cause bash to check the window size and adjust its idea of the
+terminal's dimensions each time a process stops or exits and returns control
+of the terminal to bash. Enable it with `shopt -s checkwinsize'.
+
+Section F: Things to watch out for on certain Unix versions
+
+F1) Why can't I use command line editing in my `cmdtool'?
+
+The problem is `cmdtool' and bash fighting over the input. When
+scrolling is enabled in a cmdtool window, cmdtool puts the tty in
+`raw mode' to permit command-line editing using the mouse for
+applications that cannot do it themselves. As a result, bash and
+cmdtool each try to read keyboard input immediately, with neither
+getting enough of it to be useful.
+
+This mode also causes cmdtool to not implement many of the
+terminal functions and control sequences appearing in the
+`sun-cmd' termcap entry. For a more complete explanation, see
+that file examples/suncmd.termcap in the bash distribution.
+
+`xterm' is a better choice, and gets along with bash much more
+smoothly.
+
+If you must use cmdtool, you can use the termcap description in
+examples/suncmd.termcap. Set the TERMCAP variable to the terminal
+description contained in that file, i.e.
+
+TERMCAP='Mu|sun-cmd:am:bs:km:pt:li#34:co#80:cl=^L:ce=\E[K:cd=\E[J:rs=\E[s:'
+
+Then export TERMCAP and start a new cmdtool window from that shell.
+The bash command-line editing should behave better in the new
+cmdtool. If this works, you can put the assignment to TERMCAP
+in your bashrc file.
+
+F2) I built bash on Solaris 2. Why do globbing expansions and filename
+ completion chop off the first few characters of each filename?
+
+This is the consequence of building bash on SunOS 5 and linking
+with the libraries in /usr/ucblib, but using the definitions
+and structures from files in /usr/include.
+
+The actual conflict is between the dirent structure in
+/usr/include/dirent.h and the struct returned by the version of
+`readdir' in libucb.a (a 4.3-BSD style `struct direct').
+
+Make sure you've got /usr/ccs/bin ahead of /usr/ucb in your $PATH
+when configuring and building bash. This will ensure that you
+use /usr/ccs/bin/cc or acc instead of /usr/ucb/cc and that you
+link with libc before libucb.
+
+If you have installed the Sun C compiler, you may also need to
+put /usr/ccs/bin and /opt/SUNWspro/bin into your $PATH before
+/usr/ucb.
+
+F3) Why does bash dump core after I interrupt username completion or
+ `~user' tilde expansion on a machine running NIS?
+
+This is a famous and long-standing bug in the SunOS YP (sorry, NIS)
+client library, which is part of libc.
+
+The YP library code keeps static state -- a pointer into the data
+returned from the server. When YP initializes itself (setpwent),
+it looks at this pointer and calls free on it if it's non-null.
+So far, so good.
+
+If one of the YP functions is interrupted during getpwent (the
+exact function is interpretwithsave()), and returns NULL, the
+pointer is freed without being reset to NULL, and the function
+returns. The next time getpwent is called, it sees that this
+pointer is non-null, calls free, and the bash free() blows up
+because it's being asked to free freed memory.
+
+The traditional Unix mallocs allow memory to be freed multiple
+times; that's probably why this has never been fixed. You can
+run configure with the `--without-gnu-malloc' option to use
+the C library malloc and avoid the problem.
+
+F4) I'm running SVR4.2. Why is the line erased every time I type `@'?
+
+The `@' character is the default `line kill' character in most
+versions of System V, including SVR4.2. You can change this
+character to whatever you want using `stty'. For example, to
+change the line kill character to control-u, type
+
+ stty kill ^U
+
+where the `^' and `U' can be two separate characters.
+
+F5) Why does bash report syntax errors when my C News scripts use a
+ redirection before a subshell command?
+
+The actual command in question is something like
+
+ < file ( command )
+
+According to the grammar given in the POSIX.2 standard, this construct
+is, in fact, a syntax error. Redirections may only precede `simple
+commands'. A subshell construct such as the above is one of the shell's
+`compound commands'. A redirection may only follow a compound command.
+
+This affects the mechanical transformation of commands that use `cat'
+to pipe a file into a command (a favorite Useless-Use-Of-Cat topic on
+comp.unix.shell). While most commands of the form
+
+ cat file | command
+
+can be converted to `< file command', shell control structures such as
+loops and subshells require `command < file'.
+
+The file CWRU/sh-redir-hack in the bash-2.05a distribution is an
+(unofficial) patch to parse.y that will modify the grammar to
+support this construct. It will not apply with `patch'; you must
+modify parse.y by hand. Note that if you apply this, you must
+recompile with -DREDIRECTION_HACK. This introduces a large
+number of reduce/reduce conflicts into the shell grammar.
+
+F6) Why can't I use vi-mode editing on Red Hat Linux 6.1?
+
+The short answer is that Red Hat screwed up.
+
+The long answer is that they shipped an /etc/inputrc that only works
+for emacs mode editing, and then screwed all the vi users by setting
+INPUTRC to /etc/inputrc in /etc/profile.
+
+The short fix is to do one of the following: remove or rename
+/etc/inputrc, set INPUTRC=~/.inputrc in ~/.bashrc (or .bash_profile,
+but make sure you export it if you do), remove the assignment to
+INPUTRC from /etc/profile, add
+
+ set keymap emacs
+
+to the beginning of /etc/inputrc, or bracket the key bindings in
+/etc/inputrc with these lines
+
+ $if mode=emacs
+ [...]
+ $endif
+
+F7) Why do bash-2.05a and bash-2.05b fail to compile `printf.def' on
+ HP/UX 11.x?
+
+HP/UX's support for long double is imperfect at best.
+
+GCC will support it without problems, but the HP C library functions
+like strtold(3) and printf(3) don't actually work with long doubles.
+HP implemented a `long_double' type as a 4-element array of 32-bit
+ints, and that is what the library functions use. The ANSI C
+`long double' type is a 128-bit floating point scalar.
+
+The easiest fix, until HP fixes things up, is to edit the generated
+config.h and #undef the HAVE_LONG_DOUBLE line. After doing that,
+the compilation should complete successfully.
+
+Section G: How can I get bash to do certain common things?
+
+G1) How can I get bash to read and display eight-bit characters?
+
+This is a process requiring several steps.
+
+First, you must ensure that the `physical' data path is a full eight
+bits. For xterms, for example, the `vt100' resources `eightBitInput'
+and `eightBitOutput' should be set to `true'.
+
+Once you have set up an eight-bit path, you must tell the kernel and
+tty driver to leave the eighth bit of characters alone when processing
+keyboard input. Use `stty' to do this:
+
+ stty cs8 -istrip -parenb
+
+For old BSD-style systems, you can use
+
+ stty pass8
+
+You may also need
+
+ stty even odd
+
+Finally, you need to tell readline that you will be inputting and
+displaying eight-bit characters. You use readline variables to do
+this. These variables can be set in your .inputrc or using the bash
+`bind' builtin. Here's an example using `bind':
+
+ bash$ bind 'set convert-meta off'
+ bash$ bind 'set meta-flag on'
+ bash$ bind 'set output-meta on'
+
+The `set' commands between the single quotes may also be placed
+in ~/.inputrc.
+
+G2) How do I write a function `x' to replace builtin command `x', but
+ still invoke the command from within the function?
+
+This is why the `command' and `builtin' builtins exist. The
+`command' builtin executes the command supplied as its first
+argument, skipping over any function defined with that name. The
+`builtin' builtin executes the builtin command given as its first
+argument directly.
+
+For example, to write a function to replace `cd' that writes the
+hostname and current directory to an xterm title bar, use
+something like the following:
+
+ cd()
+ {
+ builtin cd "$@" && xtitle "$HOST: $PWD"
+ }
+
+This could also be written using `command' instead of `builtin';
+the version above is marginally more efficient.
+
+G3) How can I find the value of a shell variable whose name is the value
+ of another shell variable?
+
+Versions of Bash newer than Bash-2.0 support this directly. You can use
+
+ ${!var}
+
+For example, the following sequence of commands will echo `z':
+
+ var1=var2
+ var2=z
+ echo ${!var1}
+
+For sh compatibility, use the `eval' builtin. The important
+thing to remember is that `eval' expands the arguments you give
+it again, so you need to quote the parts of the arguments that
+you want `eval' to act on.
+
+For example, this expression prints the value of the last positional
+parameter:
+
+ eval echo \"\$\{$#\}\"
+
+The expansion of the quoted portions of this expression will be
+deferred until `eval' runs, while the `$#' will be expanded
+before `eval' is executed. In versions of bash later than bash-2.0,
+
+ echo ${!#}
+
+does the same thing.
+
+This is not the same thing as ksh93 `nameref' variables, though the syntax
+is similar. I may add namerefs in a future bash version.
+
+G4) How can I make the bash `time' reserved word print timing output that
+ looks like the output from my system's /usr/bin/time?
+
+The bash command timing code looks for a variable `TIMEFORMAT' and
+uses its value as a format string to decide how to display the
+timing statistics.
+
+The value of TIMEFORMAT is a string with `%' escapes expanded in a
+fashion similar in spirit to printf(3). The manual page explains
+the meanings of the escape sequences in the format string.
+
+If TIMEFORMAT is not set, bash acts as if the following assignment had
+been performed:
+
+ TIMEFORMAT=$'\nreal\t%3lR\nuser\t%3lU\nsys\t%3lS'
+
+The POSIX.2 default time format (used by `time -p command') is
+
+ TIMEFORMAT=$'real %2R\nuser %2U\nsys %2S'
+
+The BSD /usr/bin/time format can be emulated with:
+
+ TIMEFORMAT=$'\t%1R real\t%1U user\t%1S sys'
+
+The System V /usr/bin/time format can be emulated with:
+
+ TIMEFORMAT=$'\nreal\t%1R\nuser\t%1U\nsys\t%1S'
+
+The ksh format can be emulated with:
+
+ TIMEFORMAT=$'\nreal\t%2lR\nuser\t%2lU\nsys\t%2lS'
+
+G5) How do I get the current directory into my prompt?
+
+Bash provides a number of backslash-escape sequences which are expanded
+when the prompt string (PS1 or PS2) is displayed. The full list is in
+the manual page.
+
+The \w expansion gives the full pathname of the current directory, with
+a tilde (`~') substituted for the current value of $HOME. The \W
+expansion gives the basename of the current directory. To put the full
+pathname of the current directory into the path without any tilde
+subsitution, use $PWD. Here are some examples:
+
+ PS1='\w$ ' # current directory with tilde
+ PS1='\W$ ' # basename of current directory
+ PS1='$PWD$ ' # full pathname of current directory
+
+The single quotes are important in the final example to prevent $PWD from
+being expanded when the assignment to PS1 is performed.
+
+G6) How can I rename "*.foo" to "*.bar"?
+
+Use the pattern removal functionality described in D3. The following `for'
+loop will do the trick:
+
+ for f in *.foo; do
+ mv $f ${f%foo}bar
+ done
+
+G7) How can I translate a filename from uppercase to lowercase?
+
+The script examples/functions/lowercase, originally written by John DuBois,
+will do the trick. The converse is left as an exercise.
+
+G8) How can I write a filename expansion (globbing) pattern that will match
+ all files in the current directory except "." and ".."?
+
+You must have set the `extglob' shell option using `shopt -s extglob' to use
+this:
+
+ echo .!(.|) *
+
+A solution that works without extended globbing is given in the Unix Shell
+FAQ, posted periodically to comp.unix.shell.
+
+Section H: Where do I go from here?
+
+H1) How do I report bugs in bash, and where should I look for fixes and
+ advice?
+
+Use the `bashbug' script to report bugs. It is built and
+installed at the same time as bash. It provides a standard
+template for reporting a problem and automatically includes
+information about your configuration and build environment.
+
+`bashbug' sends its reports to bug-bash@gnu.org, which
+is a large mailing list gatewayed to the usenet newsgroup gnu.bash.bug.
+
+Bug fixes, answers to questions, and announcements of new releases
+are all posted to gnu.bash.bug. Discussions concerning bash features
+and problems also take place there.
+
+To reach the bash maintainers directly, send mail to
+bash-maintainers@gnu.org.
+
+H2) What kind of bash documentation is there?
+
+First, look in the doc directory in the bash distribution. It should
+contain at least the following files:
+
+bash.1 an extensive, thorough Unix-style manual page
+builtins.1 a manual page covering just bash builtin commands
+bashref.texi a reference manual in GNU tex`info format
+bashref.info an info version of the reference manual
+FAQ this file
+article.ms text of an article written for The Linux Journal
+readline.3 a man page describing readline
+
+Postscript, HTML, and ASCII files created from the above source are
+available in the documentation distribution.
+
+There is additional documentation available for anonymous FTP from host
+ftp.cwru.edu in the `pub/bash' directory.
+
+Cameron Newham and Bill Rosenblatt have written a book on bash, published
+by O'Reilly and Associates. The book is based on Bill Rosenblatt's Korn
+Shell book. The title is ``Learning the Bash Shell'', and the ISBN number
+is 1-56592-147-X. Look for it in fine bookstores near you. This book
+covers bash-1.14, but has an appendix describing some of the new features
+in bash-2.0.
+
+A second edition of this book is available, published in January, 1998.
+The ISBN number is 1-56592-347-2. Look for it in the same fine bookstores
+or on the web.
+
+The GNU Bash Reference Manual has been published as a printed book by
+Network Theory Ltd (Paperback, ISBN: 0-9541617-7-7, Feb 2003). It covers
+bash-2.0 and is available from most online bookstores (see
+http://www.network-theory.co.uk/bash/manual/ for details). The publisher
+will donate $1 to the Free Software Foundation for each copy sold.
+
+H3) What's coming in future versions?
+
+These are features I hope to include in a future version of bash.
+
+a better bash debugger (a minimally-tested version is included with bash-2.05b)
+associative arrays
+co-processes, but with a new-style syntax that looks like function declaration
+
+H4) What's on the bash `wish list' for future versions?
+
+These are features that may or may not appear in a future version of bash.
+
+breaking some of the shell functionality into embeddable libraries
+a module system like zsh's, using dynamic loading like builtins
+better internationalization using GNU `gettext'
+date-stamped command history
+a bash programmer's guide with a chapter on creating loadable builtins
+a better loadable interface to perl with access to the shell builtins and
+ variables (contributions gratefully accepted)
+ksh93-like `nameref' variables
+ksh93-like `+=' variable assignment operator
+ksh93-like `xx.yy' variables (including some of the .sh.* variables) and
+ associated disipline functions
+Some of the new ksh93 pattern matching operators, like backreferencing
+
+H5) When will the next release appear?
+
+The next version will appear sometime in 2002. Never make predictions.
+
+
+This document is Copyright 1995-2003 by Chester Ramey.
+
+Permission is hereby granted, without written agreement and
+without license or royalty fees, to use, copy, and distribute
+this document for any purpose, provided that the above copyright
+notice appears in all copies of this document and that the
+contents of this document remain unaltered.
first word of a simple command (see S\bSH\bHE\bEL\bLL\bL G\bGR\bRA\bAM\bMM\bMA\bAR\bR below) or the third
word of a c\bca\bas\bse\be or f\bfo\bor\br command:
- !\b! c\bca\bas\bse\be d\bdo\bo d\bdo\bon\bne\be e\bel\bli\bif\bf e\bel\bls\bse\be e\bes\bsa\bac\bc f\bfi\bi f\bfo\bor\br f\bfu\bun\bnc\bct\bti\bio\bon\bn i\bif\bf i\bin\bn s\bse\bel\ble\bec\bct\bt t\bth\bhe\ben\bn u\bun\bnt\bti\bil\bl
- w\bwh\bhi\bil\ble\be {\b{ }\b} t\bti\bim\bme\be [\b[[\b[ ]\b]]\b]
+ !\b! c\bca\bas\bse\be c\bco\bop\bpr\bro\boc\bc d\bdo\bo d\bdo\bon\bne\be e\bel\bli\bif\bf e\bel\bls\bse\be e\bes\bsa\bac\bc f\bfi\bi f\bfo\bor\br f\bfu\bun\bnc\bct\bti\bio\bon\bn i\bif\bf i\bin\bn s\bse\bel\ble\bec\bct\bt
+ t\bth\bhe\ben\bn u\bun\bnt\bti\bil\bl w\bwh\bhi\bil\ble\be {\b{ }\b} t\bti\bim\bme\be [\b[[\b[ ]\b]]\b]
S\bSH\bHE\bEL\bLL\bL G\bGR\bRA\bAM\bMM\bMA\bAR\bR
S\bSi\bim\bmp\bpl\ble\be C\bCo\bom\bmm\bma\ban\bnd\bds\bs
that file descriptor is assigned to _\bN_\bA_\bM_\bE[1]. This pipe is established
before any redirections specified by the command (see R\bRE\bED\bDI\bIR\bRE\bEC\bCT\bTI\bIO\bON\bN
below). The file descriptors can be utilized as arguments to shell
- commands and redirections using standard word expansions. The process
- ID of the shell spawned to execute the coprocess is available as the
- value of the variable _\bN_\bA_\bM_\bE_PID. The w\bwa\bai\bit\bt builtin command may be used
- to wait for the coprocess to terminate.
+ commands and redirections using standard word expansions. The file
+ descriptors are not available in subshells. The process ID of the
+ shell spawned to execute the coprocess is available as the value of the
+ variable _\bN_\bA_\bM_\bE_PID. The w\bwa\bai\bit\bt builtin command may be used to wait for
+ the coprocess to terminate.
The return status of a coprocess is the exit status of _\bc_\bo_\bm_\bm_\ba_\bn_\bd.
S\bSh\bhe\bel\bll\bl F\bFu\bun\bnc\bct\bti\bio\bon\bn D\bDe\bef\bfi\bin\bni\bit\bti\bio\bon\bns\bs
- A shell function is an object that is called like a simple command and
- executes a compound command with a new set of positional parameters.
+ A shell function is an object that is called like a simple command and
+ executes a compound command with a new set of positional parameters.
Shell functions are declared as follows:
_\bn_\ba_\bm_\be () _\bc_\bo_\bm_\bp_\bo_\bu_\bn_\bd_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd [_\br_\be_\bd_\bi_\br_\be_\bc_\bt_\bi_\bo_\bn]
f\bfu\bun\bnc\bct\bti\bio\bon\bn _\bn_\ba_\bm_\be [()] _\bc_\bo_\bm_\bp_\bo_\bu_\bn_\bd_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd [_\br_\be_\bd_\bi_\br_\be_\bc_\bt_\bi_\bo_\bn]
- This defines a function named _\bn_\ba_\bm_\be. The reserved word f\bfu\bun\bnc\bct\bti\bio\bon\bn
- is optional. If the f\bfu\bun\bnc\bct\bti\bio\bon\bn reserved word is supplied, the
- parentheses are optional. The _\bb_\bo_\bd_\by of the function is the com-
- pound command _\bc_\bo_\bm_\bp_\bo_\bu_\bn_\bd_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd (see C\bCo\bom\bmp\bpo\bou\bun\bnd\bd C\bCo\bom\bmm\bma\ban\bnd\bds\bs above).
- That command is usually a _\bl_\bi_\bs_\bt of commands between { and }, but
- may be any command listed under C\bCo\bom\bmp\bpo\bou\bun\bnd\bd C\bCo\bom\bmm\bma\ban\bnd\bds\bs above. _\bc_\bo_\bm_\b-
+ This defines a function named _\bn_\ba_\bm_\be. The reserved word f\bfu\bun\bnc\bct\bti\bio\bon\bn
+ is optional. If the f\bfu\bun\bnc\bct\bti\bio\bon\bn reserved word is supplied, the
+ parentheses are optional. The _\bb_\bo_\bd_\by of the function is the com-
+ pound command _\bc_\bo_\bm_\bp_\bo_\bu_\bn_\bd_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd (see C\bCo\bom\bmp\bpo\bou\bun\bnd\bd C\bCo\bom\bmm\bma\ban\bnd\bds\bs above).
+ That command is usually a _\bl_\bi_\bs_\bt of commands between { and }, but
+ may be any command listed under C\bCo\bom\bmp\bpo\bou\bun\bnd\bd C\bCo\bom\bmm\bma\ban\bnd\bds\bs above. _\bc_\bo_\bm_\b-
_\bp_\bo_\bu_\bn_\bd_\b-_\bc_\bo_\bm_\bm_\ba_\bn_\bd is executed whenever _\bn_\ba_\bm_\be is specified as the name
- of a simple command. When in _\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be, _\bn_\ba_\bm_\be may not be the
- name of one of the POSIX _\bs_\bp_\be_\bc_\bi_\ba_\bl _\bb_\bu_\bi_\bl_\bt_\bi_\bn_\bs. Any redirections
+ of a simple command. When in _\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be, _\bn_\ba_\bm_\be may not be the
+ name of one of the POSIX _\bs_\bp_\be_\bc_\bi_\ba_\bl _\bb_\bu_\bi_\bl_\bt_\bi_\bn_\bs. Any redirections
(see R\bRE\bED\bDI\bIR\bRE\bEC\bCT\bTI\bIO\bON\bN below) specified when a function is defined are
- performed when the function is executed. The exit status of a
- function definition is zero unless a syntax error occurs or a
- readonly function with the same name already exists. When exe-
- cuted, the exit status of a function is the exit status of the
+ performed when the function is executed. The exit status of a
+ function definition is zero unless a syntax error occurs or a
+ readonly function with the same name already exists. When exe-
+ cuted, the exit status of a function is the exit status of the
last command executed in the body. (See F\bFU\bUN\bNC\bCT\bTI\bIO\bON\bNS\bS below.)
C\bCO\bOM\bMM\bME\bEN\bNT\bTS\bS
In a non-interactive shell, or an interactive shell in which the i\bin\bnt\bte\ber\br-\b-
- a\bac\bct\bti\biv\bve\be_\b_c\bco\bom\bmm\bme\ben\bnt\bts\bs option to the s\bsh\bho\bop\bpt\bt builtin is enabled (see S\bSH\bHE\bEL\bLL\bL
- B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below), a word beginning with #\b# causes that word and
- all remaining characters on that line to be ignored. An interactive
- shell without the i\bin\bnt\bte\ber\bra\bac\bct\bti\biv\bve\be_\b_c\bco\bom\bmm\bme\ben\bnt\bts\bs option enabled does not allow
+ a\bac\bct\bti\biv\bve\be_\b_c\bco\bom\bmm\bme\ben\bnt\bts\bs option to the s\bsh\bho\bop\bpt\bt builtin is enabled (see S\bSH\bHE\bEL\bLL\bL
+ B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below), a word beginning with #\b# causes that word and
+ all remaining characters on that line to be ignored. An interactive
+ shell without the i\bin\bnt\bte\ber\bra\bac\bct\bti\biv\bve\be_\b_c\bco\bom\bmm\bme\ben\bnt\bts\bs option enabled does not allow
comments. The i\bin\bnt\bte\ber\bra\bac\bct\bti\biv\bve\be_\b_c\bco\bom\bmm\bme\ben\bnt\bts\bs option is on by default in interac-
tive shells.
Q\bQU\bUO\bOT\bTI\bIN\bNG\bG
- _\bQ_\bu_\bo_\bt_\bi_\bn_\bg is used to remove the special meaning of certain characters or
- words to the shell. Quoting can be used to disable special treatment
+ _\bQ_\bu_\bo_\bt_\bi_\bn_\bg is used to remove the special meaning of certain characters or
+ words to the shell. Quoting can be used to disable special treatment
for special characters, to prevent reserved words from being recognized
as such, and to prevent parameter expansion.
- Each of the _\bm_\be_\bt_\ba_\bc_\bh_\ba_\br_\ba_\bc_\bt_\be_\br_\bs listed above under D\bDE\bEF\bFI\bIN\bNI\bIT\bTI\bIO\bON\bNS\bS has special
+ Each of the _\bm_\be_\bt_\ba_\bc_\bh_\ba_\br_\ba_\bc_\bt_\be_\br_\bs listed above under D\bDE\bEF\bFI\bIN\bNI\bIT\bTI\bIO\bON\bNS\bS has special
meaning to the shell and must be quoted if it is to represent itself.
- When the command history expansion facilities are being used (see H\bHI\bIS\bS-\b-
+ When the command history expansion facilities are being used (see H\bHI\bIS\bS-\b-
T\bTO\bOR\bRY\bY E\bEX\bXP\bPA\bAN\bNS\bSI\bIO\bON\bN below), the _\bh_\bi_\bs_\bt_\bo_\br_\by _\be_\bx_\bp_\ba_\bn_\bs_\bi_\bo_\bn character, usually !\b!, must
be quoted to prevent history expansion.
- There are three quoting mechanisms: the _\be_\bs_\bc_\ba_\bp_\be _\bc_\bh_\ba_\br_\ba_\bc_\bt_\be_\br, single
+ There are three quoting mechanisms: the _\be_\bs_\bc_\ba_\bp_\be _\bc_\bh_\ba_\br_\ba_\bc_\bt_\be_\br, single
quotes, and double quotes.
- A non-quoted backslash (\\b\) is the _\be_\bs_\bc_\ba_\bp_\be _\bc_\bh_\ba_\br_\ba_\bc_\bt_\be_\br. It preserves the
+ A non-quoted backslash (\\b\) is the _\be_\bs_\bc_\ba_\bp_\be _\bc_\bh_\ba_\br_\ba_\bc_\bt_\be_\br. It preserves the
literal value of the next character that follows, with the exception of
- <newline>. If a \\b\<newline> pair appears, and the backslash is not
- itself quoted, the \\b\<newline> is treated as a line continuation (that
+ <newline>. If a \\b\<newline> pair appears, and the backslash is not
+ itself quoted, the \\b\<newline> is treated as a line continuation (that
is, it is removed from the input stream and effectively ignored).
- Enclosing characters in single quotes preserves the literal value of
+ Enclosing characters in single quotes preserves the literal value of
each character within the quotes. A single quote may not occur between
single quotes, even when preceded by a backslash.
- Enclosing characters in double quotes preserves the literal value of
- all characters within the quotes, with the exception of $\b$, `\b`, \\b\, and,
- when history expansion is enabled, !\b!. The characters $\b$ and `\b` retain
- their special meaning within double quotes. The backslash retains its
- special meaning only when followed by one of the following characters:
- $\b$, `\b`, "\b", \\b\, or <\b<n\bne\bew\bwl\bli\bin\bne\be>\b>. A double quote may be quoted within double
+ Enclosing characters in double quotes preserves the literal value of
+ all characters within the quotes, with the exception of $\b$, `\b`, \\b\, and,
+ when history expansion is enabled, !\b!. The characters $\b$ and `\b` retain
+ their special meaning within double quotes. The backslash retains its
+ special meaning only when followed by one of the following characters:
+ $\b$, `\b`, "\b", \\b\, or <\b<n\bne\bew\bwl\bli\bin\bne\be>\b>. A double quote may be quoted within double
quotes by preceding it with a backslash. If enabled, history expansion
- will be performed unless an !\b! appearing in double quotes is escaped
+ will be performed unless an !\b! appearing in double quotes is escaped
using a backslash. The backslash preceding the !\b! is not removed.
- The special parameters *\b* and @\b@ have special meaning when in double
+ The special parameters *\b* and @\b@ have special meaning when in double
quotes (see P\bPA\bAR\bRA\bAM\bME\bET\bTE\bER\bRS\bS below).
Words of the form $\b$'_\bs_\bt_\br_\bi_\bn_\bg' are treated specially. The word expands to
- _\bs_\bt_\br_\bi_\bn_\bg, with backslash-escaped characters replaced as specified by the
- ANSI C standard. Backslash escape sequences, if present, are decoded
+ _\bs_\bt_\br_\bi_\bn_\bg, with backslash-escaped characters replaced as specified by the
+ ANSI C standard. Backslash escape sequences, if present, are decoded
as follows:
\\b\a\ba alert (bell)
\\b\b\bb backspace
\\b\\\b\ backslash
\\b\'\b' single quote
\\b\"\b" double quote
- \\b\_\bn_\bn_\bn the eight-bit character whose value is the octal value
+ \\b\_\bn_\bn_\bn the eight-bit character whose value is the octal value
_\bn_\bn_\bn (one to three digits)
- \\b\x\bx_\bH_\bH the eight-bit character whose value is the hexadecimal
+ \\b\x\bx_\bH_\bH the eight-bit character whose value is the hexadecimal
value _\bH_\bH (one or two hex digits)
- \\b\u\bu_\bH_\bH_\bH_\bH the Unicode (ISO/IEC 10646) character whose value is the
+ \\b\u\bu_\bH_\bH_\bH_\bH the Unicode (ISO/IEC 10646) character whose value is the
hexadecimal value _\bH_\bH_\bH_\bH (one to four hex digits)
\\b\U\bU_\bH_\bH_\bH_\bH_\bH_\bH_\bH_\bH
- the Unicode (ISO/IEC 10646) character whose value is the
+ the Unicode (ISO/IEC 10646) character whose value is the
hexadecimal value _\bH_\bH_\bH_\bH_\bH_\bH_\bH_\bH (one to eight hex digits)
\\b\c\bc_\bx a control-_\bx character
- The expanded result is single-quoted, as if the dollar sign had not
+ The expanded result is single-quoted, as if the dollar sign had not
been present.
A double-quoted string preceded by a dollar sign ($\b$"_\bs_\bt_\br_\bi_\bn_\bg") will cause
- the string to be translated according to the current locale. If the
- current locale is C\bC or P\bPO\bOS\bSI\bIX\bX, the dollar sign is ignored. If the
+ the string to be translated according to the current locale. If the
+ current locale is C\bC or P\bPO\bOS\bSI\bIX\bX, the dollar sign is ignored. If the
string is translated and replaced, the replacement is double-quoted.
P\bPA\bAR\bRA\bAM\bME\bET\bTE\bER\bRS\bS
- A _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is an entity that stores values. It can be a _\bn_\ba_\bm_\be, a num-
+ A _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is an entity that stores values. It can be a _\bn_\ba_\bm_\be, a num-
ber, or one of the special characters listed below under S\bSp\bpe\bec\bci\bia\bal\bl P\bPa\bar\bra\bam\bm-\b-
- e\bet\bte\ber\brs\bs. A _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be is a parameter denoted by a _\bn_\ba_\bm_\be. A variable has a
- _\bv_\ba_\bl_\bu_\be and zero or more _\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\be_\bs. Attributes are assigned using the
- d\bde\bec\bcl\bla\bar\bre\be builtin command (see d\bde\bec\bcl\bla\bar\bre\be below in S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS).
+ e\bet\bte\ber\brs\bs. A _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be is a parameter denoted by a _\bn_\ba_\bm_\be. A variable has a
+ _\bv_\ba_\bl_\bu_\be and zero or more _\ba_\bt_\bt_\br_\bi_\bb_\bu_\bt_\be_\bs. Attributes are assigned using the
+ d\bde\bec\bcl\bla\bar\bre\be builtin command (see d\bde\bec\bcl\bla\bar\bre\be below in S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS).
A parameter is set if it has been assigned a value. The null string is
- a valid value. Once a variable is set, it may be unset only by using
+ a valid value. Once a variable is set, it may be unset only by using
the u\bun\bns\bse\bet\bt builtin command (see S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below).
A _\bv_\ba_\br_\bi_\ba_\bb_\bl_\be may be assigned to by a statement of the form
_\bn_\ba_\bm_\be=[_\bv_\ba_\bl_\bu_\be]
- If _\bv_\ba_\bl_\bu_\be is not given, the variable is assigned the null string. All
- _\bv_\ba_\bl_\bu_\be_\bs undergo tilde expansion, parameter and variable expansion, com-
- mand substitution, arithmetic expansion, and quote removal (see E\bEX\bXP\bPA\bAN\bN-\b-
+ If _\bv_\ba_\bl_\bu_\be is not given, the variable is assigned the null string. All
+ _\bv_\ba_\bl_\bu_\be_\bs undergo tilde expansion, parameter and variable expansion, com-
+ mand substitution, arithmetic expansion, and quote removal (see E\bEX\bXP\bPA\bAN\bN-\b-
S\bSI\bIO\bON\bN below). If the variable has its i\bin\bnt\bte\beg\bge\ber\br attribute set, then _\bv_\ba_\bl_\bu_\be
is evaluated as an arithmetic expression even if the $((...)) expansion
- is not used (see A\bAr\bri\bit\bth\bhm\bme\bet\bti\bic\bc E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn below). Word splitting is not
- performed, with the exception of "\b"$\b$@\b@"\b" as explained below under S\bSp\bpe\bec\bci\bia\bal\bl
- P\bPa\bar\bra\bam\bme\bet\bte\ber\brs\bs. Pathname expansion is not performed. Assignment state-
- ments may also appear as arguments to the a\bal\bli\bia\bas\bs, d\bde\bec\bcl\bla\bar\bre\be, t\bty\byp\bpe\bes\bse\bet\bt,
- e\bex\bxp\bpo\bor\brt\bt, r\bre\bea\bad\bdo\bon\bnl\bly\by, and l\blo\boc\bca\bal\bl builtin commands. When in _\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be,
- these builtins may appear in a command after one or more instances of
+ is not used (see A\bAr\bri\bit\bth\bhm\bme\bet\bti\bic\bc E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn below). Word splitting is not
+ performed, with the exception of "\b"$\b$@\b@"\b" as explained below under S\bSp\bpe\bec\bci\bia\bal\bl
+ P\bPa\bar\bra\bam\bme\bet\bte\ber\brs\bs. Pathname expansion is not performed. Assignment state-
+ ments may also appear as arguments to the a\bal\bli\bia\bas\bs, d\bde\bec\bcl\bla\bar\bre\be, t\bty\byp\bpe\bes\bse\bet\bt,
+ e\bex\bxp\bpo\bor\brt\bt, r\bre\bea\bad\bdo\bon\bnl\bly\by, and l\blo\boc\bca\bal\bl builtin commands. When in _\bp_\bo_\bs_\bi_\bx _\bm_\bo_\bd_\be,
+ these builtins may appear in a command after one or more instances of
the c\bco\bom\bmm\bma\ban\bnd\bd builtin and retain these assignment statement properties.
- In the context where an assignment statement is assigning a value to a
+ In the context where an assignment statement is assigning a value to a
shell variable or array index, the += operator can be used to append to
or add to the variable's previous value. When += is applied to a vari-
- able for which the _\bi_\bn_\bt_\be_\bg_\be_\br attribute has been set, _\bv_\ba_\bl_\bu_\be is evaluated
- as an arithmetic expression and added to the variable's current value,
+ able for which the _\bi_\bn_\bt_\be_\bg_\be_\br attribute has been set, _\bv_\ba_\bl_\bu_\be is evaluated
+ as an arithmetic expression and added to the variable's current value,
which is also evaluated. When += is applied to an array variable using
- compound assignment (see A\bAr\brr\bra\bay\bys\bs below), the variable's value is not
+ compound assignment (see A\bAr\brr\bra\bay\bys\bs below), the variable's value is not
unset (as it is when using =), and new values are appended to the array
- beginning at one greater than the array's maximum index (for indexed
+ beginning at one greater than the array's maximum index (for indexed
arrays) or added as additional key-value pairs in an associative array.
- When applied to a string-valued variable, _\bv_\ba_\bl_\bu_\be is expanded and
+ When applied to a string-valued variable, _\bv_\ba_\bl_\bu_\be is expanded and
appended to the variable's value.
+ A variable can be assigned the _\bn_\ba_\bm_\be_\br_\be_\bf attribute using the -\b-n\bn option to
+ the d\bde\bec\bcl\bla\bar\bre\be or l\blo\boc\bca\bal\bl builtin commands (see the descriptions of d\bde\bec\bcl\bla\bar\bre\be
+ and l\blo\boc\bca\bal\bl below) to create a _\bn_\ba_\bm_\be_\br_\be_\bf, or a reference to another vari-
+ able. This allows variables to be manipulated indirectly. Whenever
+ the nameref variable is referenced or assigned to, the operation is
+ actually performed on the variable specified by the nameref variable's
+ value. A nameref is commonly used within shell functions to refer to a
+ variable whose name is passed as an argument to the function. For
+ instance, if a variable name is passed to a shell function as its first
+ argument, running
+ declare -n ref=$1
+ inside the function creates a nameref variable r\bre\bef\bf whose value is the
+ variable name passed as the first argument. References and assignments
+ to r\bre\bef\bf are treated as references and assignments to the variable whose
+ name was passed as $\b$1\b1. If the control variable in a f\bfo\bor\br loop has the
+ nameref attribute, the list of words can be a list of shell variables,
+ and a name reference will be established for each word in the list, in
+ turn, when the loop is executed. Array variables cannot be given the
+ -\b-n\bn attribute. However, nameref variables can reference array variables
+ and subscripted array variables. Namerefs can be unset using the -\b-n\bn
+ option to the u\bun\bns\bse\bet\bt builtin. Otherwise, if u\bun\bns\bse\bet\bt is executed with the
+ name of a nameref variable as an argument, the variable referenced by
+ the nameref variable will be unset.
+
P\bPo\bos\bsi\bit\bti\bio\bon\bna\bal\bl P\bPa\bar\bra\bam\bme\bet\bte\ber\brs\bs
- A _\bp_\bo_\bs_\bi_\bt_\bi_\bo_\bn_\ba_\bl _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is a parameter denoted by one or more digits,
+ A _\bp_\bo_\bs_\bi_\bt_\bi_\bo_\bn_\ba_\bl _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is a parameter denoted by one or more digits,
other than the single digit 0. Positional parameters are assigned from
- the shell's arguments when it is invoked, and may be reassigned using
- the s\bse\bet\bt builtin command. Positional parameters may not be assigned to
- with assignment statements. The positional parameters are temporarily
+ the shell's arguments when it is invoked, and may be reassigned using
+ the s\bse\bet\bt builtin command. Positional parameters may not be assigned to
+ with assignment statements. The positional parameters are temporarily
replaced when a shell function is executed (see F\bFU\bUN\bNC\bCT\bTI\bIO\bON\bNS\bS below).
- When a positional parameter consisting of more than a single digit is
+ When a positional parameter consisting of more than a single digit is
expanded, it must be enclosed in braces (see E\bEX\bXP\bPA\bAN\bNS\bSI\bIO\bON\bN below).
S\bSp\bpe\bec\bci\bia\bal\bl P\bPa\bar\bra\bam\bme\bet\bte\ber\brs\bs
- The shell treats several parameters specially. These parameters may
+ The shell treats several parameters specially. These parameters may
only be referenced; assignment to them is not allowed.
- *\b* Expands to the positional parameters, starting from one. When
- the expansion occurs within double quotes, it expands to a sin-
+ *\b* Expands to the positional parameters, starting from one. When
+ the expansion occurs within double quotes, it expands to a sin-
gle word with the value of each parameter separated by the first
character of the I\bIF\bFS\bS special variable. That is, "$\b$*\b*" is equiva-
lent to "$\b$1\b1_\bc$\b$2\b2_\bc.\b..\b..\b.", where _\bc is the first character of the value
- of the I\bIF\bFS\bS variable. If I\bIF\bFS\bS is unset, the parameters are sepa-
- rated by spaces. If I\bIF\bFS\bS is null, the parameters are joined
+ of the I\bIF\bFS\bS variable. If I\bIF\bFS\bS is unset, the parameters are sepa-
+ rated by spaces. If I\bIF\bFS\bS is null, the parameters are joined
without intervening separators.
- @\b@ Expands to the positional parameters, starting from one. When
+ @\b@ Expands to the positional parameters, starting from one. When
the expansion occurs within double quotes, each parameter
expands to a separate word. That is, "$\b$@\b@" is equivalent to "$\b$1\b1"
- "$\b$2\b2" ... If the double-quoted expansion occurs within a word,
- the expansion of the first parameter is joined with the begin-
- ning part of the original word, and the expansion of the last
- parameter is joined with the last part of the original word.
- When there are no positional parameters, "$\b$@\b@" and $\b$@\b@ expand to
+ "$\b$2\b2" ... If the double-quoted expansion occurs within a word,
+ the expansion of the first parameter is joined with the begin-
+ ning part of the original word, and the expansion of the last
+ parameter is joined with the last part of the original word.
+ When there are no positional parameters, "$\b$@\b@" and $\b$@\b@ expand to
nothing (i.e., they are removed).
#\b# Expands to the number of positional parameters in decimal.
- ?\b? Expands to the exit status of the most recently executed fore-
+ ?\b? Expands to the exit status of the most recently executed fore-
ground pipeline.
- -\b- Expands to the current option flags as specified upon invoca-
- tion, by the s\bse\bet\bt builtin command, or those set by the shell
+ -\b- Expands to the current option flags as specified upon invoca-
+ tion, by the s\bse\bet\bt builtin command, or those set by the shell
itself (such as the -\b-i\bi option).
- $\b$ Expands to the process ID of the shell. In a () subshell, it
- expands to the process ID of the current shell, not the sub-
+ $\b$ Expands to the process ID of the shell. In a () subshell, it
+ expands to the process ID of the current shell, not the sub-
shell.
- !\b! Expands to the process ID of the most recently executed back-
+ !\b! Expands to the process ID of the most recently executed back-
ground (asynchronous) command.
- 0\b0 Expands to the name of the shell or shell script. This is set
+ 0\b0 Expands to the name of the shell or shell script. This is set
at shell initialization. If b\bba\bas\bsh\bh is invoked with a file of com-
- mands, $\b$0\b0 is set to the name of that file. If b\bba\bas\bsh\bh is started
- with the -\b-c\bc option, then $\b$0\b0 is set to the first argument after
- the string to be executed, if one is present. Otherwise, it is
- set to the filename used to invoke b\bba\bas\bsh\bh, as given by argument
+ mands, $\b$0\b0 is set to the name of that file. If b\bba\bas\bsh\bh is started
+ with the -\b-c\bc option, then $\b$0\b0 is set to the first argument after
+ the string to be executed, if one is present. Otherwise, it is
+ set to the filename used to invoke b\bba\bas\bsh\bh, as given by argument
zero.
- _\b_ At shell startup, set to the absolute pathname used to invoke
- the shell or shell script being executed as passed in the envi-
- ronment or argument list. Subsequently, expands to the last
- argument to the previous command, after expansion. Also set to
- the full pathname used to invoke each command executed and
+ _\b_ At shell startup, set to the absolute pathname used to invoke
+ the shell or shell script being executed as passed in the envi-
+ ronment or argument list. Subsequently, expands to the last
+ argument to the previous command, after expansion. Also set to
+ the full pathname used to invoke each command executed and
placed in the environment exported to that command. When check-
- ing mail, this parameter holds the name of the mail file cur-
+ ing mail, this parameter holds the name of the mail file cur-
rently being checked.
S\bSh\bhe\bel\bll\bl V\bVa\bar\bri\bia\bab\bbl\ble\bes\bs
The following variables are set by the shell:
- B\bBA\bAS\bSH\bH Expands to the full filename used to invoke this instance of
+ B\bBA\bAS\bSH\bH Expands to the full filename used to invoke this instance of
b\bba\bas\bsh\bh.
B\bBA\bAS\bSH\bHO\bOP\bPT\bTS\bS
- A colon-separated list of enabled shell options. Each word in
- the list is a valid argument for the -\b-s\bs option to the s\bsh\bho\bop\bpt\bt
+ A colon-separated list of enabled shell options. Each word in
+ the list is a valid argument for the -\b-s\bs option to the s\bsh\bho\bop\bpt\bt
builtin command (see S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below). The options
- appearing in B\bBA\bAS\bSH\bHO\bOP\bPT\bTS\bS are those reported as _\bo_\bn by s\bsh\bho\bop\bpt\bt. If
- this variable is in the environment when b\bba\bas\bsh\bh starts up, each
- shell option in the list will be enabled before reading any
+ appearing in B\bBA\bAS\bSH\bHO\bOP\bPT\bTS\bS are those reported as _\bo_\bn by s\bsh\bho\bop\bpt\bt. If
+ this variable is in the environment when b\bba\bas\bsh\bh starts up, each
+ shell option in the list will be enabled before reading any
startup files. This variable is read-only.
B\bBA\bAS\bSH\bHP\bPI\bID\bD
- Expands to the process ID of the current b\bba\bas\bsh\bh process. This
- differs from $\b$$\b$ under certain circumstances, such as subshells
+ Expands to the process ID of the current b\bba\bas\bsh\bh process. This
+ differs from $\b$$\b$ under certain circumstances, such as subshells
that do not require b\bba\bas\bsh\bh to be re-initialized.
B\bBA\bAS\bSH\bH_\b_A\bAL\bLI\bIA\bAS\bSE\bES\bS
- An associative array variable whose members correspond to the
- internal list of aliases as maintained by the a\bal\bli\bia\bas\bs builtin.
+ An associative array variable whose members correspond to the
+ internal list of aliases as maintained by the a\bal\bli\bia\bas\bs builtin.
Elements added to this array appear in the alias list; unsetting
- array elements cause aliases to be removed from the alias list.
+ array elements cause aliases to be removed from the alias list.
B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGC\bC
- An array variable whose values are the number of parameters in
+ An array variable whose values are the number of parameters in
each frame of the current b\bba\bas\bsh\bh execution call stack. The number
- of parameters to the current subroutine (shell function or
- script executed with .\b. or s\bso\bou\bur\brc\bce\be) is at the top of the stack.
- When a subroutine is executed, the number of parameters passed
+ of parameters to the current subroutine (shell function or
+ script executed with .\b. or s\bso\bou\bur\brc\bce\be) is at the top of the stack.
+ When a subroutine is executed, the number of parameters passed
is pushed onto B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGC\bC. The shell sets B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGC\bC only when in
- extended debugging mode (see the description of the e\bex\bxt\btd\bde\beb\bbu\bug\bg
+ extended debugging mode (see the description of the e\bex\bxt\btd\bde\beb\bbu\bug\bg
option to the s\bsh\bho\bop\bpt\bt builtin below)
B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV
- An array variable containing all of the parameters in the cur-
+ An array variable containing all of the parameters in the cur-
rent b\bba\bas\bsh\bh execution call stack. The final parameter of the last
- subroutine call is at the top of the stack; the first parameter
+ subroutine call is at the top of the stack; the first parameter
of the initial call is at the bottom. When a subroutine is exe-
- cuted, the parameters supplied are pushed onto B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV. The
- shell sets B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV only when in extended debugging mode (see
- the description of the e\bex\bxt\btd\bde\beb\bbu\bug\bg option to the s\bsh\bho\bop\bpt\bt builtin
+ cuted, the parameters supplied are pushed onto B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV. The
+ shell sets B\bBA\bAS\bSH\bH_\b_A\bAR\bRG\bGV\bV only when in extended debugging mode (see
+ the description of the e\bex\bxt\btd\bde\beb\bbu\bug\bg option to the s\bsh\bho\bop\bpt\bt builtin
below)
B\bBA\bAS\bSH\bH_\b_C\bCM\bMD\bDS\bS
- An associative array variable whose members correspond to the
- internal hash table of commands as maintained by the h\bha\bas\bsh\bh
+ An associative array variable whose members correspond to the
+ internal hash table of commands as maintained by the h\bha\bas\bsh\bh
builtin. Elements added to this array appear in the hash table;
- unsetting array elements cause commands to be removed from the
+ unsetting array elements cause commands to be removed from the
hash table.
B\bBA\bAS\bSH\bH_\b_C\bCO\bOM\bMM\bMA\bAN\bND\bD
- The command currently being executed or about to be executed,
+ The command currently being executed or about to be executed,
unless the shell is executing a command as the result of a trap,
- in which case it is the command executing at the time of the
+ in which case it is the command executing at the time of the
trap.
B\bBA\bAS\bSH\bH_\b_E\bEX\bXE\bEC\bCU\bUT\bTI\bIO\bON\bN_\b_S\bST\bTR\bRI\bIN\bNG\bG
The command argument to the -\b-c\bc invocation option.
B\bBA\bAS\bSH\bH_\b_L\bLI\bIN\bNE\bEN\bNO\bO
- An array variable whose members are the line numbers in source
- files where each corresponding member of F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE was invoked.
+ An array variable whose members are the line numbers in source
+ files where each corresponding member of F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE was invoked.
$\b${\b{B\bBA\bAS\bSH\bH_\b_L\bLI\bIN\bNE\bEN\bNO\bO[\b[_\b$_\bi]\b]}\b} is the line number in the source file
($\b${\b{B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE[\b[_\b$_\bi_\b+_\b1]\b]}\b}) where $\b${\b{F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE[\b[_\b$_\bi]\b]}\b} was called (or
- $\b${\b{B\bBA\bAS\bSH\bH_\b_L\bLI\bIN\bNE\bEN\bNO\bO[\b[_\b$_\bi_\b-_\b1]\b]}\b} if referenced within another shell func-
+ $\b${\b{B\bBA\bAS\bSH\bH_\b_L\bLI\bIN\bNE\bEN\bNO\bO[\b[_\b$_\bi_\b-_\b1]\b]}\b} if referenced within another shell func-
tion). Use L\bLI\bIN\bNE\bEN\bNO\bO to obtain the current line number.
B\bBA\bAS\bSH\bH_\b_R\bRE\bEM\bMA\bAT\bTC\bCH\bH
- An array variable whose members are assigned by the =\b=~\b~ binary
- operator to the [\b[[\b[ conditional command. The element with index
- 0 is the portion of the string matching the entire regular
- expression. The element with index _\bn is the portion of the
+ An array variable whose members are assigned by the =\b=~\b~ binary
+ operator to the [\b[[\b[ conditional command. The element with index
+ 0 is the portion of the string matching the entire regular
+ expression. The element with index _\bn is the portion of the
string matching the _\bnth parenthesized subexpression. This vari-
able is read-only.
B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE
- An array variable whose members are the source filenames where
- the corresponding shell function names in the F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE array
- variable are defined. The shell function $\b${\b{F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE[\b[_\b$_\bi]\b]}\b} is
- defined in the file $\b${\b{B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE[\b[_\b$_\bi]\b]}\b} and called from
+ An array variable whose members are the source filenames where
+ the corresponding shell function names in the F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE array
+ variable are defined. The shell function $\b${\b{F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE[\b[_\b$_\bi]\b]}\b} is
+ defined in the file $\b${\b{B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE[\b[_\b$_\bi]\b]}\b} and called from
$\b${\b{B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE[\b[_\b$_\bi_\b+_\b1]\b]}\b}.
B\bBA\bAS\bSH\bH_\b_S\bSU\bUB\bBS\bSH\bHE\bEL\bLL\bL
- Incremented by one within each subshell or subshell environment
- when the shell begins executing in that environment. The ini-
+ Incremented by one within each subshell or subshell environment
+ when the shell begins executing in that environment. The ini-
tial value is 0.
B\bBA\bAS\bSH\bH_\b_V\bVE\bER\bRS\bSI\bIN\bNF\bFO\bO
A readonly array variable whose members hold version information
- for this instance of b\bba\bas\bsh\bh. The values assigned to the array
+ for this instance of b\bba\bas\bsh\bh. The values assigned to the array
members are as follows:
- B\bBA\bAS\bSH\bH_\b_V\bVE\bER\bRS\bSI\bIN\bNF\bFO\bO[\b[0]\b] The major version number (the _\br_\be_\bl_\be_\ba_\bs_\be).
- B\bBA\bAS\bSH\bH_\b_V\bVE\bER\bRS\bSI\bIN\bNF\bFO\bO[\b[1]\b] The minor version number (the _\bv_\be_\br_\bs_\bi_\bo_\bn).
+ B\bBA\bAS\bSH\bH_\b_V\bVE\bER\bRS\bSI\bIN\bNF\bFO\bO[\b[0]\b] The major version number (the _\br_\be_\bl_\be_\ba_\bs_\be).
+ B\bBA\bAS\bSH\bH_\b_V\bVE\bER\bRS\bSI\bIN\bNF\bFO\bO[\b[1]\b] The minor version number (the _\bv_\be_\br_\bs_\bi_\bo_\bn).
B\bBA\bAS\bSH\bH_\b_V\bVE\bER\bRS\bSI\bIN\bNF\bFO\bO[\b[2]\b] The patch level.
B\bBA\bAS\bSH\bH_\b_V\bVE\bER\bRS\bSI\bIN\bNF\bFO\bO[\b[3]\b] The build version.
B\bBA\bAS\bSH\bH_\b_V\bVE\bER\bRS\bSI\bIN\bNF\bFO\bO[\b[4]\b] The release status (e.g., _\bb_\be_\bt_\ba_\b1).
B\bBA\bAS\bSH\bH_\b_V\bVE\bER\bRS\bSI\bIN\bNF\bFO\bO[\b[5]\b] The value of M\bMA\bAC\bCH\bHT\bTY\bYP\bPE\bE.
B\bBA\bAS\bSH\bH_\b_V\bVE\bER\bRS\bSI\bIO\bON\bN
- Expands to a string describing the version of this instance of
+ Expands to a string describing the version of this instance of
b\bba\bas\bsh\bh.
C\bCO\bOM\bMP\bP_\b_C\bCW\bWO\bOR\bRD\bD
- An index into $\b${\b{C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDS\bS}\b} of the word containing the current
+ An index into $\b${\b{C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDS\bS}\b} of the word containing the current
cursor position. This variable is available only in shell func-
- tions invoked by the programmable completion facilities (see
+ tions invoked by the programmable completion facilities (see
P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn below).
C\bCO\bOM\bMP\bP_\b_K\bKE\bEY\bY
The key (or final key of a key sequence) used to invoke the cur-
rent completion function.
C\bCO\bOM\bMP\bP_\b_L\bLI\bIN\bNE\bE
- The current command line. This variable is available only in
- shell functions and external commands invoked by the pro-
- grammable completion facilities (see P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn
+ The current command line. This variable is available only in
+ shell functions and external commands invoked by the pro-
+ grammable completion facilities (see P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn
below).
C\bCO\bOM\bMP\bP_\b_P\bPO\bOI\bIN\bNT\bT
- The index of the current cursor position relative to the begin-
- ning of the current command. If the current cursor position is
+ The index of the current cursor position relative to the begin-
+ ning of the current command. If the current cursor position is
at the end of the current command, the value of this variable is
- equal to $\b${\b{#\b#C\bCO\bOM\bMP\bP_\b_L\bLI\bIN\bNE\bE}\b}. This variable is available only in
- shell functions and external commands invoked by the pro-
- grammable completion facilities (see P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn
+ equal to $\b${\b{#\b#C\bCO\bOM\bMP\bP_\b_L\bLI\bIN\bNE\bE}\b}. This variable is available only in
+ shell functions and external commands invoked by the pro-
+ grammable completion facilities (see P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn
below).
C\bCO\bOM\bMP\bP_\b_T\bTY\bYP\bPE\bE
- Set to an integer value corresponding to the type of completion
- attempted that caused a completion function to be called: _\bT_\bA_\bB,
- for normal completion, _\b?, for listing completions after succes-
- sive tabs, _\b!, for listing alternatives on partial word comple-
- tion, _\b@, to list completions if the word is not unmodified, or
- _\b%, for menu completion. This variable is available only in
- shell functions and external commands invoked by the pro-
- grammable completion facilities (see P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn
+ Set to an integer value corresponding to the type of completion
+ attempted that caused a completion function to be called: _\bT_\bA_\bB,
+ for normal completion, _\b?, for listing completions after succes-
+ sive tabs, _\b!, for listing alternatives on partial word comple-
+ tion, _\b@, to list completions if the word is not unmodified, or
+ _\b%, for menu completion. This variable is available only in
+ shell functions and external commands invoked by the pro-
+ grammable completion facilities (see P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn
below).
C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS
- The set of characters that the r\bre\bea\bad\bdl\bli\bin\bne\be library treats as word
- separators when performing word completion. If C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS
- is unset, it loses its special properties, even if it is subse-
+ The set of characters that the r\bre\bea\bad\bdl\bli\bin\bne\be library treats as word
+ separators when performing word completion. If C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS
+ is unset, it loses its special properties, even if it is subse-
quently reset.
C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDS\bS
- An array variable (see A\bAr\brr\bra\bay\bys\bs below) consisting of the individ-
- ual words in the current command line. The line is split into
- words as r\bre\bea\bad\bdl\bli\bin\bne\be would split it, using C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS as
+ An array variable (see A\bAr\brr\bra\bay\bys\bs below) consisting of the individ-
+ ual words in the current command line. The line is split into
+ words as r\bre\bea\bad\bdl\bli\bin\bne\be would split it, using C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS as
described above. This variable is available only in shell func-
- tions invoked by the programmable completion facilities (see
+ tions invoked by the programmable completion facilities (see
P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn below).
- C\bCO\bOP\bPR\bRO\bOC\bC An array variable (see A\bAr\brr\bra\bay\bys\bs below) created to hold the file
- descriptors for output from and input to an unnamed coprocess
+ C\bCO\bOP\bPR\bRO\bOC\bC An array variable (see A\bAr\brr\bra\bay\bys\bs below) created to hold the file
+ descriptors for output from and input to an unnamed coprocess
(see C\bCo\bop\bpr\bro\boc\bce\bes\bss\bse\bes\bs above).
D\bDI\bIR\bRS\bST\bTA\bAC\bCK\bK
An array variable (see A\bAr\brr\bra\bay\bys\bs below) containing the current con-
- tents of the directory stack. Directories appear in the stack
- in the order they are displayed by the d\bdi\bir\brs\bs builtin. Assigning
+ tents of the directory stack. Directories appear in the stack
+ in the order they are displayed by the d\bdi\bir\brs\bs builtin. Assigning
to members of this array variable may be used to modify directo-
- ries already in the stack, but the p\bpu\bus\bsh\bhd\bd and p\bpo\bop\bpd\bd builtins must
+ ries already in the stack, but the p\bpu\bus\bsh\bhd\bd and p\bpo\bop\bpd\bd builtins must
be used to add and remove directories. Assignment to this vari-
- able will not change the current directory. If D\bDI\bIR\bRS\bST\bTA\bAC\bCK\bK is
- unset, it loses its special properties, even if it is subse-
+ able will not change the current directory. If D\bDI\bIR\bRS\bST\bTA\bAC\bCK\bK is
+ unset, it loses its special properties, even if it is subse-
quently reset.
- E\bEU\bUI\bID\bD Expands to the effective user ID of the current user, initial-
+ E\bEU\bUI\bID\bD Expands to the effective user ID of the current user, initial-
ized at shell startup. This variable is readonly.
F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE
- An array variable containing the names of all shell functions
+ An array variable containing the names of all shell functions
currently in the execution call stack. The element with index 0
is the name of any currently-executing shell function. The bot-
- tom-most element (the one with the highest index) is "main".
- This variable exists only when a shell function is executing.
- Assignments to F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE have no effect and return an error sta-
- tus. If F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE is unset, it loses its special properties,
+ tom-most element (the one with the highest index) is "main".
+ This variable exists only when a shell function is executing.
+ Assignments to F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE have no effect and return an error sta-
+ tus. If F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE is unset, it loses its special properties,
even if it is subsequently reset.
- This variable can be used with B\bBA\bAS\bSH\bH_\b_L\bLI\bIN\bNE\bEN\bNO\bO and B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE.
- Each element of F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE has corresponding elements in
- B\bBA\bAS\bSH\bH_\b_L\bLI\bIN\bNE\bEN\bNO\bO and B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE to describe the call stack. For
- instance, $\b${\b{F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE[\b[_\b$_\bi]\b]}\b} was called from the file
- $\b${\b{B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE[\b[_\b$_\bi_\b+_\b1]\b]}\b} at line number $\b${\b{B\bBA\bAS\bSH\bH_\b_L\bLI\bIN\bNE\bEN\bNO\bO[\b[_\b$_\bi]\b]}\b}. The
+ This variable can be used with B\bBA\bAS\bSH\bH_\b_L\bLI\bIN\bNE\bEN\bNO\bO and B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE.
+ Each element of F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE has corresponding elements in
+ B\bBA\bAS\bSH\bH_\b_L\bLI\bIN\bNE\bEN\bNO\bO and B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE to describe the call stack. For
+ instance, $\b${\b{F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE[\b[_\b$_\bi]\b]}\b} was called from the file
+ $\b${\b{B\bBA\bAS\bSH\bH_\b_S\bSO\bOU\bUR\bRC\bCE\bE[\b[_\b$_\bi_\b+_\b1]\b]}\b} at line number $\b${\b{B\bBA\bAS\bSH\bH_\b_L\bLI\bIN\bNE\bEN\bNO\bO[\b[_\b$_\bi]\b]}\b}. The
c\bca\bal\bll\ble\ber\br builtin displays the current call stack using this infor-
mation.
- G\bGR\bRO\bOU\bUP\bPS\bS An array variable containing the list of groups of which the
- current user is a member. Assignments to G\bGR\bRO\bOU\bUP\bPS\bS have no effect
- and return an error status. If G\bGR\bRO\bOU\bUP\bPS\bS is unset, it loses its
+ G\bGR\bRO\bOU\bUP\bPS\bS An array variable containing the list of groups of which the
+ current user is a member. Assignments to G\bGR\bRO\bOU\bUP\bPS\bS have no effect
+ and return an error status. If G\bGR\bRO\bOU\bUP\bPS\bS is unset, it loses its
special properties, even if it is subsequently reset.
H\bHI\bIS\bST\bTC\bCM\bMD\bD
The history number, or index in the history list, of the current
- command. If H\bHI\bIS\bST\bTC\bCM\bMD\bD is unset, it loses its special properties,
+ command. If H\bHI\bIS\bST\bTC\bCM\bMD\bD is unset, it loses its special properties,
even if it is subsequently reset.
H\bHO\bOS\bST\bTN\bNA\bAM\bME\bE
Automatically set to the name of the current host.
H\bHO\bOS\bST\bTT\bTY\bYP\bPE\bE
- Automatically set to a string that uniquely describes the type
- of machine on which b\bba\bas\bsh\bh is executing. The default is system-
+ Automatically set to a string that uniquely describes the type
+ of machine on which b\bba\bas\bsh\bh is executing. The default is system-
dependent.
- L\bLI\bIN\bNE\bEN\bNO\bO Each time this parameter is referenced, the shell substitutes a
- decimal number representing the current sequential line number
- (starting with 1) within a script or function. When not in a
- script or function, the value substituted is not guaranteed to
+ L\bLI\bIN\bNE\bEN\bNO\bO Each time this parameter is referenced, the shell substitutes a
+ decimal number representing the current sequential line number
+ (starting with 1) within a script or function. When not in a
+ script or function, the value substituted is not guaranteed to
be meaningful. If L\bLI\bIN\bNE\bEN\bNO\bO is unset, it loses its special proper-
ties, even if it is subsequently reset.
M\bMA\bAC\bCH\bHT\bTY\bYP\bPE\bE
- Automatically set to a string that fully describes the system
- type on which b\bba\bas\bsh\bh is executing, in the standard GNU _\bc_\bp_\bu_\b-_\bc_\bo_\bm_\b-
+ Automatically set to a string that fully describes the system
+ type on which b\bba\bas\bsh\bh is executing, in the standard GNU _\bc_\bp_\bu_\b-_\bc_\bo_\bm_\b-
_\bp_\ba_\bn_\by_\b-_\bs_\by_\bs_\bt_\be_\bm format. The default is system-dependent.
M\bMA\bAP\bPF\bFI\bIL\bLE\bE
- An array variable (see A\bAr\brr\bra\bay\bys\bs below) created to hold the text
+ An array variable (see A\bAr\brr\bra\bay\bys\bs below) created to hold the text
read by the m\bma\bap\bpf\bfi\bil\ble\be builtin when no variable name is supplied.
O\bOL\bLD\bDP\bPW\bWD\bD The previous working directory as set by the c\bcd\bd command.
- O\bOP\bPT\bTA\bAR\bRG\bG The value of the last option argument processed by the g\bge\bet\bto\bop\bpt\bts\bs
+ O\bOP\bPT\bTA\bAR\bRG\bG The value of the last option argument processed by the g\bge\bet\bto\bop\bpt\bts\bs
builtin command (see S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below).
- O\bOP\bPT\bTI\bIN\bND\bD The index of the next argument to be processed by the g\bge\bet\bto\bop\bpt\bts\bs
+ O\bOP\bPT\bTI\bIN\bND\bD The index of the next argument to be processed by the g\bge\bet\bto\bop\bpt\bts\bs
builtin command (see S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below).
- O\bOS\bST\bTY\bYP\bPE\bE Automatically set to a string that describes the operating sys-
- tem on which b\bba\bas\bsh\bh is executing. The default is system-depen-
+ O\bOS\bST\bTY\bYP\bPE\bE Automatically set to a string that describes the operating sys-
+ tem on which b\bba\bas\bsh\bh is executing. The default is system-depen-
dent.
P\bPI\bIP\bPE\bES\bST\bTA\bAT\bTU\bUS\bS
- An array variable (see A\bAr\brr\bra\bay\bys\bs below) containing a list of exit
- status values from the processes in the most-recently-executed
+ An array variable (see A\bAr\brr\bra\bay\bys\bs below) containing a list of exit
+ status values from the processes in the most-recently-executed
foreground pipeline (which may contain only a single command).
- P\bPP\bPI\bID\bD The process ID of the shell's parent. This variable is read-
+ P\bPP\bPI\bID\bD The process ID of the shell's parent. This variable is read-
only.
P\bPW\bWD\bD The current working directory as set by the c\bcd\bd command.
R\bRA\bAN\bND\bDO\bOM\bM Each time this parameter is referenced, a random integer between
0 and 32767 is generated. The sequence of random numbers may be
initialized by assigning a value to R\bRA\bAN\bND\bDO\bOM\bM. If R\bRA\bAN\bND\bDO\bOM\bM is unset,
- it loses its special properties, even if it is subsequently
+ it loses its special properties, even if it is subsequently
reset.
R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE_\b_L\bLI\bIN\bNE\bE
The contents of the r\bre\bea\bad\bdl\bli\bin\bne\be line buffer, for use with "bind -x"
R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE_\b_P\bPO\bOI\bIN\bNT\bT
The position of the insertion point in the r\bre\bea\bad\bdl\bli\bin\bne\be line buffer,
for use with "bind -x" (see S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below).
- R\bRE\bEP\bPL\bLY\bY Set to the line of input read by the r\bre\bea\bad\bd builtin command when
+ R\bRE\bEP\bPL\bLY\bY Set to the line of input read by the r\bre\bea\bad\bd builtin command when
no arguments are supplied.
S\bSE\bEC\bCO\bON\bND\bDS\bS
- Each time this parameter is referenced, the number of seconds
- since shell invocation is returned. If a value is assigned to
- S\bSE\bEC\bCO\bON\bND\bDS\bS, the value returned upon subsequent references is the
- number of seconds since the assignment plus the value assigned.
+ Each time this parameter is referenced, the number of seconds
+ since shell invocation is returned. If a value is assigned to
+ S\bSE\bEC\bCO\bON\bND\bDS\bS, the value returned upon subsequent references is the
+ number of seconds since the assignment plus the value assigned.
If S\bSE\bEC\bCO\bON\bND\bDS\bS is unset, it loses its special properties, even if it
is subsequently reset.
S\bSH\bHE\bEL\bLL\bLO\bOP\bPT\bTS\bS
- A colon-separated list of enabled shell options. Each word in
- the list is a valid argument for the -\b-o\bo option to the s\bse\bet\bt
+ A colon-separated list of enabled shell options. Each word in
+ the list is a valid argument for the -\b-o\bo option to the s\bse\bet\bt
builtin command (see S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below). The options
- appearing in S\bSH\bHE\bEL\bLL\bLO\bOP\bPT\bTS\bS are those reported as _\bo_\bn by s\bse\bet\bt -\b-o\bo. If
- this variable is in the environment when b\bba\bas\bsh\bh starts up, each
- shell option in the list will be enabled before reading any
+ appearing in S\bSH\bHE\bEL\bLL\bLO\bOP\bPT\bTS\bS are those reported as _\bo_\bn by s\bse\bet\bt -\b-o\bo. If
+ this variable is in the environment when b\bba\bas\bsh\bh starts up, each
+ shell option in the list will be enabled before reading any
startup files. This variable is read-only.
S\bSH\bHL\bLV\bVL\bL Incremented by one each time an instance of b\bba\bas\bsh\bh is started.
U\bUI\bID\bD Expands to the user ID of the current user, initialized at shell
startup. This variable is readonly.
- The following variables are used by the shell. In some cases, b\bba\bas\bsh\bh
+ The following variables are used by the shell. In some cases, b\bba\bas\bsh\bh
assigns a default value to a variable; these cases are noted below.
B\bBA\bAS\bSH\bH_\b_E\bEN\bNV\bV
- If this parameter is set when b\bba\bas\bsh\bh is executing a shell script,
- its value is interpreted as a filename containing commands to
+ If this parameter is set when b\bba\bas\bsh\bh is executing a shell script,
+ its value is interpreted as a filename containing commands to
initialize the shell, as in _\b~_\b/_\b._\bb_\ba_\bs_\bh_\br_\bc. The value of B\bBA\bAS\bSH\bH_\b_E\bEN\bNV\bV is
- subjected to parameter expansion, command substitution, and
- arithmetic expansion before being interpreted as a filename.
+ subjected to parameter expansion, command substitution, and
+ arithmetic expansion before being interpreted as a filename.
P\bPA\bAT\bTH\bH is not used to search for the resultant filename.
B\bBA\bAS\bSH\bH_\b_X\bXT\bTR\bRA\bAC\bCE\bEF\bFD\bD
- If set to an integer corresponding to a valid file descriptor,
- b\bba\bas\bsh\bh will write the trace output generated when _\bs_\be_\bt _\b-_\bx is
- enabled to that file descriptor. The file descriptor is closed
- when B\bBA\bAS\bSH\bH_\b_X\bXT\bTR\bRA\bAC\bCE\bEF\bFD\bD is unset or assigned a new value. Unsetting
- B\bBA\bAS\bSH\bH_\b_X\bXT\bTR\bRA\bAC\bCE\bEF\bFD\bD or assigning it the empty string causes the trace
- output to be sent to the standard error. Note that setting
+ If set to an integer corresponding to a valid file descriptor,
+ b\bba\bas\bsh\bh will write the trace output generated when _\bs_\be_\bt _\b-_\bx is
+ enabled to that file descriptor. The file descriptor is closed
+ when B\bBA\bAS\bSH\bH_\b_X\bXT\bTR\bRA\bAC\bCE\bEF\bFD\bD is unset or assigned a new value. Unsetting
+ B\bBA\bAS\bSH\bH_\b_X\bXT\bTR\bRA\bAC\bCE\bEF\bFD\bD or assigning it the empty string causes the trace
+ output to be sent to the standard error. Note that setting
B\bBA\bAS\bSH\bH_\b_X\bXT\bTR\bRA\bAC\bCE\bEF\bFD\bD to 2 (the standard error file descriptor) and then
unsetting it will result in the standard error being closed.
- C\bCD\bDP\bPA\bAT\bTH\bH The search path for the c\bcd\bd command. This is a colon-separated
- list of directories in which the shell looks for destination
- directories specified by the c\bcd\bd command. A sample value is
+ C\bCD\bDP\bPA\bAT\bTH\bH The search path for the c\bcd\bd command. This is a colon-separated
+ list of directories in which the shell looks for destination
+ directories specified by the c\bcd\bd command. A sample value is
".:~:/usr".
C\bCO\bOL\bLU\bUM\bMN\bNS\bS
- Used by the s\bse\bel\ble\bec\bct\bt compound command to determine the terminal
- width when printing selection lists. Automatically set in an
+ Used by the s\bse\bel\ble\bec\bct\bt compound command to determine the terminal
+ width when printing selection lists. Automatically set in an
interactive shell upon receipt of a S\bSI\bIG\bGW\bWI\bIN\bNC\bCH\bH.
C\bCO\bOM\bMP\bPR\bRE\bEP\bPL\bLY\bY
An array variable from which b\bba\bas\bsh\bh reads the possible completions
- generated by a shell function invoked by the programmable com-
- pletion facility (see P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn below). Each
+ generated by a shell function invoked by the programmable com-
+ pletion facility (see P\bPr\bro\bog\bgr\bra\bam\bmm\bma\bab\bbl\ble\be C\bCo\bom\bmp\bpl\ble\bet\bti\bio\bon\bn below). Each
array element contains one possible completion.
- E\bEM\bMA\bAC\bCS\bS If b\bba\bas\bsh\bh finds this variable in the environment when the shell
- starts with value "t", it assumes that the shell is running in
+ E\bEM\bMA\bAC\bCS\bS If b\bba\bas\bsh\bh finds this variable in the environment when the shell
+ starts with value "t", it assumes that the shell is running in
an Emacs shell buffer and disables line editing.
- E\bEN\bNV\bV Similar to B\bBA\bAS\bSH\bH_\b_E\bEN\bNV\bV; used when the shell is invoked in POSIX
+ E\bEN\bNV\bV Similar to B\bBA\bAS\bSH\bH_\b_E\bEN\bNV\bV; used when the shell is invoked in POSIX
mode.
F\bFC\bCE\bED\bDI\bIT\bT The default editor for the f\bfc\bc builtin command.
F\bFI\bIG\bGN\bNO\bOR\bRE\bE
- A colon-separated list of suffixes to ignore when performing
+ A colon-separated list of suffixes to ignore when performing
filename completion (see R\bRE\bEA\bAD\bDL\bLI\bIN\bNE\bE below). A filename whose suf-
- fix matches one of the entries in F\bFI\bIG\bGN\bNO\bOR\bRE\bE is excluded from the
+ fix matches one of the entries in F\bFI\bIG\bGN\bNO\bOR\bRE\bE is excluded from the
list of matched filenames. A sample value is ".o:~".
F\bFU\bUN\bNC\bCN\bNE\bES\bST\bT
- If set to a numeric value greater than 0, defines a maximum
- function nesting level. Function invocations that exceed this
+ If set to a numeric value greater than 0, defines a maximum
+ function nesting level. Function invocations that exceed this
nesting level will cause the current command to abort.
G\bGL\bLO\bOB\bBI\bIG\bGN\bNO\bOR\bRE\bE
A colon-separated list of patterns defining the set of filenames
to be ignored by pathname expansion. If a filename matched by a
- pathname expansion pattern also matches one of the patterns in
+ pathname expansion pattern also matches one of the patterns in
G\bGL\bLO\bOB\bBI\bIG\bGN\bNO\bOR\bRE\bE, it is removed from the list of matches.
H\bHI\bIS\bST\bTC\bCO\bON\bNT\bTR\bRO\bOL\bL
- A colon-separated list of values controlling how commands are
- saved on the history list. If the list of values includes
- _\bi_\bg_\bn_\bo_\br_\be_\bs_\bp_\ba_\bc_\be, lines which begin with a s\bsp\bpa\bac\bce\be character are not
- saved in the history list. A value of _\bi_\bg_\bn_\bo_\br_\be_\bd_\bu_\bp_\bs causes lines
+ A colon-separated list of values controlling how commands are
+ saved on the history list. If the list of values includes
+ _\bi_\bg_\bn_\bo_\br_\be_\bs_\bp_\ba_\bc_\be, lines which begin with a s\bsp\bpa\bac\bce\be character are not
+ saved in the history list. A value of _\bi_\bg_\bn_\bo_\br_\be_\bd_\bu_\bp_\bs causes lines
matching the previous history entry to not be saved. A value of
_\bi_\bg_\bn_\bo_\br_\be_\bb_\bo_\bt_\bh is shorthand for _\bi_\bg_\bn_\bo_\br_\be_\bs_\bp_\ba_\bc_\be and _\bi_\bg_\bn_\bo_\br_\be_\bd_\bu_\bp_\bs. A value
of _\be_\br_\ba_\bs_\be_\bd_\bu_\bp_\bs causes all previous lines matching the current line
- to be removed from the history list before that line is saved.
- Any value not in the above list is ignored. If H\bHI\bIS\bST\bTC\bCO\bON\bNT\bTR\bRO\bOL\bL is
- unset, or does not include a valid value, all lines read by the
+ to be removed from the history list before that line is saved.
+ Any value not in the above list is ignored. If H\bHI\bIS\bST\bTC\bCO\bON\bNT\bTR\bRO\bOL\bL is
+ unset, or does not include a valid value, all lines read by the
shell parser are saved on the history list, subject to the value
- of H\bHI\bIS\bST\bTI\bIG\bGN\bNO\bOR\bRE\bE. The second and subsequent lines of a multi-line
- compound command are not tested, and are added to the history
+ of H\bHI\bIS\bST\bTI\bIG\bGN\bNO\bOR\bRE\bE. The second and subsequent lines of a multi-line
+ compound command are not tested, and are added to the history
regardless of the value of H\bHI\bIS\bST\bTC\bCO\bON\bNT\bTR\bRO\bOL\bL.
H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE
The name of the file in which command history is saved (see H\bHI\bIS\bS-\b-
- T\bTO\bOR\bRY\bY below). The default value is _\b~_\b/_\b._\bb_\ba_\bs_\bh_\b__\bh_\bi_\bs_\bt_\bo_\br_\by. If unset,
- the command history is not saved when an interactive shell
- exits.
+ T\bTO\bOR\bRY\bY below). The default value is _\b~_\b/_\b._\bb_\ba_\bs_\bh_\b__\bh_\bi_\bs_\bt_\bo_\br_\by. If unset,
+ the command history is not saved when a shell exits.
H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bES\bSI\bIZ\bZE\bE
The maximum number of lines contained in the history file. When
this variable is assigned a value, the history file is trun-
cated, if necessary, to contain no more than that number of
lines by removing the oldest entries. The history file is also
- truncated to this size after writing it when an interactive
- shell exits. If the value is 0, the history file is truncated
- to zero size. Non-numeric values and numeric values less than
- zero inhibit truncation. The shell sets the default value to
- the value of H\bHI\bIS\bST\bTS\bSI\bIZ\bZE\bE after reading any startup files.
+ truncated to this size after writing it when a shell exits. If
+ the value is 0, the history file is truncated to zero size.
+ Non-numeric values and numeric values less than zero inhibit
+ truncation. The shell sets the default value to the value of
+ H\bHI\bIS\bST\bTS\bSI\bIZ\bZE\bE after reading any startup files.
H\bHI\bIS\bST\bTI\bIG\bGN\bNO\bOR\bRE\bE
A colon-separated list of patterns used to decide which command
lines should be saved on the history list. Each pattern is
default timeout for the r\bre\bea\bad\bd builtin. The s\bse\bel\ble\bec\bct\bt command termi-
nates if input does not arrive after T\bTM\bMO\bOU\bUT\bT seconds when input is
coming from a terminal. In an interactive shell, the value is
- interpreted as the number of seconds to wait for input after
- issuing the primary prompt. B\bBa\bas\bsh\bh terminates after waiting for
- that number of seconds if input does not arrive.
- T\bTM\bMP\bPD\bDI\bIR\bR If set, b\bba\bas\bsh\bh uses its value as the name of a directory in which
+ interpreted as the number of seconds to wait for a line of input
+ after issuing the primary prompt. B\bBa\bas\bsh\bh terminates after waiting
+ for that number of seconds if a complete line of input does not
+ arrive.
+ T\bTM\bMP\bPD\bDI\bIR\bR If set, b\bba\bas\bsh\bh uses its value as the name of a directory in which
b\bba\bas\bsh\bh creates temporary files for the shell's use.
a\bau\but\bto\bo_\b_r\bre\bes\bsu\bum\bme\be
This variable controls how the shell interacts with the user and
- job control. If this variable is set, single word simple com-
+ job control. If this variable is set, single word simple com-
mands without redirections are treated as candidates for resump-
tion of an existing stopped job. There is no ambiguity allowed;
- if there is more than one job beginning with the string typed,
- the job most recently accessed is selected. The _\bn_\ba_\bm_\be of a
- stopped job, in this context, is the command line used to start
- it. If set to the value _\be_\bx_\ba_\bc_\bt, the string supplied must match
- the name of a stopped job exactly; if set to _\bs_\bu_\bb_\bs_\bt_\br_\bi_\bn_\bg, the
- string supplied needs to match a substring of the name of a
- stopped job. The _\bs_\bu_\bb_\bs_\bt_\br_\bi_\bn_\bg value provides functionality analo-
- gous to the %\b%?\b? job identifier (see J\bJO\bOB\bB C\bCO\bON\bNT\bTR\bRO\bOL\bL below). If set
- to any other value, the supplied string must be a prefix of a
+ if there is more than one job beginning with the string typed,
+ the job most recently accessed is selected. The _\bn_\ba_\bm_\be of a
+ stopped job, in this context, is the command line used to start
+ it. If set to the value _\be_\bx_\ba_\bc_\bt, the string supplied must match
+ the name of a stopped job exactly; if set to _\bs_\bu_\bb_\bs_\bt_\br_\bi_\bn_\bg, the
+ string supplied needs to match a substring of the name of a
+ stopped job. The _\bs_\bu_\bb_\bs_\bt_\br_\bi_\bn_\bg value provides functionality analo-
+ gous to the %\b%?\b? job identifier (see J\bJO\bOB\bB C\bCO\bON\bNT\bTR\bRO\bOL\bL below). If set
+ to any other value, the supplied string must be a prefix of a
stopped job's name; this provides functionality analogous to the
%\b%_\bs_\bt_\br_\bi_\bn_\bg job identifier.
h\bhi\bis\bst\btc\bch\bha\bar\brs\bs
- The two or three characters which control history expansion and
+ The two or three characters which control history expansion and
tokenization (see H\bHI\bIS\bST\bTO\bOR\bRY\bY E\bEX\bXP\bPA\bAN\bNS\bSI\bIO\bON\bN below). The first character
- is the _\bh_\bi_\bs_\bt_\bo_\br_\by _\be_\bx_\bp_\ba_\bn_\bs_\bi_\bo_\bn character, the character which signals
- the start of a history expansion, normally `!\b!'. The second
- character is the _\bq_\bu_\bi_\bc_\bk _\bs_\bu_\bb_\bs_\bt_\bi_\bt_\bu_\bt_\bi_\bo_\bn character, which is used as
- shorthand for re-running the previous command entered, substi-
- tuting one string for another in the command. The default is
- `^\b^'. The optional third character is the character which indi-
- cates that the remainder of the line is a comment when found as
- the first character of a word, normally `#\b#'. The history com-
+ is the _\bh_\bi_\bs_\bt_\bo_\br_\by _\be_\bx_\bp_\ba_\bn_\bs_\bi_\bo_\bn character, the character which signals
+ the start of a history expansion, normally `!\b!'. The second
+ character is the _\bq_\bu_\bi_\bc_\bk _\bs_\bu_\bb_\bs_\bt_\bi_\bt_\bu_\bt_\bi_\bo_\bn character, which is used as
+ shorthand for re-running the previous command entered, substi-
+ tuting one string for another in the command. The default is
+ `^\b^'. The optional third character is the character which indi-
+ cates that the remainder of the line is a comment when found as
+ the first character of a word, normally `#\b#'. The history com-
ment character causes history substitution to be skipped for the
- remaining words on the line. It does not necessarily cause the
+ remaining words on the line. It does not necessarily cause the
shell parser to treat the rest of the line as a comment.
A\bAr\brr\bra\bay\bys\bs
- B\bBa\bas\bsh\bh provides one-dimensional indexed and associative array variables.
- Any variable may be used as an indexed array; the d\bde\bec\bcl\bla\bar\bre\be builtin will
- explicitly declare an array. There is no maximum limit on the size of
- an array, nor any requirement that members be indexed or assigned con-
- tiguously. Indexed arrays are referenced using integers (including
- arithmetic expressions) and are zero-based; associative arrays are
- referenced using arbitrary strings.
+ B\bBa\bas\bsh\bh provides one-dimensional indexed and associative array variables.
+ Any variable may be used as an indexed array; the d\bde\bec\bcl\bla\bar\bre\be builtin will
+ explicitly declare an array. There is no maximum limit on the size of
+ an array, nor any requirement that members be indexed or assigned con-
+ tiguously. Indexed arrays are referenced using integers (including
+ arithmetic expressions) and are zero-based; associative arrays are
+ referenced using arbitrary strings. Unless otherwise noted, indexed
+ array indices must be non-negative integers.
An indexed array is created automatically if any variable is assigned
to using the syntax _\bn_\ba_\bm_\be[_\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt]=_\bv_\ba_\bl_\bu_\be. The _\bs_\bu_\bb_\bs_\bc_\br_\bi_\bp_\bt is treated as
The value of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is substituted. The braces are required
when _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is a positional parameter with more than one
digit, or when _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is followed by a character which is not
- to be interpreted as part of its name.
-
- If the first character of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is an exclamation point (!\b!), a
- level of variable indirection is introduced. B\bBa\bas\bsh\bh uses the value of
- the variable formed from the rest of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br as the name of the vari-
- able; this variable is then expanded and that value is used in the rest
- of the substitution, rather than the value of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br itself. This
- is known as _\bi_\bn_\bd_\bi_\br_\be_\bc_\bt _\be_\bx_\bp_\ba_\bn_\bs_\bi_\bo_\bn. The exceptions to this are the expan-
- sions of ${!\b!_\bp_\br_\be_\bf_\bi_\bx*\b*} and ${!\b!_\bn_\ba_\bm_\be[_\b@]} described below. The exclamation
- point must immediately follow the left brace in order to introduce
- indirection.
+ to be interpreted as part of its name. The _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is a shell
+ parameter as described above P\bPA\bAR\bRA\bAM\bME\bET\bTE\bER\bRS\bS) or an array reference
+ (A\bAr\brr\bra\bay\bys\bs).
+
+ If the first character of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is an exclamation point (!\b!), it
+ introduces a level of variable indirection. B\bBa\bas\bsh\bh uses the value of the
+ variable formed from the rest of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br as the name of the variable;
+ this variable is then expanded and that value is used in the rest of
+ the substitution, rather than the value of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br itself. This is
+ known as _\bi_\bn_\bd_\bi_\br_\be_\bc_\bt _\be_\bx_\bp_\ba_\bn_\bs_\bi_\bo_\bn. The exceptions to this are the expansions
+ of ${!\b!_\bp_\br_\be_\bf_\bi_\bx*\b*} and ${!\b!_\bn_\ba_\bm_\be[_\b@]} described below. The exclamation point
+ must immediately follow the left brace in order to introduce indirec-
+ tion.
In each of the cases below, _\bw_\bo_\br_\bd is subject to tilde expansion, parame-
ter expansion, command substitution, and arithmetic expansion.
When not performing substring expansion, using the forms documented
- below, b\bba\bas\bsh\bh tests for a parameter that is unset or null. Omitting the
- colon results in a test only for a parameter that is unset.
+ below (e.g., :\b:-\b-), b\bba\bas\bsh\bh tests for a parameter that is unset or null.
+ Omitting the colon results in a test only for a parameter that is
+ unset.
${_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br:\b:-\b-_\bw_\bo_\br_\bd}
- U\bUs\bse\be D\bDe\bef\bfa\bau\bul\blt\bt V\bVa\bal\blu\bue\bes\bs. If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is unset or null, the expan-
- sion of _\bw_\bo_\br_\bd is substituted. Otherwise, the value of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br
+ U\bUs\bse\be D\bDe\bef\bfa\bau\bul\blt\bt V\bVa\bal\blu\bue\bes\bs. If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is unset or null, the expan-
+ sion of _\bw_\bo_\br_\bd is substituted. Otherwise, the value of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br
is substituted.
${_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br:\b:=\b=_\bw_\bo_\br_\bd}
- A\bAs\bss\bsi\big\bgn\bn D\bDe\bef\bfa\bau\bul\blt\bt V\bVa\bal\blu\bue\bes\bs. If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is unset or null, the
+ A\bAs\bss\bsi\big\bgn\bn D\bDe\bef\bfa\bau\bul\blt\bt V\bVa\bal\blu\bue\bes\bs. If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is unset or null, the
expansion of _\bw_\bo_\br_\bd is assigned to _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br. The value of _\bp_\ba_\br_\ba_\bm_\b-
- _\be_\bt_\be_\br is then substituted. Positional parameters and special
+ _\be_\bt_\be_\br is then substituted. Positional parameters and special
parameters may not be assigned to in this way.
${_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br:\b:?\b?_\bw_\bo_\br_\bd}
- D\bDi\bis\bsp\bpl\bla\bay\by E\bEr\brr\bro\bor\br i\bif\bf N\bNu\bul\bll\bl o\bor\br U\bUn\bns\bse\bet\bt. If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is null or unset,
- the expansion of _\bw_\bo_\br_\bd (or a message to that effect if _\bw_\bo_\br_\bd is
- not present) is written to the standard error and the shell, if
+ D\bDi\bis\bsp\bpl\bla\bay\by E\bEr\brr\bro\bor\br i\bif\bf N\bNu\bul\bll\bl o\bor\br U\bUn\bns\bse\bet\bt. If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is null or unset,
+ the expansion of _\bw_\bo_\br_\bd (or a message to that effect if _\bw_\bo_\br_\bd is
+ not present) is written to the standard error and the shell, if
it is not interactive, exits. Otherwise, the value of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br
is substituted.
${_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br:\b:+\b+_\bw_\bo_\br_\bd}
- U\bUs\bse\be A\bAl\blt\bte\ber\brn\bna\bat\bte\be V\bVa\bal\blu\bue\be. If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is null or unset, nothing is
+ U\bUs\bse\be A\bAl\blt\bte\ber\brn\bna\bat\bte\be V\bVa\bal\blu\bue\be. If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is null or unset, nothing is
substituted, otherwise the expansion of _\bw_\bo_\br_\bd is substituted.
${_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br:\b:_\bo_\bf_\bf_\bs_\be_\bt}
${_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br:\b:_\bo_\bf_\bf_\bs_\be_\bt:\b:_\bl_\be_\bn_\bg_\bt_\bh}
- S\bSu\bub\bbs\bst\btr\bri\bin\bng\bg E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn. Expands to up to _\bl_\be_\bn_\bg_\bt_\bh characters of
- _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br starting at the character specified by _\bo_\bf_\bf_\bs_\be_\bt. If
- _\bl_\be_\bn_\bg_\bt_\bh is omitted, expands to the substring of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br start-
- ing at the character specified by _\bo_\bf_\bf_\bs_\be_\bt. _\bl_\be_\bn_\bg_\bt_\bh and _\bo_\bf_\bf_\bs_\be_\bt are
- arithmetic expressions (see A\bAR\bRI\bIT\bTH\bHM\bME\bET\bTI\bIC\bC E\bEV\bVA\bAL\bLU\bUA\bAT\bTI\bIO\bON\bN below). If
- _\bo_\bf_\bf_\bs_\be_\bt evaluates to a number less than zero, the value is used
- as an offset from the end of the value of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br. If _\bl_\be_\bn_\bg_\bt_\bh
- evaluates to a number less than zero, and _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is not @\b@ and
- not an indexed or associative array, it is interpreted as an
- offset from the end of the value of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br rather than a num-
- ber of characters, and the expansion is the characters between
- the two offsets. If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is @\b@, the result is _\bl_\be_\bn_\bg_\bt_\bh posi-
- tional parameters beginning at _\bo_\bf_\bf_\bs_\be_\bt. If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is an
- indexed array name subscripted by @ or *, the result is the
- _\bl_\be_\bn_\bg_\bt_\bh members of the array beginning with ${_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br[_\bo_\bf_\bf_\bs_\be_\bt]}.
- A negative _\bo_\bf_\bf_\bs_\be_\bt is taken relative to one greater than the max-
- imum index of the specified array. Substring expansion applied
- to an associative array produces undefined results. Note that a
- negative offset must be separated from the colon by at least one
- space to avoid being confused with the :- expansion. Substring
- indexing is zero-based unless the positional parameters are
- used, in which case the indexing starts at 1 by default. If
- _\bo_\bf_\bf_\bs_\be_\bt is 0, and the positional parameters are used, $\b$0\b0 is pre-
- fixed to the list.
+ S\bSu\bub\bbs\bst\btr\bri\bin\bng\bg E\bEx\bxp\bpa\ban\bns\bsi\bio\bon\bn. Expands to up to _\bl_\be_\bn_\bg_\bt_\bh characters of the
+ value of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br starting at the character specified by _\bo_\bf_\bf_\b-
+ _\bs_\be_\bt. If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is @\b@, an indexed array subscripted by @\b@ or *\b*,
+ or an associative array name, the results differ as described
+ below. If _\bl_\be_\bn_\bg_\bt_\bh is omitted, expands to the substring of the
+ value of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br starting at the character specified by _\bo_\bf_\bf_\bs_\be_\bt
+ and extending to the end of the value. _\bl_\be_\bn_\bg_\bt_\bh and _\bo_\bf_\bf_\bs_\be_\bt are
+ arithmetic expressions (see A\bAR\bRI\bIT\bTH\bHM\bME\bET\bTI\bIC\bC E\bEV\bVA\bAL\bLU\bUA\bAT\bTI\bIO\bON\bN below).
+
+ If _\bo_\bf_\bf_\bs_\be_\bt evaluates to a number less than zero, the value is
+ used as an offset in characters from the end of the value of
+ _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br. If _\bl_\be_\bn_\bg_\bt_\bh evaluates to a number less than zero, it
+ is interpreted as an offset in characters from the end of the
+ value of _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br rather than a number of characters, and the
+ expansion is the characters between _\bo_\bf_\bf_\bs_\be_\bt and that result.
+ Note that a negative offset must be separated from the colon by
+ at least one space to avoid being confused with the :\b:-\b- expan-
+ sion.
+
+ If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is @\b@, the result is _\bl_\be_\bn_\bg_\bt_\bh positional parameters
+ beginning at _\bo_\bf_\bf_\bs_\be_\bt. A negative _\bo_\bf_\bf_\bs_\be_\bt is taken relative to one
+ greater than the greatest positional parameter, so an offset of
+ -1 evaluates to the last positional parameter. It is an expan-
+ sion error if _\bl_\be_\bn_\bg_\bt_\bh evaluates to a number less than zero.
+
+ If _\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br is an indexed array name subscripted by @ or *, the
+ result is the _\bl_\be_\bn_\bg_\bt_\bh members of the array beginning with
+ ${_\bp_\ba_\br_\ba_\bm_\be_\bt_\be_\br[_\bo_\bf_\bf_\bs_\be_\bt]}. A negative _\bo_\bf_\bf_\bs_\be_\bt is taken relative to
+ one greater than the maximum index of the specified array. It
+ is an expansion error if _\bl_\be_\bn_\bg_\bt_\bh evaluates to a number less than
+ zero.
+
+ Substring expansion applied to an associative array produces
+ undefined results.
+
+ Substring indexing is zero-based unless the positional parame-
+ ters are used, in which case the indexing starts at 1 by
+ default. If _\bo_\bf_\bf_\bs_\be_\bt is 0, and the positional parameters are
+ used, $\b$0\b0 is prefixed to the list.
${!\b!_\bp_\br_\be_\bf_\bi_\bx*\b*}
${!\b!_\bp_\br_\be_\bf_\bi_\bx@\b@}
/\b/d\bde\bev\bv/\b/t\btc\bcp\bp/\b/_\bh_\bo_\bs_\bt/\b/_\bp_\bo_\br_\bt
If _\bh_\bo_\bs_\bt is a valid hostname or Internet address, and _\bp_\bo_\br_\bt
is an integer port number or service name, b\bba\bas\bsh\bh attempts
- to open a TCP connection to the corresponding socket.
+ to open the corresponding TCP socket.
/\b/d\bde\bev\bv/\b/u\bud\bdp\bp/\b/_\bh_\bo_\bs_\bt/\b/_\bp_\bo_\br_\bt
If _\bh_\bo_\bs_\bt is a valid hostname or Internet address, and _\bp_\bo_\br_\bt
is an integer port number or service name, b\bba\bas\bsh\bh attempts
- to open a UDP connection to the corresponding socket.
+ to open the corresponding UDP socket.
A failure to open or create a file causes the redirection to fail.
file is read, lines beginning with the history comment character fol-
lowed immediately by a digit are interpreted as timestamps for the pre-
ceding history line. These timestamps are optionally displayed depend-
- ing on the value of the H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT variable. When an interactive
- shell exits, the last $\b$H\bHI\bIS\bST\bTS\bSI\bIZ\bZE\bE lines are copied from the history list
- to $\b$H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE. If the h\bhi\bis\bst\bta\bap\bpp\bpe\ben\bnd\bd shell option is enabled (see the
- description of s\bsh\bho\bop\bpt\bt under S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below), the lines are
- appended to the history file, otherwise the history file is overwrit-
- ten. If H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE is unset, or if the history file is unwritable, the
- history is not saved. If the H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT variable is set, time
- stamps are written to the history file, marked with the history comment
- character, so they may be preserved across shell sessions. This uses
- the history comment character to distinguish timestamps from other his-
- tory lines. After saving the history, the history file is truncated to
- contain no more than H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bES\bSI\bIZ\bZE\bE lines. If H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bES\bSI\bIZ\bZE\bE is unset, or
- set to null, a non-numeric value, or a numeric value less than zero,
- the history file is not truncated.
+ ing on the value of the H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT variable. When a shell with
+ history enabled exits, the last $\b$H\bHI\bIS\bST\bTS\bSI\bIZ\bZE\bE lines are copied from the
+ history list to $\b$H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE. If the h\bhi\bis\bst\bta\bap\bpp\bpe\ben\bnd\bd shell option is enabled
+ (see the description of s\bsh\bho\bop\bpt\bt under S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below), the
+ lines are appended to the history file, otherwise the history file is
+ overwritten. If H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bE is unset, or if the history file is
+ unwritable, the history is not saved. If the H\bHI\bIS\bST\bTT\bTI\bIM\bME\bEF\bFO\bOR\bRM\bMA\bAT\bT variable
+ is set, time stamps are written to the history file, marked with the
+ history comment character, so they may be preserved across shell ses-
+ sions. This uses the history comment character to distinguish time-
+ stamps from other history lines. After saving the history, the history
+ file is truncated to contain no more than H\bHI\bIS\bST\bTF\bFI\bIL\bLE\bES\bSI\bIZ\bZE\bE lines. If H\bHI\bIS\bST\bT-\b-
+ F\bFI\bIL\bLE\bES\bSI\bIZ\bZE\bE is unset, or set to null, a non-numeric value, or a numeric
+ value less than zero, the history file is not truncated.
The builtin command f\bfc\bc (see S\bSH\bHE\bEL\bLL\bL B\bBU\bUI\bIL\bLT\bTI\bIN\bN C\bCO\bOM\bMM\bMA\bAN\bND\bDS\bS below) may be used
to list or edit and re-execute a portion of the history list. The h\bhi\bis\bs-\b-
loop) is resumed. The return value is 0 unless _\bn is not greater
than or equal to 1.
- d\bde\bec\bcl\bla\bar\bre\be [-\b-a\baA\bAf\bfF\bFg\bgi\bil\blr\brt\btu\bux\bx] [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be] ...]
- t\bty\byp\bpe\bes\bse\bet\bt [-\b-a\baA\bAf\bfF\bFg\bgi\bil\blr\brt\btu\bux\bx] [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be] ...]
+ d\bde\bec\bcl\bla\bar\bre\be [-\b-a\baA\bAf\bfF\bFg\bgi\bil\bln\bnr\brt\btu\bux\bx] [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be] ...]
+ t\bty\byp\bpe\bes\bse\bet\bt [-\b-a\baA\bAf\bfF\bFg\bgi\bil\bln\bnr\brt\btu\bux\bx] [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be] ...]
Declare variables and/or give them attributes. If no _\bn_\ba_\bm_\bes are
given then display the values of variables. The -\b-p\bp option will
display the attributes and values of each _\bn_\ba_\bm_\be. When -\b-p\bp is used
-\b-l\bl When the variable is assigned a value, all upper-case
characters are converted to lower-case. The upper-case
attribute is disabled.
+ -\b-n\bn Give each _\bn_\ba_\bm_\be the _\bn_\ba_\bm_\be_\br_\be_\bf attribute, making it a name
+ reference to another variable. That other variable is
+ defined by the value of _\bn_\ba_\bm_\be. All references and assign-
+ ments to _\bn_\ba_\bm_\be, except for changing the -\b-n\bn attribute
+ itself, are performed on the variable referenced by
+ _\bn_\ba_\bm_\be's value. The -\b-n\bn attribute cannot be applied to
+ array variables.
-\b-r\br Make _\bn_\ba_\bm_\bes readonly. These names cannot then be assigned
values by subsequent assignment statements or unset.
-\b-t\bt Give each _\bn_\ba_\bm_\be the _\bt_\br_\ba_\bc_\be attribute. Traced functions
supplied, all alias definitions are removed. The return value
is true unless a supplied _\bn_\ba_\bm_\be is not a defined alias.
- u\bun\bns\bse\bet\bt [-f\bfv\bv] [_\bn_\ba_\bm_\be ...]
+ u\bun\bns\bse\bet\bt [-f\bfv\bv] [-n\bn] [_\bn_\ba_\bm_\be ...]
For each _\bn_\ba_\bm_\be, remove the corresponding variable or function.
If the -\b-v\bv option is given, each _\bn_\ba_\bm_\be refers to a shell variable,
and that variable is removed. Read-only variables may not be
unset. If -\b-f\bf is specified, each _\bn_\ba_\bm_\be refers to a shell func-
- tion, and the function definition is removed. If no options are
- supplied, each _\bn_\ba_\bm_\be refers to a variable; if there is no vari-
- able by that name, any function with that name is unset. Each
- unset variable or function is removed from the environment
- passed to subsequent commands. If any of C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS, R\bRA\bAN\bN-\b-
+ tion, and the function definition is removed. If the -\b-n\bn option
+ is supplied, and _\bn_\ba_\bm_\be is a variable with the _\bn_\ba_\bm_\be_\br_\be_\bf attribute,
+ _\bn_\ba_\bm_\be will be unset rather than the variable it references. -\b-n\bn
+ has no effect if the -\b-f\bf option is supplied. If no options are
+ supplied, each _\bn_\ba_\bm_\be refers to a variable; if there is no vari-
+ able by that name, any function with that name is unset. Each
+ unset variable or function is removed from the environment
+ passed to subsequent commands. If any of C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS, R\bRA\bAN\bN-\b-
D\bDO\bOM\bM, S\bSE\bEC\bCO\bON\bND\bDS\bS, L\bLI\bIN\bNE\bEN\bNO\bO, H\bHI\bIS\bST\bTC\bCM\bMD\bD, F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE, G\bGR\bRO\bOU\bUP\bPS\bS, or D\bDI\bIR\bRS\bST\bTA\bAC\bCK\bK are
unset, they lose their special properties, even if they are sub-
sequently reset. The exit status is true unless a _\bn_\ba_\bm_\be is read-
only.
w\bwa\bai\bit\bt [_\bn _\b._\b._\b.]
- Wait for each specified process and return its termination sta-
- tus. Each _\bn 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 _\bn is not given, all currently active child pro-
- cesses are waited for, and the return status is zero. If _\bn
- 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 _\bn 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 _\bn is not given, all currently active child pro-
+ cesses are waited for, and the return status is zero. If _\bn
+ 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.
R\bRE\bES\bST\bTR\bRI\bIC\bCT\bTE\bED\bD S\bSH\bHE\bEL\bLL\bL
If b\bba\bas\bsh\bh is started with the name r\brb\bba\bas\bsh\bh, or the -\b-r\br 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 b\bba\bas\bsh\bh 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 b\bba\bas\bsh\bh with the exception that the following are
disallowed or not performed:
+\bo changing directories with c\bcd\bd
+\bo specifying command names containing /\b/
- +\bo specifying a filename containing a /\b/ as an argument to the .\b.
+ +\bo specifying a filename containing a /\b/ as an argument to the .\b.
builtin command
- +\bo specifying a filename containing a slash as an argument to the
+ +\bo specifying a filename containing a slash as an argument to the
-\b-p\bp option to the h\bha\bas\bsh\bh builtin command
- +\bo importing function definitions from the shell environment at
+ +\bo importing function definitions from the shell environment at
startup
- +\bo parsing the value of S\bSH\bHE\bEL\bLL\bLO\bOP\bPT\bTS\bS from the shell environment at
+ +\bo parsing the value of S\bSH\bHE\bEL\bLL\bLO\bOP\bPT\bTS\bS from the shell environment at
startup
+\bo redirecting output using the >, >|, <>, >&, &>, and >> redirect-
+\bo using the e\bex\bxe\bec\bc builtin command to replace the shell with another
command
- +\bo adding or deleting builtin commands with the -\b-f\bf and -\b-d\bd options
+ +\bo adding or deleting builtin commands with the -\b-f\bf and -\b-d\bd options
to the e\ben\bna\bab\bbl\ble\be builtin command
- +\bo using the e\ben\bna\bab\bbl\ble\be builtin command to enable disabled shell
+ +\bo using the e\ben\bna\bab\bbl\ble\be builtin command to enable disabled shell
builtins
+\bo specifying the -\b-p\bp option to the c\bco\bom\bmm\bma\ban\bnd\bd builtin command
These restrictions are enforced after any startup files are read.
When a command that is found to be a shell script is executed (see C\bCO\bOM\bM-\b-
- M\bMA\bAN\bND\bD E\bEX\bXE\bEC\bCU\bUT\bTI\bIO\bON\bN above), r\brb\bba\bas\bsh\bh turns off any restrictions in the shell
+ M\bMA\bAN\bND\bD E\bEX\bXE\bEC\bCU\bUT\bTI\bIO\bON\bN above), r\brb\bba\bas\bsh\bh turns off any restrictions in the shell
spawned to execute the script.
S\bSE\bEE\bE A\bAL\bLS\bSO\bO
_\bB_\ba_\bs_\bh _\bR_\be_\bf_\be_\br_\be_\bn_\bc_\be _\bM_\ba_\bn_\bu_\ba_\bl, Brian Fox and Chet Ramey
_\bT_\bh_\be _\bG_\bn_\bu _\bR_\be_\ba_\bd_\bl_\bi_\bn_\be _\bL_\bi_\bb_\br_\ba_\br_\by, Brian Fox and Chet Ramey
_\bT_\bh_\be _\bG_\bn_\bu _\bH_\bi_\bs_\bt_\bo_\br_\by _\bL_\bi_\bb_\br_\ba_\br_\by, Brian Fox and Chet Ramey
- _\bP_\bo_\br_\bt_\ba_\bb_\bl_\be _\bO_\bp_\be_\br_\ba_\bt_\bi_\bn_\bg _\bS_\by_\bs_\bt_\be_\bm _\bI_\bn_\bt_\be_\br_\bf_\ba_\bc_\be _\b(_\bP_\bO_\bS_\bI_\bX_\b) _\bP_\ba_\br_\bt _\b2_\b: _\bS_\bh_\be_\bl_\bl _\ba_\bn_\bd _\bU_\bt_\bi_\bl_\bi_\b-
+ _\bP_\bo_\br_\bt_\ba_\bb_\bl_\be _\bO_\bp_\be_\br_\ba_\bt_\bi_\bn_\bg _\bS_\by_\bs_\bt_\be_\bm _\bI_\bn_\bt_\be_\br_\bf_\ba_\bc_\be _\b(_\bP_\bO_\bS_\bI_\bX_\b) _\bP_\ba_\br_\bt _\b2_\b: _\bS_\bh_\be_\bl_\bl _\ba_\bn_\bd _\bU_\bt_\bi_\bl_\bi_\b-
_\bt_\bi_\be_\bs, IEEE
_\bs_\bh(1), _\bk_\bs_\bh(1), _\bc_\bs_\bh(1)
_\be_\bm_\ba_\bc_\bs(1), _\bv_\bi(1)
_\b~_\b/_\b._\bb_\ba_\bs_\bh_\br_\bc
The individual per-interactive-shell startup file
_\b~_\b/_\b._\bb_\ba_\bs_\bh_\b__\bl_\bo_\bg_\bo_\bu_\bt
- The individual login shell cleanup file, executed when a login
+ The individual login shell cleanup file, executed when a login
shell exits
_\b~_\b/_\b._\bi_\bn_\bp_\bu_\bt_\br_\bc
Individual _\br_\be_\ba_\bd_\bl_\bi_\bn_\be initialization file
B\bBU\bUG\bG R\bRE\bEP\bPO\bOR\bRT\bTS\bS
If you find a bug in b\bba\bas\bsh\bh,\b, 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 b\bba\bas\bsh\bh. The latest version is always available from
+ make sure that it really is a bug, and that it appears in the latest
+ version of b\bba\bas\bsh\bh. The latest version is always available from
_\bf_\bt_\bp_\b:_\b/_\b/_\bf_\bt_\bp_\b._\bg_\bn_\bu_\b._\bo_\br_\bg_\b/_\bp_\bu_\bb_\b/_\bg_\bn_\bu_\b/_\bb_\ba_\bs_\bh_\b/.
- Once you have determined that a bug actually exists, use the _\bb_\ba_\bs_\bh_\bb_\bu_\bg
- 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 _\bb_\bu_\bg_\b-_\bb_\ba_\bs_\bh_\b@_\bg_\bn_\bu_\b._\bo_\br_\bg or posted to the Usenet newsgroup
+ Once you have determined that a bug actually exists, use the _\bb_\ba_\bs_\bh_\bb_\bu_\bg
+ 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 _\bb_\bu_\bg_\b-_\bb_\ba_\bs_\bh_\b@_\bg_\bn_\bu_\b._\bo_\br_\bg or posted to the Usenet newsgroup
g\bgn\bnu\bu.\b.b\bba\bas\bsh\bh.\b.b\bbu\bug\bg.
ALL bug reports should include:
A description of the bug behaviour
A short script or `recipe' which exercises the bug
- _\bb_\ba_\bs_\bh_\bb_\bu_\bg inserts the first three items automatically into the template
+ _\bb_\ba_\bs_\bh_\bb_\bu_\bg 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
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.
-GNU Bash 4.2 2012 February 4 BASH(1)
+GNU Bash 4.2 2012 July 5 BASH(1)
</HEAD>
<BODY><TABLE WIDTH=100%>
<TR>
-<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2012 February 4<TH ALIGN=RIGHT width=33%>BASH(1)
+<TH ALIGN=LEFT width=33%>BASH(1)<TH ALIGN=CENTER width=33%>2012 July 5<TH ALIGN=RIGHT width=33%>BASH(1)
</TR>
</TABLE>
<BR><A HREF="#index">Index</A>
<B>
</B>
-! case do done elif else esac fi for function if in select then until while { } time [[ ]]
+! case coproc do done elif else esac fi for function if in select then until while { } time [[ ]]
</DL>
below).
The file descriptors can be utilized as arguments to shell commands
and redirections using standard word expansions.
+The file descriptors are not available in subshells.
The process ID of the shell spawned to execute the coprocess is
available as the value of the variable <I>NAME</I>_PID.
The <B>wait</B>
associative array.
When applied to a string-valued variable, <I>value</I> is expanded and
appended to the variable's value.
+<P>
+
+A variable can be assigned the <I>nameref</I> attribute using the
+<B>-n</B> option to the <B>declare</B> or <B>local</B> builtin commands
+(see the descriptions of <B>declare</B> and <B>local</B> below)
+to create a <I>nameref</I>, or a reference to another variable.
+This allows variables to be manipulated indirectly.
+Whenever the nameref variable is referenced or assigned to, the operation
+is actually performed on the variable specified by the nameref variable's
+value.
+A nameref is commonly used within shell functions to refer to a variable
+whose name is passed as an argument to the function.
+For instance, if a variable name is passed to a shell function as its first
+argument, running
+<P>
+<DL COMPACT><DT><DD>
+<TT>declare -n ref=$1</TT>
+
+</DL>
+
+<P>
+inside the function creates a nameref variable <B>ref</B> whose value is
+the variable name passed as the first argument.
+References and assignments to <B>ref</B> are treated as references and
+assignments to the variable whose name was passed as <B>$1</B>.
+If the control variable in a <B>for</B> loop has the nameref attribute,
+the list of words can be a list of shell variables, and a name reference
+will be established for each word in the list, in turn, when the loop is
+executed.
+Array variables cannot be given the <B>-n</B> attribute.
+However, nameref variables can reference array variables and subscripted
+array variables.
+Namerefs can be unset using the <B>-n</B> option to the <B>unset</B> builtin.
+Otherwise, if <B>unset</B> is executed with the name of a nameref variable
+as an argument, the variable referenced by the nameref variable will be unset.
<A NAME="lbAU"> </A>
<H4>Positional Parameters</H4>
</FONT>
below). The default value is <A HREF="file:~/.bash_history"><I>~/.bash_history</I></A>. If unset, the
-command history is not saved when an interactive shell exits.
+command history is not saved when a shell exits.
<DT><B>HISTFILESIZE</B>
<DD>
necessary,
to contain no more than that number of lines by removing the oldest entries.
The history file is also truncated to this size after
-writing it when an interactive shell exits.
+writing it when a shell exits.
If the value is 0, the history file is truncated to zero size.
Non-numeric values and numeric values less than zero inhibit truncation.
The shell sets the default value to the value of <B>HISTSIZE</B>
</FONT>
seconds when input is coming from a terminal.
In an interactive shell, the value is interpreted as the
-number of seconds to wait for input after issuing the primary prompt.
+number of seconds to wait for a line of input after issuing the
+primary prompt.
<B>Bash</B>
-terminates after waiting for that number of seconds if input does
-not arrive.
+terminates after waiting for that number of seconds if a complete
+line of input does not arrive.
<DT><B>TMPDIR</B>
<DD>
Indexed arrays are referenced using integers (including arithmetic
expressions) and are zero-based; associative arrays are referenced
using arbitrary strings.
+Unless otherwise noted, indexed array indices must be non-negative integers.
<P>
An indexed array is created automatically if any variable is assigned to
is followed by a character which is not to be
interpreted as part of its name.
+The <I>parameter</I> is a shell parameter as described above
+<B>PARAMETERS</B>) or an array reference (<B>Arrays</B>).
</DL>
<P>
If the first character of <I>parameter</I> is an exclamation point (<B>!</B>),
-a level of variable indirection is introduced.
+it introduces a level of variable indirection.
<B>Bash</B> uses the value of the variable formed from the rest of
<I>parameter</I> as the name of the variable; this variable is then
expanded and that value is used in the rest of the substitution, rather
parameter expansion, command substitution, and arithmetic expansion.
<P>
-When not performing substring expansion, using the forms documented below,
+When not performing substring expansion, using the forms documented below
+(e.g., <B>:-</B>),
<B>bash</B> tests for a parameter that is unset or null. Omitting the colon
results in a test only for a parameter that is unset.
<P>
<DT>${<I>parameter</I><B>:</B><I>offset</I><B>:</B><I>length</I>}<DD>
<B>Substring Expansion</B>.
-Expands to up to <I>length</I> characters of <I>parameter</I>
+Expands to up to <I>length</I> characters of the value of <I>parameter</I>
starting at the character specified by <I>offset</I>.
-If <I>length</I> is omitted, expands to the substring of
-<I>parameter</I> starting at the character specified by <I>offset</I>.
+If <I>parameter</I> is <B>@</B>, an indexed array subscripted by
+<B>@</B> or <B>*</B>, or an associative array name, the results differ as
+described below.
+If <I>length</I> is omitted, expands to the substring of the value of
+<I>parameter</I> starting at the character specified by <I>offset</I>
+and extending to the end of the value.
<I>length</I> and <I>offset</I> are arithmetic expressions (see
<FONT SIZE=-1><B>ARITHMETIC EVALUATION</B>
</FONT>
below).
+<P>
If <I>offset</I> evaluates to a number less than zero, the value
-is used as an offset from the end of the value of <I>parameter</I>.
-If <I>length</I> evaluates to a number less than zero, and <I>parameter</I>
-is not <B>@</B> and not an indexed or associative array, it is interpreted
-as an offset from the end of the value of <I>parameter</I> rather than
-a number of characters, and the expansion is the characters between the
-two offsets.
+is used as an offset in characters
+from the end of the value of <I>parameter</I>.
+If <I>length</I> evaluates to a number less than zero,
+it is interpreted as an offset in characters
+from the end of the value of <I>parameter</I> rather than
+a number of characters, and the expansion is the characters between
+<I>offset</I> and that result.
+Note that a negative offset must be separated from the colon by at least
+one space to avoid being confused with the <B>:-</B> expansion.
+<P>
If <I>parameter</I> is <B>@</B>, the result is <I>length</I> positional
parameters beginning at <I>offset</I>.
+A negative <I>offset</I> is taken relative to one greater than the greatest
+positional parameter, so an offset of -1 evaluates to the last positional
+parameter.
+It is an expansion error if <I>length</I> evaluates to a number less than
+zero.
+<P>
If <I>parameter</I> is an indexed array name subscripted by @ or *,
the result is the <I>length</I>
members of the array beginning with ${<I>parameter</I>[<I>offset</I>]}.
A negative <I>offset</I> is taken relative to one greater than the maximum
index of the specified array.
+It is an expansion error if <I>length</I> evaluates to a number less than
+zero.
+<P>
Substring expansion applied to an associative array produces undefined
results.
-Note that a negative offset must be separated from the colon by at least
-one space to avoid being confused with the :- expansion.
+<P>
Substring indexing is zero-based unless the positional parameters
are used, in which case the indexing starts at 1 by default.
If <I>offset</I> is 0, and the positional parameters are used, <B>$0</B> is
<DD>
If <I>host</I> is a valid hostname or Internet address, and <I>port</I>
is an integer port number or service name, <B>bash</B> attempts to open
-a TCP connection to the corresponding socket.
+the corresponding TCP socket.
<DT><B>/dev/udp/</B><I>host</I>/<I>port</I>
<DD>
If <I>host</I> is a valid hostname or Internet address, and <I>port</I>
is an integer port number or service name, <B>bash</B> attempts to open
-a UDP connection to the corresponding socket.
+the corresponding UDP socket.
</DL></DL>
</FONT>
variable.
-When an interactive shell exits, the last
+When a shell with history enabled exits, the last
<FONT SIZE=-1><B>$HISTSIZE</B>
</FONT>
is greater than the number of enclosing loops, the last enclosing loop
(the ``top-level'' loop) is resumed.
The return value is 0 unless <I>n</I> is not greater than or equal to 1.
-<DT><B>declare</B> [<B>-aAfFgilrtux</B>] [<B>-p</B>] [<I>name</I>[=<I>value</I>] ...]<DD>
+<DT><B>declare</B> [<B>-aAfFgilnrtux</B>] [<B>-p</B>] [<I>name</I>[=<I>value</I>] ...]<DD>
-<DT><B>typeset</B> [<B>-aAfFgilrtux</B>] [<B>-p</B>] [<I>name</I>[=<I>value</I>] ...]<DD>
+<DT><B>typeset</B> [<B>-aAfFgilnrtux</B>] [<B>-p</B>] [<I>name</I>[=<I>value</I>] ...]<DD>
Declare variables and/or give them attributes.
If no <I>name</I>s are given then display the values of variables.
When the variable is assigned a value, all upper-case characters are
converted to lower-case.
The upper-case attribute is disabled.
+<DT><B>-n</B>
+
+<DD>
+Give each <I>name</I> the <I>nameref</I> attribute, making
+it a name reference to another variable.
+That other variable is defined by the value of <I>name</I>.
+All references and assignments to <I>name</I>, except for changing the
+<B>-n</B> attribute itself, are performed on the variable referenced by
+<I>name</I>'s value.
+The <B>-n</B> attribute cannot be applied to array variables.
<DT><B>-r</B>
<DD>
<I>name</I>
is not a defined alias.
-<DT><B>unset</B> [-<B>fv</B>] [<I>name</I> ...]<DD>
+<DT><B>unset</B> [-<B>fv</B>] [-<B>n</B>] [<I>name</I> ...]<DD>
For each
<I>name</I>,
refers to a shell function, and the function definition
is removed.
+If the
+<B>-n</B>
+
+option is supplied, and <I>name</I> is a variable with the <I>nameref</I>
+attribute, <I>name</I> will be unset rather than the variable it
+references.
+<B>-n</B> has no effect if the <B>-f</B> option is supplied.
If no options are supplied, each <I>name</I> refers to a variable; if
there is no variable by that name, any function with that name is
unset.
<HR>
<TABLE WIDTH=100%>
<TR>
-<TH ALIGN=LEFT width=33%>GNU Bash 4.2<TH ALIGN=CENTER width=33%>2012 February 4<TH ALIGN=RIGHT width=33%>BASH(1)
+<TH ALIGN=LEFT width=33%>GNU Bash 4.2<TH ALIGN=CENTER width=33%>2012 July 5<TH ALIGN=RIGHT width=33%>BASH(1)
</TR>
</TABLE>
<HR>
</DL>
<HR>
This document was created by man2html from bash.1.<BR>
-Time: 05 March 2012 21:31:01 EST
+Time: 05 July 2012 20:43:10 EDT
</BODY>
</HTML>
%!PS-Adobe-3.0
%%Creator: groff version 1.19.2
-%%CreationDate: Mon Mar 5 21:30:55 2012
+%%CreationDate: Thu Jul 5 20:43:03 2012
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
%%+ font Courier
%%+ font Symbol
%%DocumentSuppliedResources: procset grops 1.19 2
-%%Pages: 73
+%%Pages: 74
%%PageOrder: Ascend
%%DocumentMedia: Default 595 842 0 () ()
%%Orientation: Portrait
(~/.bashr)3.599 E(c)-.37 E F0 1.599(if the)4.409 F(shell is interacti)
144 698.4 Q .3 -.15(ve \()-.25 H(see).15 E F4(INV)2.5 E(OCA)-.405 E
(TION)-.855 E F0(belo)2.25 E(w\).)-.25 E(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(1)195.95 E 0 Cg EP
+(2012 July 5)151.505 E(1)205.665 E 0 Cg EP
%%Page: 2 2
%%BeginPageSetup
BP
1.01(alue as the)-.25 F(name of a \214le to read and e)108 720 Q -.15
(xe)-.15 G(cute.).15 E F1(Bash)5 E F0(beha)2.5 E -.15(ve)-.2 G 2.5(sa)
.15 G 2.5(si)-2.5 G 2.5(ft)-2.5 G(he follo)-2.5 E(wing command were e)
--.25 E -.15(xe)-.15 G(cuted:).15 E(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(2)195.95 E 0 Cg EP
+-.25 E -.15(xe)-.15 G(cuted:).15 E(GNU Bash 4.2)72 768 Q(2012 July 5)
+151.505 E(2)205.665 E 0 Cg EP
%%Page: 3 3
%%BeginPageSetup
BP
(ord of a simple command \(see)-.1 F F2 .226(SHELL GRAMMAR)2.727 F F0
(belo)2.476 E .226(w\) or)-.25 F(the third w)108 598.8 Q(ord of a)-.1 E
F3(case)2.5 E F0(or)2.5 E F3 -.25(fo)2.5 G(r).25 E F0(command:)2.5 E F3
-11.915(!c)144 615.6 S 9.416(ase do done elif else esac \214 f)-11.915 F
-9.416(or function if in select then until)-.25 F 7.5
-(while { } time [[ ]])144 627.6 R F6(SHELL GRAMMAR)72 644.4 Q F3
-(Simple Commands)87 656.4 Q F0(A)108 668.4 Q F4 .389(simple command)
-2.889 F F0 .389(is a sequence of optional v)2.889 F .388
-(ariable assignments follo)-.25 F .388(wed by)-.25 F F3(blank)2.888 E F0
-.388(-separated w)B .388(ords and)-.1 F .815
-(redirections, and terminated by a)108 680.4 R F4(contr)3.315 E .815
-(ol oper)-.45 F(ator)-.15 E F0 5.815(.T)C .815(he \214rst w)-5.815 F
-.816(ord speci\214es the command to be e)-.1 F -.15(xe)-.15 G(cuted,).15
-E(and is passed as ar)108 692.4 Q(gument zero.)-.18 E(The remaining w)5
-E(ords are passed as ar)-.1 E(guments to the in)-.18 E -.2(vo)-.4 G -.1
-(ke).2 G 2.5(dc).1 G(ommand.)-2.5 E .176(The return v)108 709.2 R .176
-(alue of a)-.25 F F4 .176(simple command)2.676 F F0 .175(is its e)2.676
-F .175(xit status, or 128+)-.15 F F4(n)A F0 .175
+11.295(!c)144 615.6 S 8.795(ase copr)-11.295 F 8.795
+(oc do done elif else esac \214 f)-.18 F 8.795
+(or function if in select then)-.25 F 7.5(until while { } time [[ ]])144
+627.6 R F6(SHELL GRAMMAR)72 644.4 Q F3(Simple Commands)87 656.4 Q F0(A)
+108 668.4 Q F4 .389(simple command)2.889 F F0 .389
+(is a sequence of optional v)2.889 F .388(ariable assignments follo)-.25
+F .388(wed by)-.25 F F3(blank)2.888 E F0 .388(-separated w)B .388
+(ords and)-.1 F .815(redirections, and terminated by a)108 680.4 R F4
+(contr)3.315 E .815(ol oper)-.45 F(ator)-.15 E F0 5.815(.T)C .815
+(he \214rst w)-5.815 F .816(ord speci\214es the command to be e)-.1 F
+-.15(xe)-.15 G(cuted,).15 E(and is passed as ar)108 692.4 Q
+(gument zero.)-.18 E(The remaining w)5 E(ords are passed as ar)-.1 E
+(guments to the in)-.18 E -.2(vo)-.4 G -.1(ke).2 G 2.5(dc).1 G(ommand.)
+-2.5 E .176(The return v)108 709.2 R .176(alue of a)-.25 F F4 .176
+(simple command)2.676 F F0 .175(is its e)2.676 F .175
+(xit status, or 128+)-.15 F F4(n)A F0 .175
(if the command is terminated by signal)3.508 F F4(n)2.675 E F0(.).24 E
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(3)195.95 E 0 Cg EP
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(3)205.665 E 0 Cg EP
%%Page: 4 4
%%BeginPageSetup
BP
-3.553 F 1.026(separated from the rest of the command by one or more ne)
108 698.4 R 1.026(wlines, and may be follo)-.25 F 1.027(wed by a ne)-.25
F 1.027(wline in)-.25 F(place of a semicolon.)108 710.4 Q(GNU Bash 4.2)
-72 768 Q(2012 February 4)141.79 E(4)195.95 E 0 Cg EP
+72 768 Q(2012 July 5)151.505 E(4)205.665 E 0 Cg EP
%%Page: 5 5
%%BeginPageSetup
BP
(ex)2.5 G(pr).2 E(ession2)-.37 E F0 -.35(Tr)180 716.4 S(ue if either).35
E F1 -.2(ex)2.5 G(pr).2 E(ession1)-.37 E F0(or)2.5 E F1 -.2(ex)2.5 G(pr)
.2 E(ession2)-.37 E F0(is true.)2.52 E(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(5)195.95 E 0 Cg EP
+(2012 July 5)151.505 E(5)205.665 E 0 Cg EP
%%Page: 6 6
%%BeginPageSetup
BP
(and)2.704 E F1(until)2.704 E F0 .205(commands is the e)2.704 F .205
(xit status of the last command)-.15 F -.15(exe)144 700.8 S(cuted in).15
E F2(list-2)2.5 E F0 2.5(,o)C 2.5(rz)-2.5 G(ero if none w)-2.5 E(as e)
--.1 E -.15(xe)-.15 G(cuted.).15 E(GNU Bash 4.2)72 768 Q(2012 February 4)
-141.79 E(6)195.95 E 0 Cg EP
+-.1 E -.15(xe)-.15 G(cuted.).15 E(GNU Bash 4.2)72 768 Q(2012 July 5)
+151.505 E(6)205.665 E 0 Cg EP
%%Page: 7 7
%%BeginPageSetup
BP
(edirections spec-)-2.603 F 1.271(i\214ed by the command \(see)108 254.4
R/F3 9/Times-Bold@0 SF(REDIRECTION)3.771 E F0(belo)3.521 E 3.771
(w\). The)-.25 F 1.271(\214le descriptors can be utilized as ar)3.771 F
-1.272(guments to)-.18 F .48
-(shell commands and redirections using standard w)108 266.4 R .479
-(ord e)-.1 F 2.979(xpansions. The)-.15 F .479
-(process ID of the shell spa)2.979 F .479(wned to)-.15 F -.15(exe)108
-278.4 S .237(cute the coprocess is a).15 F -.25(va)-.2 G .237
-(ilable as the v).25 F .238(alue of the v)-.25 F(ariable)-.25 E F2 -.27
-(NA)2.738 G(ME).27 E F0 2.738(_PID. The)B F1(wait)2.738 E F0 -.2(bu)
-2.738 G .238(iltin command may).2 F(be used to w)108 290.4 Q
+1.272(guments to)-.18 F .515
+(shell commands and redirections using standard w)108 266.4 R .515
+(ord e)-.1 F 3.015(xpansions. The)-.15 F .515
+(\214le descriptors are not a)3.015 F -.25(va)-.2 G .515(ilable in).25 F
+3.636(subshells. The)108 278.4 R 1.136(process ID of the shell spa)3.636
+F 1.137(wned to e)-.15 F -.15(xe)-.15 G 1.137(cute the coprocess is a)
+.15 F -.25(va)-.2 G 1.137(ilable as the v).25 F 1.137(alue of the)-.25 F
+-.25(va)108 290.4 S(riable).25 E F2 -.27(NA)2.5 G(ME).27 E F0 2.5
+(_PID. The)B F1(wait)2.5 E F0 -.2(bu)2.5 G
+(iltin command may be used to w).2 E
(ait for the coprocess to terminate.)-.1 E
(The return status of a coprocess is the e)108 307.2 Q(xit status of)
-.15 E F2(command)2.5 E F0(.)A F1(Shell Function De\214nitions)87 324 Q
G(he)-2.974 E F2 .474(escape c)2.974 F(har)-.15 E(acter)-.15 E F0 5.474
(.I).73 G 2.974(tp)-5.474 G(reserv)-2.974 E .474(es the literal v)-.15 F
.474(alue of the ne)-.25 F .475(xt character that)-.15 F(GNU Bash 4.2)72
-768 Q(2012 February 4)141.79 E(7)195.95 E 0 Cg EP
+768 Q(2012 July 5)151.505 E(7)205.665 E 0 Cg EP
%%Page: 8 8
%%BeginPageSetup
BP
(is not gi)2.913 F -.15(ve)-.25 G .233(n, the v).15 F .232
(ariable is assigned the null string.)-.25 F(All)5.232 E F3(values)3.022
E F0(under)3.002 E .232(go tilde e)-.18 F .232(xpansion, parameter)-.15
-F(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(8)195.95 E 0 Cg EP
+F(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(8)205.665 E 0 Cg EP
%%Page: 9 9
%%BeginPageSetup
BP
5.123(.W)-.65 G .123(hen applied to a string-v)-5.123 F .123(alued v)
-.25 F(ariable,)-.25 E F3(value)2.623 E F0(is e)108 256.8 Q
(xpanded and appended to the v)-.15 E(ariable')-.25 E 2.5(sv)-.55 G
-(alue.)-2.75 E F2 -.2(Po)87 273.6 S(sitional P).2 E(arameters)-.1 E F0
-(A)108 285.6 Q F3 .706(positional par)4.456 F(ameter)-.15 E F0 .706(is \
-a parameter denoted by one or more digits, other than the single digit \
-0.)3.936 F(Posi-)5.705 E .444
-(tional parameters are assigned from the shell')108 297.6 R 2.944(sa)
--.55 G -.18(rg)-2.944 G .444(uments when it is in).18 F -.2(vo)-.4 G -.1
-(ke).2 G .445(d, and may be reassigned using).1 F(the)108 309.6 Q F2
-(set)3.334 E F0 -.2(bu)3.334 G .834(iltin command.).2 F .833(Positional\
- parameters may not be assigned to with assignment statements.)5.834 F
-(The)5.833 E .334(positional parameters are temporarily replaced when a\
- shell function is e)108 321.6 R -.15(xe)-.15 G .334(cuted \(see).15 F
-F1(FUNCTIONS)2.834 E F0(belo)2.584 E(w\).)-.25 E 1.404(When a positiona\
-l parameter consisting of more than a single digit is e)108 338.4 R
-1.403(xpanded, it must be enclosed in)-.15 F(braces \(see)108 350.4 Q F1
-(EXP)2.5 E(ANSION)-.666 E F0(belo)2.25 E(w\).)-.25 E F2(Special P)87
-367.2 Q(arameters)-.1 E F0 1.674(The shell treats se)108 379.2 R -.15
-(ve)-.25 G 1.674(ral parameters specially).15 F 6.675(.T)-.65 G 1.675
+(alue.)-2.75 E 3.383(Av)108 273.6 S .883(ariable can be assigned the)
+-3.633 F F3(namer)3.382 E(ef)-.37 E F0(attrib)3.382 E .882
+(ute using the)-.2 F F2<ad6e>3.382 E F0 .882(option to the)3.382 F F2
+(declar)3.382 E(e)-.18 E F0(or)3.382 E F2(local)3.382 E F0 -.2(bu)3.382
+G .882(iltin com-).2 F .315(mands \(see the descriptions of)108 285.6 R
+F2(declar)2.815 E(e)-.18 E F0(and)2.815 E F2(local)2.815 E F0(belo)2.815
+E .316(w\) to create a)-.25 F F3(namer)2.816 E(ef)-.37 E F0 2.816(,o)C
+2.816(rar)-2.816 G .316(eference to another v)-2.816 F(ari-)-.25 E 3.335
+(able. This)108 297.6 R(allo)3.335 E .835(ws v)-.25 F .835
+(ariables to be manipulated indirectly)-.25 F 5.835(.W)-.65 G(hene)
+-5.835 E -.15(ve)-.25 G 3.335(rt).15 G .835(he nameref v)-3.335 F .835
+(ariable is referenced or)-.25 F .021
+(assigned to, the operation is actually performed on the v)108 309.6 R
+.021(ariable speci\214ed by the nameref v)-.25 F(ariable')-.25 E 2.522
+(sv)-.55 G 2.522(alue. A)-2.772 F .819
+(nameref is commonly used within shell functions to refer to a v)108
+321.6 R .818(ariable whose name is passed as an ar)-.25 F(gu-)-.18 E
+.131(ment to the function.)108 333.6 R -.15(Fo)5.131 G 2.631(ri).15 G
+.131(nstance, if a v)-2.631 F .132
+(ariable name is passed to a shell function as its \214rst ar)-.25 F
+.132(gument, run-)-.18 F(ning)108 345.6 Q/F4 10/Courier@0 SF
+(declare -n ref=$1)144 363.6 Q F0 .303
+(inside the function creates a nameref v)108 381.6 R(ariable)-.25 E F2
+-.18(re)2.803 G(f).18 E F0 .303(whose v)2.803 F .303(alue is the v)-.25
+F .302(ariable name passed as the \214rst ar)-.25 F(gu-)-.18 E 3.318
+(ment. References)108 393.6 R .818(and assignments to)3.318 F F2 -.18
+(re)3.318 G(f).18 E F0 .818
+(are treated as references and assignments to the v)3.318 F .818
+(ariable whose)-.25 F .275(name w)108 405.6 R .275(as passed as)-.1 F F2
+($1)2.775 E F0 5.275(.I)C 2.775(ft)-5.275 G .275(he control v)-2.775 F
+.275(ariable in a)-.25 F F2 -.25(fo)2.775 G(r).25 E F0 .275
+(loop has the nameref attrib)2.775 F .274(ute, the list of w)-.2 F .274
+(ords can)-.1 F .354(be a list of shell v)108 417.6 R .354
+(ariables, and a name reference will be established for each w)-.25 F
+.355(ord in the list, in turn, when)-.1 F .086(the loop is e)108 429.6 R
+-.15(xe)-.15 G 2.586(cuted. Array).15 F -.25(va)2.586 G .086
+(riables cannot be gi).25 F -.15(ve)-.25 G 2.586(nt).15 G(he)-2.586 E F2
+<ad6e>2.586 E F0(attrib)2.585 E 2.585(ute. Ho)-.2 F(we)-.25 E -.15(ve)
+-.25 G .885 -.4(r, n).15 H .085(ameref v).4 F .085(ariables can ref-)
+-.25 F .883(erence array v)108 441.6 R .883
+(ariables and subscripted array v)-.25 F 3.383(ariables. Namerefs)-.25 F
+.883(can be unset using the)3.383 F F2<ad6e>3.383 E F0 .884
+(option to the)3.383 F F2(unset)108 453.6 Q F0 -.2(bu)2.558 G 2.558
+(iltin. Otherwise,).2 F(if)2.558 E F2(unset)2.558 E F0 .058(is e)2.558 F
+-.15(xe)-.15 G .058(cuted with the name of a nameref v).15 F .057
+(ariable as an ar)-.25 F .057(gument, the v)-.18 F(ari-)-.25 E
+(able referenced by the nameref v)108 465.6 Q(ariable will be unset.)
+-.25 E F2 -.2(Po)87 482.4 S(sitional P).2 E(arameters)-.1 E F0(A)108
+494.4 Q F3 .705(positional par)4.455 F(ameter)-.15 E F0 .706(is a param\
+eter denoted by one or more digits, other than the single digit 0.)3.935
+F(Posi-)5.706 E .445(tional parameters are assigned from the shell')108
+506.4 R 2.944(sa)-.55 G -.18(rg)-2.944 G .444(uments when it is in).18 F
+-.2(vo)-.4 G -.1(ke).2 G .444(d, and may be reassigned using).1 F(the)
+108 518.4 Q F2(set)3.333 E F0 -.2(bu)3.333 G .833(iltin command.).2 F
+.834(Positional parameters may not be assigned to with assignment state\
+ments.)5.833 F(The)5.834 E .334(positional parameters are temporarily r\
+eplaced when a shell function is e)108 530.4 R -.15(xe)-.15 G .333
+(cuted \(see).15 F F1(FUNCTIONS)2.833 E F0(belo)2.583 E(w\).)-.25 E
+1.403(When a positional parameter consisting of more than a single digi\
+t is e)108 547.2 R 1.404(xpanded, it must be enclosed in)-.15 F
+(braces \(see)108 559.2 Q F1(EXP)2.5 E(ANSION)-.666 E F0(belo)2.25 E
+(w\).)-.25 E F2(Special P)87 576 Q(arameters)-.1 E F0 1.675
+(The shell treats se)108 588 R -.15(ve)-.25 G 1.675
+(ral parameters specially).15 F 6.675(.T)-.65 G 1.674
(hese parameters may only be referenced; assignment to)-6.675 F
-(them is not allo)108 391.2 Q(wed.)-.25 E F2(*)108 403.2 Q F0 .606
-(Expands to the positional parameters, starting from one.)31 F .605
-(When the e)5.605 F .605(xpansion occurs within dou-)-.15 F .083
-(ble quotes, it e)144 415.2 R .084(xpands to a single w)-.15 F .084
+(them is not allo)108 600 Q(wed.)-.25 E F2(*)108 612 Q F0 .605
+(Expands to the positional parameters, starting from one.)31 F .606
+(When the e)5.605 F .606(xpansion occurs within dou-)-.15 F .084
+(ble quotes, it e)144 624 R .084(xpands to a single w)-.15 F .084
(ord with the v)-.1 F .084
(alue of each parameter separated by the \214rst char)-.25 F(-)-.2 E
-.004(acter of the)144 427.2 R F1(IFS)2.503 E F0 .003(special v)2.253 F
+.003(acter of the)144 636 R F1(IFS)2.503 E F0 .003(special v)2.253 F
2.503(ariable. That)-.25 F .003(is, ")2.503 F F2($*)A F0 2.503("i)C
2.503(se)-2.503 G(qui)-2.503 E -.25(va)-.25 G .003(lent to ").25 F F2
($1)A F3(c)A F2($2)A F3(c)A F2(...)A F0 .003(", where)B F3(c)2.703 E F0
-.003(is the \214rst char)2.813 F(-)-.2 E .768(acter of the v)144 439.2 R
-.768(alue of the)-.25 F F1(IFS)3.268 E F0 -.25(va)3.018 G 3.268
-(riable. If).25 F F1(IFS)3.268 E F0 .769
-(is unset, the parameters are separated by spaces.)3.018 F(If)5.769 E F1
-(IFS)144 451.2 Q F0(is null, the parameters are joined without interv)
-2.25 E(ening separators.)-.15 E F2(@)108 463.2 Q F0 .606
-(Expands to the positional parameters, starting from one.)26.7 F .605
-(When the e)5.605 F .605(xpansion occurs within dou-)-.15 F .113
-(ble quotes, each parameter e)144 475.2 R .113(xpands to a separate w)
--.15 F 2.614(ord. That)-.1 F .114(is, ")2.614 F F2($@)A F0 2.614("i)C
-2.614(se)-2.614 G(qui)-2.614 E -.25(va)-.25 G .114(lent to ").25 F F2
-($1)A F0 2.614("")C F2($2)-2.614 E F0 2.614(".)C(..)-2.614 E .135
-(If the double-quoted e)144 487.2 R .135(xpansion occurs within a w)-.15
-F .135(ord, the e)-.1 F .134
-(xpansion of the \214rst parameter is joined)-.15 F .15(with the be)144
-499.2 R .15(ginning part of the original w)-.15 F .151(ord, and the e)
--.1 F .151(xpansion of the last parameter is joined with)-.15 F .338
-(the last part of the original w)144 511.2 R 2.838(ord. When)-.1 F .337
-(there are no positional parameters, ")2.838 F F2($@)A F0 2.837("a)C(nd)
--2.837 E F2($@)2.837 E F0 -.15(ex)2.837 G(pand).15 E
-(to nothing \(i.e., the)144 523.2 Q 2.5(ya)-.15 G(re remo)-2.5 E -.15
-(ve)-.15 G(d\).).15 E F2(#)108 535.2 Q F0
-(Expands to the number of positional parameters in decimal.)31 E F2(?)
-108 547.2 Q F0(Expands to the e)31 E(xit status of the most recently e)
--.15 E -.15(xe)-.15 G(cuted fore).15 E(ground pipeline.)-.15 E F2<ad>108
-559.2 Q F0 .881
+.004(is the \214rst char)2.813 F(-)-.2 E .769(acter of the v)144 648 R
+.769(alue of the)-.25 F F1(IFS)3.269 E F0 -.25(va)3.019 G 3.269
+(riable. If).25 F F1(IFS)3.268 E F0 .768
+(is unset, the parameters are separated by spaces.)3.018 F(If)5.768 E F1
+(IFS)144 660 Q F0(is null, the parameters are joined without interv)2.25
+E(ening separators.)-.15 E F2(@)108 672 Q F0 .605
+(Expands to the positional parameters, starting from one.)26.7 F .606
+(When the e)5.605 F .606(xpansion occurs within dou-)-.15 F .114
+(ble quotes, each parameter e)144 684 R .114(xpands to a separate w)-.15
+F 2.614(ord. That)-.1 F .113(is, ")2.613 F F2($@)A F0 2.613("i)C 2.613
+(se)-2.613 G(qui)-2.613 E -.25(va)-.25 G .113(lent to ").25 F F2($1)A F0
+2.613("")C F2($2)-2.613 E F0 2.613(".)C(..)-2.613 E .134
+(If the double-quoted e)144 696 R .134(xpansion occurs within a w)-.15 F
+.135(ord, the e)-.1 F .135(xpansion of the \214rst parameter is joined)
+-.15 F .151(with the be)144 708 R .151(ginning part of the original w)
+-.15 F .151(ord, and the e)-.1 F .15
+(xpansion of the last parameter is joined with)-.15 F .337
+(the last part of the original w)144 720 R 2.837(ord. When)-.1 F .338
+(there are no positional parameters, ")2.837 F F2($@)A F0 2.838("a)C(nd)
+-2.838 E F2($@)2.838 E F0 -.15(ex)2.838 G(pand).15 E(GNU Bash 4.2)72 768
+Q(2012 July 5)151.505 E(9)205.665 E 0 Cg EP
+%%Page: 10 10
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E(to nothing \(i.e., the)144 84 Q 2.5(ya)-.15 G(re remo)-2.5 E -.15
+(ve)-.15 G(d\).).15 E/F1 10/Times-Bold@0 SF(#)108 96 Q F0
+(Expands to the number of positional parameters in decimal.)31 E F1(?)
+108 108 Q F0(Expands to the e)31 E(xit status of the most recently e)
+-.15 E -.15(xe)-.15 G(cuted fore).15 E(ground pipeline.)-.15 E F1<ad>108
+120 Q F0 .882
(Expands to the current option \215ags as speci\214ed upon in)30.3 F -.2
-(vo)-.4 G .881(cation, by the).2 F F2(set)3.382 E F0 -.2(bu)3.382 G .882
+(vo)-.4 G .881(cation, by the).2 F F1(set)3.381 E F0 -.2(bu)3.381 G .881
(iltin command, or).2 F(those set by the shell itself \(such as the)144
-571.2 Q F2<ad69>2.5 E F0(option\).)2.5 E F2($)108 583.2 Q F0 .214
+132 Q F1<ad69>2.5 E F0(option\).)2.5 E F1($)108 144 Q F0 .214
(Expands to the process ID of the shell.)31 F .214
(In a \(\) subshell, it e)5.214 F .214
(xpands to the process ID of the current)-.15 F
-(shell, not the subshell.)144 595.2 Q F2(!)108 607.2 Q F0
+(shell, not the subshell.)144 156 Q F1(!)108 168 Q F0
(Expands to the process ID of the most recently e)32.67 E -.15(xe)-.15 G
-(cuted background \(asynchronous\) command.).15 E F2(0)108 619.2 Q F0
-1.691(Expands to the name of the shell or shell script.)31 F 1.692
-(This is set at shell initialization.)6.692 F(If)6.692 E F2(bash)4.192 E
-F0(is)4.192 E(in)144 631.2 Q -.2(vo)-.4 G -.1(ke).2 G 3.078(dw).1 G .578
-(ith a \214le of commands,)-3.078 F F2($0)3.078 E F0 .578
-(is set to the name of that \214le.)3.078 F(If)5.577 E F2(bash)3.077 E
-F0 .577(is started with the)3.077 F F2<ad63>3.077 E F0 .368
-(option, then)144 643.2 R F2($0)2.869 E F0 .369
-(is set to the \214rst ar)2.869 F .369(gument after the string to be e)
--.18 F -.15(xe)-.15 G .369(cuted, if one is present.).15 F(Other)5.369 E
-(-)-.2 E(wise, it is set to the \214lename used to in)144 655.2 Q -.2
-(vo)-.4 G -.1(ke).2 G F2(bash)2.6 E F0 2.5(,a)C 2.5(sg)-2.5 G -2.15 -.25
-(iv e)-2.5 H 2.5(nb).25 G 2.5(ya)-2.5 G -.18(rg)-2.5 G(ument zero.).18 E
-F2(_)108 667.2 Q F0 .055
-(At shell startup, set to the absolute pathname used to in)31 F -.2(vo)
--.4 G .255 -.1(ke t).2 H .054(he shell or shell script being e).1 F -.15
-(xe)-.15 G(cuted).15 E .691(as passed in the en)144 679.2 R .691
+(cuted background \(asynchronous\) command.).15 E F1(0)108 180 Q F0
+1.692(Expands to the name of the shell or shell script.)31 F 1.691
+(This is set at shell initialization.)6.692 F(If)6.691 E F1(bash)4.191 E
+F0(is)4.191 E(in)144 192 Q -.2(vo)-.4 G -.1(ke).2 G 3.077(dw).1 G .577
+(ith a \214le of commands,)-3.077 F F1($0)3.077 E F0 .578
+(is set to the name of that \214le.)3.077 F(If)5.578 E F1(bash)3.078 E
+F0 .578(is started with the)3.078 F F1<ad63>3.078 E F0 .369
+(option, then)144 204 R F1($0)2.869 E F0 .369(is set to the \214rst ar)
+2.869 F .369(gument after the string to be e)-.18 F -.15(xe)-.15 G .369
+(cuted, if one is present.).15 F(Other)5.368 E(-)-.2 E
+(wise, it is set to the \214lename used to in)144 216 Q -.2(vo)-.4 G -.1
+(ke).2 G F1(bash)2.6 E F0 2.5(,a)C 2.5(sg)-2.5 G -2.15 -.25(iv e)-2.5 H
+2.5(nb).25 G 2.5(ya)-2.5 G -.18(rg)-2.5 G(ument zero.).18 E F1(_)108 228
+Q F0 .054(At shell startup, set to the absolute pathname used to in)31 F
+-.2(vo)-.4 G .255 -.1(ke t).2 H .055(he shell or shell script being e).1
+F -.15(xe)-.15 G(cuted).15 E .692(as passed in the en)144 240 R .692
(vironment or ar)-.4 F .691(gument list.)-.18 F(Subsequently)5.691 E
-3.191(,e)-.65 G .692(xpands to the last ar)-3.341 F .692(gument to the)
--.18 F(pre)144 691.2 Q .571(vious command, after e)-.25 F 3.071
+3.191(,e)-.65 G .691(xpands to the last ar)-3.341 F .691(gument to the)
+-.18 F(pre)144 252 Q .57(vious command, after e)-.25 F 3.07
(xpansion. Also)-.15 F .571(set to the full pathname used to in)3.071 F
--.2(vo)-.4 G .77 -.1(ke e).2 H .57(ach command).1 F -.15(exe)144 703.2 S
+-.2(vo)-.4 G .771 -.1(ke e).2 H .571(ach command).1 F -.15(exe)144 264 S
1.6(cuted and placed in the en).15 F 1.6(vironment e)-.4 F 1.6
(xported to that command.)-.15 F 1.6(When checking mail, this)6.6 F
(parameter holds the name of the mail \214le currently being check)144
-715.2 Q(ed.)-.1 E(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(9)
-195.95 E 0 Cg EP
-%%Page: 10 10
-%%BeginPageSetup
-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(Shell V)87 84 Q(ariables)-.92 E F0
-(The follo)108 96 Q(wing v)-.25 E(ariables are set by the shell:)-.25 E
-F1 -.3(BA)108 112.8 S(SH).3 E F0
-(Expands to the full \214lename used to in)9.07 E -.2(vo)-.4 G .2 -.1
-(ke t).2 H(his instance of).1 E F1(bash)2.5 E F0(.)A F1 -.3(BA)108 124.8
-S(SHOPTS).3 E F0 2.549(Ac)144 136.8 S .049
-(olon-separated list of enabled shell options.)-2.549 F .049(Each w)
+276 Q(ed.)-.1 E F1(Shell V)87 292.8 Q(ariables)-.92 E F0(The follo)108
+304.8 Q(wing v)-.25 E(ariables are set by the shell:)-.25 E F1 -.3(BA)
+108 321.6 S(SH).3 E F0(Expands to the full \214lename used to in)9.07 E
+-.2(vo)-.4 G .2 -.1(ke t).2 H(his instance of).1 E F1(bash)2.5 E F0(.)A
+F1 -.3(BA)108 333.6 S(SHOPTS).3 E F0 2.548(Ac)144 345.6 S .049
+(olon-separated list of enabled shell options.)-2.548 F .049(Each w)
5.049 F .049(ord in the list is a v)-.1 F .049(alid ar)-.25 F .049
-(gument for the)-.18 F F1<ad73>2.548 E F0 1.398(option to the)144 148.8
+(gument for the)-.18 F F1<ad73>2.549 E F0 1.398(option to the)144 357.6
R F1(shopt)3.898 E F0 -.2(bu)3.898 G 1.398(iltin command \(see).2 F/F2 9
/Times-Bold@0 SF 1.398(SHELL B)3.898 F(UIL)-.09 E 1.398(TIN COMMANDS)
--.828 F F0(belo)3.648 E 3.898(w\). The)-.25 F(options)3.898 E .477
-(appearing in)144 160.8 R F2 -.27(BA)2.977 G(SHOPTS).27 E F0 .477
-(are those reported as)2.727 F/F3 10/Times-Italic@0 SF(on)3.207 E F0(by)
-3.217 E F1(shopt)2.977 E F0 5.476(.I)C 2.976(ft)-5.476 G .476(his v)
--2.976 F .476(ariable is in the en)-.25 F(vironment)-.4 E(when)144 172.8
-Q F1(bash)3.141 E F0 .642(starts up, each shell option in the list will\
- be enabled before reading an)3.141 F 3.142(ys)-.15 G .642
-(tartup \214les.)-3.142 F(This v)144 184.8 Q(ariable is read-only)-.25 E
-(.)-.65 E F1 -.3(BA)108 196.8 S(SHPID).3 E F0 .188
-(Expands to the process ID of the current)144 208.8 R F1(bash)2.688 E F0
-2.687(process. This)2.687 F(dif)2.687 E .187(fers from)-.25 F F1($$)
-2.687 E F0 .187(under certain circum-)2.687 F
-(stances, such as subshells that do not require)144 220.8 Q F1(bash)2.5
-E F0(to be re-initialized.)2.5 E F1 -.3(BA)108 232.8 S(SH_ALIASES).3 E
-F0 1.195(An associati)144 244.8 R 1.495 -.15(ve a)-.25 H 1.195(rray v)
+-.828 F F0(belo)3.648 E 3.898(w\). The)-.25 F(options)3.898 E .476
+(appearing in)144 369.6 R F2 -.27(BA)2.976 G(SHOPTS).27 E F0 .476
+(are those reported as)2.726 F/F3 10/Times-Italic@0 SF(on)3.206 E F0(by)
+3.217 E F1(shopt)2.977 E F0 5.477(.I)C 2.977(ft)-5.477 G .477(his v)
+-2.977 F .477(ariable is in the en)-.25 F(vironment)-.4 E(when)144 381.6
+Q F1(bash)3.142 E F0 .642(starts up, each shell option in the list will\
+ be enabled before reading an)3.142 F 3.141(ys)-.15 G .641
+(tartup \214les.)-3.141 F(This v)144 393.6 Q(ariable is read-only)-.25 E
+(.)-.65 E F1 -.3(BA)108 405.6 S(SHPID).3 E F0 .187
+(Expands to the process ID of the current)144 417.6 R F1(bash)2.687 E F0
+2.688(process. This)2.688 F(dif)2.688 E .188(fers from)-.25 F F1($$)
+2.688 E F0 .188(under certain circum-)2.688 F
+(stances, such as subshells that do not require)144 429.6 Q F1(bash)2.5
+E F0(to be re-initialized.)2.5 E F1 -.3(BA)108 441.6 S(SH_ALIASES).3 E
+F0 1.195(An associati)144 453.6 R 1.495 -.15(ve a)-.25 H 1.195(rray v)
.15 F 1.195(ariable whose members correspond to the internal list of al\
-iases as main-)-.25 F .025(tained by the)144 256.8 R F1(alias)2.524 E F0
+iases as main-)-.25 F .024(tained by the)144 465.6 R F1(alias)2.524 E F0
-.2(bu)2.524 G 2.524(iltin. Elements).2 F .024
(added to this array appear in the alias list; unsetting array ele-)
-2.524 F(ments cause aliases to be remo)144 268.8 Q -.15(ve)-.15 G 2.5
-(df).15 G(rom the alias list.)-2.5 E F1 -.3(BA)108 280.8 S(SH_ARGC).3 E
-F0 .934(An array v)144 292.8 R .934(ariable whose v)-.25 F .934
+2.524 F(ments cause aliases to be remo)144 477.6 Q -.15(ve)-.15 G 2.5
+(df).15 G(rom the alias list.)-2.5 E F1 -.3(BA)108 489.6 S(SH_ARGC).3 E
+F0 .935(An array v)144 501.6 R .935(ariable whose v)-.25 F .934
(alues are the number of parameters in each frame of the current)-.25 F
-F1(bash)3.435 E F0 -.15(exe)144 304.8 S .535(cution call stack.).15 F
+F1(bash)3.434 E F0 -.15(exe)144 513.6 S .535(cution call stack.).15 F
.535(The number of parameters to the current subroutine \(shell functio\
-n or script)5.535 F -.15(exe)144 316.8 S .141(cuted with).15 F F1(.)
-2.641 E F0(or)2.641 E F1(sour)2.641 E(ce)-.18 E F0 2.641(\)i)C 2.641(sa)
--2.641 G 2.641(tt)-2.641 G .142(he top of the stack.)-2.641 F .142
-(When a subroutine is e)5.142 F -.15(xe)-.15 G .142
-(cuted, the number of).15 F 2.631(parameters passed is pushed onto)144
-328.8 R F2 -.27(BA)5.13 G(SH_ARGC).27 E/F4 9/Times-Roman@0 SF(.)A F0
-2.63(The shell sets)7.13 F F2 -.27(BA)5.13 G(SH_ARGC).27 E F0 2.63
-(only when in)4.88 F -.15(ex)144 340.8 S(tended deb).15 E
+n or script)5.535 F -.15(exe)144 525.6 S .142(cuted with).15 F F1(.)
+2.642 E F0(or)2.642 E F1(sour)2.642 E(ce)-.18 E F0 2.642(\)i)C 2.642(sa)
+-2.642 G 2.642(tt)-2.642 G .142(he top of the stack.)-2.642 F .141
+(When a subroutine is e)5.141 F -.15(xe)-.15 G .141
+(cuted, the number of).15 F 2.63(parameters passed is pushed onto)144
+537.6 R F2 -.27(BA)5.13 G(SH_ARGC).27 E/F4 9/Times-Roman@0 SF(.)A F0
+2.63(The shell sets)7.13 F F2 -.27(BA)5.131 G(SH_ARGC).27 E F0 2.631
+(only when in)4.881 F -.15(ex)144 549.6 S(tended deb).15 E
(ugging mode \(see the description of the)-.2 E F1(extdeb)2.5 E(ug)-.2 E
F0(option to the)2.5 E F1(shopt)2.5 E F0 -.2(bu)2.5 G(iltin belo).2 E
-(w\))-.25 E F1 -.3(BA)108 352.8 S(SH_ARGV).3 E F0 .979(An array v)144
-364.8 R .979(ariable containing all of the parameters in the current)
--.25 F F1(bash)3.48 E F0 -.15(exe)3.48 G .98(cution call stack.).15 F
-(The)5.98 E .275(\214nal parameter of the last subroutine call is at th\
-e top of the stack; the \214rst parameter of the initial)144 376.8 R
-1.424(call is at the bottom.)144 388.8 R 1.424(When a subroutine is e)
+(w\))-.25 E F1 -.3(BA)108 561.6 S(SH_ARGV).3 E F0 .98(An array v)144
+573.6 R .979(ariable containing all of the parameters in the current)
+-.25 F F1(bash)3.479 E F0 -.15(exe)3.479 G .979(cution call stack.).15 F
+(The)5.979 E .275(\214nal parameter of the last subroutine call is at t\
+he top of the stack; the \214rst parameter of the initial)144 585.6 R
+1.424(call is at the bottom.)144 597.6 R 1.424(When a subroutine is e)
6.424 F -.15(xe)-.15 G 1.424
(cuted, the parameters supplied are pushed onto).15 F F2 -.27(BA)144
-400.8 S(SH_ARGV).27 E F4(.)A F0 2.197(The shell sets)6.697 F F2 -.27(BA)
+609.6 S(SH_ARGV).27 E F4(.)A F0 2.197(The shell sets)6.697 F F2 -.27(BA)
4.697 G(SH_ARGV).27 E F0 2.197(only when in e)4.447 F 2.197(xtended deb)
--.15 F 2.197(ugging mode \(see the)-.2 F(description of the)144 412.8 Q
+-.15 F 2.197(ugging mode \(see the)-.2 F(description of the)144 621.6 Q
F1(extdeb)2.5 E(ug)-.2 E F0(option to the)2.5 E F1(shopt)2.5 E F0 -.2
-(bu)2.5 G(iltin belo).2 E(w\))-.25 E F1 -.3(BA)108 424.8 S(SH_CMDS).3 E
-F0 .667(An associati)144 436.8 R .967 -.15(ve a)-.25 H .667(rray v).15 F
+(bu)2.5 G(iltin belo).2 E(w\))-.25 E F1 -.3(BA)108 633.6 S(SH_CMDS).3 E
+F0 .668(An associati)144 645.6 R .968 -.15(ve a)-.25 H .668(rray v).15 F
.668(ariable whose members correspond to the internal hash table of com\
-mands)-.25 F .147(as maintained by the)144 448.8 R F1(hash)2.647 E F0
+mands)-.25 F .146(as maintained by the)144 657.6 R F1(hash)2.646 E F0
-.2(bu)2.646 G 2.646(iltin. Elements).2 F .146
(added to this array appear in the hash table; unsetting)2.646 F
-(array elements cause commands to be remo)144 460.8 Q -.15(ve)-.15 G 2.5
-(df).15 G(rom the hash table.)-2.5 E F1 -.3(BA)108 472.8 S(SH_COMMAND).3
-E F0 1.242(The command currently being e)144 484.8 R -.15(xe)-.15 G
-1.243(cuted or about to be e).15 F -.15(xe)-.15 G 1.243
-(cuted, unless the shell is e).15 F -.15(xe)-.15 G 1.243(cuting a).15 F
+(array elements cause commands to be remo)144 669.6 Q -.15(ve)-.15 G 2.5
+(df).15 G(rom the hash table.)-2.5 E F1 -.3(BA)108 681.6 S(SH_COMMAND).3
+E F0 1.243(The command currently being e)144 693.6 R -.15(xe)-.15 G
+1.243(cuted or about to be e).15 F -.15(xe)-.15 G 1.242
+(cuted, unless the shell is e).15 F -.15(xe)-.15 G 1.242(cuting a).15 F
(command as the result of a trap, in which case it is the command e)144
-496.8 Q -.15(xe)-.15 G(cuting at the time of the trap.).15 E F1 -.3(BA)
-108 508.8 S(SH_EXECUTION_STRING).3 E F0(The command ar)144 520.8 Q
-(gument to the)-.18 E F1<ad63>2.5 E F0(in)2.5 E -.2(vo)-.4 G
-(cation option.).2 E F1 -.3(BA)108 532.8 S(SH_LINENO).3 E F0 .693
-(An array v)144 544.8 R .692(ariable whose members are the line numbers\
- in source \214les where each corresponding)-.25 F .969(member of)144
-556.8 R F2(FUNCN)3.469 E(AME)-.18 E F0 -.1(wa)3.219 G 3.469(si).1 G -1.9
--.4(nv o)-3.469 H -.1(ke).4 G(d.).1 E F1(${B)5.969 E(ASH_LINENO[)-.3 E
-F3($i)A F1(]})A F0 .97(is the line number in the source)3.469 F 14.672
-(\214le \()144 568.8 R F1(${B)A(ASH_SOURCE[)-.3 E F3($i+1)A F1(]})A F0
-17.172(\)w)C(here)-17.172 E F1(${FUNCN)17.172 E(AME[)-.2 E F3($i)A F1
-(]})A F0 -.1(wa)17.172 G 17.171(sc).1 G 14.671(alled \(or)-17.171 F F1
-(${B)144 580.8 Q(ASH_LINENO[)-.3 E F3($i-1)A F1(]})A F0 .115
-(if referenced within another shell function\).)2.615 F(Use)5.115 E F2
-(LINENO)2.615 E F0 .115(to obtain the)2.365 F(current line number)144
-592.8 Q(.)-.55 E F1 -.3(BA)108 604.8 S(SH_REMA).3 E(TCH)-.95 E F0 .006
-(An array v)144 616.8 R .006(ariable whose members are assigned by the)
--.25 F F1(=~)2.506 E F0 .005(binary operator to the)2.506 F F1([[)2.505
-E F0 .005(conditional com-)2.505 F 2.506(mand. The)144 628.8 R .007
-(element with inde)2.506 F 2.507(x0i)-.15 G 2.507(st)-2.507 G .007
-(he portion of the string matching the entire re)-2.507 F .007(gular e)
--.15 F(xpression.)-.15 E .998(The element with inde)144 640.8 R(x)-.15 E
-F3(n)3.498 E F0 .997(is the portion of the string matching the)3.498 F
-F3(n)3.497 E F0 .997(th parenthesized sube)B(xpres-)-.15 E 2.5
-(sion. This)144 652.8 R -.25(va)2.5 G(riable is read-only).25 E(.)-.65 E
-F1 -.3(BA)108 664.8 S(SH_SOURCE).3 E F0 .125(An array v)144 676.8 R .125
-(ariable whose members are the source \214lenames where the correspondi\
-ng shell function)-.25 F .781(names in the)144 688.8 R F2(FUNCN)3.28 E
-(AME)-.18 E F0 .78(array v)3.03 F .78(ariable are de\214ned.)-.25 F .78
-(The shell function)5.78 F F1(${FUNCN)3.28 E(AME[)-.2 E F3($i)A F1(]})A
-F0(is)3.28 E(de\214ned in the \214le)144 700.8 Q F1(${B)2.5 E
-(ASH_SOURCE[)-.3 E F3($i)A F1(]})A F0(and called from)2.5 E F1(${B)2.5 E
-(ASH_SOURCE[)-.3 E F3($i+1)A F1(]})A F0(.)A(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(10)190.95 E 0 Cg EP
+705.6 Q -.15(xe)-.15 G(cuting at the time of the trap.).15 E
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(10)200.665 E 0 Cg EP
%%Page: 11 11
%%BeginPageSetup
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 -.3(BA)108 84 S(SH_SUBSHELL).3 E F0 .296
-(Incremented by one within each subshell or subshell en)144 96 R .296
-(vironment when the shell be)-.4 F .297(gins e)-.15 F -.15(xe)-.15 G
-(cuting).15 E(in that en)144 108 Q 2.5(vironment. The)-.4 F(initial v)
-2.5 E(alue is 0.)-.25 E F1 -.3(BA)108 120 S(SH_VERSINFO).3 E F0 2.645
-(Ar)144 132 S .145(eadonly array v)-2.645 F .144
+-.35 E/F1 10/Times-Bold@0 SF -.3(BA)108 84 S(SH_EXECUTION_STRING).3 E F0
+(The command ar)144 96 Q(gument to the)-.18 E F1<ad63>2.5 E F0(in)2.5 E
+-.2(vo)-.4 G(cation option.).2 E F1 -.3(BA)108 108 S(SH_LINENO).3 E F0
+.692(An array v)144 120 R .692(ariable whose members are the line numbe\
+rs in source \214les where each corresponding)-.25 F .97(member of)144
+132 R/F2 9/Times-Bold@0 SF(FUNCN)3.47 E(AME)-.18 E F0 -.1(wa)3.22 G 3.47
+(si).1 G -1.9 -.4(nv o)-3.47 H -.1(ke).4 G(d.).1 E F1(${B)5.969 E
+(ASH_LINENO[)-.3 E/F3 10/Times-Italic@0 SF($i)A F1(]})A F0 .969
+(is the line number in the source)3.469 F 14.671(\214le \()144 144 R F1
+(${B)A(ASH_SOURCE[)-.3 E F3($i+1)A F1(]})A F0 17.171(\)w)C(here)-17.171
+E F1(${FUNCN)17.172 E(AME[)-.2 E F3($i)A F1(]})A F0 -.1(wa)17.172 G
+17.172(sc).1 G 14.672(alled \(or)-17.172 F F1(${B)144 156 Q(ASH_LINENO[)
+-.3 E F3($i-1)A F1(]})A F0 .115
+(if referenced within another shell function\).)2.615 F(Use)5.115 E F2
+(LINENO)2.615 E F0 .115(to obtain the)2.365 F(current line number)144
+168 Q(.)-.55 E F1 -.3(BA)108 180 S(SH_REMA).3 E(TCH)-.95 E F0 .005
+(An array v)144 192 R .005(ariable whose members are assigned by the)
+-.25 F F1(=~)2.506 E F0 .006(binary operator to the)2.506 F F1([[)2.506
+E F0 .006(conditional com-)2.506 F 2.507(mand. The)144 204 R .007
+(element with inde)2.507 F 2.507(x0i)-.15 G 2.507(st)-2.507 G .007
+(he portion of the string matching the entire re)-2.507 F .006(gular e)
+-.15 F(xpression.)-.15 E .997(The element with inde)144 216 R(x)-.15 E
+F3(n)3.497 E F0 .997(is the portion of the string matching the)3.497 F
+F3(n)3.498 E F0 .998(th parenthesized sube)B(xpres-)-.15 E 2.5
+(sion. This)144 228 R -.25(va)2.5 G(riable is read-only).25 E(.)-.65 E
+F1 -.3(BA)108 240 S(SH_SOURCE).3 E F0 .126(An array v)144 252 R .125(ar\
+iable whose members are the source \214lenames where the corresponding \
+shell function)-.25 F .78(names in the)144 264 R F2(FUNCN)3.28 E(AME)
+-.18 E F0 .78(array v)3.03 F .78(ariable are de\214ned.)-.25 F .78
+(The shell function)5.78 F F1(${FUNCN)3.281 E(AME[)-.2 E F3($i)A F1(]})A
+F0(is)3.281 E(de\214ned in the \214le)144 276 Q F1(${B)2.5 E
+(ASH_SOURCE[)-.3 E F3($i)A F1(]})A F0(and called from)2.5 E F1(${B)2.5 E
+(ASH_SOURCE[)-.3 E F3($i+1)A F1(]})A F0(.)A F1 -.3(BA)108 288 S
+(SH_SUBSHELL).3 E F0 .296
+(Incremented by one within each subshell or subshell en)144 300 R .296
+(vironment when the shell be)-.4 F .296(gins e)-.15 F -.15(xe)-.15 G
+(cuting).15 E(in that en)144 312 Q 2.5(vironment. The)-.4 F(initial v)
+2.5 E(alue is 0.)-.25 E F1 -.3(BA)108 324 S(SH_VERSINFO).3 E F0 2.644
+(Ar)144 336 S .144(eadonly array v)-2.644 F .144
(ariable whose members hold v)-.25 F .144
-(ersion information for this instance of)-.15 F F1(bash)2.644 E F0 5.144
-(.T)C(he)-5.144 E -.25(va)144 144 S
+(ersion information for this instance of)-.15 F F1(bash)2.645 E F0 5.145
+(.T)C(he)-5.145 E -.25(va)144 348 S
(lues assigned to the array members are as follo).25 E(ws:)-.25 E F1 -.3
-(BA)144 162 S(SH_VERSINFO[).3 E F0(0)A F1(])A F0(The major v)24.74 E
-(ersion number \(the)-.15 E/F2 10/Times-Italic@0 SF -.37(re)2.5 G(lease)
-.37 E F0(\).)A F1 -.3(BA)144 174 S(SH_VERSINFO[).3 E F0(1)A F1(])A F0
-(The minor v)24.74 E(ersion number \(the)-.15 E F2(ver)2.5 E(sion)-.1 E
-F0(\).)A F1 -.3(BA)144 186 S(SH_VERSINFO[).3 E F0(2)A F1(])A F0
-(The patch le)24.74 E -.15(ve)-.25 G(l.).15 E F1 -.3(BA)144 198 S
-(SH_VERSINFO[).3 E F0(3)A F1(])A F0(The b)24.74 E(uild v)-.2 E(ersion.)
--.15 E F1 -.3(BA)144 210 S(SH_VERSINFO[).3 E F0(4)A F1(])A F0
-(The release status \(e.g.,)24.74 E F2(beta1)2.5 E F0(\).)A F1 -.3(BA)
-144 222 S(SH_VERSINFO[).3 E F0(5)A F1(])A F0(The v)24.74 E(alue of)-.25
-E/F3 9/Times-Bold@0 SF(MA)2.5 E(CHTYPE)-.495 E/F4 9/Times-Roman@0 SF(.)A
-F1 -.3(BA)108 234 S(SH_VERSION).3 E F0
-(Expands to a string describing the v)144 246 Q
+(BA)144 366 S(SH_VERSINFO[).3 E F0(0)A F1(])A F0(The major v)24.74 E
+(ersion number \(the)-.15 E F3 -.37(re)2.5 G(lease).37 E F0(\).)A F1 -.3
+(BA)144 378 S(SH_VERSINFO[).3 E F0(1)A F1(])A F0(The minor v)24.74 E
+(ersion number \(the)-.15 E F3(ver)2.5 E(sion)-.1 E F0(\).)A F1 -.3(BA)
+144 390 S(SH_VERSINFO[).3 E F0(2)A F1(])A F0(The patch le)24.74 E -.15
+(ve)-.25 G(l.).15 E F1 -.3(BA)144 402 S(SH_VERSINFO[).3 E F0(3)A F1(])A
+F0(The b)24.74 E(uild v)-.2 E(ersion.)-.15 E F1 -.3(BA)144 414 S
+(SH_VERSINFO[).3 E F0(4)A F1(])A F0(The release status \(e.g.,)24.74 E
+F3(beta1)2.5 E F0(\).)A F1 -.3(BA)144 426 S(SH_VERSINFO[).3 E F0(5)A F1
+(])A F0(The v)24.74 E(alue of)-.25 E F2(MA)2.5 E(CHTYPE)-.495 E/F4 9
+/Times-Roman@0 SF(.)A F1 -.3(BA)108 438 S(SH_VERSION).3 E F0
+(Expands to a string describing the v)144 450 Q
(ersion of this instance of)-.15 E F1(bash)2.5 E F0(.)A F1(COMP_CW)108
-258 Q(ORD)-.1 E F0 .396(An inde)144 270 R 2.896(xi)-.15 G(nto)-2.896 E
+462 Q(ORD)-.1 E F0 .397(An inde)144 474 R 2.897(xi)-.15 G(nto)-2.897 E
F1(${COMP_W)2.896 E(ORDS})-.1 E F0 .396(of the w)2.896 F .396
-(ord containing the current cursor position.)-.1 F .397(This v)5.397 F
-(ari-)-.25 E 1.181(able is a)144 282 R -.25(va)-.2 G 1.181
+(ord containing the current cursor position.)-.1 F .396(This v)5.396 F
+(ari-)-.25 E 1.18(able is a)144 486 R -.25(va)-.2 G 1.181
(ilable only in shell functions in).25 F -.2(vo)-.4 G -.1(ke).2 G 3.681
-(db).1 G 3.681(yt)-3.681 G 1.18(he programmable completion f)-3.681 F
-1.18(acilities \(see)-.1 F F1(Pr)144 294 Q(ogrammable Completion)-.18 E
-F0(belo)2.5 E(w\).)-.25 E F1(COMP_KEY)108 306 Q F0(The k)144 318 Q .3
+(db).1 G 3.681(yt)-3.681 G 1.181(he programmable completion f)-3.681 F
+1.181(acilities \(see)-.1 F F1(Pr)144 498 Q(ogrammable Completion)-.18 E
+F0(belo)2.5 E(w\).)-.25 E F1(COMP_KEY)108 510 Q F0(The k)144 522 Q .3
-.15(ey \()-.1 H(or \214nal k).15 E .3 -.15(ey o)-.1 H 2.5(fak).15 G .3
-.15(ey s)-2.6 H(equence\) used to in).15 E -.2(vo)-.4 G .2 -.1(ke t).2
-H(he current completion function.).1 E F1(COMP_LINE)108 330 Q F0 1.207
-(The current command line.)144 342 R 1.208(This v)6.208 F 1.208
+H(he current completion function.).1 E F1(COMP_LINE)108 534 Q F0 1.208
+(The current command line.)144 546 R 1.208(This v)6.208 F 1.208
(ariable is a)-.25 F -.25(va)-.2 G 1.208
-(ilable only in shell functions and e).25 F 1.208(xternal com-)-.15 F
-2.849(mands in)144 354 R -.2(vo)-.4 G -.1(ke).2 G 5.349(db).1 G 5.349
+(ilable only in shell functions and e).25 F 1.207(xternal com-)-.15 F
+2.848(mands in)144 558 R -.2(vo)-.4 G -.1(ke).2 G 5.349(db).1 G 5.349
(yt)-5.349 G 2.849(he programmable completion f)-5.349 F 2.849
-(acilities \(see)-.1 F F1(Pr)5.349 E 2.848(ogrammable Completion)-.18 F
-F0(belo)144 366 Q(w\).)-.25 E F1(COMP_POINT)108 378 Q F0 .666(The inde)
-144 390 R 3.166(xo)-.15 G 3.166(ft)-3.166 G .666
-(he current cursor position relati)-3.166 F .966 -.15(ve t)-.25 H 3.166
+(acilities \(see)-.1 F F1(Pr)5.349 E 2.849(ogrammable Completion)-.18 F
+F0(belo)144 570 Q(w\).)-.25 E F1(COMP_POINT)108 582 Q F0 .667(The inde)
+144 594 R 3.167(xo)-.15 G 3.167(ft)-3.167 G .666
+(he current cursor position relati)-3.167 F .966 -.15(ve t)-.25 H 3.166
(ot).15 G .666(he be)-3.166 F .666(ginning of the current command.)-.15
-F .667(If the)5.667 F .535
+F .666(If the)5.666 F .534
(current cursor position is at the end of the current command, the v)144
-402 R .534(alue of this v)-.25 F .534(ariable is equal to)-.25 F F1
-(${#COMP_LINE})144 414 Q F0 7.005(.T)C 2.005(his v)-7.005 F 2.005
-(ariable is a)-.25 F -.25(va)-.2 G 2.006
-(ilable only in shell functions and e).25 F 2.006(xternal commands)-.15
-F(in)144 426 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(db).1 G 2.5(yt)-2.5 G
+606 R .535(alue of this v)-.25 F .535(ariable is equal to)-.25 F F1
+(${#COMP_LINE})144 618 Q F0 7.006(.T)C 2.006(his v)-7.006 F 2.006
+(ariable is a)-.25 F -.25(va)-.2 G 2.005
+(ilable only in shell functions and e).25 F 2.005(xternal commands)-.15
+F(in)144 630 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(db).1 G 2.5(yt)-2.5 G
(he programmable completion f)-2.5 E(acilities \(see)-.1 E F1(Pr)2.5 E
(ogrammable Completion)-.18 E F0(belo)2.5 E(w\).)-.25 E F1(COMP_TYPE)108
-438 Q F0 .042(Set to an inte)144 450 R .042(ger v)-.15 F .041(alue corr\
+642 Q F0 .041(Set to an inte)144 654 R .041(ger v)-.15 F .041(alue corr\
esponding to the type of completion attempted that caused a completion)
--.25 F .337(function to be called:)144 462 R F2 -.5(TA)2.837 G(B).5 E F0
-2.837(,f)C .337(or normal completion,)-2.837 F F2(?)2.837 E F0 2.837(,f)
-C .337(or listing completions after successi)-2.837 F .638 -.15(ve t)
--.25 H(abs,).15 E F2(!)144 474 Q F0 4.092(,f)C 1.592
-(or listing alternati)-4.092 F -.15(ve)-.25 G 4.092(so).15 G 4.092(np)
--4.092 G 1.592(artial w)-4.092 F 1.592(ord completion,)-.1 F F2(@)4.092
+-.25 F .338(function to be called:)144 666 R F3 -.5(TA)2.837 G(B).5 E F0
+2.837(,f)C .337(or normal completion,)-2.837 F F3(?)2.837 E F0 2.837(,f)
+C .337(or listing completions after successi)-2.837 F .637 -.15(ve t)
+-.25 H(abs,).15 E F3(!)144 678 Q F0 4.091(,f)C 1.591
+(or listing alternati)-4.091 F -.15(ve)-.25 G 4.092(so).15 G 4.092(np)
+-4.092 G 1.592(artial w)-4.092 F 1.592(ord completion,)-.1 F F3(@)4.092
E F0 4.092(,t)C 4.092(ol)-4.092 G 1.592(ist completions if the w)-4.092
-F 1.591(ord is not)-.1 F 1.552(unmodi\214ed, or)144 486 R F2(%)4.052 E
+F 1.592(ord is not)-.1 F 1.553(unmodi\214ed, or)144 690 R F3(%)4.053 E
F0 4.052(,f)C 1.552(or menu completion.)-4.052 F 1.552(This v)6.552 F
1.552(ariable is a)-.25 F -.25(va)-.2 G 1.552
-(ilable only in shell functions and).25 F -.15(ex)144 498 S 2.929
+(ilable only in shell functions and).25 F -.15(ex)144 702 S 2.928
(ternal commands in).15 F -.2(vo)-.4 G -.1(ke).2 G 5.429(db).1 G 5.429
(yt)-5.429 G 2.929(he programmable completion f)-5.429 F 2.929
-(acilities \(see)-.1 F F1(Pr)5.428 E(ogrammable)-.18 E(Completion)144
-510 Q F0(belo)2.5 E(w\).)-.25 E F1(COMP_W)108 522 Q(ORDBREAKS)-.1 E F0
-1.335(The set of characters that the)144 534 R F1 -.18(re)3.836 G
-(adline).18 E F0 1.336(library treats as w)3.836 F 1.336
-(ord separators when performing w)-.1 F(ord)-.1 E 3.126(completion. If)
-144 546 R F3(COMP_W)3.126 E(ORDBREAKS)-.09 E F0 .626
-(is unset, it loses its special properties, e)2.876 F -.15(ve)-.25 G
-3.125(ni).15 G 3.125(fi)-3.125 G 3.125(ti)-3.125 G 3.125(ss)-3.125 G
-(ubse-)-3.125 E(quently reset.)144 558 Q F1(COMP_W)108 570 Q(ORDS)-.1 E
-F0 .653(An array v)144 582 R .653(ariable \(see)-.25 F F1(Arrays)3.153 E
-F0(belo)3.153 E .654(w\) consisting of the indi)-.25 F .654(vidual w)
--.25 F .654(ords in the current command)-.1 F 4.333(line. The)144 594 R
+(acilities \(see)-.1 F F1(Pr)5.429 E(ogrammable)-.18 E(Completion)144
+714 Q F0(belo)2.5 E(w\).)-.25 E(GNU Bash 4.2)72 768 Q(2012 July 5)
+151.505 E(11)200.665 E 0 Cg EP
+%%Page: 12 12
+%%BeginPageSetup
+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(COMP_W)108 84 Q(ORDBREAKS)-.1 E F0 1.336
+(The set of characters that the)144 96 R F1 -.18(re)3.836 G(adline).18 E
+F0 1.336(library treats as w)3.836 F 1.335
+(ord separators when performing w)-.1 F(ord)-.1 E 3.125(completion. If)
+144 108 R/F2 9/Times-Bold@0 SF(COMP_W)3.125 E(ORDBREAKS)-.09 E F0 .626
+(is unset, it loses its special properties, e)2.875 F -.15(ve)-.25 G
+3.126(ni).15 G 3.126(fi)-3.126 G 3.126(ti)-3.126 G 3.126(ss)-3.126 G
+(ubse-)-3.126 E(quently reset.)144 120 Q F1(COMP_W)108 132 Q(ORDS)-.1 E
+F0 .654(An array v)144 144 R .654(ariable \(see)-.25 F F1(Arrays)3.154 E
+F0(belo)3.154 E .654(w\) consisting of the indi)-.25 F .653(vidual w)
+-.25 F .653(ords in the current command)-.1 F 4.332(line. The)144 156 R
1.832(line is split into w)4.332 F 1.832(ords as)-.1 F F1 -.18(re)4.332
-G(adline).18 E F0 -.1(wo)4.332 G 1.832(uld split it, using).1 F F3
-(COMP_W)4.332 E(ORDBREAKS)-.09 E F0(as)4.082 E .831(described abo)144
-606 R -.15(ve)-.15 G 5.831(.T).15 G .831(his v)-5.831 F .831
-(ariable is a)-.25 F -.25(va)-.2 G .832
-(ilable only in shell functions in).25 F -.2(vo)-.4 G -.1(ke).2 G 3.332
-(db).1 G 3.332(yt)-3.332 G .832(he programmable)-3.332 F(completion f)
-144 618 Q(acilities \(see)-.1 E F1(Pr)2.5 E(ogrammable Completion)-.18 E
-F0(belo)2.5 E(w\).)-.25 E F1(COPR)108 630 Q(OC)-.3 E F0 .169(An array v)
-144 642 R .169(ariable \(see)-.25 F F1(Arrays)2.669 E F0(belo)2.669 E
+G(adline).18 E F0 -.1(wo)4.332 G 1.832(uld split it, using).1 F F2
+(COMP_W)4.332 E(ORDBREAKS)-.09 E F0(as)4.083 E .832(described abo)144
+168 R -.15(ve)-.15 G 5.832(.T).15 G .832(his v)-5.832 F .832
+(ariable is a)-.25 F -.25(va)-.2 G .831
+(ilable only in shell functions in).25 F -.2(vo)-.4 G -.1(ke).2 G 3.331
+(db).1 G 3.331(yt)-3.331 G .831(he programmable)-3.331 F(completion f)
+144 180 Q(acilities \(see)-.1 E F1(Pr)2.5 E(ogrammable Completion)-.18 E
+F0(belo)2.5 E(w\).)-.25 E F1(COPR)108 192 Q(OC)-.3 E F0 .168(An array v)
+144 204 R .168(ariable \(see)-.25 F F1(Arrays)2.668 E F0(belo)2.669 E
.169
(w\) created to hold the \214le descriptors for output from and input)
--.25 F(to an unnamed coprocess \(see)144 654 Q F1(Copr)2.5 E(ocesses)
--.18 E F0(abo)2.5 E -.15(ve)-.15 G(\).).15 E F1(DIRST)108 666 Q -.55(AC)
--.9 G(K).55 E F0 2.26(An array v)144 678 R 2.26(ariable \(see)-.25 F F1
+-.25 F(to an unnamed coprocess \(see)144 216 Q F1(Copr)2.5 E(ocesses)
+-.18 E F0(abo)2.5 E -.15(ve)-.15 G(\).).15 E F1(DIRST)108 228 Q -.55(AC)
+-.9 G(K).55 E F0 2.26(An array v)144 240 R 2.26(ariable \(see)-.25 F F1
(Arrays)4.76 E F0(belo)4.76 E 2.26
(w\) containing the current contents of the directory stack.)-.25 F
-1.095(Directories appear in the stack in the order the)144 690 R 3.594
-(ya)-.15 G 1.094(re displayed by the)-3.594 F F1(dirs)3.594 E F0 -.2(bu)
-3.594 G 3.594(iltin. Assigning).2 F(to)3.594 E 1.431
-(members of this array v)144 702 R 1.432
+1.094(Directories appear in the stack in the order the)144 252 R 3.594
+(ya)-.15 G 1.095(re displayed by the)-3.594 F F1(dirs)3.595 E F0 -.2(bu)
+3.595 G 3.595(iltin. Assigning).2 F(to)3.595 E 1.432
+(members of this array v)144 264 R 1.432
(ariable may be used to modify directories already in the stack, b)-.25
-F 1.432(ut the)-.2 F F1(pushd)144 714 Q F0(and)2.746 E F1(popd)2.746 E
+F 1.431(ut the)-.2 F F1(pushd)144 276 Q F0(and)2.746 E F1(popd)2.746 E
F0 -.2(bu)2.746 G .246(iltins must be used to add and remo).2 F .546
-.15(ve d)-.15 H 2.746(irectories. Assignment).15 F .246(to this v)2.746
-F(ariable)-.25 E .35(will not change the current directory)144 726 R
-5.35(.I)-.65 G(f)-5.35 E F3(DIRST)2.85 E -.495(AC)-.81 G(K).495 E F0 .35
-(is unset, it loses its special properties, e)2.6 F -.15(ve)-.25 G 2.851
-(ni).15 G(f)-2.851 E(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(11)
-190.95 E 0 Cg EP
-%%Page: 12 12
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(it is subsequently reset.)144 84 Q/F1 10/Times-Bold@0 SF(EUID)108
-96 Q F0 1.104(Expands to the ef)11 F(fecti)-.25 E 1.403 -.15(ve u)-.25 H
+F(ariable)-.25 E .351(will not change the current directory)144 288 R
+5.35(.I)-.65 G(f)-5.35 E F2(DIRST)2.85 E -.495(AC)-.81 G(K).495 E F0 .35
+(is unset, it loses its special properties, e)2.6 F -.15(ve)-.25 G 2.85
+(ni).15 G(f)-2.85 E(it is subsequently reset.)144 300 Q F1(EUID)108 312
+Q F0 1.103(Expands to the ef)11 F(fecti)-.25 E 1.403 -.15(ve u)-.25 H
1.103(ser ID of the current user).15 F 3.603(,i)-.4 G 1.103
-(nitialized at shell startup.)-3.603 F 1.103(This v)6.103 F 1.103
-(ariable is)-.25 F(readonly)144 108 Q(.)-.65 E F1(FUNCN)108 120 Q(AME)
--.2 E F0 .478(An array v)144 132 R .479
+(nitialized at shell startup.)-3.603 F 1.104(This v)6.103 F 1.104
+(ariable is)-.25 F(readonly)144 324 Q(.)-.65 E F1(FUNCN)108 336 Q(AME)
+-.2 E F0 .479(An array v)144 348 R .479
(ariable containing the names of all shell functions currently in the e)
--.25 F -.15(xe)-.15 G .479(cution call stack.).15 F .277
-(The element with inde)144 144 R 2.777(x0i)-.15 G 2.777(st)-2.777 G .276
-(he name of an)-2.777 F 2.776(yc)-.15 G(urrently-e)-2.776 E -.15(xe)-.15
-G .276(cuting shell function.).15 F .276(The bottom-most)5.276 F .384
-(element \(the one with the highest inde)144 156 R .384(x\) is)-.15 F/F2
-10/Courier@0 SF("main")2.884 E F0 5.384(.T)C .384(his v)-5.384 F .385
-(ariable e)-.25 F .385(xists only when a shell func-)-.15 F .035
-(tion is e)144 168 R -.15(xe)-.15 G 2.535(cuting. Assignments).15 F(to)
-2.535 E/F3 9/Times-Bold@0 SF(FUNCN)2.535 E(AME)-.18 E F0(ha)2.285 E .335
--.15(ve n)-.2 H 2.535(oe).15 G -.25(ff)-2.535 G .035
-(ect and return an error status.).25 F(If)5.034 E F3(FUNC-)2.534 E -.18
-(NA)144 180 S(ME).18 E F0(is unset, it loses its special properties, e)
-2.25 E -.15(ve)-.25 G 2.5(ni).15 G 2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)
--2.5 G(ubsequently reset.)-2.5 E .11(This v)144 198 R .111
-(ariable can be used with)-.25 F F1 -.3(BA)2.611 G(SH_LINENO).3 E F0
-(and)2.611 E F1 -.3(BA)2.611 G(SH_SOURCE).3 E F0 5.111(.E)C .111
-(ach element of)-5.111 F F1(FUNC-)2.611 E -.2(NA)144 210 S(ME).2 E F0
-1.404(has corresponding elements in)3.904 F F1 -.3(BA)3.904 G(SH_LINENO)
-.3 E F0(and)3.904 E F1 -.3(BA)3.904 G(SH_SOURCE).3 E F0 1.404
-(to describe the)3.904 F .012(call stack.)144 222 R -.15(Fo)5.012 G
-2.512(ri).15 G(nstance,)-2.512 E F1(${FUNCN)2.512 E(AME[)-.2 E/F4 10
-/Times-Italic@0 SF($i)A F1(]})A F0 -.1(wa)2.512 G 2.512(sc).1 G .012
-(alled from the \214le)-2.512 F F1(${B)2.512 E(ASH_SOURCE[)-.3 E F4
-($i+1)A F1(]})A F0 1.184(at line number)144 234 R F1(${B)3.684 E
-(ASH_LINENO[)-.3 E F4($i)A F1(]})A F0 6.184(.T)C(he)-6.184 E F1(caller)
-3.683 E F0 -.2(bu)3.683 G 1.183
+-.25 F -.15(xe)-.15 G .478(cution call stack.).15 F .276
+(The element with inde)144 360 R 2.776(x0i)-.15 G 2.776(st)-2.776 G .276
+(he name of an)-2.776 F 2.777(yc)-.15 G(urrently-e)-2.777 E -.15(xe)-.15
+G .277(cuting shell function.).15 F .277(The bottom-most)5.277 F .385
+(element \(the one with the highest inde)144 372 R .384(x\) is)-.15 F/F3
+10/Courier@0 SF("main")2.884 E F0 5.384(.T)C .384(his v)-5.384 F .384
+(ariable e)-.25 F .384(xists only when a shell func-)-.15 F .034
+(tion is e)144 384 R -.15(xe)-.15 G 2.534(cuting. Assignments).15 F(to)
+2.535 E F2(FUNCN)2.535 E(AME)-.18 E F0(ha)2.285 E .335 -.15(ve n)-.2 H
+2.535(oe).15 G -.25(ff)-2.535 G .035(ect and return an error status.).25
+F(If)5.035 E F2(FUNC-)2.535 E -.18(NA)144 396 S(ME).18 E F0
+(is unset, it loses its special properties, e)2.25 E -.15(ve)-.25 G 2.5
+(ni).15 G 2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)-2.5 G(ubsequently reset.)
+-2.5 E .111(This v)144 414 R .111(ariable can be used with)-.25 F F1 -.3
+(BA)2.611 G(SH_LINENO).3 E F0(and)2.611 E F1 -.3(BA)2.611 G(SH_SOURCE).3
+E F0 5.111(.E)C .111(ach element of)-5.111 F F1(FUNC-)2.61 E -.2(NA)144
+426 S(ME).2 E F0 1.404(has corresponding elements in)3.904 F F1 -.3(BA)
+3.904 G(SH_LINENO).3 E F0(and)3.904 E F1 -.3(BA)3.904 G(SH_SOURCE).3 E
+F0 1.404(to describe the)3.904 F .012(call stack.)144 438 R -.15(Fo)
+5.012 G 2.512(ri).15 G(nstance,)-2.512 E F1(${FUNCN)2.512 E(AME[)-.2 E
+/F4 10/Times-Italic@0 SF($i)A F1(]})A F0 -.1(wa)2.512 G 2.512(sc).1 G
+.012(alled from the \214le)-2.512 F F1(${B)2.512 E(ASH_SOURCE[)-.3 E F4
+($i+1)A F1(]})A F0 1.183(at line number)144 450 R F1(${B)3.683 E
+(ASH_LINENO[)-.3 E F4($i)A F1(]})A F0 6.183(.T)C(he)-6.183 E F1(caller)
+3.683 E F0 -.2(bu)3.683 G 1.184
(iltin displays the current call stack using).2 F(this information.)144
-246 Q F1(GR)108 258 Q(OUPS)-.3 E F0 1.228(An array v)144 270 R 1.228(ar\
+462 Q F1(GR)108 474 Q(OUPS)-.3 E F0 1.229(An array v)144 486 R 1.228(ar\
iable containing the list of groups of which the current user is a memb\
-er)-.25 F 6.229(.A)-.55 G(ssign-)-6.229 E .597(ments to)144 282 R F3(GR)
-3.097 E(OUPS)-.27 E F0(ha)2.847 E .897 -.15(ve n)-.2 H 3.097(oe).15 G
+er)-.25 F 6.228(.A)-.55 G(ssign-)-6.228 E .596(ments to)144 498 R F2(GR)
+3.096 E(OUPS)-.27 E F0(ha)2.847 E .897 -.15(ve n)-.2 H 3.097(oe).15 G
-.25(ff)-3.097 G .597(ect and return an error status.).25 F(If)5.597 E
-F3(GR)3.097 E(OUPS)-.27 E F0 .597(is unset, it loses its spe-)2.847 F
-(cial properties, e)144 294 Q -.15(ve)-.25 G 2.5(ni).15 G 2.5(fi)-2.5 G
-2.5(ti)-2.5 G 2.5(ss)-2.5 G(ubsequently reset.)-2.5 E F1(HISTCMD)108 306
-Q F0 .355(The history number)144 318 R 2.855(,o)-.4 G 2.855(ri)-2.855 G
-(nde)-2.855 E 2.856(xi)-.15 G 2.856(nt)-2.856 G .356
-(he history list, of the current command.)-2.856 F(If)5.356 E F3
-(HISTCMD)2.856 E F0 .356(is unset, it)2.606 F
-(loses its special properties, e)144 330 Q -.15(ve)-.25 G 2.5(ni).15 G
+F2(GR)3.097 E(OUPS)-.27 E F0 .597(is unset, it loses its spe-)2.847 F
+(cial properties, e)144 510 Q -.15(ve)-.25 G 2.5(ni).15 G 2.5(fi)-2.5 G
+2.5(ti)-2.5 G 2.5(ss)-2.5 G(ubsequently reset.)-2.5 E F1(HISTCMD)108 522
+Q F0 .356(The history number)144 534 R 2.856(,o)-.4 G 2.856(ri)-2.856 G
+(nde)-2.856 E 2.856(xi)-.15 G 2.856(nt)-2.856 G .356
+(he history list, of the current command.)-2.856 F(If)5.356 E F2
+(HISTCMD)2.855 E F0 .355(is unset, it)2.605 F
+(loses its special properties, e)144 546 Q -.15(ve)-.25 G 2.5(ni).15 G
2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)-2.5 G(ubsequently reset.)-2.5 E F1
-(HOSTN)108 342 Q(AME)-.2 E F0
-(Automatically set to the name of the current host.)144 354 Q F1
-(HOSTTYPE)108 366 Q F0 .223(Automatically set to a string that uniquely\
- describes the type of machine on which)144 378 R F1(bash)2.722 E F0
-.222(is e)2.722 F -.15(xe)-.15 G(cut-).15 E 2.5(ing. The)144 390 R(def)
-2.5 E(ault is system-dependent.)-.1 E F1(LINENO)108 402 Q F0 1.408(Each\
+(HOSTN)108 558 Q(AME)-.2 E F0
+(Automatically set to the name of the current host.)144 570 Q F1
+(HOSTTYPE)108 582 Q F0 .222(Automatically set to a string that uniquely\
+ describes the type of machine on which)144 594 R F1(bash)2.723 E F0
+.223(is e)2.723 F -.15(xe)-.15 G(cut-).15 E 2.5(ing. The)144 606 R(def)
+2.5 E(ault is system-dependent.)-.1 E F1(LINENO)108 618 Q F0 1.408(Each\
time this parameter is referenced, the shell substitutes a decimal num\
-ber representing the)144 414 R .078(current sequential line number \(st\
-arting with 1\) within a script or function.)144 426 R .078
-(When not in a script or)5.078 F .306(function, the v)144 438 R .306
-(alue substituted is not guaranteed to be meaningful.)-.25 F(If)5.307 E
-F3(LINENO)2.807 E F0 .307(is unset, it loses its)2.557 F
-(special properties, e)144 450 Q -.15(ve)-.25 G 2.5(ni).15 G 2.5(fi)-2.5
-G 2.5(ti)-2.5 G 2.5(ss)-2.5 G(ubsequently reset.)-2.5 E F1(MA)108 462 Q
+ber representing the)144 630 R .078(current sequential line number \(st\
+arting with 1\) within a script or function.)144 642 R .079
+(When not in a script or)5.078 F .307(function, the v)144 654 R .307
+(alue substituted is not guaranteed to be meaningful.)-.25 F(If)5.306 E
+F2(LINENO)2.806 E F0 .306(is unset, it loses its)2.556 F
+(special properties, e)144 666 Q -.15(ve)-.25 G 2.5(ni).15 G 2.5(fi)-2.5
+G 2.5(ti)-2.5 G 2.5(ss)-2.5 G(ubsequently reset.)-2.5 E F1(MA)108 678 Q
(CHTYPE)-.55 E F0 .898(Automatically set to a string that fully describ\
-es the system type on which)144 474 R F1(bash)3.398 E F0 .898(is e)3.398
-F -.15(xe)-.15 G .898(cuting, in).15 F(the standard GNU)144 486 Q F4
+es the system type on which)144 690 R F1(bash)3.398 E F0 .899(is e)3.398
+F -.15(xe)-.15 G .899(cuting, in).15 F(the standard GNU)144 702 Q F4
(cpu-company-system)2.5 E F0 2.5(format. The)2.5 F(def)2.5 E
-(ault is system-dependent.)-.1 E F1(MAPFILE)108 498 Q F0 .293
-(An array v)144 510 R .293(ariable \(see)-.25 F F1(Arrays)2.793 E F0
-(belo)2.793 E .293(w\) created to hold the te)-.25 F .294
-(xt read by the)-.15 F F1(map\214le)2.794 E F0 -.2(bu)2.794 G .294
-(iltin when no).2 F -.25(va)144 522 S(riable name is supplied.).25 E F1
-(OLDPWD)108 534 Q F0(The pre)144 546 Q(vious w)-.25 E
-(orking directory as set by the)-.1 E F1(cd)2.5 E F0(command.)2.5 E F1
-(OPT)108 558 Q(ARG)-.9 E F0 1.627(The v)144 570 R 1.627
-(alue of the last option ar)-.25 F 1.627(gument processed by the)-.18 F
-F1(getopts)4.127 E F0 -.2(bu)4.127 G 1.626(iltin command \(see).2 F F3
-(SHELL)4.126 E -.09(BU)144 582 S(IL).09 E(TIN COMMANDS)-.828 E F0(belo)
-2.25 E(w\).)-.25 E F1(OPTIND)108 594 Q F0 1.651(The inde)144 606 R 4.151
-(xo)-.15 G 4.151(ft)-4.151 G 1.651(he ne)-4.151 F 1.651(xt ar)-.15 F
-1.652(gument to be processed by the)-.18 F F1(getopts)4.152 E F0 -.2(bu)
-4.152 G 1.652(iltin command \(see).2 F F3(SHELL)4.152 E -.09(BU)144 618
-S(IL).09 E(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)-.25 E F1(OSTYPE)108
-630 Q F0 .329(Automatically set to a string that describes the operatin\
-g system on which)144 642 R F1(bash)2.829 E F0 .329(is e)2.829 F -.15
-(xe)-.15 G 2.829(cuting. The).15 F(def)144 654 Q
-(ault is system-dependent.)-.1 E F1(PIPEST)108 666 Q -.95(AT)-.9 G(US)
-.95 E F0 .61(An array v)144 678 R .61(ariable \(see)-.25 F F1(Arrays)
-3.11 E F0(belo)3.11 E .61(w\) containing a list of e)-.25 F .61
-(xit status v)-.15 F .61(alues from the processes in)-.25 F
-(the most-recently-e)144 690 Q -.15(xe)-.15 G(cuted fore).15 E
-(ground pipeline \(which may contain only a single command\).)-.15 E F1
-(PPID)108 702 Q F0(The process ID of the shell')12.67 E 2.5(sp)-.55 G
-2.5(arent. This)-2.5 F -.25(va)2.5 G(riable is readonly).25 E(.)-.65 E
-F1(PWD)108 714 Q F0(The current w)12.67 E
-(orking directory as set by the)-.1 E F1(cd)2.5 E F0(command.)2.5 E
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(12)190.95 E 0 Cg EP
+(ault is system-dependent.)-.1 E(GNU Bash 4.2)72 768 Q(2012 July 5)
+151.505 E(12)200.665 E 0 Cg EP
%%Page: 13 13
%%BeginPageSetup
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(RANDOM)108 84 Q F0 .566
-(Each time this parameter is referenced, a random inte)144 96 R .565
-(ger between 0 and 32767 is generated.)-.15 F(The)5.565 E .01
-(sequence of random numbers may be initialized by assigning a v)144 108
-R .01(alue to)-.25 F/F2 9/Times-Bold@0 SF(RANDOM)2.51 E/F3 9
-/Times-Roman@0 SF(.)A F0(If)4.51 E F2(RANDOM)2.51 E F0(is)2.26 E
-(unset, it loses its special properties, e)144 120 Q -.15(ve)-.25 G 2.5
+-.35 E/F1 10/Times-Bold@0 SF(MAPFILE)108 84 Q F0 .294(An array v)144 96
+R .294(ariable \(see)-.25 F F1(Arrays)2.794 E F0(belo)2.794 E .294
+(w\) created to hold the te)-.25 F .293(xt read by the)-.15 F F1
+(map\214le)2.793 E F0 -.2(bu)2.793 G .293(iltin when no).2 F -.25(va)144
+108 S(riable name is supplied.).25 E F1(OLDPWD)108 120 Q F0(The pre)144
+132 Q(vious w)-.25 E(orking directory as set by the)-.1 E F1(cd)2.5 E F0
+(command.)2.5 E F1(OPT)108 144 Q(ARG)-.9 E F0 1.626(The v)144 156 R
+1.627(alue of the last option ar)-.25 F 1.627(gument processed by the)
+-.18 F F1(getopts)4.127 E F0 -.2(bu)4.127 G 1.627(iltin command \(see).2
+F/F2 9/Times-Bold@0 SF(SHELL)4.127 E -.09(BU)144 168 S(IL).09 E
+(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)-.25 E F1(OPTIND)108 180 Q F0
+1.652(The inde)144 192 R 4.152(xo)-.15 G 4.152(ft)-4.152 G 1.652(he ne)
+-4.152 F 1.652(xt ar)-.15 F 1.652(gument to be processed by the)-.18 F
+F1(getopts)4.151 E F0 -.2(bu)4.151 G 1.651(iltin command \(see).2 F F2
+(SHELL)4.151 E -.09(BU)144 204 S(IL).09 E(TIN COMMANDS)-.828 E F0(belo)
+2.25 E(w\).)-.25 E F1(OSTYPE)108 216 Q F0 .329(Automatically set to a s\
+tring that describes the operating system on which)144 228 R F1(bash)
+2.83 E F0 .33(is e)2.83 F -.15(xe)-.15 G 2.83(cuting. The).15 F(def)144
+240 Q(ault is system-dependent.)-.1 E F1(PIPEST)108 252 Q -.95(AT)-.9 G
+(US).95 E F0 .61(An array v)144 264 R .61(ariable \(see)-.25 F F1
+(Arrays)3.11 E F0(belo)3.11 E .61(w\) containing a list of e)-.25 F .61
+(xit status v)-.15 F .61(alues from the processes in)-.25 F
+(the most-recently-e)144 276 Q -.15(xe)-.15 G(cuted fore).15 E
+(ground pipeline \(which may contain only a single command\).)-.15 E F1
+(PPID)108 288 Q F0(The process ID of the shell')12.67 E 2.5(sp)-.55 G
+2.5(arent. This)-2.5 F -.25(va)2.5 G(riable is readonly).25 E(.)-.65 E
+F1(PWD)108 300 Q F0(The current w)12.67 E
+(orking directory as set by the)-.1 E F1(cd)2.5 E F0(command.)2.5 E F1
+(RANDOM)108 312 Q F0 .565
+(Each time this parameter is referenced, a random inte)144 324 R .566
+(ger between 0 and 32767 is generated.)-.15 F(The)5.566 E .01
+(sequence of random numbers may be initialized by assigning a v)144 336
+R .01(alue to)-.25 F F2(RANDOM)2.51 E/F3 9/Times-Roman@0 SF(.)A F0(If)
+4.51 E F2(RANDOM)2.51 E F0(is)2.26 E
+(unset, it loses its special properties, e)144 348 Q -.15(ve)-.25 G 2.5
(ni).15 G 2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)-2.5 G(ubsequently reset.)
--2.5 E F1(READLINE_LINE)108 132 Q F0 1.547(The contents of the)144 144 R
+-2.5 E F1(READLINE_LINE)108 360 Q F0 1.546(The contents of the)144 372 R
F1 -.18(re)4.047 G(adline).18 E F0 1.547(line b)4.047 F(uf)-.2 E(fer)
-.25 E 4.047(,f)-.4 G 1.547(or use with)-4.047 F/F4 10/Courier@0 SF
-1.547(bind -x)4.047 F F0(\(see)4.047 E F2 1.546(SHELL B)4.047 F(UIL)-.09
-E 1.546(TIN COM-)-.828 F(MANDS)144 156 Q F0(belo)2.25 E(w\).)-.25 E F1
-(READLINE_POINT)108 168 Q F0 .313
-(The position of the insertion point in the)144 180 R F1 -.18(re)2.813 G
+1.547(bind -x)4.047 F F0(\(see)4.047 E F2 1.547(SHELL B)4.047 F(UIL)-.09
+E 1.547(TIN COM-)-.828 F(MANDS)144 384 Q F0(belo)2.25 E(w\).)-.25 E F1
+(READLINE_POINT)108 396 Q F0 .314
+(The position of the insertion point in the)144 408 R F1 -.18(re)2.813 G
(adline).18 E F0 .313(line b)2.813 F(uf)-.2 E(fer)-.25 E 2.813(,f)-.4 G
-.313(or use with)-2.813 F F4 .314(bind -x)2.814 F F0(\(see)2.814 E F2
-(SHELL)2.814 E -.09(BU)144 192 S(IL).09 E(TIN COMMANDS)-.828 E F0(belo)
-2.25 E(w\).)-.25 E F1(REPL)108 204 Q(Y)-.92 E F0
-(Set to the line of input read by the)144 216 Q F1 -.18(re)2.5 G(ad).18
+.313(or use with)-2.813 F F4 .313(bind -x)2.813 F F0(\(see)2.813 E F2
+(SHELL)2.813 E -.09(BU)144 420 S(IL).09 E(TIN COMMANDS)-.828 E F0(belo)
+2.25 E(w\).)-.25 E F1(REPL)108 432 Q(Y)-.92 E F0
+(Set to the line of input read by the)144 444 Q F1 -.18(re)2.5 G(ad).18
E F0 -.2(bu)2.5 G(iltin command when no ar).2 E(guments are supplied.)
--.18 E F1(SECONDS)108 228 Q F0 .795(Each time this parameter is referen\
-ced, the number of seconds since shell in)144 240 R -.2(vo)-.4 G .795
-(cation is returned.).2 F .712(If a v)144 252 R .712
+-.18 E F1(SECONDS)108 456 Q F0 .795(Each time this parameter is referen\
+ced, the number of seconds since shell in)144 468 R -.2(vo)-.4 G .795
+(cation is returned.).2 F .713(If a v)144 480 R .712
(alue is assigned to)-.25 F F2(SECONDS)3.212 E F3(,)A F0 .712(the v)
2.962 F .712(alue returned upon subsequent references is the number)-.25
-F .408(of seconds since the assignment plus the v)144 264 R .408
-(alue assigned.)-.25 F(If)5.408 E F2(SECONDS)2.908 E F0 .407
-(is unset, it loses its special)2.658 F(properties, e)144 276 Q -.15(ve)
+F .407(of seconds since the assignment plus the v)144 492 R .408
+(alue assigned.)-.25 F(If)5.408 E F2(SECONDS)2.908 E F0 .408
+(is unset, it loses its special)2.658 F(properties, e)144 504 Q -.15(ve)
-.25 G 2.5(ni).15 G 2.5(fi)-2.5 G 2.5(ti)-2.5 G 2.5(ss)-2.5 G
-(ubsequently reset.)-2.5 E F1(SHELLOPTS)108 288 Q F0 3.262(Ac)144 300 S
-.763(olon-separated list of enabled shell options.)-3.262 F .763(Each w)
+(ubsequently reset.)-2.5 E F1(SHELLOPTS)108 516 Q F0 3.263(Ac)144 528 S
+.763(olon-separated list of enabled shell options.)-3.263 F .763(Each w)
5.763 F .763(ord in the list is a v)-.1 F .763(alid ar)-.25 F .763
-(gument for the)-.18 F F1<ad6f>144 312 Q F0 1.174(option to the)3.674 F
-F1(set)3.674 E F0 -.2(bu)3.674 G 1.174(iltin command \(see).2 F F2 1.173
-(SHELL B)3.673 F(UIL)-.09 E 1.173(TIN COMMANDS)-.828 F F0(belo)3.423 E
-3.673(w\). The)-.25 F(options)3.673 E .019(appearing in)144 324 R F2
-(SHELLOPTS)2.519 E F0 .019(are those reported as)2.269 F/F5 10
+(gument for the)-.18 F F1<ad6f>144 540 Q F0 1.173(option to the)3.673 F
+F1(set)3.673 E F0 -.2(bu)3.673 G 1.173(iltin command \(see).2 F F2 1.174
+(SHELL B)3.674 F(UIL)-.09 E 1.174(TIN COMMANDS)-.828 F F0(belo)3.424 E
+3.674(w\). The)-.25 F(options)3.674 E .02(appearing in)144 552 R F2
+(SHELLOPTS)2.52 E F0 .019(are those reported as)2.27 F/F5 10
/Times-Italic@0 SF(on)2.749 E F0(by)2.759 E F1 .019(set \255o)2.519 F F0
-5.019(.I)C 2.519(ft)-5.019 G .019(his v)-2.519 F .02
-(ariable is in the en)-.25 F(vironment)-.4 E(when)144 336 Q F1(bash)
-3.142 E F0 .642(starts up, each shell option in the list will be enable\
-d before reading an)3.142 F 3.141(ys)-.15 G .641(tartup \214les.)-3.141
-F(This v)144 348 Q(ariable is read-only)-.25 E(.)-.65 E F1(SHL)108 360 Q
-(VL)-.92 E F0(Incremented by one each time an instance of)144 372 Q F1
-(bash)2.5 E F0(is started.)2.5 E F1(UID)108 384 Q F0
+5.019(.I)C 2.519(ft)-5.019 G .019(his v)-2.519 F .019
+(ariable is in the en)-.25 F(vironment)-.4 E(when)144 564 Q F1(bash)
+3.141 E F0 .642(starts up, each shell option in the list will be enable\
+d before reading an)3.141 F 3.142(ys)-.15 G .642(tartup \214les.)-3.142
+F(This v)144 576 Q(ariable is read-only)-.25 E(.)-.65 E F1(SHL)108 588 Q
+(VL)-.92 E F0(Incremented by one each time an instance of)144 600 Q F1
+(bash)2.5 E F0(is started.)2.5 E F1(UID)108 612 Q F0
(Expands to the user ID of the current user)17.67 E 2.5(,i)-.4 G
(nitialized at shell startup.)-2.5 E(This v)5 E(ariable is readonly)-.25
-E(.)-.65 E .993(The follo)108 400.8 R .993(wing v)-.25 F .994
+E(.)-.65 E .994(The follo)108 628.8 R .994(wing v)-.25 F .994
(ariables are used by the shell.)-.25 F .994(In some cases,)5.994 F F1
-(bash)3.494 E F0 .994(assigns a def)3.494 F .994(ault v)-.1 F .994
-(alue to a v)-.25 F(ariable;)-.25 E(these cases are noted belo)108 412.8
-Q -.65(w.)-.25 G F1 -.3(BA)108 429.6 S(SH_ENV).3 E F0 .506
-(If this parameter is set when)144 441.6 R F1(bash)3.006 E F0 .506(is e)
-3.006 F -.15(xe)-.15 G .505(cuting a shell script, its v).15 F .505
-(alue is interpreted as a \214lename)-.25 F .354
-(containing commands to initialize the shell, as in)144 453.6 R F5
-(~/.bashr)2.855 E(c)-.37 E F0 5.355(.T).31 G .355(he v)-5.355 F .355
-(alue of)-.25 F F2 -.27(BA)2.855 G(SH_ENV).27 E F0 .355(is subjected)
-2.605 F .525(to parameter e)144 465.6 R .525
+(bash)3.494 E F0 .994(assigns a def)3.494 F .994(ault v)-.1 F .993
+(alue to a v)-.25 F(ariable;)-.25 E(these cases are noted belo)108 640.8
+Q -.65(w.)-.25 G F1 -.3(BA)108 657.6 S(SH_ENV).3 E F0 .505
+(If this parameter is set when)144 669.6 R F1(bash)3.005 E F0 .505(is e)
+3.005 F -.15(xe)-.15 G .506(cuting a shell script, its v).15 F .506
+(alue is interpreted as a \214lename)-.25 F .355
+(containing commands to initialize the shell, as in)144 681.6 R F5
+(~/.bashr)2.855 E(c)-.37 E F0 5.354(.T).31 G .354(he v)-5.354 F .354
+(alue of)-.25 F F2 -.27(BA)2.854 G(SH_ENV).27 E F0 .354(is subjected)
+2.604 F .525(to parameter e)144 693.6 R .525
(xpansion, command substitution, and arithmetic e)-.15 F .525
-(xpansion before being interpreted)-.15 F(as a \214lename.)144 477.6 Q
+(xpansion before being interpreted)-.15 F(as a \214lename.)144 705.6 Q
F2 -.666(PA)5 G(TH)-.189 E F0
-(is not used to search for the resultant \214lename.)2.25 E F1 -.3(BA)
-108 489.6 S(SH_XTRA).3 E(CEFD)-.55 E F0 .48(If set to an inte)144 501.6
-R .48(ger corresponding to a v)-.15 F .481(alid \214le descriptor)-.25 F
-(,)-.4 E F1(bash)2.981 E F0 .481(will write the trace output gener)2.981
-F(-)-.2 E 3.114(ated when)144 513.6 R F4 3.114(set -x)5.614 F F0 3.114
+(is not used to search for the resultant \214lename.)2.25 E
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(13)200.665 E 0 Cg EP
+%%Page: 14 14
+%%BeginPageSetup
+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 -.3(BA)108 84 S(SH_XTRA).3 E(CEFD)-.55 E F0
+.481(If set to an inte)144 96 R .481(ger corresponding to a v)-.15 F
+.481(alid \214le descriptor)-.25 F(,)-.4 E F1(bash)2.98 E F0 .48
+(will write the trace output gener)2.98 F(-)-.2 E 3.114(ated when)144
+108 R/F2 10/Courier@0 SF 3.114(set -x)5.614 F F0 3.114
(is enabled to that \214le descriptor)5.614 F 8.114(.T)-.55 G 3.114
-(he \214le descriptor is closed when)-8.114 F F2 -.27(BA)144 525.6 S
-(SH_XTRA).27 E(CEFD)-.495 E F0 .138(is unset or assigned a ne)2.388 F
-2.638(wv)-.25 G 2.638(alue. Unsetting)-2.888 F F2 -.27(BA)2.638 G
-(SH_XTRA).27 E(CEFD)-.495 E F0 .138(or assigning it)2.388 F 2.531(the e\
-mpty string causes the trace output to be sent to the standard error)144
-537.6 R 7.53(.N)-.55 G 2.53(ote that setting)-7.53 F F2 -.27(BA)144
-549.6 S(SH_XTRA).27 E(CEFD)-.495 E F0 .74(to 2 \(the standard error \
-\214le descriptor\) and then unsetting it will result in the)2.99 F
-(standard error being closed.)144 561.6 Q F1(CDP)108 573.6 Q -.95(AT)
--.74 G(H).95 E F0 1.248(The search path for the)144 585.6 R F1(cd)3.748
-E F0 3.748(command. This)3.748 F 1.247
-(is a colon-separated list of directories in which the)3.748 F 3.795
-(shell looks for destination directories speci\214ed by the)144 597.6 R
-F1(cd)6.295 E F0 6.296(command. A)6.296 F 3.796(sample v)6.296 F 3.796
-(alue is)-.25 F F4(".:~:/usr")144 609.6 Q F0(.)A F1(COLUMNS)108 621.6 Q
-F0 .829(Used by the)144 633.6 R F1(select)3.329 E F0 .828(compound comm\
-and to determine the terminal width when printing selection)3.329 F 2.5
-(lists. Automatically)144 645.6 R(set in an interacti)2.5 E .3 -.15
-(ve s)-.25 H(hell upon receipt of a).15 E F2(SIGWINCH)2.5 E F3(.)A F1
-(COMPREPL)108 657.6 Q(Y)-.92 E F0 .847(An array v)144 669.6 R .848
+(he \214le descriptor is closed when)-8.114 F/F3 9/Times-Bold@0 SF -.27
+(BA)144 120 S(SH_XTRA).27 E(CEFD)-.495 E F0 .138
+(is unset or assigned a ne)2.388 F 2.638(wv)-.25 G 2.638
+(alue. Unsetting)-2.888 F F3 -.27(BA)2.638 G(SH_XTRA).27 E(CEFD)-.495 E
+F0 .138(or assigning it)2.388 F 2.531(the empty string causes the trace\
+ output to be sent to the standard error)144 132 R 7.531(.N)-.55 G 2.531
+(ote that setting)-7.531 F F3 -.27(BA)144 144 S(SH_XTRA).27 E(CEFD)-.495
+E F0 .74(to 2 \(the standard error \214le descriptor\) and then unsetti\
+ng it will result in the)2.991 F(standard error being closed.)144 156 Q
+F1(CDP)108 168 Q -.95(AT)-.74 G(H).95 E F0 1.247
+(The search path for the)144 180 R F1(cd)3.747 E F0 3.747(command. This)
+3.747 F 1.248(is a colon-separated list of directories in which the)
+3.747 F 3.796
+(shell looks for destination directories speci\214ed by the)144 192 R F1
+(cd)6.295 E F0 6.295(command. A)6.295 F 3.795(sample v)6.295 F 3.795
+(alue is)-.25 F F2(".:~:/usr")144 204 Q F0(.)A F1(COLUMNS)108 216 Q F0
+.828(Used by the)144 228 R F1(select)3.328 E F0 .829(compound command t\
+o determine the terminal width when printing selection)3.328 F 2.5
+(lists. Automatically)144 240 R(set in an interacti)2.5 E .3 -.15(ve s)
+-.25 H(hell upon receipt of a).15 E F3(SIGWINCH)2.5 E/F4 9/Times-Roman@0
+SF(.)A F1(COMPREPL)108 252 Q(Y)-.92 E F0 .848(An array v)144 264 R .848
(ariable from which)-.25 F F1(bash)3.348 E F0 .848
(reads the possible completions generated by a shell function)3.348 F
-(in)144 681.6 Q -.2(vo)-.4 G -.1(ke).2 G 2.785(db).1 G 2.785(yt)-2.785 G
+(in)144 276 Q -.2(vo)-.4 G -.1(ke).2 G 2.785(db).1 G 2.785(yt)-2.785 G
.285(he programmable completion f)-2.785 F .285(acility \(see)-.1 F F1
(Pr)2.785 E .285(ogrammable Completion)-.18 F F0(belo)2.785 E 2.785
(w\). Each)-.25 F(array element contains one possible completion.)144
-693.6 Q F1(EMA)108 705.6 Q(CS)-.55 E F0(If)144 717.6 Q F1(bash)2.535 E
-F0 .035(\214nds this v)2.535 F .035(ariable in the en)-.25 F .036
-(vironment when the shell starts with v)-.4 F(alue)-.25 E F4(t)2.536 E
-F0 2.536(,i)C 2.536(ta)-2.536 G .036(ssumes that the)-2.536 F
-(shell is running in an Emacs shell b)144 729.6 Q(uf)-.2 E
-(fer and disables line editing.)-.25 E(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(13)190.95 E 0 Cg EP
-%%Page: 14 14
-%%BeginPageSetup
-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(ENV)108 84 Q F0(Similar to)14.89 E/F2 9
-/Times-Bold@0 SF -.27(BA)2.5 G(SH_ENV).27 E/F3 9/Times-Roman@0 SF(;)A F0
+288 Q F1(EMA)108 300 Q(CS)-.55 E F0(If)144 312 Q F1(bash)2.536 E F0 .036
+(\214nds this v)2.536 F .036(ariable in the en)-.25 F .036
+(vironment when the shell starts with v)-.4 F(alue)-.25 E F2(t)2.535 E
+F0 2.535(,i)C 2.535(ta)-2.535 G .035(ssumes that the)-2.535 F
+(shell is running in an Emacs shell b)144 324 Q(uf)-.2 E
+(fer and disables line editing.)-.25 E F1(ENV)108 336 Q F0(Similar to)
+14.89 E F3 -.27(BA)2.5 G(SH_ENV).27 E F4(;)A F0
(used when the shell is in)2.25 E -.2(vo)-.4 G -.1(ke).2 G 2.5(di).1 G
-2.5(nP)-2.5 G(OSIX mode.)-2.5 E F1(FCEDIT)108 96 Q F0(The def)144 108 Q
+2.5(nP)-2.5 G(OSIX mode.)-2.5 E F1(FCEDIT)108 348 Q F0(The def)144 360 Q
(ault editor for the)-.1 E F1(fc)2.5 E F0 -.2(bu)2.5 G(iltin command.).2
-E F1(FIGNORE)108 120 Q F0 2.599(Ac)144 132 S .098
-(olon-separated list of suf)-2.599 F<8c78>-.25 E .098
-(es to ignore when performing \214lename completion \(see)-.15 F F2
-(READLINE)2.598 E F0(belo)144 144 Q 2.704(w\). A)-.25 F .204
-(\214lename whose suf)2.704 F .205(\214x matches one of the entries in)
--.25 F F2(FIGNORE)2.705 E F0 .205(is e)2.455 F .205
-(xcluded from the list)-.15 F(of matched \214lenames.)144 156 Q 2.5(As)5
-G(ample v)-2.5 E(alue is)-.25 E/F4 10/Courier@0 SF(".o:~")2.5 E F0(.)A
-F1(FUNCNEST)108 168 Q F0 1.78(If set to a numeric v)144 180 R 1.78
+E F1(FIGNORE)108 372 Q F0 2.598(Ac)144 384 S .098
+(olon-separated list of suf)-2.598 F<8c78>-.25 E .098
+(es to ignore when performing \214lename completion \(see)-.15 F F3
+(READLINE)2.599 E F0(belo)144 396 Q 2.705(w\). A)-.25 F .205
+(\214lename whose suf)2.705 F .205(\214x matches one of the entries in)
+-.25 F F3(FIGNORE)2.705 E F0 .205(is e)2.455 F .204
+(xcluded from the list)-.15 F(of matched \214lenames.)144 408 Q 2.5(As)5
+G(ample v)-2.5 E(alue is)-.25 E F2(".o:~")2.5 E F0(.)A F1(FUNCNEST)108
+420 Q F0 1.78(If set to a numeric v)144 432 R 1.78
(alue greater than 0, de\214nes a maximum function nesting le)-.25 F
--.15(ve)-.25 G 4.28(l. Function).15 F(in)144 192 Q -.2(vo)-.4 G
+-.15(ve)-.25 G 4.28(l. Function).15 F(in)144 444 Q -.2(vo)-.4 G
(cations that e).2 E(xceed this nesting le)-.15 E -.15(ve)-.25 G 2.5(lw)
.15 G(ill cause the current command to abort.)-2.5 E F1(GLOBIGNORE)108
-204 Q F0 3.118(Ac)144 216 S .618(olon-separated list of patterns de\214\
+456 Q F0 3.118(Ac)144 468 S .618(olon-separated list of patterns de\214\
ning the set of \214lenames to be ignored by pathname e)-3.118 F(xpan-)
--.15 E 3.132(sion. If)144 228 R 3.132<618c>3.132 G .632
+-.15 E 3.131(sion. If)144 480 R 3.132<618c>3.131 G .632
(lename matched by a pathname e)-3.132 F .632
-(xpansion pattern also matches one of the patterns in)-.15 F F2
-(GLOBIGNORE)144 240 Q F3(,)A F0(it is remo)2.25 E -.15(ve)-.15 G 2.5(df)
-.15 G(rom the list of matches.)-2.5 E F1(HISTCONTR)108 252 Q(OL)-.3 E F0
-2.653(Ac)144 264 S .153(olon-separated list of v)-2.653 F .153
+(xpansion pattern also matches one of the patterns in)-.15 F F3
+(GLOBIGNORE)144 492 Q F4(,)A F0(it is remo)2.25 E -.15(ve)-.15 G 2.5(df)
+.15 G(rom the list of matches.)-2.5 E F1(HISTCONTR)108 504 Q(OL)-.3 E F0
+2.654(Ac)144 516 S .153(olon-separated list of v)-2.654 F .153
(alues controlling ho)-.25 F 2.653(wc)-.25 G .153(ommands are sa)-2.653
F -.15(ve)-.2 G 2.653(do).15 G 2.653(nt)-2.653 G .153(he history list.)
--2.653 F .154(If the list)5.153 F .491(of v)144 276 R .491
-(alues includes)-.25 F/F5 10/Times-Italic@0 SF(ignor)2.991 E(espace)-.37
-E F0 2.991(,l).18 G .491(ines which be)-2.991 F .491(gin with a)-.15 F
-F1(space)2.991 E F0 .49(character are not sa)2.991 F -.15(ve)-.2 G 2.99
-(di).15 G 2.99(nt)-2.99 G .49(he his-)-2.99 F .557(tory list.)144 288 R
-3.057(Av)5.557 G .557(alue of)-3.307 F F5(ignor)3.067 E(edups)-.37 E F0
-.557(causes lines matching the pre)3.327 F .558
-(vious history entry to not be sa)-.25 F -.15(ve)-.2 G(d.).15 E 2.959
-(Av)144 300 S .459(alue of)-3.209 F F5(ignor)2.969 E(eboth)-.37 E F0
-.459(is shorthand for)3.239 F F5(ignor)2.959 E(espace)-.37 E F0(and)
-2.959 E F5(ignor)2.958 E(edups)-.37 E F0 5.458(.A)C -.25(va)-2.5 G .458
-(lue of).25 F F5(er)2.958 E(asedups)-.15 E F0(causes)2.958 E .698
-(all pre)144 312 R .698
+-2.653 F .153(If the list)5.153 F .49(of v)144 528 R .49(alues includes)
+-.25 F/F5 10/Times-Italic@0 SF(ignor)2.99 E(espace)-.37 E F0 2.99(,l).18
+G .49(ines which be)-2.99 F .491(gin with a)-.15 F F1(space)2.991 E F0
+.491(character are not sa)2.991 F -.15(ve)-.2 G 2.991(di).15 G 2.991(nt)
+-2.991 G .491(he his-)-2.991 F .558(tory list.)144 540 R 3.058(Av)5.558
+G .558(alue of)-3.308 F F5(ignor)3.068 E(edups)-.37 E F0 .558
+(causes lines matching the pre)3.328 F .557
+(vious history entry to not be sa)-.25 F -.15(ve)-.2 G(d.).15 E 2.958
+(Av)144 552 S .458(alue of)-3.208 F F5(ignor)2.968 E(eboth)-.37 E F0
+.458(is shorthand for)3.238 F F5(ignor)2.959 E(espace)-.37 E F0(and)
+2.959 E F5(ignor)2.959 E(edups)-.37 E F0 5.459(.A)C -.25(va)-2.5 G .459
+(lue of).25 F F5(er)2.959 E(asedups)-.15 E F0(causes)2.959 E .699
+(all pre)144 564 R .698
(vious lines matching the current line to be remo)-.25 F -.15(ve)-.15 G
-3.198(df).15 G .699(rom the history list before that line is)-3.198 F
-(sa)144 324 Q -.15(ve)-.2 G 2.764(d. An).15 F 2.764(yv)-.15 G .264
-(alue not in the abo)-3.014 F .563 -.15(ve l)-.15 H .263
-(ist is ignored.).15 F(If)5.263 E F2(HISTCONTR)2.763 E(OL)-.27 E F0 .263
-(is unset, or does not include)2.513 F 2.941(av)144 336 S .441(alid v)
--3.191 F .441(alue, all lines read by the shell parser are sa)-.25 F
--.15(ve)-.2 G 2.942(do).15 G 2.942(nt)-2.942 G .442
-(he history list, subject to the v)-2.942 F .442(alue of)-.25 F F2
-(HISTIGNORE)144 348 Q F3(.)A F0 1.981(The second and subsequent lines o\
-f a multi-line compound command are not)6.482 F
-(tested, and are added to the history re)144 360 Q -.05(ga)-.15 G
-(rdless of the v).05 E(alue of)-.25 E F2(HISTCONTR)2.5 E(OL)-.27 E F3(.)
-A F1(HISTFILE)108 372 Q F0 .181
-(The name of the \214le in which command history is sa)144 384 R -.15
-(ve)-.2 G 2.681(d\().15 G(see)-2.681 E F2(HIST)2.681 E(OR)-.162 E(Y)
--.315 E F0(belo)2.431 E 2.682(w\). The)-.25 F(def)2.682 E .182(ault v)
--.1 F(alue)-.25 E(is)144 396 Q F5(~/.bash_history)2.5 E F0 5(.I)C 2.5
+3.198(df).15 G .698(rom the history list before that line is)-3.198 F
+(sa)144 576 Q -.15(ve)-.2 G 2.763(d. An).15 F 2.763(yv)-.15 G .263
+(alue not in the abo)-3.013 F .563 -.15(ve l)-.15 H .263
+(ist is ignored.).15 F(If)5.263 E F3(HISTCONTR)2.763 E(OL)-.27 E F0 .264
+(is unset, or does not include)2.513 F 2.942(av)144 588 S .442(alid v)
+-3.192 F .442(alue, all lines read by the shell parser are sa)-.25 F
+-.15(ve)-.2 G 2.941(do).15 G 2.941(nt)-2.941 G .441
+(he history list, subject to the v)-2.941 F .441(alue of)-.25 F F3
+(HISTIGNORE)144 600 Q F4(.)A F0 1.981(The second and subsequent lines o\
+f a multi-line compound command are not)6.481 F
+(tested, and are added to the history re)144 612 Q -.05(ga)-.15 G
+(rdless of the v).05 E(alue of)-.25 E F3(HISTCONTR)2.5 E(OL)-.27 E F4(.)
+A F1(HISTFILE)108 624 Q F0 .181
+(The name of the \214le in which command history is sa)144 636 R -.15
+(ve)-.2 G 2.681(d\().15 G(see)-2.681 E F3(HIST)2.681 E(OR)-.162 E(Y)
+-.315 E F0(belo)2.431 E 2.681(w\). The)-.25 F(def)2.681 E .181(ault v)
+-.1 F(alue)-.25 E(is)144 648 Q F5(~/.bash_history)2.5 E F0 5(.I)C 2.5
(fu)-5 G(nset, the command history is not sa)-2.5 E -.15(ve)-.2 G 2.5
-(dw).15 G(hen an interacti)-2.5 E .3 -.15(ve s)-.25 H(hell e).15 E
-(xits.)-.15 E F1(HISTFILESIZE)108 408 Q F0 1.623
-(The maximum number of lines contained in the history \214le.)144 420 R
-1.622(When this v)6.623 F 1.622(ariable is assigned a)-.25 F -.25(va)144
-432 S .931(lue, the history \214le is truncated, if necessary).25 F
-3.432(,t)-.65 G 3.432(oc)-3.432 G .932
-(ontain no more than that number of lines by)-3.432 F(remo)144 444 Q
-.577(ving the oldest entries.)-.15 F .576(The history \214le is also tr\
-uncated to this size after writing it when an)5.577 F(interacti)144 456
-Q .522 -.15(ve s)-.25 H .222(hell e).15 F 2.722(xits. If)-.15 F .222
-(the v)2.722 F .222
-(alue is 0, the history \214le is truncated to zero size.)-.25 F .223
-(Non-numeric v)5.223 F(al-)-.25 E 1.145(ues and numeric v)144 468 R
-1.145(alues less than zero inhibit truncation.)-.25 F 1.145
-(The shell sets the def)6.145 F 1.145(ault v)-.1 F 1.145(alue to the)
--.25 F -.25(va)144 480 S(lue of).25 E F1(HISTSIZE)2.5 E F0
-(after reading an)2.5 E 2.5(ys)-.15 G(tartup \214les.)-2.5 E F1
-(HISTIGNORE)108 492 Q F0 2.657(Ac)144 504 S .157(olon-separated list of\
- patterns used to decide which command lines should be sa)-2.657 F -.15
-(ve)-.2 G 2.658(do).15 G 2.658(nt)-2.658 G .158(he his-)-2.658 F .708
-(tory list.)144 516 R .708(Each pattern is anchored at the be)5.708 F
-.707(ginning of the line and must match the complete line)-.15 F .625
-(\(no implicit `)144 528 R F1(*)A F0 3.125('i)C 3.125(sa)-3.125 G 3.125
-(ppended\). Each)-3.125 F .626(pattern is tested ag)3.125 F .626
-(ainst the line after the checks speci\214ed by)-.05 F F2(HISTCONTR)144
-540 Q(OL)-.27 E F0 1.793(are applied.)4.043 F 1.793
-(In addition to the normal shell pattern matching characters, `)6.793 F
-F1(&)A F0(')A 2.514(matches the pre)144 552 R 2.514(vious history line.)
--.25 F(`)7.514 E F1(&)A F0 5.014('m)C 2.514
-(ay be escaped using a backslash; the backslash is)-5.014 F(remo)144 564
-Q -.15(ve)-.15 G 3.353(db).15 G .853(efore attempting a match.)-3.353 F
-.852(The second and subsequent lines of a multi-line compound)5.852 F
-(command are not tested, and are added to the history re)144 576 Q -.05
-(ga)-.15 G(rdless of the v).05 E(alue of)-.25 E F2(HISTIGNORE)2.5 E F3
-(.)A F1(HISTSIZE)108 588 Q F0 1.387
-(The number of commands to remember in the command history \(see)144 600
-R F2(HIST)3.887 E(OR)-.162 E(Y)-.315 E F0(belo)3.637 E 3.887(w\). If)
--.25 F(the)3.888 E -.25(va)144 612 S 1.321
-(lue is 0, commands are not sa).25 F -.15(ve)-.2 G 3.821(di).15 G 3.821
-(nt)-3.821 G 1.321(he history list.)-3.821 F 1.32(Numeric v)6.32 F 1.32
-(alues less than zero result in)-.25 F -2.15 -.25(ev e)144 624 T .436
-(ry command being sa).25 F -.15(ve)-.2 G 2.936(do).15 G 2.936(nt)-2.936
-G .436(he history list \(there is no limit\).)-2.936 F .437
-(The shell sets the def)5.437 F .437(ault v)-.1 F(alue)-.25 E
-(to 500 after reading an)144 636 Q 2.5(ys)-.15 G(tartup \214les.)-2.5 E
-F1(HISTTIMEFORMA)108 648 Q(T)-.95 E F0 .952(If this v)144 660 R .952
-(ariable is set and not null, its v)-.25 F .951
-(alue is used as a format string for)-.25 F F5(strftime)3.451 E F0 .951
-(\(3\) to print the)B .672
-(time stamp associated with each history entry displayed by the)144 672
-R F1(history)3.173 E F0 -.2(bu)3.173 G 3.173(iltin. If).2 F .673(this v)
-3.173 F .673(ariable is)-.25 F .144
-(set, time stamps are written to the history \214le so the)144 684 R
-2.644(ym)-.15 G .144(ay be preserv)-2.644 F .144
-(ed across shell sessions.)-.15 F(This)5.144 E(uses the history comment\
- character to distinguish timestamps from other history lines.)144 696 Q
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(14)190.95 E 0 Cg EP
+(dw).15 G(hen a shell e)-2.5 E(xits.)-.15 E F1(HISTFILESIZE)108 660 Q F0
+1.622(The maximum number of lines contained in the history \214le.)144
+672 R 1.623(When this v)6.623 F 1.623(ariable is assigned a)-.25 F -.25
+(va)144 684 S .932(lue, the history \214le is truncated, if necessary)
+.25 F 3.432(,t)-.65 G 3.432(oc)-3.432 G .932
+(ontain no more than that number of lines by)-3.432 F(remo)144 696 Q .87
+(ving the oldest entries.)-.15 F .871(The history \214le is also trunca\
+ted to this size after writing it when a)5.87 F 1.245(shell e)144 708 R
+3.745(xits. If)-.15 F 1.244(the v)3.744 F 1.244
+(alue is 0, the history \214le is truncated to zero size.)-.25 F 1.244
+(Non-numeric v)6.244 F 1.244(alues and)-.25 F 1.021(numeric v)144 720 R
+1.022(alues less than zero inhibit truncation.)-.25 F 1.022
+(The shell sets the def)6.022 F 1.022(ault v)-.1 F 1.022(alue to the v)
+-.25 F 1.022(alue of)-.25 F(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E
+(14)200.665 E 0 Cg EP
%%Page: 15 15
%%BeginPageSetup
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(HOME)108 84 Q F0 1.27
-(The home directory of the current user; the def)144 96 R 1.27(ault ar)
+-.35 E/F1 10/Times-Bold@0 SF(HISTSIZE)144 84 Q F0(after reading an)2.5 E
+2.5(ys)-.15 G(tartup \214les.)-2.5 E F1(HISTIGNORE)108 96 Q F0 2.658(Ac)
+144 108 S .158(olon-separated list of patterns used to decide which com\
+mand lines should be sa)-2.658 F -.15(ve)-.2 G 2.657(do).15 G 2.657(nt)
+-2.657 G .157(he his-)-2.657 F .707(tory list.)144 120 R .707
+(Each pattern is anchored at the be)5.707 F .708
+(ginning of the line and must match the complete line)-.15 F .626
+(\(no implicit `)144 132 R F1(*)A F0 3.126('i)C 3.126(sa)-3.126 G 3.126
+(ppended\). Each)-3.126 F .626(pattern is tested ag)3.126 F .625
+(ainst the line after the checks speci\214ed by)-.05 F/F2 9/Times-Bold@0
+SF(HISTCONTR)144 144 Q(OL)-.27 E F0 1.793(are applied.)4.043 F 1.793
+(In addition to the normal shell pattern matching characters, `)6.793 F
+F1(&)A F0(')A 2.515(matches the pre)144 156 R 2.515(vious history line.)
+-.25 F(`)7.514 E F1(&)A F0 5.014('m)C 2.514
+(ay be escaped using a backslash; the backslash is)-5.014 F(remo)144 168
+Q -.15(ve)-.15 G 3.352(db).15 G .852(efore attempting a match.)-3.352 F
+.852(The second and subsequent lines of a multi-line compound)5.852 F
+(command are not tested, and are added to the history re)144 180 Q -.05
+(ga)-.15 G(rdless of the v).05 E(alue of)-.25 E F2(HISTIGNORE)2.5 E/F3 9
+/Times-Roman@0 SF(.)A F1(HISTSIZE)108 192 Q F0 1.387
+(The number of commands to remember in the command history \(see)144 204
+R F2(HIST)3.887 E(OR)-.162 E(Y)-.315 E F0(belo)3.637 E 3.887(w\). If)
+-.25 F(the)3.887 E -.25(va)144 216 S 1.32(lue is 0, commands are not sa)
+.25 F -.15(ve)-.2 G 3.82(di).15 G 3.821(nt)-3.82 G 1.321
+(he history list.)-3.821 F 1.321(Numeric v)6.321 F 1.321
+(alues less than zero result in)-.25 F -2.15 -.25(ev e)144 228 T .437
+(ry command being sa).25 F -.15(ve)-.2 G 2.937(do).15 G 2.937(nt)-2.937
+G .437(he history list \(there is no limit\).)-2.937 F .436
+(The shell sets the def)5.436 F .436(ault v)-.1 F(alue)-.25 E
+(to 500 after reading an)144 240 Q 2.5(ys)-.15 G(tartup \214les.)-2.5 E
+F1(HISTTIMEFORMA)108 252 Q(T)-.95 E F0 .951(If this v)144 264 R .951
+(ariable is set and not null, its v)-.25 F .952
+(alue is used as a format string for)-.25 F/F4 10/Times-Italic@0 SF
+(strftime)3.452 E F0 .952(\(3\) to print the)B .673
+(time stamp associated with each history entry displayed by the)144 276
+R F1(history)3.173 E F0 -.2(bu)3.172 G 3.172(iltin. If).2 F .672(this v)
+3.172 F .672(ariable is)-.25 F .144
+(set, time stamps are written to the history \214le so the)144 288 R
+2.644(ym)-.15 G .144(ay be preserv)-2.644 F .144
+(ed across shell sessions.)-.15 F(This)5.145 E(uses the history comment\
+ character to distinguish timestamps from other history lines.)144 300 Q
+F1(HOME)108 312 Q F0 1.27
+(The home directory of the current user; the def)144 324 R 1.27(ault ar)
-.1 F 1.27(gument for the)-.18 F F1(cd)3.77 E F0 -.2(bu)3.77 G 1.27
-(iltin command.).2 F(The)6.27 E -.25(va)144 108 S(lue of this v).25 E
+(iltin command.).2 F(The)6.27 E -.25(va)144 336 S(lue of this v).25 E
(ariable is also used when performing tilde e)-.25 E(xpansion.)-.15 E F1
-(HOSTFILE)108 120 Q F0 1.015
-(Contains the name of a \214le in the same format as)144 132 R/F2 10
-/Times-Italic@0 SF(/etc/hosts)5.181 E F0 1.015
-(that should be read when the shell)5.181 F .55
-(needs to complete a hostname.)144 144 R .551
+(HOSTFILE)108 348 Q F0 1.015
+(Contains the name of a \214le in the same format as)144 360 R F4
+(/etc/hosts)5.181 E F0 1.015(that should be read when the shell)5.181 F
+.551(needs to complete a hostname.)144 372 R .551
(The list of possible hostname completions may be changed while)5.551 F
-1.059(the shell is running; the ne)144 156 R 1.059
-(xt time hostname completion is attempted after the v)-.15 F 1.058
-(alue is changed,)-.25 F F1(bash)144 168 Q F0 .138
-(adds the contents of the ne)2.638 F 2.638<778c>-.25 G .138(le to the e)
--2.638 F .138(xisting list.)-.15 F(If)5.138 E/F3 9/Times-Bold@0 SF
-(HOSTFILE)2.638 E F0 .138(is set, b)2.388 F .139(ut has no v)-.2 F .139
-(alue, or)-.25 F .518(does not name a readable \214le,)144 180 R F1
-(bash)3.018 E F0 .518(attempts to read)3.018 F F2(/etc/hosts)4.683 E F0
-.517(to obtain the list of possible host-)4.683 F(name completions.)144
-192 Q(When)5 E F3(HOSTFILE)2.5 E F0
-(is unset, the hostname list is cleared.)2.25 E F1(IFS)108 204 Q F0(The)
-20.44 E F2 .555(Internal F)3.635 F .555(ield Separ)-.45 F(ator)-.15 E F0
-.555(that is used for w)3.785 F .556(ord splitting after e)-.1 F .556
-(xpansion and to split lines into)-.15 F -.1(wo)144 216 S(rds with the)
-.1 E F1 -.18(re)2.5 G(ad).18 E F0 -.2(bu)2.5 G(iltin command.).2 E
-(The def)5 E(ault v)-.1 E(alue is `)-.25 E(`<space><tab><ne)-.74 E
-(wline>')-.25 E('.)-.74 E F1(IGNOREEOF)108 228 Q F0 .503
-(Controls the action of an interacti)144 240 R .803 -.15(ve s)-.25 H
-.503(hell on receipt of an).15 F F3(EOF)3.003 E F0 .503
-(character as the sole input.)2.753 F .503(If set,)5.503 F .426(the v)
-144 252 R .426(alue is the number of consecuti)-.25 F -.15(ve)-.25 G F3
+1.058(the shell is running; the ne)144 384 R 1.059
+(xt time hostname completion is attempted after the v)-.15 F 1.059
+(alue is changed,)-.25 F F1(bash)144 396 Q F0 .138
+(adds the contents of the ne)2.639 F 2.638<778c>-.25 G .138(le to the e)
+-2.638 F .138(xisting list.)-.15 F(If)5.138 E F2(HOSTFILE)2.638 E F0
+.138(is set, b)2.388 F .138(ut has no v)-.2 F .138(alue, or)-.25 F .517
+(does not name a readable \214le,)144 408 R F1(bash)3.017 E F0 .517
+(attempts to read)3.017 F F4(/etc/hosts)4.684 E F0 .518
+(to obtain the list of possible host-)4.684 F(name completions.)144 420
+Q(When)5 E F2(HOSTFILE)2.5 E F0(is unset, the hostname list is cleared.)
+2.25 E F1(IFS)108 432 Q F0(The)20.44 E F4 .556(Internal F)3.636 F .556
+(ield Separ)-.45 F(ator)-.15 E F0 .556(that is used for w)3.786 F .556
+(ord splitting after e)-.1 F .555(xpansion and to split lines into)-.15
+F -.1(wo)144 444 S(rds with the).1 E F1 -.18(re)2.5 G(ad).18 E F0 -.2
+(bu)2.5 G(iltin command.).2 E(The def)5 E(ault v)-.1 E(alue is `)-.25 E
+(`<space><tab><ne)-.74 E(wline>')-.25 E('.)-.74 E F1(IGNOREEOF)108 456 Q
+F0 .503(Controls the action of an interacti)144 468 R .803 -.15(ve s)
+-.25 H .503(hell on receipt of an).15 F F2(EOF)3.003 E F0 .503
+(character as the sole input.)2.753 F .504(If set,)5.504 F .426(the v)
+144 480 R .426(alue is the number of consecuti)-.25 F -.15(ve)-.25 G F2
(EOF)3.076 E F0 .426
-(characters which must be typed as the \214rst characters)2.676 F .303
-(on an input line before)144 264 R F1(bash)2.802 E F0 -.15(ex)2.802 G
+(characters which must be typed as the \214rst characters)2.676 F .302
+(on an input line before)144 492 R F1(bash)2.802 E F0 -.15(ex)2.802 G
2.802(its. If).15 F .302(the v)2.802 F .302(ariable e)-.25 F .302
(xists b)-.15 F .302(ut does not ha)-.2 F .602 -.15(ve a n)-.2 H .302
-(umeric v).15 F .302(alue, or has)-.25 F(no v)144 276 Q(alue, the def)
+(umeric v).15 F .303(alue, or has)-.25 F(no v)144 504 Q(alue, the def)
-.25 E(ault v)-.1 E(alue is 10.)-.25 E(If it does not e)5 E(xist,)-.15 E
-F3(EOF)2.5 E F0(signi\214es the end of input to the shell.)2.25 E F1
-(INPUTRC)108 288 Q F0 1.435(The \214lename for the)144 300 R F1 -.18(re)
+F2(EOF)2.5 E F0(signi\214es the end of input to the shell.)2.25 E F1
+(INPUTRC)108 516 Q F0 1.436(The \214lename for the)144 528 R F1 -.18(re)
3.936 G(adline).18 E F0 1.436(startup \214le, o)3.936 F -.15(ve)-.15 G
-1.436(rriding the def).15 F 1.436(ault of)-.1 F F2(~/.inputr)5.602 E(c)
--.37 E F0(\(see)5.602 E F3(READLINE)3.936 E F0(belo)144 312 Q(w\).)-.25
-E F1(LANG)108 324 Q F0 1.24(Used to determine the locale cate)7.11 F
-1.239(gory for an)-.15 F 3.739(yc)-.15 G(ate)-3.739 E 1.239
+1.436(rriding the def).15 F 1.436(ault of)-.1 F F4(~/.inputr)5.602 E(c)
+-.37 E F0(\(see)5.601 E F2(READLINE)3.935 E F0(belo)144 540 Q(w\).)-.25
+E F1(LANG)108 552 Q F0 1.239(Used to determine the locale cate)7.11 F
+1.239(gory for an)-.15 F 3.739(yc)-.15 G(ate)-3.739 E 1.24
(gory not speci\214cally selected with a v)-.15 F(ariable)-.25 E
-(starting with)144 336 Q F1(LC_)2.5 E F0(.)A F1(LC_ALL)108 348 Q F0 .973
-(This v)144 360 R .973(ariable o)-.25 F -.15(ve)-.15 G .973
-(rrides the v).15 F .973(alue of)-.25 F F3(LANG)3.473 E F0 .973(and an)
+(starting with)144 564 Q F1(LC_)2.5 E F0(.)A F1(LC_ALL)108 576 Q F0 .974
+(This v)144 588 R .974(ariable o)-.25 F -.15(ve)-.15 G .974
+(rrides the v).15 F .973(alue of)-.25 F F2(LANG)3.473 E F0 .973(and an)
3.223 F 3.473(yo)-.15 G(ther)-3.473 E F1(LC_)3.473 E F0 -.25(va)3.473 G
-.974(riable specifying a locale cate-).25 F(gory)144 372 Q(.)-.65 E F1
-(LC_COLLA)108 384 Q(TE)-.95 E F0 .412(This v)144 396 R .412(ariable det\
+.973(riable specifying a locale cate-).25 F(gory)144 600 Q(.)-.65 E F1
+(LC_COLLA)108 612 Q(TE)-.95 E F0 .411(This v)144 624 R .412(ariable det\
ermines the collation order used when sorting the results of pathname e)
--.25 F(xpansion,)-.15 E 1.464(and determines the beha)144 408 R 1.464
-(vior of range e)-.2 F 1.465(xpressions, equi)-.15 F -.25(va)-.25 G
-1.465(lence classes, and collating sequences).25 F(within pathname e)144
-420 Q(xpansion and pattern matching.)-.15 E F1(LC_CTYPE)108 432 Q F0
-1.936(This v)144 444 R 1.936
+-.25 F(xpansion,)-.15 E 1.465(and determines the beha)144 636 R 1.465
+(vior of range e)-.2 F 1.464(xpressions, equi)-.15 F -.25(va)-.25 G
+1.464(lence classes, and collating sequences).25 F(within pathname e)144
+648 Q(xpansion and pattern matching.)-.15 E F1(LC_CTYPE)108 660 Q F0
+1.935(This v)144 672 R 1.936
(ariable determines the interpretation of characters and the beha)-.25 F
-1.935(vior of character classes)-.2 F(within pathname e)144 456 Q
-(xpansion and pattern matching.)-.15 E F1(LC_MESSA)108 468 Q(GES)-.55 E
-F0(This v)144 480 Q(ariable determines the locale used to translate dou\
-ble-quoted strings preceded by a)-.25 E F1($)2.5 E F0(.)A F1(LC_NUMERIC)
-108 492 Q F0(This v)144 504 Q(ariable determines the locale cate)-.25 E
-(gory used for number formatting.)-.15 E F1(LINES)108 516 Q F0 .054
-(Used by the)5.99 F F1(select)2.554 E F0 .054(compound command to deter\
-mine the column length for printing selection lists.)2.554 F
-(Automatically set by an interacti)144 528 Q .3 -.15(ve s)-.25 H
-(hell upon receipt of a).15 E F3(SIGWINCH)2.5 E/F4 9/Times-Roman@0 SF(.)
-A F1(MAIL)108 540 Q F0 1.201
+1.936(vior of character classes)-.2 F(within pathname e)144 684 Q
+(xpansion and pattern matching.)-.15 E F1(LC_MESSA)108 696 Q(GES)-.55 E
+F0(This v)144 708 Q(ariable determines the locale used to translate dou\
+ble-quoted strings preceded by a)-.25 E F1($)2.5 E F0(.)A(GNU Bash 4.2)
+72 768 Q(2012 July 5)151.505 E(15)200.665 E 0 Cg EP
+%%Page: 16 16
+%%BeginPageSetup
+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(LC_NUMERIC)108 84 Q F0(This v)144 96 Q
+(ariable determines the locale cate)-.25 E
+(gory used for number formatting.)-.15 E F1(LINES)108 108 Q F0 .055
+(Used by the)5.99 F F1(select)2.555 E F0 .054(compound command to deter\
+mine the column length for printing selection lists.)2.555 F
+(Automatically set by an interacti)144 120 Q .3 -.15(ve s)-.25 H
+(hell upon receipt of a).15 E/F2 9/Times-Bold@0 SF(SIGWINCH)2.5 E/F3 9
+/Times-Roman@0 SF(.)A F1(MAIL)108 132 Q F0 1.201
(If this parameter is set to a \214le or directory name and the)8.78 F
-F3(MAILP)3.701 E -.855(AT)-.666 G(H).855 E F0 -.25(va)3.451 G 1.201
-(riable is not set,).25 F F1(bash)3.701 E F0
-(informs the user of the arri)144 552 Q -.25(va)-.25 G 2.5(lo).25 G 2.5
+F2(MAILP)3.701 E -.855(AT)-.666 G(H).855 E F0 -.25(va)3.451 G 1.202
+(riable is not set,).25 F F1(bash)3.702 E F0
+(informs the user of the arri)144 144 Q -.25(va)-.25 G 2.5(lo).25 G 2.5
(fm)-2.5 G(ail in the speci\214ed \214le or Maildir)-2.5 E
-(-format directory)-.2 E(.)-.65 E F1(MAILCHECK)108 564 Q F0 .098
-(Speci\214es ho)144 576 R 2.598(wo)-.25 G .098(ften \(in seconds\))
--2.598 F F1(bash)2.598 E F0 .098(checks for mail.)2.598 F .098(The def)
-5.098 F .098(ault is 60 seconds.)-.1 F .099(When it is time)5.099 F .224
+(-format directory)-.2 E(.)-.65 E F1(MAILCHECK)108 156 Q F0 .099
+(Speci\214es ho)144 168 R 2.599(wo)-.25 G .099(ften \(in seconds\))
+-2.599 F F1(bash)2.598 E F0 .098(checks for mail.)2.598 F .098(The def)
+5.098 F .098(ault is 60 seconds.)-.1 F .098(When it is time)5.098 F .223
(to check for mail, the shell does so before displaying the primary pro\
-mpt.)144 588 R .223(If this v)5.223 F .223(ariable is unset,)-.25 F .066
-(or set to a v)144 600 R .066(alue that is not a number greater than or\
+mpt.)144 180 R .224(If this v)5.224 F .224(ariable is unset,)-.25 F .066
+(or set to a v)144 192 R .066(alue that is not a number greater than or\
equal to zero, the shell disables mail checking.)-.25 F F1(MAILP)108
-612 Q -.95(AT)-.74 G(H).95 E F0 2.99(Ac)144 624 S .49
+204 Q -.95(AT)-.74 G(H).95 E F0 2.99(Ac)144 216 S .49
(olon-separated list of \214lenames to be check)-2.99 F .49
(ed for mail.)-.1 F .49(The message to be printed when mail)5.49 F(arri)
-144 636 Q -.15(ve)-.25 G 2.62(si).15 G 2.62(nap)-2.62 G .12(articular \
+144 228 Q -.15(ve)-.25 G 2.62(si).15 G 2.62(nap)-2.62 G .12(articular \
\214le may be speci\214ed by separating the \214lename from the message\
- with a `?'.)-2.62 F(When used in the te)144 648 Q(xt of the message,)
+ with a `?'.)-2.62 F(When used in the te)144 240 Q(xt of the message,)
-.15 E F1($_)2.5 E F0 -.15(ex)2.5 G
(pands to the name of the current mail\214le.).15 E(Example:)5 E F1
-(MAILP)144 660 Q -.95(AT)-.74 G(H).95 E F0(=\010/v)A(ar/mail/bfox?"Y)
+(MAILP)144 252 Q -.95(AT)-.74 G(H).95 E F0(=\010/v)A(ar/mail/bfox?"Y)
-.25 E(ou ha)-1.1 E .3 -.15(ve m)-.2 H
-(ail":~/shell\255mail?"$_ has mail!"\010).15 E F1(Bash)144 672 Q F0 .389
-(supplies a def)2.889 F .389(ault v)-.1 F .389(alue for this v)-.25 F
-.389(ariable, b)-.25 F .388
+(ail":~/shell\255mail?"$_ has mail!"\010).15 E F1(Bash)144 264 Q F0 .388
+(supplies a def)2.888 F .388(ault v)-.1 F .388(alue for this v)-.25 F
+.388(ariable, b)-.25 F .389
(ut the location of the user mail \214les that it uses is)-.2 F
-(system dependent \(e.g., /v)144 684 Q(ar/mail/)-.25 E F1($USER)A F0
-(\).)A F1(OPTERR)108 696 Q F0 .389(If set to the v)144 708 R .389
-(alue 1,)-.25 F F1(bash)2.889 E F0 .389
-(displays error messages generated by the)2.889 F F1(getopts)2.89 E F0
--.2(bu)2.89 G .39(iltin command \(see).2 F F3 .36(SHELL B)144 720 R(UIL)
--.09 E .36(TIN COMMANDS)-.828 F F0(belo)2.61 E(w\).)-.25 E F3(OPTERR)
-5.36 E F0 .359(is initialized to 1 each time the shell is in)2.61 F -.2
-(vo)-.4 G -.1(ke).2 G(d).1 E(GNU Bash 4.2)72 768 Q(2012 February 4)
-141.79 E(15)190.95 E 0 Cg EP
-%%Page: 16 16
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(or a shell script is e)144 84 Q -.15(xe)-.15 G(cuted.).15 E/F1 10
-/Times-Bold@0 SF -.74(PA)108 96 S(TH)-.21 E F0 .587
-(The search path for commands.)9.91 F .588
+(system dependent \(e.g., /v)144 276 Q(ar/mail/)-.25 E F1($USER)A F0
+(\).)A F1(OPTERR)108 288 Q F0 .39(If set to the v)144 300 R .39(alue 1,)
+-.25 F F1(bash)2.89 E F0 .389(displays error messages generated by the)
+2.889 F F1(getopts)2.889 E F0 -.2(bu)2.889 G .389(iltin command \(see).2
+F F2 .359(SHELL B)144 312 R(UIL)-.09 E .359(TIN COMMANDS)-.828 F F0
+(belo)2.609 E(w\).)-.25 E F2(OPTERR)5.359 E F0 .36
+(is initialized to 1 each time the shell is in)2.609 F -.2(vo)-.4 G -.1
+(ke).2 G(d).1 E(or a shell script is e)144 324 Q -.15(xe)-.15 G(cuted.)
+.15 E F1 -.74(PA)108 336 S(TH)-.21 E F0 .588
+(The search path for commands.)9.91 F .587
(It is a colon-separated list of directories in which the shell looks)
-5.587 F .472(for commands \(see)144 108 R/F2 9/Times-Bold@0 SF .472
-(COMMAND EXECUTION)2.972 F F0(belo)2.722 E 2.972(w\). A)-.25 F .471
-(zero-length \(null\) directory name in the)2.972 F -.25(va)144 120 S
-.535(lue of).25 F F2 -.666(PA)3.035 G(TH)-.189 E F0 .535
-(indicates the current directory)2.785 F 5.535(.A)-.65 G .535
-(null directory name may appear as tw)-2.5 F 3.036(oa)-.1 G(djacent)
--3.036 E .868(colons, or as an initial or trailing colon.)144 132 R .868
-(The def)5.868 F .867(ault path is system-dependent, and is set by the)
--.1 F 26.328(administrator who installs)144 144 R F1(bash)28.828 E F0
-31.329(.A)C 26.329(common v)-2.5 F 26.329(alue is)-.25 F/F3 10/Courier@0
-SF(/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin)144 156
-Q F0(.)A F1(POSIXL)108 168 Q(Y_CORRECT)-.92 E F0 .472(If this v)144 180
-R .472(ariable is in the en)-.25 F .471(vironment when)-.4 F F1(bash)
-2.971 E F0 .471(starts, the shell enters)2.971 F/F4 10/Times-Italic@0 SF
-.471(posix mode)2.971 F F0 .471(before reading)2.971 F .011
-(the startup \214les, as if the)144 192 R F1(\255\255posix)2.511 E F0
+5.588 F .471(for commands \(see)144 348 R F2 .471(COMMAND EXECUTION)
+2.971 F F0(belo)2.722 E 2.972(w\). A)-.25 F .472
+(zero-length \(null\) directory name in the)2.972 F -.25(va)144 360 S
+.536(lue of).25 F F2 -.666(PA)3.036 G(TH)-.189 E F0 .535
+(indicates the current directory)2.786 F 5.535(.A)-.65 G .535
+(null directory name may appear as tw)-2.5 F 3.035(oa)-.1 G(djacent)
+-3.035 E .867(colons, or as an initial or trailing colon.)144 372 R .868
+(The def)5.868 F .868(ault path is system-dependent, and is set by the)
+-.1 F 26.329(administrator who installs)144 384 R F1(bash)28.829 E F0
+31.329(.A)C 26.328(common v)-2.501 F 26.328(alue is)-.25 F/F4 10
+/Courier@0 SF
+(/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin)144 396 Q
+F0(.)A F1(POSIXL)108 408 Q(Y_CORRECT)-.92 E F0 .471(If this v)144 420 R
+.471(ariable is in the en)-.25 F .471(vironment when)-.4 F F1(bash)2.971
+E F0 .471(starts, the shell enters)2.971 F/F5 10/Times-Italic@0 SF .472
+(posix mode)2.972 F F0 .472(before reading)2.972 F .011
+(the startup \214les, as if the)144 432 R F1(\255\255posix)2.511 E F0
(in)2.511 E -.2(vo)-.4 G .011(cation option had been supplied.).2 F .011
-(If it is set while the shell is)5.011 F(running,)144 204 Q F1(bash)2.5
-E F0(enables)2.5 E F4(posix mode)2.5 E F0 2.5(,a)C 2.5(si)-2.5 G 2.5(ft)
--2.5 G(he command)-2.5 E F3(set -o posix)2.5 E F0(had been e)2.5 E -.15
-(xe)-.15 G(cuted.).15 E F1(PR)108 216 Q(OMPT_COMMAND)-.3 E F0
-(If set, the v)144 228 Q(alue is e)-.25 E -.15(xe)-.15 G
+(If it is set while the shell is)5.011 F(running,)144 444 Q F1(bash)2.5
+E F0(enables)2.5 E F5(posix mode)2.5 E F0 2.5(,a)C 2.5(si)-2.5 G 2.5(ft)
+-2.5 G(he command)-2.5 E F4(set -o posix)2.5 E F0(had been e)2.5 E -.15
+(xe)-.15 G(cuted.).15 E F1(PR)108 456 Q(OMPT_COMMAND)-.3 E F0
+(If set, the v)144 468 Q(alue is e)-.25 E -.15(xe)-.15 G
(cuted as a command prior to issuing each primary prompt.).15 E F1(PR)
-108 240 Q(OMPT_DIR)-.3 E(TRIM)-.4 E F0 .676
-(If set to a number greater than zero, the v)144 252 R .676
+108 480 Q(OMPT_DIR)-.3 E(TRIM)-.4 E F0 .676
+(If set to a number greater than zero, the v)144 492 R .676
(alue is used as the number of trailing directory compo-)-.25 F .923
-(nents to retain when e)144 264 R .923(xpanding the)-.15 F F1(\\w)3.423
+(nents to retain when e)144 504 R .923(xpanding the)-.15 F F1(\\w)3.423
E F0(and)3.423 E F1(\\W)3.423 E F0 .923(prompt string escapes \(see)
3.423 F F2(PR)3.423 E(OMPTING)-.27 E F0(belo)3.173 E(w\).)-.25 E
-(Characters remo)144 276 Q -.15(ve)-.15 G 2.5(da).15 G
-(re replaced with an ellipsis.)-2.5 E F1(PS1)108 288 Q F0 .065(The v)
+(Characters remo)144 516 Q -.15(ve)-.15 G 2.5(da).15 G
+(re replaced with an ellipsis.)-2.5 E F1(PS1)108 528 Q F0 .064(The v)
19.33 F .065(alue of this parameter is e)-.25 F .065(xpanded \(see)-.15
F F2(PR)2.565 E(OMPTING)-.27 E F0(belo)2.315 E .065
-(w\) and used as the primary prompt)-.25 F 2.5(string. The)144 300 R
+(w\) and used as the primary prompt)-.25 F 2.5(string. The)144 540 R
(def)2.5 E(ault v)-.1 E(alue is `)-.25 E(`)-.74 E F1(\\s\255\\v\\$)A F0
--.74('')2.5 G(.).74 E F1(PS2)108 312 Q F0 .117(The v)19.33 F .117
-(alue of this parameter is e)-.25 F .117(xpanded as with)-.15 F F2(PS1)
-2.617 E F0 .118(and used as the secondary prompt string.)2.368 F(The)
-5.118 E(def)144 324 Q(ault is `)-.1 E(`)-.74 E F1(>)A F0 -.74('')2.5 G
-(.).74 E F1(PS3)108 336 Q F0 1.116(The v)19.33 F 1.115
+-.74('')2.5 G(.).74 E F1(PS2)108 552 Q F0 .118(The v)19.33 F .118
+(alue of this parameter is e)-.25 F .118(xpanded as with)-.15 F F2(PS1)
+2.617 E F0 .117(and used as the secondary prompt string.)2.367 F(The)
+5.117 E(def)144 564 Q(ault is `)-.1 E(`)-.74 E F1(>)A F0 -.74('')2.5 G
+(.).74 E F1(PS3)108 576 Q F0 1.115(The v)19.33 F 1.115
(alue of this parameter is used as the prompt for the)-.25 F F1(select)
-3.615 E F0 1.115(command \(see)3.615 F F2 1.115(SHELL GRAM-)3.615 F(MAR)
-144 348 Q F0(abo)2.25 E -.15(ve)-.15 G(\).).15 E F1(PS4)108 360 Q F0 .1
-(The v)19.33 F .1(alue of this parameter is e)-.25 F .1(xpanded as with)
--.15 F F2(PS1)2.6 E F0 .101(and the v)2.35 F .101
-(alue is printed before each command)-.25 F F1(bash)144 372 Q F0 .292
-(displays during an e)2.792 F -.15(xe)-.15 G .292(cution trace.).15 F
-.292(The \214rst character of)5.292 F F2(PS4)2.792 E F0 .291
-(is replicated multiple times, as)2.542 F(necessary)144 384 Q 2.5(,t)
+3.615 E F0 1.116(command \(see)3.616 F F2 1.116(SHELL GRAM-)3.616 F(MAR)
+144 588 Q F0(abo)2.25 E -.15(ve)-.15 G(\).).15 E F1(PS4)108 600 Q F0
+.101(The v)19.33 F .101(alue of this parameter is e)-.25 F .101
+(xpanded as with)-.15 F F2(PS1)2.6 E F0 .1(and the v)2.35 F .1
+(alue is printed before each command)-.25 F F1(bash)144 612 Q F0 .291
+(displays during an e)2.791 F -.15(xe)-.15 G .292(cution trace.).15 F
+.292(The \214rst character of)5.292 F F2(PS4)2.792 E F0 .292
+(is replicated multiple times, as)2.542 F(necessary)144 624 Q 2.5(,t)
-.65 G 2.5(oi)-2.5 G(ndicate multiple le)-2.5 E -.15(ve)-.25 G
(ls of indirection.).15 E(The def)5 E(ault is `)-.1 E(`)-.74 E F1(+)A F0
--.74('')2.5 G(.).74 E F1(SHELL)108 396 Q F0 .663
-(The full pathname to the shell is k)144 408 R .664(ept in this en)-.1 F
-.664(vironment v)-.4 F 3.164(ariable. If)-.25 F .664
-(it is not set when the shell)3.164 F(starts,)144 420 Q F1(bash)2.5 E F0
+-.74('')2.5 G(.).74 E F1(SHELL)108 636 Q F0 .664
+(The full pathname to the shell is k)144 648 R .664(ept in this en)-.1 F
+.664(vironment v)-.4 F 3.164(ariable. If)-.25 F .663
+(it is not set when the shell)3.164 F(starts,)144 660 Q F1(bash)2.5 E F0
(assigns to it the full pathname of the current user')2.5 E 2.5(sl)-.55
-G(ogin shell.)-2.5 E F1(TIMEFORMA)108 432 Q(T)-.95 E F0 .827(The v)144
-444 R .826
+G(ogin shell.)-2.5 E F1(TIMEFORMA)108 672 Q(T)-.95 E F0 .826(The v)144
+684 R .826
(alue of this parameter is used as a format string specifying ho)-.25 F
-3.326(wt)-.25 G .826(he timing information for)-3.326 F .648
-(pipelines pre\214x)144 456 R .648(ed with the)-.15 F F1(time)3.148 E F0
-(reserv)3.148 E .648(ed w)-.15 F .649(ord should be displayed.)-.1 F
-(The)5.649 E F1(%)3.149 E F0 .649(character introduces)3.149 F .712
-(an escape sequence that is e)144 468 R .711(xpanded to a time v)-.15 F
-.711(alue or other information.)-.25 F .711(The escape sequences)5.711 F
-(and their meanings are as follo)144 480 Q
-(ws; the braces denote optional portions.)-.25 E F1(%%)144 498 Q F0 2.5
-(Al)30 G(iteral)-2.5 E F1(%)2.5 E F0(.)A F1(%[)144 510 Q F4(p)A F1
-(][l]R)A F0(The elapsed time in seconds.)11.68 E F1(%[)144 522 Q F4(p)A
-F1(][l]U)A F0(The number of CPU seconds spent in user mode.)11.68 E F1
-(%[)144 534 Q F4(p)A F1(][l]S)A F0
-(The number of CPU seconds spent in system mode.)13.34 E F1(%P)144 546 Q
-F0(The CPU percentage, computed as \(%U + %S\) / %R.)33.89 E .87
-(The optional)144 562.8 R F4(p)3.37 E F0 .87(is a digit specifying the)
-3.37 F F4(pr)3.37 E(ecision)-.37 E F0 3.37(,t)C .87
-(he number of fractional digits after a decimal)-3.37 F 2.526(point. A)
-144 574.8 R -.25(va)2.526 G .025
-(lue of 0 causes no decimal point or fraction to be output.).25 F .025
-(At most three places after the)5.025 F .537
-(decimal point may be speci\214ed; v)144 586.8 R .537(alues of)-.25 F F4
-(p)3.037 E F0 .537(greater than 3 are changed to 3.)3.037 F(If)5.538 E
-F4(p)3.038 E F0 .538(is not speci\214ed,)3.038 F(the v)144 598.8 Q
-(alue 3 is used.)-.25 E .668(The optional)144 615.6 R F1(l)3.168 E F0
-.668(speci\214es a longer format, including minutes, of the form)3.168 F
-F4(MM)3.168 E F0(m)A F4(SS)A F0(.)A F4(FF)A F0 3.167(s. The)B -.25(va)
-3.167 G(lue).25 E(of)144 627.6 Q F4(p)2.5 E F0
-(determines whether or not the fraction is included.)2.5 E(If this v)144
-644.4 Q(ariable is not set,)-.25 E F1(bash)2.501 E F0 .001
-(acts as if it had the v)2.501 F(alue)-.25 E F1($\010\\nr)2.501 E
-(eal\\t%3lR\\nuser\\t%3lU\\nsys%3lS\010)-.18 E F0(.)A .495(If the v)144
-656.4 R .494(alue is null, no timing information is displayed.)-.25 F
-2.994(At)5.494 G .494(railing ne)-2.994 F .494
-(wline is added when the for)-.25 F(-)-.2 E(mat string is displayed.)144
-668.4 Q F1(TMOUT)108 680.4 Q F0 .941(If set to a v)144 692.4 R .941
-(alue greater than zero,)-.25 F F2(TMOUT)3.441 E F0 .941
-(is treated as the def)3.191 F .941(ault timeout for the)-.1 F F1 -.18
-(re)3.441 G(ad).18 E F0 -.2(bu)3.441 G(iltin.).2 E(The)144 704.4 Q F1
-(select)2.811 E F0 .311(command terminates if input does not arri)2.811
-F .61 -.15(ve a)-.25 H(fter).15 E F2(TMOUT)2.81 E F0 .31
-(seconds when input is com-)2.56 F .885(ing from a terminal.)144 716.4 R
-.885(In an interacti)5.885 F 1.185 -.15(ve s)-.25 H .885(hell, the v).15
-F .886(alue is interpreted as the number of seconds to)-.25 F -.1(wa)144
-728.4 S .546(it for input after issuing the primary prompt.).1 F F1
-(Bash)5.546 E F0 .546(terminates after w)3.046 F .546
-(aiting for that number of)-.1 F(GNU Bash 4.2)72 768 Q(2012 February 4)
-141.79 E(16)190.95 E 0 Cg EP
+3.327(wt)-.25 G .827(he timing information for)-3.327 F .649
+(pipelines pre\214x)144 696 R .649(ed with the)-.15 F F1(time)3.149 E F0
+(reserv)3.149 E .649(ed w)-.15 F .648(ord should be displayed.)-.1 F
+(The)5.648 E F1(%)3.148 E F0 .648(character introduces)3.148 F .711
+(an escape sequence that is e)144 708 R .711(xpanded to a time v)-.15 F
+.712(alue or other information.)-.25 F .712(The escape sequences)5.712 F
+(and their meanings are as follo)144 720 Q
+(ws; the braces denote optional portions.)-.25 E(GNU Bash 4.2)72 768 Q
+(2012 July 5)151.505 E(16)200.665 E 0 Cg EP
%%Page: 17 17
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(seconds if input does not arri)144 84 Q -.15(ve)-.25 G(.).15 E/F1
-10/Times-Bold@0 SF(TMPDIR)108 96 Q F0 .39(If set,)144 108 R F1(bash)2.89
-E F0 .39(uses its v)2.89 F .39(alue as the name of a directory in which)
--.25 F F1(bash)2.891 E F0 .391(creates temporary \214les for the)2.891 F
-(shell')144 120 Q 2.5(su)-.55 G(se.)-2.5 E F1(auto_r)108 132 Q(esume)
--.18 E F0 .531(This v)144 144 R .531(ariable controls ho)-.25 F 3.031
-(wt)-.25 G .531(he shell interacts with the user and job control.)-3.031
-F .53(If this v)5.53 F .53(ariable is set,)-.25 F .538(single w)144 156
-R .538(ord simple commands without redirections are treated as candidat\
-es for resumption of an)-.1 F -.15(ex)144 168 S .367(isting stopped job)
-.15 F 5.367(.T)-.4 G .366(here is no ambiguity allo)-5.367 F .366
-(wed; if there is more than one job be)-.25 F .366(ginning with)-.15 F
-1.124(the string typed, the job most recently accessed is selected.)144
-180 R(The)6.125 E/F2 10/Times-Italic@0 SF(name)3.985 E F0 1.125
-(of a stopped job, in this)3.805 F(conte)144 192 Q 1.133
+-.35 E/F1 10/Times-Bold@0 SF(%%)144 84 Q F0 2.5(Al)30 G(iteral)-2.5 E F1
+(%)2.5 E F0(.)A F1(%[)144 96 Q/F2 10/Times-Italic@0 SF(p)A F1(][l]R)A F0
+(The elapsed time in seconds.)11.68 E F1(%[)144 108 Q F2(p)A F1(][l]U)A
+F0(The number of CPU seconds spent in user mode.)11.68 E F1(%[)144 120 Q
+F2(p)A F1(][l]S)A F0(The number of CPU seconds spent in system mode.)
+13.34 E F1(%P)144 132 Q F0
+(The CPU percentage, computed as \(%U + %S\) / %R.)33.89 E .87
+(The optional)144 148.8 R F2(p)3.37 E F0 .87(is a digit specifying the)
+3.37 F F2(pr)3.37 E(ecision)-.37 E F0 3.37(,t)C .87
+(he number of fractional digits after a decimal)-3.37 F 2.525(point. A)
+144 160.8 R -.25(va)2.525 G .025
+(lue of 0 causes no decimal point or fraction to be output.).25 F .026
+(At most three places after the)5.025 F .538
+(decimal point may be speci\214ed; v)144 172.8 R .538(alues of)-.25 F F2
+(p)3.038 E F0 .537(greater than 3 are changed to 3.)3.037 F(If)5.537 E
+F2(p)3.037 E F0 .537(is not speci\214ed,)3.037 F(the v)144 184.8 Q
+(alue 3 is used.)-.25 E .667(The optional)144 201.6 R F1(l)3.167 E F0
+.668(speci\214es a longer format, including minutes, of the form)3.168 F
+F2(MM)3.168 E F0(m)A F2(SS)A F0(.)A F2(FF)A F0 3.168(s. The)B -.25(va)
+3.168 G(lue).25 E(of)144 213.6 Q F2(p)2.5 E F0
+(determines whether or not the fraction is included.)2.5 E .001
+(If this v)144 230.4 R .001(ariable is not set,)-.25 F F1(bash)2.501 E
+F0 .001(acts as if it had the v)2.501 F(alue)-.25 E F1($\010\\nr)2.5 E
+(eal\\t%3lR\\nuser\\t%3lU\\nsys%3lS\010)-.18 E F0(.)A .494(If the v)144
+242.4 R .494(alue is null, no timing information is displayed.)-.25 F
+2.994(At)5.494 G .494(railing ne)-2.994 F .494
+(wline is added when the for)-.25 F(-)-.2 E(mat string is displayed.)144
+254.4 Q F1(TMOUT)108 266.4 Q F0 .941(If set to a v)144 278.4 R .941
+(alue greater than zero,)-.25 F/F3 9/Times-Bold@0 SF(TMOUT)3.441 E F0
+.941(is treated as the def)3.191 F .941(ault timeout for the)-.1 F F1
+-.18(re)3.441 G(ad).18 E F0 -.2(bu)3.441 G(iltin.).2 E(The)144 290.4 Q
+F1(select)2.81 E F0 .31(command terminates if input does not arri)2.81 F
+.611 -.15(ve a)-.25 H(fter).15 E F3(TMOUT)2.811 E F0 .311
+(seconds when input is com-)2.561 F .886(ing from a terminal.)144 302.4
+R .886(In an interacti)5.886 F 1.185 -.15(ve s)-.25 H .885(hell, the v)
+.15 F .885(alue is interpreted as the number of seconds to)-.25 F -.1
+(wa)144 314.4 S 1.05
+(it for a line of input after issuing the primary prompt.).1 F F1(Bash)
+6.05 E F0 1.05(terminates after w)3.55 F 1.05(aiting for that)-.1 F
+(number of seconds if a complete line of input does not arri)144 326.4 Q
+-.15(ve)-.25 G(.).15 E F1(TMPDIR)108 338.4 Q F0 .391(If set,)144 350.4 R
+F1(bash)2.891 E F0 .391(uses its v)2.891 F .391
+(alue as the name of a directory in which)-.25 F F1(bash)2.89 E F0 .39
+(creates temporary \214les for the)2.89 F(shell')144 362.4 Q 2.5(su)-.55
+G(se.)-2.5 E F1(auto_r)108 374.4 Q(esume)-.18 E F0 .53(This v)144 386.4
+R .53(ariable controls ho)-.25 F 3.03(wt)-.25 G .531
+(he shell interacts with the user and job control.)-3.03 F .531
+(If this v)5.531 F .531(ariable is set,)-.25 F .539(single w)144 398.4 R
+.538(ord simple commands without redirections are treated as candidates\
+ for resumption of an)-.1 F -.15(ex)144 410.4 S .366(isting stopped job)
+.15 F 5.366(.T)-.4 G .366(here is no ambiguity allo)-5.366 F .366
+(wed; if there is more than one job be)-.25 F .367(ginning with)-.15 F
+1.125(the string typed, the job most recently accessed is selected.)144
+422.4 R(The)6.125 E F2(name)3.985 E F0 1.124(of a stopped job, in this)
+3.805 F(conte)144 434.4 Q 1.132
(xt, is the command line used to start it.)-.15 F 1.133(If set to the v)
-6.133 F(alue)-.25 E F2 -.2(ex)3.633 G(act).2 E F0 3.632(,t).68 G 1.132
-(he string supplied must)-3.632 F .624
-(match the name of a stopped job e)144 204 R .624(xactly; if set to)-.15
-F F2(substring)3.125 E F0 3.125(,t).22 G .625
-(he string supplied needs to match a)-3.125 F .885
-(substring of the name of a stopped job)144 216 R 5.884(.T)-.4 G(he)
--5.884 E F2(substring)3.724 E F0 -.25(va)3.604 G .884(lue pro).25 F .884
-(vides functionality analogous to)-.15 F(the)144 228 Q F1(%?)3.333 E F0
-.833(job identi\214er \(see)5.833 F/F3 9/Times-Bold@0 SF .834(JOB CONTR)
-3.334 F(OL)-.27 E F0(belo)3.084 E 3.334(w\). If)-.25 F .834(set to an)
-3.334 F 3.334(yo)-.15 G .834(ther v)-3.334 F .834
-(alue, the supplied string)-.25 F .316
-(must be a pre\214x of a stopped job')144 240 R 2.816(sn)-.55 G .316
-(ame; this pro)-2.816 F .315(vides functionality analogous to the)-.15 F
-F1(%)2.815 E F2(string)A F0(job)2.815 E(identi\214er)144 252 Q(.)-.55 E
-F1(histchars)108 264 Q F0 2.069(The tw)144 276 R 4.57(oo)-.1 G 4.57(rt)
--4.57 G 2.07(hree characters which control history e)-4.57 F 2.07
-(xpansion and tok)-.15 F 2.07(enization \(see)-.1 F F3(HIST)4.57 E(OR)
--.162 E(Y)-.315 E(EXP)144 288 Q(ANSION)-.666 E F0(belo)3.466 E 3.716
-(w\). The)-.25 F 1.216(\214rst character is the)3.716 F F2 1.215
-(history e)3.715 F(xpansion)-.2 E F0(character)3.715 E 3.715(,t)-.4 G
-1.215(he character which)-3.715 F .798(signals the start of a history e)
-144 300 R .798(xpansion, normally `)-.15 F F1(!)A F0 3.298('. The)B .798
-(second character is the)3.298 F F2(quic)3.298 E 3.298(ks)-.2 G
-(ubstitu-)-3.298 E(tion)144 312 Q F0(character)2.74 E 2.74(,w)-.4 G .239
-(hich is used as shorthand for re-running the pre)-2.74 F .239
-(vious command entered, substitut-)-.25 F .575
-(ing one string for another in the command.)144 324 R .575(The def)5.575
-F .575(ault is `)-.1 F F1(^)A F0 3.075('. The)B .576
-(optional third character is the)3.076 F .223(character which indicates\
+6.133 F(alue)-.25 E F2 -.2(ex)3.633 G(act).2 E F0 3.633(,t).68 G 1.133
+(he string supplied must)-3.633 F .625
+(match the name of a stopped job e)144 446.4 R .624(xactly; if set to)
+-.15 F F2(substring)3.124 E F0 3.124(,t).22 G .624
+(he string supplied needs to match a)-3.124 F .884
+(substring of the name of a stopped job)144 458.4 R 5.884(.T)-.4 G(he)
+-5.884 E F2(substring)3.724 E F0 -.25(va)3.604 G .885(lue pro).25 F .885
+(vides functionality analogous to)-.15 F(the)144 470.4 Q F1(%?)3.334 E
+F0 .834(job identi\214er \(see)5.834 F F3 .834(JOB CONTR)3.334 F(OL)-.27
+E F0(belo)3.084 E 3.334(w\). If)-.25 F .834(set to an)3.334 F 3.334(yo)
+-.15 G .834(ther v)-3.334 F .833(alue, the supplied string)-.25 F .315
+(must be a pre\214x of a stopped job')144 482.4 R 2.816(sn)-.55 G .316
+(ame; this pro)-2.816 F .316(vides functionality analogous to the)-.15 F
+F1(%)2.816 E F2(string)A F0(job)2.816 E(identi\214er)144 494.4 Q(.)-.55
+E F1(histchars)108 506.4 Q F0 2.07(The tw)144 518.4 R 4.57(oo)-.1 G 4.57
+(rt)-4.57 G 2.07(hree characters which control history e)-4.57 F 2.07
+(xpansion and tok)-.15 F 2.07(enization \(see)-.1 F F3(HIST)4.569 E(OR)
+-.162 E(Y)-.315 E(EXP)144 530.4 Q(ANSION)-.666 E F0(belo)3.465 E 3.715
+(w\). The)-.25 F 1.215(\214rst character is the)3.715 F F2 1.216
+(history e)3.715 F(xpansion)-.2 E F0(character)3.716 E 3.716(,t)-.4 G
+1.216(he character which)-3.716 F .798(signals the start of a history e)
+144 542.4 R .798(xpansion, normally `)-.15 F F1(!)A F0 3.298('. The)B
+.798(second character is the)3.298 F F2(quic)3.298 E 3.298(ks)-.2 G
+(ubstitu-)-3.298 E(tion)144 554.4 Q F0(character)2.739 E 2.739(,w)-.4 G
+.239(hich is used as shorthand for re-running the pre)-2.739 F .24
+(vious command entered, substitut-)-.25 F .576
+(ing one string for another in the command.)144 566.4 R .575(The def)
+5.575 F .575(ault is `)-.1 F F1(^)A F0 3.075('. The)B .575
+(optional third character is the)3.075 F .223(character which indicates\
that the remainder of the line is a comment when found as the \214rst \
-char)144 336 R(-)-.2 E 1.293(acter of a w)144 348 R 1.293
-(ord, normally `)-.1 F F1(#)A F0 3.793('. The)B 1.294
-(history comment character causes history substitution to be)3.794 F .38
-(skipped for the remaining w)144 360 R .38(ords on the line.)-.1 F .379
-(It does not necessarily cause the shell parser to treat)5.379 F
-(the rest of the line as a comment.)144 372 Q F1(Arrays)87 388.8 Q(Bash)
-108 400.8 Q F0(pro)3.39 E .89(vides one-dimensional inde)-.15 F -.15(xe)
--.15 G 3.39(da).15 G .891(nd associati)-3.39 F 1.191 -.15(ve a)-.25 H
-.891(rray v).15 F 3.391(ariables. An)-.25 F 3.391(yv)-.15 G .891
-(ariable may be used as an)-3.641 F(inde)108 412.8 Q -.15(xe)-.15 G
-2.574(da).15 G .074(rray; the)-2.574 F F1(declar)2.574 E(e)-.18 E F0 -.2
-(bu)2.574 G .074(iltin will e).2 F .073(xplicitly declare an array)-.15
-F 5.073(.T)-.65 G .073(here is no maximum limit on the size of)-5.073 F
-.328(an array)108 424.8 R 2.828(,n)-.65 G .328(or an)-2.828 F 2.828(yr)
--.15 G .329(equirement that members be inde)-2.828 F -.15(xe)-.15 G
-2.829(do).15 G 2.829(ra)-2.829 G .329(ssigned contiguously)-2.829 F
-5.329(.I)-.65 G(nde)-5.329 E -.15(xe)-.15 G 2.829(da).15 G .329
-(rrays are refer)-2.829 F(-)-.2 E 1.387(enced using inte)108 436.8 R
-1.387(gers \(including arithmetic e)-.15 F 3.887(xpressions\) and)-.15 F
-1.387(are zero-based; associati)3.887 F 1.686 -.15(ve a)-.25 H 1.386
-(rrays are refer).15 F(-)-.2 E(enced using arbitrary strings.)108 448.8
-Q 2.462(An inde)108 465.6 R -.15(xe)-.15 G 4.962(da).15 G 2.462
+char)144 578.4 R(-)-.2 E 1.294(acter of a w)144 590.4 R 1.294
+(ord, normally `)-.1 F F1(#)A F0 3.794('. The)B 1.293
+(history comment character causes history substitution to be)3.794 F
+.379(skipped for the remaining w)144 602.4 R .379(ords on the line.)-.1
+F .38(It does not necessarily cause the shell parser to treat)5.379 F
+(the rest of the line as a comment.)144 614.4 Q F1(Arrays)87 631.2 Q
+(Bash)108 643.2 Q F0(pro)3.391 E .891(vides one-dimensional inde)-.15 F
+-.15(xe)-.15 G 3.391(da).15 G .891(nd associati)-3.391 F 1.191 -.15
+(ve a)-.25 H .891(rray v).15 F 3.391(ariables. An)-.25 F 3.391(yv)-.15 G
+.89(ariable may be used as an)-3.641 F(inde)108 655.2 Q -.15(xe)-.15 G
+2.573(da).15 G .073(rray; the)-2.573 F F1(declar)2.573 E(e)-.18 E F0 -.2
+(bu)2.573 G .073(iltin will e).2 F .073(xplicitly declare an array)-.15
+F 5.073(.T)-.65 G .074(here is no maximum limit on the size of)-5.073 F
+.329(an array)108 667.2 R 2.829(,n)-.65 G .329(or an)-2.829 F 2.829(yr)
+-.15 G .329(equirement that members be inde)-2.829 F -.15(xe)-.15 G
+2.829(do).15 G 2.829(ra)-2.829 G .328(ssigned contiguously)-2.829 F
+5.328(.I)-.65 G(nde)-5.328 E -.15(xe)-.15 G 2.828(da).15 G .328
+(rrays are refer)-2.828 F(-)-.2 E 1.386(enced using inte)108 679.2 R
+1.386(gers \(including arithmetic e)-.15 F 3.887(xpressions\) and)-.15 F
+1.387(are zero-based; associati)3.887 F 1.687 -.15(ve a)-.25 H 1.387
+(rrays are refer).15 F(-)-.2 E .22(enced using arbitrary strings.)108
+691.2 R .219(Unless otherwise noted, inde)5.219 F -.15(xe)-.15 G 2.719
+(da).15 G .219(rray indices must be non-ne)-2.719 F -.05(ga)-.15 G(ti)
+.05 E .519 -.15(ve i)-.25 H(nte).15 E(gers.)-.15 E 2.462(An inde)108 708
+R -.15(xe)-.15 G 4.962(da).15 G 2.462
(rray is created automatically if an)-4.962 F 4.963(yv)-.15 G 2.463
(ariable is assigned to using the syntax)-5.213 F F2(name)4.963 E F0([)A
-F2(sub-)A(script)108 477.6 Q F0(]=)A F2(value)A F0 6.549(.T)C(he)-6.549
-E F2(subscript)4.389 E F0 1.549(is treated as an arithmetic e)4.729 F
+F2(sub-)A(script)108 720 Q F0(]=)A F2(value)A F0 6.549(.T)C(he)-6.549 E
+F2(subscript)4.389 E F0 1.549(is treated as an arithmetic e)4.729 F
1.549(xpression that must e)-.15 F -.25(va)-.25 G 1.548
-(luate to a number).25 F 6.548(.T)-.55 G(o)-7.348 E -.15(ex)108 489.6 S
-1.979(plicitly declare an inde).15 F -.15(xe)-.15 G 4.479(da).15 G(rray)
--4.479 E 4.48(,u)-.65 G(se)-4.48 E F1(declar)4.48 E 4.48<65ad>-.18 G(a)
--4.48 E F2(name)4.48 E F0(\(see)4.48 E F3 1.98(SHELL B)4.48 F(UIL)-.09 E
-1.98(TIN COMMANDS)-.828 F F0(belo)4.23 E(w\).)-.25 E F1(declar)108 501.6
-Q 2.5<65ad>-.18 G(a)-2.5 E F2(name)2.5 E F1([)A F2(subscript)A F1(])A F0
-(is also accepted; the)2.5 E F2(subscript)2.5 E F0(is ignored.)2.5 E
-(Associati)108 518.4 Q .3 -.15(ve a)-.25 H(rrays are created using).15 E
-F1(declar)2.5 E 2.5<65ad>-.18 G(A)-2.5 E F2(name)2.5 E F0(.)A(Attrib)108
-535.2 Q .941(utes may be speci\214ed for an array v)-.2 F .941
-(ariable using the)-.25 F F1(declar)3.441 E(e)-.18 E F0(and)3.44 E F1
--.18(re)3.44 G(adonly).18 E F0 -.2(bu)3.44 G 3.44(iltins. Each).2 F
-(attrib)3.44 E(ute)-.2 E(applies to all members of an array)108 547.2 Q
-(.)-.65 E 1.647
-(Arrays are assigned to using compound assignments of the form)108 564 R
-F2(name)4.147 E F0(=)A F1(\()A F0 -.25(va)C(lue).25 E F2(1)A F0 1.647
+(luate to a number).25 F 6.548(.T)-.55 G(o)-7.348 E(GNU Bash 4.2)72 768
+Q(2012 July 5)151.505 E(17)200.665 E 0 Cg EP
+%%Page: 18 18
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E -.15(ex)108 84 S 1.979(plicitly declare an inde).15 F -.15(xe)
+-.15 G 4.479(da).15 G(rray)-4.479 E 4.48(,u)-.65 G(se)-4.48 E/F1 10
+/Times-Bold@0 SF(declar)4.48 E 4.48<65ad>-.18 G(a)-4.48 E/F2 10
+/Times-Italic@0 SF(name)4.48 E F0(\(see)4.48 E/F3 9/Times-Bold@0 SF 1.98
+(SHELL B)4.48 F(UIL)-.09 E 1.98(TIN COMMANDS)-.828 F F0(belo)4.23 E
+(w\).)-.25 E F1(declar)108 96 Q 2.5<65ad>-.18 G(a)-2.5 E F2(name)2.5 E
+F1([)A F2(subscript)A F1(])A F0(is also accepted; the)2.5 E F2
+(subscript)2.5 E F0(is ignored.)2.5 E(Associati)108 112.8 Q .3 -.15
+(ve a)-.25 H(rrays are created using).15 E F1(declar)2.5 E 2.5<65ad>-.18
+G(A)-2.5 E F2(name)2.5 E F0(.)A(Attrib)108 129.6 Q .941
+(utes may be speci\214ed for an array v)-.2 F .941(ariable using the)
+-.25 F F1(declar)3.441 E(e)-.18 E F0(and)3.44 E F1 -.18(re)3.44 G
+(adonly).18 E F0 -.2(bu)3.44 G 3.44(iltins. Each).2 F(attrib)3.44 E(ute)
+-.2 E(applies to all members of an array)108 141.6 Q(.)-.65 E 1.647
+(Arrays are assigned to using compound assignments of the form)108 158.4
+R F2(name)4.147 E F0(=)A F1(\()A F0 -.25(va)C(lue).25 E F2(1)A F0 1.647
(... v)4.147 F(alue)-.25 E F2(n)A F1(\))A F0 4.148(,w)C 1.648(here each)
--4.148 F F2(value)108 576 Q F0 1.833(is of the form [)4.333 F F2
+-4.148 F F2(value)108 170.4 Q F0 1.833(is of the form [)4.333 F F2
(subscript)A F0(]=)A F2(string)A F0 6.833(.I)C(nde)-6.833 E -.15(xe)-.15
G 4.333(da).15 G 1.833(rray assignments do not require an)-4.333 F 1.832
(ything b)-.15 F(ut)-.2 E F2(string)4.332 E F0(.)A .163
-(When assigning to inde)108 588 R -.15(xe)-.15 G 2.663(da).15 G .163
+(When assigning to inde)108 182.4 R -.15(xe)-.15 G 2.663(da).15 G .163
(rrays, if the optional brack)-2.663 F .163
(ets and subscript are supplied, that inde)-.1 F 2.664(xi)-.15 G 2.664
-(sa)-2.664 G(ssigned)-2.664 E 1.411(to; otherwise the inde)108 600 R
+(sa)-2.664 G(ssigned)-2.664 E 1.411(to; otherwise the inde)108 194.4 R
3.911(xo)-.15 G 3.911(ft)-3.911 G 1.411
(he element assigned is the last inde)-3.911 F 3.91(xa)-.15 G 1.41
-(ssigned to by the statement plus one.)-3.91 F(Inde)108 612 Q
-(xing starts at zero.)-.15 E(When assigning to an associati)108 628.8 Q
+(ssigned to by the statement plus one.)-3.91 F(Inde)108 206.4 Q
+(xing starts at zero.)-.15 E(When assigning to an associati)108 223.2 Q
.3 -.15(ve a)-.25 H(rray).15 E 2.5(,t)-.65 G(he subscript is required.)
--2.5 E .239(This syntax is also accepted by the)108 645.6 R F1(declar)
+-2.5 E .239(This syntax is also accepted by the)108 240 R F1(declar)
2.739 E(e)-.18 E F0 -.2(bu)2.739 G 2.739(iltin. Indi).2 F .24
(vidual array elements may be assigned to using the)-.25 F F2(name)108
-657.6 Q F0([)A F2(subscript)A F0(]=)A F2(value)A F0
-(syntax introduced abo)2.5 E -.15(ve)-.15 G(.).15 E(An)108 674.4 Q 3.576
-(ye)-.15 G 1.076(lement of an array may be referenced using ${)-3.576 F
-F2(name)A F0([)A F2(subscript)A F0 3.575(]}. The)B 1.075
-(braces are required to a)3.575 F -.2(vo)-.2 G(id).2 E 1.541
-(con\215icts with pathname e)108 686.4 R 4.041(xpansion. If)-.15 F F2
-(subscript)4.041 E F0(is)4.041 E F1(@)4.041 E F0(or)4.041 E F1(*)4.041 E
-F0 4.041(,t)C 1.541(he w)-4.041 F 1.541(ord e)-.1 F 1.541
-(xpands to all members of)-.15 F F2(name)4.042 E F0(.)A 1.057
-(These subscripts dif)108 698.4 R 1.057(fer only when the w)-.25 F 1.057
+252 Q F0([)A F2(subscript)A F0(]=)A F2(value)A F0(syntax introduced abo)
+2.5 E -.15(ve)-.15 G(.).15 E(An)108 268.8 Q 3.576(ye)-.15 G 1.076
+(lement of an array may be referenced using ${)-3.576 F F2(name)A F0([)A
+F2(subscript)A F0 3.575(]}. The)B 1.075(braces are required to a)3.575 F
+-.2(vo)-.2 G(id).2 E 1.541(con\215icts with pathname e)108 280.8 R 4.041
+(xpansion. If)-.15 F F2(subscript)4.041 E F0(is)4.041 E F1(@)4.041 E F0
+(or)4.041 E F1(*)4.041 E F0 4.041(,t)C 1.541(he w)-4.041 F 1.541(ord e)
+-.1 F 1.541(xpands to all members of)-.15 F F2(name)4.042 E F0(.)A 1.057
+(These subscripts dif)108 292.8 R 1.057(fer only when the w)-.25 F 1.057
(ord appears within double quotes.)-.1 F 1.056(If the w)6.056 F 1.056
-(ord is double-quoted,)-.1 F(${)108 710.4 Q F2(name)A F0 .52([*]} e)B
+(ord is double-quoted,)-.1 F(${)108 304.8 Q F2(name)A F0 .52([*]} e)B
.52(xpands to a single w)-.15 F .52(ord with the v)-.1 F .521
(alue of each array member separated by the \214rst character)-.25 F
-1.375(of the)108 722.4 R F3(IFS)3.875 E F0 1.375(special v)3.625 F 1.375
+1.375(of the)108 316.8 R F3(IFS)3.875 E F0 1.375(special v)3.625 F 1.375
(ariable, and ${)-.25 F F2(name)A F0 1.375([@]} e)B 1.375
(xpands each element of)-.15 F F2(name)3.875 E F0 1.374(to a separate w)
-3.875 F 3.874(ord. When)-.1 F(GNU Bash 4.2)72 768 Q(2012 February 4)
-141.79 E(17)190.95 E 0 Cg EP
-%%Page: 18 18
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E 2.027(there are no array members, ${)108 84 R/F1 10
-/Times-Italic@0 SF(name)A F0 2.028([@]} e)B 2.028(xpands to nothing.)
--.15 F 2.028(If the double-quoted e)7.028 F 2.028(xpansion occurs)-.15 F
-.759(within a w)108 96 R .759(ord, the e)-.1 F .759
+3.875 F 3.874(ord. When)-.1 F 2.027(there are no array members, ${)108
+328.8 R F2(name)A F0 2.028([@]} e)B 2.028(xpands to nothing.)-.15 F
+2.028(If the double-quoted e)7.028 F 2.028(xpansion occurs)-.15 F .759
+(within a w)108 340.8 R .759(ord, the e)-.1 F .759
(xpansion of the \214rst parameter is joined with the be)-.15 F .759
-(ginning part of the original w)-.15 F(ord,)-.1 E .515(and the e)108 108
-R .516(xpansion of the last parameter is joined with the last part of t\
-he original w)-.15 F 3.016(ord. This)-.1 F .516(is analogous)3.016 F
-.228(to the e)108 120 R .228(xpansion of the special parameters)-.15 F
-/F2 10/Times-Bold@0 SF(*)2.728 E F0(and)2.728 E F2(@)2.728 E F0(\(see)
-2.728 E F2 .228(Special P)2.728 F(arameters)-.1 E F0(abo)2.727 E -.15
-(ve)-.15 G 2.727(\). ${#).15 F F1(name)A F0([)A F1(subscript)A F0(]})A
--.15(ex)108 132 S .886(pands to the length of ${).15 F F1(name)A F0([)A
-F1(subscript)A F0 3.386(]}. If)B F1(subscript)3.386 E F0(is)3.386 E F2
-(*)3.386 E F0(or)3.386 E F2(@)3.386 E F0 3.386(,t)C .886(he e)-3.386 F
-.886(xpansion is the number of ele-)-.15 F .463(ments in the array)108
-144 R 5.463(.R)-.65 G .463(eferencing an array v)-5.463 F .462
+(ginning part of the original w)-.15 F(ord,)-.1 E .515(and the e)108
+352.8 R .516(xpansion of the last parameter is joined with the last par\
+t of the original w)-.15 F 3.016(ord. This)-.1 F .516(is analogous)3.016
+F .228(to the e)108 364.8 R .228(xpansion of the special parameters)-.15
+F F1(*)2.728 E F0(and)2.728 E F1(@)2.728 E F0(\(see)2.728 E F1 .228
+(Special P)2.728 F(arameters)-.1 E F0(abo)2.727 E -.15(ve)-.15 G 2.727
+(\). ${#).15 F F2(name)A F0([)A F2(subscript)A F0(]})A -.15(ex)108 376.8
+S .886(pands to the length of ${).15 F F2(name)A F0([)A F2(subscript)A
+F0 3.386(]}. If)B F2(subscript)3.386 E F0(is)3.386 E F1(*)3.386 E F0(or)
+3.386 E F1(@)3.386 E F0 3.386(,t)C .886(he e)-3.386 F .886
+(xpansion is the number of ele-)-.15 F .463(ments in the array)108 388.8
+R 5.463(.R)-.65 G .463(eferencing an array v)-5.463 F .462
(ariable without a subscript is equi)-.25 F -.25(va)-.25 G .462
-(lent to referencing the array).25 F .233(with a subscript of 0.)108 156
-R .233(If the)5.233 F F1(subscript)3.073 E F0 .233
+(lent to referencing the array).25 F .233(with a subscript of 0.)108
+400.8 R .233(If the)5.233 F F2(subscript)3.073 E F0 .233
(used to reference an element of an inde)3.413 F -.15(xe)-.15 G 2.733
(da).15 G .233(rray e)-2.733 F -.25(va)-.25 G .233(luates to a num-).25
-F .277(ber less than zero, it is used as an of)108 168 R .277
+F .277(ber less than zero, it is used as an of)108 412.8 R .277
(fset from one greater than the array')-.25 F 2.777(sm)-.55 G .277
(aximum inde)-2.777 F 2.777(x\()-.15 G .277(so a subcript of)-2.777 F
-(-1 refers to the last element of the array\).)108 180 Q .168
-(An array v)108 196.8 R .168
+(-1 refers to the last element of the array\).)108 424.8 Q .168
+(An array v)108 441.6 R .168
(ariable is considered set if a subscript has been assigned a v)-.25 F
2.668(alue. The)-.25 F .168(null string is a v)2.668 F .168(alid v)-.25
-F(alue.)-.25 E(The)108 213.6 Q F2(unset)2.767 E F0 -.2(bu)2.767 G .267
-(iltin is used to destro).2 F 2.767(ya)-.1 G(rrays.)-2.767 E F2(unset)
-5.267 E F1(name)2.767 E F0([)A F1(subscript)A F0 2.767(]d)C(estro)-2.767
-E .267(ys the array element at inde)-.1 F(x)-.15 E F1(sub-)2.766 E
-(script)108 225.6 Q F0 6.204(.C)C 1.204(are must be tak)-6.204 F 1.204
+F(alue.)-.25 E(The)108 458.4 Q F1(unset)2.767 E F0 -.2(bu)2.767 G .267
+(iltin is used to destro).2 F 2.767(ya)-.1 G(rrays.)-2.767 E F1(unset)
+5.267 E F2(name)2.767 E F0([)A F2(subscript)A F0 2.767(]d)C(estro)-2.767
+E .267(ys the array element at inde)-.1 F(x)-.15 E F2(sub-)2.766 E
+(script)108 470.4 Q F0 6.204(.C)C 1.204(are must be tak)-6.204 F 1.204
(en to a)-.1 F -.2(vo)-.2 G 1.205(id unw).2 F 1.205(anted side ef)-.1 F
-1.205(fects caused by pathname e)-.25 F(xpansion.)-.15 E F2(unset)6.205
-E F1(name)3.705 E F0(,)A(where)108 237.6 Q F1(name)2.5 E F0(is an array)
-2.5 E 2.5(,o)-.65 G(r)-2.5 E F2(unset)2.5 E F1(name)2.5 E F0([)A F1
-(subscript)A F0(], where)A F1(subscript)2.5 E F0(is)2.5 E F2(*)2.5 E F0
-(or)2.5 E F2(@)2.5 E F0 2.5(,r)C(emo)-2.5 E -.15(ve)-.15 G 2.5(st).15 G
-(he entire array)-2.5 E(.)-.65 E(The)108 254.4 Q F2(declar)3.574 E(e)
--.18 E F0(,)A F2(local)3.574 E F0 3.574(,a)C(nd)-3.574 E F2 -.18(re)
+1.205(fects caused by pathname e)-.25 F(xpansion.)-.15 E F1(unset)6.205
+E F2(name)3.705 E F0(,)A(where)108 482.4 Q F2(name)2.5 E F0(is an array)
+2.5 E 2.5(,o)-.65 G(r)-2.5 E F1(unset)2.5 E F2(name)2.5 E F0([)A F2
+(subscript)A F0(], where)A F2(subscript)2.5 E F0(is)2.5 E F1(*)2.5 E F0
+(or)2.5 E F1(@)2.5 E F0 2.5(,r)C(emo)-2.5 E -.15(ve)-.15 G 2.5(st).15 G
+(he entire array)-2.5 E(.)-.65 E(The)108 499.2 Q F1(declar)3.574 E(e)
+-.18 E F0(,)A F1(local)3.574 E F0 3.574(,a)C(nd)-3.574 E F1 -.18(re)
3.574 G(adonly).18 E F0 -.2(bu)3.574 G 1.073(iltins each accept a).2 F
-F2<ad61>3.573 E F0 1.073(option to specify an inde)3.573 F -.15(xe)-.15
-G 3.573(da).15 G 1.073(rray and a)-3.573 F F2<ad41>3.573 E F0 .338
-(option to specify an associati)108 266.4 R .638 -.15(ve a)-.25 H(rray)
+F1<ad61>3.573 E F0 1.073(option to specify an inde)3.573 F -.15(xe)-.15
+G 3.573(da).15 G 1.073(rray and a)-3.573 F F1<ad41>3.573 E F0 .338
+(option to specify an associati)108 511.2 R .638 -.15(ve a)-.25 H(rray)
.15 E 5.338(.I)-.65 G 2.838(fb)-5.338 G .338(oth options are supplied,)
--2.838 F F2<ad41>2.838 E F0(tak)2.838 E .338(es precedence.)-.1 F(The)
-5.338 E F2 -.18(re)2.839 G(ad).18 E F0 -.2(bu)2.839 G(iltin).2 E .441
-(accepts a)108 278.4 R F2<ad61>2.941 E F0 .441
+-2.838 F F1<ad41>2.838 E F0(tak)2.838 E .338(es precedence.)-.1 F(The)
+5.338 E F1 -.18(re)2.839 G(ad).18 E F0 -.2(bu)2.839 G(iltin).2 E .441
+(accepts a)108 523.2 R F1<ad61>2.941 E F0 .441
(option to assign a list of w)2.941 F .441
(ords read from the standard input to an array)-.1 F 5.441(.T)-.65 G(he)
--5.441 E F2(set)2.941 E F0(and)2.941 E F2(declar)2.94 E(e)-.18 E F0 -.2
-(bu)108 290.4 S(iltins display array v).2 E(alues in a w)-.25 E
-(ay that allo)-.1 E(ws them to be reused as assignments.)-.25 E/F3 10.95
-/Times-Bold@0 SF(EXP)72 307.2 Q(ANSION)-.81 E F0 .76(Expansion is perfo\
-rmed on the command line after it has been split into w)108 319.2 R 3.26
+-5.441 E F1(set)2.941 E F0(and)2.941 E F1(declar)2.94 E(e)-.18 E F0 -.2
+(bu)108 535.2 S(iltins display array v).2 E(alues in a w)-.25 E
+(ay that allo)-.1 E(ws them to be reused as assignments.)-.25 E/F4 10.95
+/Times-Bold@0 SF(EXP)72 552 Q(ANSION)-.81 E F0 .76(Expansion is perform\
+ed on the command line after it has been split into w)108 564 R 3.26
(ords. There)-.1 F .76(are se)3.26 F -.15(ve)-.25 G 3.26(nk).15 G .76
-(inds of)-3.26 F -.15(ex)108 331.2 S .37(pansion performed:).15 F F1(br)
-2.869 E .369(ace e)-.15 F(xpansion)-.2 E F0(,).24 E F1 .369(tilde e)
-2.869 F(xpansion)-.2 E F0(,).24 E F1(par)2.869 E .369
-(ameter and variable e)-.15 F(xpansion)-.2 E F0(,).24 E F1 .369
-(command sub-)2.869 F(stitution)108 343.2 Q F0(,).24 E F1(arithmetic e)
-2.5 E(xpansion)-.2 E F0(,).24 E F1(wor)2.5 E 2.5(ds)-.37 G(plitting)-2.5
-E F0 2.5(,a).22 G(nd)-2.5 E F1(pathname e)2.5 E(xpansion)-.2 E F0(.).24
-E .47(The order of e)108 360 R .471(xpansions is: brace e)-.15 F .471
+(inds of)-3.26 F -.15(ex)108 576 S .37(pansion performed:).15 F F2(br)
+2.869 E .369(ace e)-.15 F(xpansion)-.2 E F0(,).24 E F2 .369(tilde e)
+2.869 F(xpansion)-.2 E F0(,).24 E F2(par)2.869 E .369
+(ameter and variable e)-.15 F(xpansion)-.2 E F0(,).24 E F2 .369
+(command sub-)2.869 F(stitution)108 588 Q F0(,).24 E F2(arithmetic e)2.5
+E(xpansion)-.2 E F0(,).24 E F2(wor)2.5 E 2.5(ds)-.37 G(plitting)-2.5 E
+F0 2.5(,a).22 G(nd)-2.5 E F2(pathname e)2.5 E(xpansion)-.2 E F0(.).24 E
+.47(The order of e)108 604.8 R .471(xpansions is: brace e)-.15 F .471
(xpansion, tilde e)-.15 F .471(xpansion, parameter)-.15 F 2.971(,v)-.4 G
.471(ariable and arithmetic e)-3.221 F(xpansion)-.15 E
-(and command substitution \(done in a left-to-right f)108 372 Q
+(and command substitution \(done in a left-to-right f)108 616.8 Q
(ashion\), w)-.1 E(ord splitting, and pathname e)-.1 E(xpansion.)-.15 E
-(On systems that can support it, there is an additional e)108 388.8 Q
-(xpansion a)-.15 E -.25(va)-.2 G(ilable:).25 E F1(pr)2.5 E
-(ocess substitution)-.45 E F0(.)A 1.487(Only brace e)108 405.6 R 1.487
+(On systems that can support it, there is an additional e)108 633.6 Q
+(xpansion a)-.15 E -.25(va)-.2 G(ilable:).25 E F2(pr)2.5 E
+(ocess substitution)-.45 E F0(.)A 1.487(Only brace e)108 650.4 R 1.487
(xpansion, w)-.15 F 1.487(ord splitting, and pathname e)-.1 F 1.487
(xpansion can change the number of w)-.15 F 1.486(ords of the)-.1 F -.15
-(ex)108 417.6 S 1.164(pansion; other e).15 F 1.164(xpansions e)-.15 F
+(ex)108 662.4 S 1.164(pansion; other e).15 F 1.164(xpansions e)-.15 F
1.164(xpand a single w)-.15 F 1.165(ord to a single w)-.1 F 3.665
(ord. The)-.1 F 1.165(only e)3.665 F 1.165(xceptions to this are the)
--.15 F -.15(ex)108 429.6 S(pansions of ").15 E F2($@)A F0 2.5("a)C(nd ")
--2.5 E F2(${)A F1(name)A F2([@]})A F0 2.5("a)C 2.5(se)-2.5 G
-(xplained abo)-2.65 E .3 -.15(ve \()-.15 H(see).15 E/F4 9/Times-Bold@0
-SF -.666(PA)2.5 G(RAMETERS).666 E/F5 9/Times-Roman@0 SF(\).)A F2
-(Brace Expansion)87 446.4 Q F1(Br)108.58 458.4 Q .606(ace e)-.15 F
-(xpansion)-.2 E F0 .606
+-.15 F -.15(ex)108 674.4 S(pansions of ").15 E F1($@)A F0 2.5("a)C(nd ")
+-2.5 E F1(${)A F2(name)A F1([@]})A F0 2.5("a)C 2.5(se)-2.5 G
+(xplained abo)-2.65 E .3 -.15(ve \()-.15 H(see).15 E F3 -.666(PA)2.5 G
+(RAMETERS).666 E/F5 9/Times-Roman@0 SF(\).)A F1(Brace Expansion)87 691.2
+Q F2(Br)108.58 703.2 Q .606(ace e)-.15 F(xpansion)-.2 E F0 .606
(is a mechanism by which arbitrary strings may be generated.)3.346 F
-.606(This mechanism is similar)5.606 F(to)108 470.4 Q F1 .415
+.606(This mechanism is similar)5.606 F(to)108 715.2 Q F2 .415
(pathname e)2.915 F(xpansion)-.2 E F0 2.915(,b)C .415
(ut the \214lenames generated need not e)-3.115 F 2.915(xist. P)-.15 F
.415(atterns to be brace e)-.15 F .415(xpanded tak)-.15 F 2.915(et)-.1 G
-(he)-2.915 E .152(form of an optional)108 482.4 R F1(pr)2.652 E(eamble)
--.37 E F0 2.651(,f).18 G(ollo)-2.651 E .151
-(wed by either a series of comma-separated strings or a sequence e)-.25
-F(xpres-)-.15 E .563(sion between a pair of braces, follo)108 494.4 R
-.563(wed by an optional)-.25 F F1(postscript)3.063 E F0 5.563(.T).68 G
-.563(he preamble is pre\214x)-5.563 F .563(ed to each string)-.15 F .659
-(contained within the braces, and the postscript is then appended to ea\
-ch resulting string, e)108 506.4 R .658(xpanding left to)-.15 F(right.)
-108 518.4 Q .718(Brace e)108 535.2 R .719(xpansions may be nested.)-.15
-F .719(The results of each e)5.719 F .719
+(he)-2.915 E 2.28(form of an optional)108 727.2 R F2(pr)4.78 E(eamble)
+-.37 E F0 4.78(,f).18 G(ollo)-4.78 E 2.28
+(wed by either a series of comma-separated strings or a sequence)-.25 F
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(18)200.665 E 0 Cg EP
+%%Page: 19 19
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E -.15(ex)108 84 S .556(pression between a pair of braces, follo)
+.15 F .556(wed by an optional)-.25 F/F1 10/Times-Italic@0 SF(postscript)
+3.056 E F0 5.556(.T).68 G .557(he preamble is pre\214x)-5.556 F .557
+(ed to each)-.15 F .758(string contained within the braces, and the pos\
+tscript is then appended to each resulting string, e)108 96 R(xpanding)
+-.15 E(left to right.)108 108 Q .718(Brace e)108 124.8 R .719
+(xpansions may be nested.)-.15 F .719(The results of each e)5.719 F .719
(xpanded string are not sorted; left to right order is)-.15 F(preserv)
-108 547.2 Q 2.5(ed. F)-.15 F(or e)-.15 E(xample, a)-.15 E F2({)A F0
-(d,c,b)A F2(})A F0 2.5(ee)C(xpands into `ade ace abe'.)-2.65 E 3.243(As)
-108 564 S .743(equence e)-3.243 F .743(xpression tak)-.15 F .743
-(es the form)-.1 F F2({)3.243 E F1(x)A F2(..)A F1(y)A F2([..)A F1(incr)A
-F2(]})A F0 3.243(,w)C(here)-3.243 E F1(x)3.243 E F0(and)3.242 E F1(y)
-3.242 E F0 .742(are either inte)3.242 F .742(gers or single characters,)
--.15 F(and)108 576 Q F1(incr)3.031 E F0 3.031(,a)C 3.032(no)-3.031 G
-.532(ptional increment, is an inte)-3.032 F(ger)-.15 E 5.532(.W)-.55 G
-.532(hen inte)-5.532 F .532(gers are supplied, the e)-.15 F .532
+108 136.8 Q 2.5(ed. F)-.15 F(or e)-.15 E(xample, a)-.15 E/F2 10
+/Times-Bold@0 SF({)A F0(d,c,b)A F2(})A F0 2.5(ee)C
+(xpands into `ade ace abe'.)-2.65 E 3.243(As)108 153.6 S .743(equence e)
+-3.243 F .743(xpression tak)-.15 F .743(es the form)-.1 F F2({)3.243 E
+F1(x)A F2(..)A F1(y)A F2([..)A F1(incr)A F2(]})A F0 3.243(,w)C(here)
+-3.243 E F1(x)3.243 E F0(and)3.242 E F1(y)3.242 E F0 .742
+(are either inte)3.242 F .742(gers or single characters,)-.15 F(and)108
+165.6 Q F1(incr)3.031 E F0 3.031(,a)C 3.032(no)-3.031 G .532
+(ptional increment, is an inte)-3.032 F(ger)-.15 E 5.532(.W)-.55 G .532
+(hen inte)-5.532 F .532(gers are supplied, the e)-.15 F .532
(xpression e)-.15 F .532(xpands to each)-.15 F .078(number between)108
-588 R F1(x)2.578 E F0(and)2.578 E F1(y)2.578 E F0 2.578(,i)C(nclusi)
+177.6 R F1(x)2.578 E F0(and)2.578 E F1(y)2.578 E F0 2.578(,i)C(nclusi)
-2.578 E -.15(ve)-.25 G 5.078(.S).15 G .078(upplied inte)-5.078 F .077
(gers may be pre\214x)-.15 F .077(ed with)-.15 F F1(0)2.577 E F0 .077
(to force each term to ha)2.577 F .377 -.15(ve t)-.2 H(he).15 E .014
-(same width.)108 600 R .014(When either)5.014 F F1(x)2.514 E F0(or)2.514
-E F1(y)2.514 E F0(be)2.514 E .015(gins with a zero, the shell attempts \
-to force all generated terms to contain)-.15 F 1.143
-(the same number of digits, zero-padding where necessary)108 612 R 6.143
-(.W)-.65 G 1.143(hen characters are supplied, the e)-6.143 F(xpression)
--.15 E -.15(ex)108 624 S .541(pands to each character le).15 F .541
-(xicographically between)-.15 F F1(x)3.041 E F0(and)3.042 E F1(y)3.042 E
-F0 3.042(,i)C(nclusi)-3.042 E -.15(ve)-.25 G 5.542(.N).15 G .542
-(ote that both)-5.542 F F1(x)3.042 E F0(and)3.042 E F1(y)3.042 E F0 .542
-(must be of)3.042 F .183(the same type.)108 636 R .182
+(same width.)108 189.6 R .014(When either)5.014 F F1(x)2.514 E F0(or)
+2.514 E F1(y)2.514 E F0(be)2.514 E .015(gins with a zero, the shell att\
+empts to force all generated terms to contain)-.15 F 1.143
+(the same number of digits, zero-padding where necessary)108 201.6 R
+6.143(.W)-.65 G 1.143(hen characters are supplied, the e)-6.143 F
+(xpression)-.15 E -.15(ex)108 213.6 S .541(pands to each character le)
+.15 F .541(xicographically between)-.15 F F1(x)3.041 E F0(and)3.042 E F1
+(y)3.042 E F0 3.042(,i)C(nclusi)-3.042 E -.15(ve)-.25 G 5.542(.N).15 G
+.542(ote that both)-5.542 F F1(x)3.042 E F0(and)3.042 E F1(y)3.042 E F0
+.542(must be of)3.042 F .183(the same type.)108 225.6 R .182
(When the increment is supplied, it is used as the dif)5.183 F .182
(ference between each term.)-.25 F .182(The def)5.182 F(ault)-.1 E
-(increment is 1 or -1 as appropriate.)108 648 Q .581(Brace e)108 664.8 R
-.581(xpansion is performed before an)-.15 F 3.081(yo)-.15 G .581(ther e)
--3.081 F .581(xpansions, and an)-.15 F 3.082(yc)-.15 G .582
+(increment is 1 or -1 as appropriate.)108 237.6 Q .581(Brace e)108 254.4
+R .581(xpansion is performed before an)-.15 F 3.081(yo)-.15 G .581
+(ther e)-3.081 F .581(xpansions, and an)-.15 F 3.082(yc)-.15 G .582
(haracters special to other e)-3.082 F(xpansions)-.15 E .016
-(are preserv)108 676.8 R .016(ed in the result.)-.15 F .016
+(are preserv)108 266.4 R .016(ed in the result.)-.15 F .016
(It is strictly te)5.016 F(xtual.)-.15 E F2(Bash)5.016 E F0 .015
(does not apply an)2.516 F 2.515(ys)-.15 G .015
-(yntactic interpretation to the con-)-2.515 F(te)108 688.8 Q
+(yntactic interpretation to the con-)-2.515 F(te)108 278.4 Q
(xt of the e)-.15 E(xpansion or the te)-.15 E(xt between the braces.)
--.15 E 3.632(Ac)108 705.6 S 1.132(orrectly-formed brace e)-3.632 F 1.132
+-.15 E 3.632(Ac)108 295.2 S 1.132(orrectly-formed brace e)-3.632 F 1.132
(xpansion must contain unquoted opening and closing braces, and at leas\
-t one)-.15 F 3.441(unquoted comma or a v)108 717.6 R 3.441
+t one)-.15 F 3.441(unquoted comma or a v)108 307.2 R 3.441
(alid sequence e)-.25 F 5.941(xpression. An)-.15 F 5.941(yi)-.15 G 3.441
-(ncorrectly formed brace e)-5.941 F 3.44(xpansion is left)-.15 F 4.441
-(unchanged. A)108 729.6 R F2({)4.441 E F0(or)4.441 E F2(,)4.441 E F0
-1.941(may be quoted with a backslash to pre)4.441 F -.15(ve)-.25 G 1.941
-(nt its being considered part of a brace).15 F(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(18)190.95 E 0 Cg EP
-%%Page: 19 19
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E -.15(ex)108 84 S 3.179(pression. T).15 F 3.179(oa)-.8 G -.2(vo)
--3.379 G .679(id con\215icts with parameter e).2 F .679
-(xpansion, the string)-.15 F/F1 10/Times-Bold@0 SF(${)3.179 E F0 .678
-(is not considered eligible for brace)3.179 F -.15(ex)108 96 S(pansion.)
-.15 E 1.476(This construct is typically used as shorthand when the comm\
-on pre\214x of the strings to be generated is)108 112.8 R
-(longer than in the abo)108 124.8 Q .3 -.15(ve ex)-.15 H(ample:).15 E
-(mkdir /usr/local/src/bash/{old,ne)144 141.6 Q -.65(w,)-.25 G(dist,b).65
-E(ugs})-.2 E(or)108 153.6 Q(cho)144 165.6 Q(wn root /usr/{ucb/{e)-.25 E
-(x,edit},lib/{e)-.15 E(x?.?*,ho)-.15 E(w_e)-.25 E(x}})-.15 E .618
-(Brace e)108 182.4 R .618
+(ncorrectly formed brace e)-5.941 F 3.44(xpansion is left)-.15 F 2.755
+(unchanged. A)108 319.2 R F2({)2.755 E F0(or)2.755 E F2(,)2.755 E F0
+.255(may be quoted with a backslash to pre)2.755 F -.15(ve)-.25 G .255
+(nt its being considered part of a brace e).15 F(xpres-)-.15 E 2.911
+(sion. T)108 331.2 R 2.911(oa)-.8 G -.2(vo)-3.111 G .411
+(id con\215icts with parameter e).2 F .411(xpansion, the string)-.15 F
+F2(${)2.911 E F0 .41(is not considered eligible for brace e)2.911 F
+(xpan-)-.15 E(sion.)108 343.2 Q 1.476(This construct is typically used \
+as shorthand when the common pre\214x of the strings to be generated is)
+108 360 R(longer than in the abo)108 372 Q .3 -.15(ve ex)-.15 H(ample:)
+.15 E(mkdir /usr/local/src/bash/{old,ne)144 388.8 Q -.65(w,)-.25 G
+(dist,b).65 E(ugs})-.2 E(or)108 400.8 Q(cho)144 412.8 Q
+(wn root /usr/{ucb/{e)-.25 E(x,edit},lib/{e)-.15 E(x?.?*,ho)-.15 E(w_e)
+-.25 E(x}})-.15 E .618(Brace e)108 429.6 R .618
(xpansion introduces a slight incompatibility with historical v)-.15 F
-.618(ersions of)-.15 F F1(sh)3.118 E F0(.)A F1(sh)5.618 E F0 .618
+.618(ersions of)-.15 F F2(sh)3.118 E F0(.)A F2(sh)5.618 E F0 .618
(does not treat open-)3.118 F .247
-(ing or closing braces specially when the)108 194.4 R 2.747(ya)-.15 G
+(ing or closing braces specially when the)108 441.6 R 2.747(ya)-.15 G
.247(ppear as part of a w)-2.747 F .248(ord, and preserv)-.1 F .248
-(es them in the output.)-.15 F F1(Bash)5.248 E F0(remo)108 206.4 Q -.15
+(es them in the output.)-.15 F F2(Bash)5.248 E F0(remo)108 453.6 Q -.15
(ve)-.15 G 3.53(sb).15 G 1.03(races from w)-3.53 F 1.03
(ords as a consequence of brace e)-.1 F 3.53(xpansion. F)-.15 F 1.03
-(or e)-.15 F 1.03(xample, a w)-.15 F 1.03(ord entered to)-.1 F F1(sh)
-3.53 E F0(as)3.53 E/F2 10/Times-Italic@0 SF(\214le{1,2})108 218.4 Q F0
-.514(appears identically in the output.)3.014 F .515(The same w)5.515 F
-.515(ord is output as)-.1 F F2 .515(\214le1 \214le2)4.925 F F0 .515
-(after e)3.035 F .515(xpansion by)-.15 F F1(bash)3.015 E F0(.)A .437
-(If strict compatibility with)108 230.4 R F1(sh)2.936 E F0 .436
-(is desired, start)2.936 F F1(bash)2.936 E F0 .436(with the)2.936 F F1
+(or e)-.15 F 1.03(xample, a w)-.15 F 1.03(ord entered to)-.1 F F2(sh)
+3.53 E F0(as)3.53 E F1(\214le{1,2})108 465.6 Q F0 .514
+(appears identically in the output.)3.014 F .515(The same w)5.515 F .515
+(ord is output as)-.1 F F1 .515(\214le1 \214le2)4.925 F F0 .515(after e)
+3.035 F .515(xpansion by)-.15 F F2(bash)3.015 E F0(.)A .437
+(If strict compatibility with)108 477.6 R F2(sh)2.936 E F0 .436
+(is desired, start)2.936 F F2(bash)2.936 E F0 .436(with the)2.936 F F2
(+B)2.936 E F0 .436(option or disable brace e)2.936 F .436
-(xpansion with the)-.15 F F1(+B)108 242.4 Q F0(option to the)2.5 E F1
+(xpansion with the)-.15 F F2(+B)108 489.6 Q F0(option to the)2.5 E F2
(set)2.5 E F0(command \(see)2.5 E/F3 9/Times-Bold@0 SF(SHELL B)2.5 E
-(UIL)-.09 E(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)-.25 E F1 -.18(Ti)
-87 259.2 S(lde Expansion).18 E F0 1.086(If a w)108 271.2 R 1.086(ord be)
--.1 F 1.086(gins with an unquoted tilde character \(`)-.15 F F1(~)A F0
+(UIL)-.09 E(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)-.25 E F2 -.18(Ti)
+87 506.4 S(lde Expansion).18 E F0 1.086(If a w)108 518.4 R 1.086(ord be)
+-.1 F 1.086(gins with an unquoted tilde character \(`)-.15 F F2(~)A F0
1.087('\), all of the characters preceding the \214rst unquoted)B .185(\
slash \(or all characters, if there is no unquoted slash\) are consider\
-ed a)108 283.2 R F2(tilde-pr)2.685 E(e\214x)-.37 E F0 5.185(.I)C 2.685
+ed a)108 530.4 R F1(tilde-pr)2.685 E(e\214x)-.37 E F0 5.185(.I)C 2.685
(fn)-5.185 G .185(one of the characters)-2.685 F .725(in the tilde-pre\
-\214x are quoted, the characters in the tilde-pre\214x follo)108 295.2 R
-.726(wing the tilde are treated as a possible)-.25 F F2(lo)108 307.2 Q
+\214x are quoted, the characters in the tilde-pre\214x follo)108 542.4 R
+.726(wing the tilde are treated as a possible)-.25 F F1(lo)108 554.4 Q
.523(gin name)-.1 F F0 5.523(.I)C 3.023(ft)-5.523 G .523
(his login name is the null string, the tilde is replaced with the v)
--3.023 F .522(alue of the shell parameter)-.25 F F3(HOME)108 319.2 Q/F4
+-3.023 F .522(alue of the shell parameter)-.25 F F3(HOME)108 566.4 Q/F4
9/Times-Roman@0 SF(.)A F0(If)4.786 E F3(HOME)2.786 E F0 .287
(is unset, the home directory of the user e)2.536 F -.15(xe)-.15 G .287
(cuting the shell is substituted instead.).15 F(Other)5.287 E(-)-.2 E(w\
ise, the tilde-pre\214x is replaced with the home directory associated \
-with the speci\214ed login name.)108 331.2 Q .093
-(If the tilde-pre\214x is a `~+', the v)108 348 R .092
+with the speci\214ed login name.)108 578.4 Q .093
+(If the tilde-pre\214x is a `~+', the v)108 595.2 R .092
(alue of the shell v)-.25 F(ariable)-.25 E F3(PWD)2.592 E F0 .092
(replaces the tilde-pre\214x.)2.342 F .092(If the tilde-pre\214x is)
-5.092 F 3.403(a`)108 360 S .903(~\255', the v)-3.403 F .903
+5.092 F 3.403(a`)108 607.2 S .903(~\255', the v)-3.403 F .903
(alue of the shell v)-.25 F(ariable)-.25 E F3(OLDPWD)3.404 E F4(,)A F0
.904(if it is set, is substituted.)3.154 F .904(If the characters follo)
5.904 F .904(wing the)-.25 F 1.642
-(tilde in the tilde-pre\214x consist of a number)108 372 R F2(N)4.142 E
-F0 4.142(,o)C 1.642(ptionally pre\214x)-4.142 F 1.641
+(tilde in the tilde-pre\214x consist of a number)108 619.2 R F1(N)4.142
+E F0 4.142(,o)C 1.642(ptionally pre\214x)-4.142 F 1.641
(ed by a `+' or a `\255', the tilde-pre\214x is)-.15 F 1.437(replaced w\
-ith the corresponding element from the directory stack, as it w)108 384
-R 1.438(ould be displayed by the)-.1 F F1(dirs)3.938 E F0 -.2(bu)108 396
-S .455(iltin in).2 F -.2(vo)-.4 G -.1(ke).2 G 2.955(dw).1 G .455
-(ith the tilde-pre\214x as an ar)-2.955 F 2.954(gument. If)-.18 F .454
-(the characters follo)2.954 F .454(wing the tilde in the tilde-pre\214x)
--.25 F
+ith the corresponding element from the directory stack, as it w)108
+631.2 R 1.438(ould be displayed by the)-.1 F F2(dirs)3.938 E F0 -.2(bu)
+108 643.2 S .455(iltin in).2 F -.2(vo)-.4 G -.1(ke).2 G 2.955(dw).1 G
+.455(ith the tilde-pre\214x as an ar)-2.955 F 2.954(gument. If)-.18 F
+.454(the characters follo)2.954 F .454
+(wing the tilde in the tilde-pre\214x)-.25 F
(consist of a number without a leading `+' or `\255', `+' is assumed.)
-108 408 Q(If the login name is in)108 424.8 Q -.25(va)-.4 G
+108 655.2 Q(If the login name is in)108 672 Q -.25(va)-.4 G
(lid, or the tilde e).25 E(xpansion f)-.15 E(ails, the w)-.1 E
-(ord is unchanged.)-.1 E .166(Each v)108 441.6 R .167
+(ord is unchanged.)-.1 E .166(Each v)108 688.8 R .167
(ariable assignment is check)-.25 F .167(ed for unquoted tilde-pre\214x)
--.1 F .167(es immediately follo)-.15 F .167(wing a)-.25 F F1(:)2.667 E
-F0 .167(or the \214rst)2.667 F F1(=)2.667 E F0 5.167(.I)C(n)-5.167 E
-.468(these cases, tilde e)108 453.6 R .468(xpansion is also performed.)
+-.1 F .167(es immediately follo)-.15 F .167(wing a)-.25 F F2(:)2.667 E
+F0 .167(or the \214rst)2.667 F F2(=)2.667 E F0 5.167(.I)C(n)-5.167 E
+.468(these cases, tilde e)108 700.8 R .468(xpansion is also performed.)
-.15 F(Consequently)5.467 E 2.967(,o)-.65 G .467
(ne may use \214lenames with tildes in assign-)-2.967 F(ments to)108
-465.6 Q F3 -.666(PA)2.5 G(TH)-.189 E F4(,)A F3(MAILP)2.25 E -.855(AT)
+712.8 Q F3 -.666(PA)2.5 G(TH)-.189 E F4(,)A F3(MAILP)2.25 E -.855(AT)
-.666 G(H).855 E F4(,)A F0(and)2.25 E F3(CDP)2.5 E -.855(AT)-.666 G(H)
.855 E F4(,)A F0(and the shell assigns the e)2.25 E(xpanded v)-.15 E
-(alue.)-.25 E F1 -.1(Pa)87 482.4 S(rameter Expansion).1 E F0 1.605
-(The `)108 494.4 R F1($)A F0 4.105('c)C 1.605
+(alue.)-.25 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(19)200.665 E 0
+Cg EP
+%%Page: 20 20
+%%BeginPageSetup
+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 -.1(Pa)87 84 S(rameter Expansion).1 E F0
+1.605(The `)108 96 R F1($)A F0 4.105('c)C 1.605
(haracter introduces parameter e)-4.105 F 1.606
(xpansion, command substitution, or arithmetic e)-.15 F 4.106
-(xpansion. The)-.15 F .407(parameter name or symbol to be e)108 506.4 R
+(xpansion. The)-.15 F .407(parameter name or symbol to be e)108 108 R
.407(xpanded may be enclosed in braces, which are optional b)-.15 F .406
(ut serv)-.2 F 2.906(et)-.15 G 2.906(op)-2.906 G(ro-)-2.906 E .032
-(tect the v)108 518.4 R .032(ariable to be e)-.25 F .032
+(tect the v)108 120 R .032(ariable to be e)-.25 F .032
(xpanded from characters immediately follo)-.15 F .033
-(wing it which could be interpreted as part)-.25 F(of the name.)108
-530.4 Q 1.19
-(When braces are used, the matching ending brace is the \214rst `)108
-547.2 R F1(})A F0 3.689('n)C 1.189
+(wing it which could be interpreted as part)-.25 F(of the name.)108 132
+Q 1.19(When braces are used, the matching ending brace is the \214rst `)
+108 148.8 R F1(})A F0 3.689('n)C 1.189
(ot escaped by a backslash or within a)-3.689 F 2.15
-(quoted string, and not within an embedded arithmetic e)108 559.2 R 2.15
-(xpansion, command substitution, or parameter)-.15 F -.15(ex)108 571.2 S
-(pansion.).15 E(${)108 588 Q F2(par)A(ameter)-.15 E F0(})A 1.205(The v)
-144 600 R 1.205(alue of)-.25 F F2(par)3.705 E(ameter)-.15 E F0 1.204
-(is substituted.)3.705 F 1.204(The braces are required when)6.204 F F2
-(par)4.954 E(ameter)-.15 E F0 1.204(is a positional)4.434 F .264
-(parameter with more than one digit, or when)144 612 R F2(par)4.014 E
+(quoted string, and not within an embedded arithmetic e)108 160.8 R 2.15
+(xpansion, command substitution, or parameter)-.15 F -.15(ex)108 172.8 S
+(pansion.).15 E(${)108 189.6 Q/F2 10/Times-Italic@0 SF(par)A(ameter)-.15
+E F0(})A 1.205(The v)144 201.6 R 1.205(alue of)-.25 F F2(par)3.705 E
+(ameter)-.15 E F0 1.204(is substituted.)3.705 F 1.204
+(The braces are required when)6.204 F F2(par)4.954 E(ameter)-.15 E F0
+1.204(is a positional)4.434 F .264
+(parameter with more than one digit, or when)144 213.6 R F2(par)4.014 E
(ameter)-.15 E F0 .264(is follo)3.494 F .264
-(wed by a character which is not to)-.25 F
-(be interpreted as part of its name.)144 624 Q .686
-(If the \214rst character of)108 640.8 R F2(par)3.186 E(ameter)-.15 E F0
-.685(is an e)3.185 F .685(xclamation point \()-.15 F F1(!)A F0 .685
-(\), a le)B -.15(ve)-.25 G 3.185(lo).15 G 3.185(fv)-3.185 G .685
-(ariable indirection is introduced.)-3.435 F F1(Bash)108 652.8 Q F0 .106
-(uses the v)2.606 F .106(alue of the v)-.25 F .106
+(wed by a character which is not to)-.25 F 2.677
+(be interpreted as part of its name.)144 225.6 R(The)7.677 E F2(par)
+5.177 E(ameter)-.15 E F0 2.676(is a shell parameter as described abo)
+5.177 F -.15(ve)-.15 G F1 -.74(PA)144 237.6 S(RAMETERS).74 E F0 2.5(\)o)
+C 2.5(ra)-2.5 G 2.5(na)-2.5 G(rray reference \()-2.5 E F1(Arrays)A F0
+(\).)A .815(If the \214rst character of)108 254.4 R F2(par)3.316 E
+(ameter)-.15 E F0 .816(is an e)3.316 F .816(xclamation point \()-.15 F
+F1(!)A F0 .816(\), it introduces a le)B -.15(ve)-.25 G 3.316(lo).15 G
+3.316(fv)-3.316 G .816(ariable indirection.)-3.566 F F1(Bash)108 266.4 Q
+F0 .106(uses the v)2.606 F .106(alue of the v)-.25 F .106
(ariable formed from the rest of)-.25 F F2(par)2.606 E(ameter)-.15 E F0
.106(as the name of the v)2.606 F .106(ariable; this v)-.25 F(ari-)-.25
-E .352(able is then e)108 664.8 R .352(xpanded and that v)-.15 F .351
+E .351(able is then e)108 278.4 R .351(xpanded and that v)-.15 F .352
(alue is used in the rest of the substitution, rather than the v)-.25 F
-.351(alue of)-.25 F F2(par)2.851 E(ame-)-.15 E(ter)108 676.8 Q F0 2.519
-(itself. This)2.519 F .019(is kno)2.519 F .019(wn as)-.25 F F2(indir)
-2.519 E .019(ect e)-.37 F(xpansion)-.2 E F0 5.019(.T)C .019(he e)-5.019
-F .02(xceptions to this are the e)-.15 F .02(xpansions of ${)-.15 F F1
-(!)A F2(pr)A(e\214x)-.37 E F1(*)A F0 2.52(}a)C(nd)-2.52 E(${)108 688.8 Q
-F1(!)A F2(name)A F0([)A F2(@)A F0 .763(]} described belo)B 4.563 -.65
+.352(alue of)-.25 F F2(par)2.852 E(ame-)-.15 E(ter)108 290.4 Q F0 2.52
+(itself. This)2.52 F .02(is kno)2.52 F .02(wn as)-.25 F F2(indir)2.52 E
+.02(ect e)-.37 F(xpansion)-.2 E F0 5.019(.T)C .019(he e)-5.019 F .019
+(xceptions to this are the e)-.15 F .019(xpansions of ${)-.15 F F1(!)A
+F2(pr)A(e\214x)-.37 E F1(*)A F0 2.519(}a)C(nd)-2.519 E(${)108 302.4 Q F1
+(!)A F2(name)A F0([)A F2(@)A F0 .762(]} described belo)B 4.563 -.65
(w. T)-.25 H .763(he e).65 F .763
(xclamation point must immediately follo)-.15 F 3.263(wt)-.25 G .763
-(he left brace in order to)-3.263 F(introduce indirection.)108 700.8 Q
-.334(In each of the cases belo)108 717.6 R -.65(w,)-.25 G F2(wor)3.484 E
+(he left brace in order to)-3.263 F(introduce indirection.)108 314.4 Q
+.334(In each of the cases belo)108 331.2 R -.65(w,)-.25 G F2(wor)3.484 E
(d)-.37 E F0 .334(is subject to tilde e)2.834 F .334
(xpansion, parameter e)-.15 F .334(xpansion, command substitution,)-.15
-F(and arithmetic e)108 729.6 Q(xpansion.)-.15 E(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(19)190.95 E 0 Cg EP
-%%Page: 20 20
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E .698(When not performing substring e)108 84 R .698
-(xpansion, using the forms documented belo)-.15 F -.65(w,)-.25 G/F1 10
-/Times-Bold@0 SF(bash)3.848 E F0 .697(tests for a parameter)3.198 F
-(that is unset or null.)108 96 Q(Omitting the colon results in a test o\
-nly for a parameter that is unset.)5 E(${)108 112.8 Q/F2 10
-/Times-Italic@0 SF(par)A(ameter)-.15 E F1<3aad>A F2(wor)A(d)-.37 E F0(})
-A F1 .722(Use Default V)144 124.8 R(alues)-.92 E F0 5.722(.I)C(f)-5.722
-E F2(par)4.472 E(ameter)-.15 E F0 .723(is unset or null, the e)3.952 F
-.723(xpansion of)-.15 F F2(wor)3.563 E(d)-.37 E F0 .723(is substituted.)
-3.993 F(Other)5.723 E(-)-.2 E(wise, the v)144 136.8 Q(alue of)-.25 E F2
-(par)3.75 E(ameter)-.15 E F0(is substituted.)3.23 E(${)108 148.8 Q F2
-(par)A(ameter)-.15 E F1(:=)A F2(wor)A(d)-.37 E F0(})A F1 2.005
-(Assign Default V)144 160.8 R(alues)-.92 E F0 7.005(.I)C(f)-7.005 E F2
-(par)5.755 E(ameter)-.15 E F0 2.005(is unset or null, the e)5.235 F
-2.004(xpansion of)-.15 F F2(wor)4.844 E(d)-.37 E F0 2.004
-(is assigned to)5.274 F F2(par)144 172.8 Q(ameter)-.15 E F0 5.278(.T).73
-G .278(he v)-5.278 F .278(alue of)-.25 F F2(par)4.028 E(ameter)-.15 E F0
-.278(is then substituted.)3.508 F .279
+F(and arithmetic e)108 343.2 Q(xpansion.)-.15 E 1.089
+(When not performing substring e)108 360 R 1.089
+(xpansion, using the forms documented belo)-.15 F 3.589(w\()-.25 G
+(e.g.,)-3.589 E F1(:-)3.59 E F0(\),)A F1(bash)3.59 E F0 1.09
+(tests for a)3.59 F(parameter that is unset or null.)108 372 Q(Omitting\
+ the colon results in a test only for a parameter that is unset.)5 E(${)
+108 388.8 Q F2(par)A(ameter)-.15 E F1<3aad>A F2(wor)A(d)-.37 E F0(})A F1
+.723(Use Default V)144 400.8 R(alues)-.92 E F0 5.723(.I)C(f)-5.723 E F2
+(par)4.473 E(ameter)-.15 E F0 .723(is unset or null, the e)3.953 F .722
+(xpansion of)-.15 F F2(wor)3.562 E(d)-.37 E F0 .722(is substituted.)
+3.992 F(Other)5.722 E(-)-.2 E(wise, the v)144 412.8 Q(alue of)-.25 E F2
+(par)3.75 E(ameter)-.15 E F0(is substituted.)3.23 E(${)108 424.8 Q F2
+(par)A(ameter)-.15 E F1(:=)A F2(wor)A(d)-.37 E F0(})A F1 2.004
+(Assign Default V)144 436.8 R(alues)-.92 E F0 7.004(.I)C(f)-7.004 E F2
+(par)5.754 E(ameter)-.15 E F0 2.005(is unset or null, the e)5.234 F
+2.005(xpansion of)-.15 F F2(wor)4.845 E(d)-.37 E F0 2.005
+(is assigned to)5.275 F F2(par)144 448.8 Q(ameter)-.15 E F0 5.279(.T).73
+G .279(he v)-5.279 F .279(alue of)-.25 F F2(par)4.029 E(ameter)-.15 E F0
+.278(is then substituted.)3.508 F .278
(Positional parameters and special param-)5.278 F
-(eters may not be assigned to in this w)144 184.8 Q(ay)-.1 E(.)-.65 E
-(${)108 196.8 Q F2(par)A(ameter)-.15 E F1(:?)A F2(wor)A(d)-.37 E F0(})A
-F1 .535(Display Err)144 208.8 R .535(or if Null or Unset)-.18 F F0 5.535
+(eters may not be assigned to in this w)144 460.8 Q(ay)-.1 E(.)-.65 E
+(${)108 472.8 Q F2(par)A(ameter)-.15 E F1(:?)A F2(wor)A(d)-.37 E F0(})A
+F1 .535(Display Err)144 484.8 R .535(or if Null or Unset)-.18 F F0 5.535
(.I)C(f)-5.535 E F2(par)4.285 E(ameter)-.15 E F0 .535
(is null or unset, the e)3.765 F .535(xpansion of)-.15 F F2(wor)3.035 E
-(d)-.37 E F0 .535(\(or a mes-)3.035 F .661(sage to that ef)144 220.8 R
-.661(fect if)-.25 F F2(wor)3.501 E(d)-.37 E F0 .662(is not present\) is\
- written to the standard error and the shell, if it is not)3.931 F
-(interacti)144 232.8 Q -.15(ve)-.25 G 2.5(,e).15 G 2.5(xits. Otherwise,)
+(d)-.37 E F0 .535(\(or a mes-)3.035 F .662(sage to that ef)144 496.8 R
+.662(fect if)-.25 F F2(wor)3.502 E(d)-.37 E F0 .661(is not present\) is\
+ written to the standard error and the shell, if it is not)3.932 F
+(interacti)144 508.8 Q -.15(ve)-.25 G 2.5(,e).15 G 2.5(xits. Otherwise,)
-2.65 F(the v)2.5 E(alue of)-.25 E F2(par)2.5 E(ameter)-.15 E F0
-(is substituted.)2.5 E(${)108 244.8 Q F2(par)A(ameter)-.15 E F1(:+)A F2
-(wor)A(d)-.37 E F0(})A F1 .745(Use Alter)144 256.8 R .745(nate V)-.15 F
+(is substituted.)2.5 E(${)108 520.8 Q F2(par)A(ameter)-.15 E F1(:+)A F2
+(wor)A(d)-.37 E F0(})A F1 .745(Use Alter)144 532.8 R .745(nate V)-.15 F
(alue)-.92 E F0 5.745(.I)C(f)-5.745 E F2(par)4.495 E(ameter)-.15 E F0
.745(is null or unset, nothing is substituted, otherwise the e)3.975 F
-(xpan-)-.15 E(sion of)144 268.8 Q F2(wor)2.84 E(d)-.37 E F0
-(is substituted.)3.27 E(${)108 280.8 Q F2(par)A(ameter)-.15 E F1(:)A F2
-(of)A(fset)-.18 E F0(})A(${)108 292.8 Q F2(par)A(ameter)-.15 E F1(:)A F2
-(of)A(fset)-.18 E F1(:)A F2(length)A F0(})A F1 .796(Substring Expansion)
-144 304.8 R F0 5.796(.E)C .796(xpands to up to)-5.796 F F2(length)3.296
-E F0 .796(characters of)3.296 F F2(par)3.296 E(ameter)-.15 E F0 .797
-(starting at the character)3.296 F .229(speci\214ed by)144 316.8 R F2
-(of)2.729 E(fset)-.18 E F0 5.229(.I)C(f)-5.229 E F2(length)2.729 E F0
-.229(is omitted, e)2.729 F .229(xpands to the substring of)-.15 F F2
-(par)2.729 E(ameter)-.15 E F0 .228(starting at the char)2.728 F(-)-.2 E
-.432(acter speci\214ed by)144 328.8 R F2(of)2.933 E(fset)-.18 E F0(.)A
-F2(length)5.433 E F0(and)2.933 E F2(of)2.933 E(fset)-.18 E F0 .433
-(are arithmetic e)2.933 F .433(xpressions \(see)-.15 F/F3 9/Times-Bold@0
-SF .433(ARITHMETIC EV)2.933 F(ALU-)-1.215 E -.855(AT)144 340.8 S(ION)
-.855 E F0(belo)2.926 E 3.176(w\). If)-.25 F F2(of)3.176 E(fset)-.18 E F0
--.25(eva)3.176 G .676(luates to a number less than zero, the v).25 F
-.675(alue is used as an of)-.25 F .675(fset from)-.25 F .102
-(the end of the v)144 352.8 R .103(alue of)-.25 F F2(par)2.603 E(ameter)
--.15 E F0 5.103(.I)C(f)-5.103 E F2(length)2.603 E F0 -.25(eva)2.603 G
-.103(luates to a number less than zero, and).25 F F2(par)2.603 E(ameter)
--.15 E F0(is)2.603 E(not)144 364.8 Q F1(@)3.643 E F0 1.143
-(and not an inde)3.643 F -.15(xe)-.15 G 3.643(do).15 G 3.643(ra)-3.643 G
-(ssociati)-3.643 E 1.443 -.15(ve a)-.25 H(rray).15 E 3.643(,i)-.65 G
-3.643(ti)-3.643 G 3.643(si)-3.643 G 1.142(nterpreted as an of)-3.643 F
-1.142(fset from the end of the)-.25 F -.25(va)144 376.8 S .037(lue of)
-.25 F F2(par)2.537 E(ameter)-.15 E F0 .037
-(rather than a number of characters, and the e)2.537 F .038
-(xpansion is the characters between)-.15 F .074(the tw)144 388.8 R 2.574
-(oo)-.1 G -.25(ff)-2.574 G 2.574(sets. If).25 F F2(par)2.574 E(ameter)
--.15 E F0(is)2.574 E F1(@)2.574 E F0 2.574(,t)C .074(he result is)-2.574
-F F2(length)2.574 E F0 .074(positional parameters be)2.574 F .073
-(ginning at)-.15 F F2(of)2.573 E(fset)-.18 E F0 5.073(.I)C(f)-5.073 E F2
-(par)144 400.8 Q(ameter)-.15 E F0 .205(is an inde)2.705 F -.15(xe)-.15 G
-2.705(da).15 G .205(rray name subscripted by @ or *, the result is the)
--2.705 F F2(length)2.705 E F0 .205(members of the)2.705 F .697(array be)
-144 412.8 R .697(ginning with ${)-.15 F F2(par)A(ameter)-.15 E F0([)A F2
-(of)A(fset)-.18 E F0 3.197(]}. A)B(ne)3.197 E -.05(ga)-.15 G(ti).05 E
--.15(ve)-.25 G F2(of)3.347 E(fset)-.18 E F0 .697(is tak)3.197 F .697
-(en relati)-.1 F .997 -.15(ve t)-.25 H 3.197(oo).15 G .697
-(ne greater than)-3.197 F 1.403(the maximum inde)144 424.8 R 3.903(xo)
--.15 G 3.903(ft)-3.903 G 1.403(he speci\214ed array)-3.903 F 6.403(.S)
--.65 G 1.403(ubstring e)-6.403 F 1.403(xpansion applied to an associati)
--.15 F 1.704 -.15(ve a)-.25 H(rray).15 E 1.295
-(produces unde\214ned results.)144 436.8 R 1.295(Note that a ne)6.295 F
--.05(ga)-.15 G(ti).05 E 1.595 -.15(ve o)-.25 H -.25(ff).15 G 1.294
-(set must be separated from the colon by at).25 F .958
-(least one space to a)144 448.8 R -.2(vo)-.2 G .959
-(id being confused with the :- e).2 F 3.459(xpansion. Substring)-.15 F
-(inde)3.459 E .959(xing is zero-based)-.15 F .415
-(unless the positional parameters are used, in which case the inde)144
-460.8 R .414(xing starts at 1 by def)-.15 F 2.914(ault. If)-.1 F F2(of)
-2.914 E(f-)-.18 E(set)144 472.8 Q F0
-(is 0, and the positional parameters are used,)2.5 E F1($0)2.5 E F0
-(is pre\214x)2.5 E(ed to the list.)-.15 E(${)108 489.6 Q F1(!)A F2(pr)A
-(e\214x)-.37 E F1(*)A F0(})A(${)108 501.6 Q F1(!)A F2(pr)A(e\214x)-.37 E
-F1(@)A F0(})A F1 .084(Names matching pr)144 513.6 R(e\214x)-.18 E F0
-5.084(.E)C .084(xpands to the names of v)-5.084 F .084
-(ariables whose names be)-.25 F .085(gin with)-.15 F F2(pr)2.585 E
+(xpan-)-.15 E(sion of)144 544.8 Q F2(wor)2.84 E(d)-.37 E F0
+(is substituted.)3.27 E(${)108 556.8 Q F2(par)A(ameter)-.15 E F1(:)A F2
+(of)A(fset)-.18 E F0(})A(${)108 568.8 Q F2(par)A(ameter)-.15 E F1(:)A F2
+(of)A(fset)-.18 E F1(:)A F2(length)A F0(})A F1 .002(Substring Expansion)
+144 580.8 R F0 5.002(.E)C .002(xpands to up to)-5.002 F F2(length)2.502
+E F0 .002(characters of the v)2.502 F .002(alue of)-.25 F F2(par)2.502 E
+(ameter)-.15 E F0 .002(starting at the)2.502 F 1.081
+(character speci\214ed by)144 592.8 R F2(of)3.581 E(fset)-.18 E F0 6.081
+(.I)C(f)-6.081 E F2(par)3.582 E(ameter)-.15 E F0(is)3.582 E F1(@)3.582 E
+F0 3.582(,a)C 3.582(ni)-3.582 G(nde)-3.582 E -.15(xe)-.15 G 3.582(da).15
+G 1.082(rray subscripted by)-3.582 F F1(@)3.582 E F0(or)3.582 E F1(*)
+3.582 E F0 3.582(,o)C 3.582(ra)-3.582 G(n)-3.582 E(associati)144 604.8 Q
+1.022 -.15(ve a)-.25 H .722(rray name, the results dif).15 F .722
+(fer as described belo)-.25 F 4.522 -.65(w. I)-.25 H(f).65 E F2(length)
+3.222 E F0 .722(is omitted, e)3.222 F .722(xpands to the)-.15 F .042
+(substring of the v)144 616.8 R .042(alue of)-.25 F F2(par)2.542 E
+(ameter)-.15 E F0 .043(starting at the character speci\214ed by)2.542 F
+F2(of)2.543 E(fset)-.18 E F0 .043(and e)2.543 F .043(xtending to the)
+-.15 F .847(end of the v)144 628.8 R(alue.)-.25 E F2(length)5.846 E F0
+(and)3.346 E F2(of)3.346 E(fset)-.18 E F0 .846(are arithmetic e)3.346 F
+.846(xpressions \(see)-.15 F/F3 9/Times-Bold@0 SF .846(ARITHMETIC EV)
+3.346 F(ALU)-1.215 E -.855(AT)-.54 G(ION).855 E F0(belo)144 640.8 Q
+(w\).)-.25 E(If)144 664.8 Q F2(of)3.028 E(fset)-.18 E F0 -.25(eva)3.029
+G .529(luates to a number less than zero, the v).25 F .529
+(alue is used as an of)-.25 F .529(fset in characters from the)-.25 F
+.046(end of the v)144 676.8 R .046(alue of)-.25 F F2(par)2.546 E(ameter)
+-.15 E F0 5.046(.I)C(f)-5.046 E F2(length)2.546 E F0 -.25(eva)2.546 G
+.046(luates to a number less than zero, it is interpreted as an).25 F
+(of)144 688.8 Q .202(fset in characters from the end of the v)-.25 F
+.202(alue of)-.25 F F2(par)2.702 E(ameter)-.15 E F0 .203
+(rather than a number of characters, and)2.702 F .558(the e)144 700.8 R
+.558(xpansion is the characters between)-.15 F F2(of)3.058 E(fset)-.18 E
+F0 .558(and that result.)3.058 F .557(Note that a ne)5.557 F -.05(ga)
+-.15 G(ti).05 E .857 -.15(ve o)-.25 H -.25(ff).15 G .557(set must be).25
+F(separated from the colon by at least one space to a)144 712.8 Q -.2
+(vo)-.2 G(id being confused with the).2 E F1(:-)2.5 E F0 -.15(ex)2.5 G
+(pansion.).15 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(20)200.665 E
+0 Cg EP
+%%Page: 21 21
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E(If)144 84 Q/F1 10/Times-Italic@0 SF(par)2.958 E(ameter)-.15 E F0
+(is)2.958 E/F2 10/Times-Bold@0 SF(@)2.958 E F0 2.958(,t)C .458
+(he result is)-2.958 F F1(length)2.959 E F0 .459
+(positional parameters be)2.959 F .459(ginning at)-.15 F F1(of)2.959 E
+(fset)-.18 E F0 5.459(.A)C(ne)-2.5 E -.05(ga)-.15 G(ti).05 E -.15(ve)
+-.25 G F1(of)3.109 E(fset)-.18 E F0 .096(is tak)144 96 R .096(en relati)
+-.1 F .396 -.15(ve t)-.25 H 2.596(oo).15 G .096
+(ne greater than the greatest positional parameter)-2.596 F 2.596(,s)-.4
+G 2.596(oa)-2.596 G 2.596(no)-2.596 G -.25(ff)-2.596 G .096(set of -1 e)
+.25 F -.25(va)-.25 G .095(luates to).25 F 1.321
+(the last positional parameter)144 108 R 6.322(.I)-.55 G 3.822(ti)-6.322
+G 3.822(sa)-3.822 G 3.822(ne)-3.822 G 1.322(xpansion error if)-3.972 F
+F1(length)3.822 E F0 -.25(eva)3.822 G 1.322
+(luates to a number less than).25 F(zero.)144 120 Q(If)144 144 Q F1(par)
+3.014 E(ameter)-.15 E F0 .514(is an inde)3.014 F -.15(xe)-.15 G 3.014
+(da).15 G .514(rray name subscripted by @ or *, the result is the)-3.014
+F F1(length)3.014 E F0 .513(members of)3.013 F 1.081(the array be)144
+156 R 1.081(ginning with ${)-.15 F F1(par)A(ameter)-.15 E F0([)A F1(of)A
+(fset)-.18 E F0 3.581(]}. A)B(ne)3.581 E -.05(ga)-.15 G(ti).05 E -.15
+(ve)-.25 G F1(of)3.732 E(fset)-.18 E F0 1.082(is tak)3.582 F 1.082
+(en relati)-.1 F 1.382 -.15(ve t)-.25 H 3.582(oo).15 G 1.082(ne greater)
+-3.582 F 1.08(than the maximum inde)144 168 R 3.58(xo)-.15 G 3.58(ft)
+-3.58 G 1.08(he speci\214ed array)-3.58 F 6.079(.I)-.65 G 3.579(ti)
+-6.079 G 3.579(sa)-3.579 G 3.579(ne)-3.579 G 1.079(xpansion error if)
+-3.729 F F1(length)3.579 E F0 -.25(eva)3.579 G 1.079(luates to a).25 F
+(number less than zero.)144 180 Q(Substring e)144 204 Q
+(xpansion applied to an associati)-.15 E .3 -.15(ve a)-.25 H
+(rray produces unde\214ned results.).15 E 1.93(Substring inde)144 228 R
+1.931(xing is zero-based unless the positional parameters are used, in \
+which case the)-.15 F(inde)144 240 Q .307(xing starts at 1 by def)-.15 F
+2.807(ault. If)-.1 F F1(of)2.807 E(fset)-.18 E F0 .307
+(is 0, and the positional parameters are used,)2.807 F F2($0)2.806 E F0
+.306(is pre\214x)2.806 F(ed)-.15 E(to the list.)144 252 Q(${)108 268.8 Q
+F2(!)A F1(pr)A(e\214x)-.37 E F2(*)A F0(})A(${)108 280.8 Q F2(!)A F1(pr)A
+(e\214x)-.37 E F2(@)A F0(})A F2 .084(Names matching pr)144 292.8 R
+(e\214x)-.18 E F0 5.084(.E)C .084(xpands to the names of v)-5.084 F .084
+(ariables whose names be)-.25 F .085(gin with)-.15 F F1(pr)2.585 E
(e\214x)-.37 E F0 2.585(,s)C(epa-)-2.585 E .258
-(rated by the \214rst character of the)144 525.6 R F3(IFS)2.758 E F0
-.257(special v)2.507 F 2.757(ariable. When)-.25 F F2(@)2.757 E F0 .257
-(is used and the e)2.757 F .257(xpansion appears)-.15 F
-(within double quotes, each v)144 537.6 Q(ariable name e)-.25 E
-(xpands to a separate w)-.15 E(ord.)-.1 E(${)108 554.4 Q F1(!)A F2(name)
-A F0([)A F2(@)A F0(]})A(${)108 566.4 Q F1(!)A F2(name)A F0([)A F2(*)A F0
-(]})A F1 2.035(List of array k)144 578.4 R(eys)-.1 E F0 7.036(.I)C(f)
--7.036 E F2(name)4.536 E F0 2.036(is an array v)4.536 F 2.036
+(rated by the \214rst character of the)144 304.8 R/F3 9/Times-Bold@0 SF
+(IFS)2.758 E F0 .257(special v)2.507 F 2.757(ariable. When)-.25 F F1(@)
+2.757 E F0 .257(is used and the e)2.757 F .257(xpansion appears)-.15 F
+(within double quotes, each v)144 316.8 Q(ariable name e)-.25 E
+(xpands to a separate w)-.15 E(ord.)-.1 E(${)108 333.6 Q F2(!)A F1(name)
+A F0([)A F1(@)A F0(]})A(${)108 345.6 Q F2(!)A F1(name)A F0([)A F1(*)A F0
+(]})A F2 2.035(List of array k)144 357.6 R(eys)-.1 E F0 7.036(.I)C(f)
+-7.036 E F1(name)4.536 E F0 2.036(is an array v)4.536 F 2.036
(ariable, e)-.25 F 2.036(xpands to the list of array indices \(k)-.15 F
--.15(ey)-.1 G(s\)).15 E .596(assigned in)144 590.4 R F2(name)3.096 E F0
-5.596(.I)C(f)-5.596 E F2(name)3.096 E F0 .595(is not an array)3.096 F
-3.095(,e)-.65 G .595(xpands to 0 if)-3.245 F F2(name)3.095 E F0 .595
-(is set and null otherwise.)3.095 F(When)5.595 E F2(@)144 602.4 Q F0
+-.15(ey)-.1 G(s\)).15 E .596(assigned in)144 369.6 R F1(name)3.096 E F0
+5.596(.I)C(f)-5.596 E F1(name)3.096 E F0 .595(is not an array)3.096 F
+3.095(,e)-.65 G .595(xpands to 0 if)-3.245 F F1(name)3.095 E F0 .595
+(is set and null otherwise.)3.095 F(When)5.595 E F1(@)144 381.6 Q F0
(is used and the e)2.5 E(xpansion appears within double quotes, each k)
-.15 E .3 -.15(ey ex)-.1 H(pands to a separate w).15 E(ord.)-.1 E(${)108
-619.2 Q F1(#)A F2(par)A(ameter)-.15 E F0(})A F1 -.1(Pa)144 631.2 S .47
+398.4 Q F2(#)A F1(par)A(ameter)-.15 E F0(})A F2 -.1(Pa)144 410.4 S .47
(rameter length).1 F F0 5.47(.T)C .471(he length in characters of the v)
--5.47 F .471(alue of)-.25 F F2(par)2.971 E(ameter)-.15 E F0 .471
-(is substituted.)2.971 F(If)5.471 E F2(par)4.221 E(ame-)-.15 E(ter)144
-643.2 Q F0(is)4.439 E F1(*)3.709 E F0(or)3.709 E F1(@)3.709 E F0 3.708
+-5.47 F .471(alue of)-.25 F F1(par)2.971 E(ameter)-.15 E F0 .471
+(is substituted.)2.971 F(If)5.471 E F1(par)4.221 E(ame-)-.15 E(ter)144
+422.4 Q F0(is)4.439 E F2(*)3.709 E F0(or)3.709 E F2(@)3.709 E F0 3.708
(,t)C 1.208(he v)-3.708 F 1.208
(alue substituted is the number of positional parameters.)-.25 F(If)
-6.208 E F2(par)4.958 E(ameter)-.15 E F0 1.208(is an)4.438 F
-(array name subscripted by)144 655.2 Q F1(*)2.5 E F0(or)2.5 E F1(@)2.5 E
+6.208 E F1(par)4.958 E(ameter)-.15 E F0 1.208(is an)4.438 F
+(array name subscripted by)144 434.4 Q F2(*)2.5 E F0(or)2.5 E F2(@)2.5 E
F0 2.5(,t)C(he v)-2.5 E
(alue substituted is the number of elements in the array)-.25 E(.)-.65 E
-(${)108 672 Q F2(par)A(ameter)-.15 E F1(#)A F2(wor)A(d)-.37 E F0(})A(${)
-108 684 Q F2(par)A(ameter)-.15 E F1(##)A F2(wor)A(d)-.37 E F0(})A F1
-(Remo)144 696 Q 1.396 -.1(ve m)-.1 H 1.196(atching pr).1 F 1.196
-(e\214x patter)-.18 F(n)-.15 E F0 6.196(.T)C(he)-6.196 E F2(wor)4.036 E
+(${)108 451.2 Q F1(par)A(ameter)-.15 E F2(#)A F1(wor)A(d)-.37 E F0(})A
+(${)108 463.2 Q F1(par)A(ameter)-.15 E F2(##)A F1(wor)A(d)-.37 E F0(})A
+F2(Remo)144 475.2 Q 1.396 -.1(ve m)-.1 H 1.196(atching pr).1 F 1.196
+(e\214x patter)-.18 F(n)-.15 E F0 6.196(.T)C(he)-6.196 E F1(wor)4.036 E
(d)-.37 E F0 1.196(is e)4.466 F 1.196
(xpanded to produce a pattern just as in path-)-.15 F .152(name e)144
-708 R 2.652(xpansion. If)-.15 F .152(the pattern matches the be)2.652 F
-.152(ginning of the v)-.15 F .152(alue of)-.25 F F2(par)2.652 E(ameter)
--.15 E F0 2.652(,t).73 G .151(hen the result of)-2.652 F 1.4(the e)144
-720 R 1.4(xpansion is the e)-.15 F 1.4(xpanded v)-.15 F 1.4(alue of)-.25
-F F2(par)5.15 E(ameter)-.15 E F0 1.4
-(with the shortest matching pattern \(the `)4.63 F(`)-.74 E F1(#)A F0
--.74('')C(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(20)190.95 E 0
-Cg EP
-%%Page: 21 21
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E .281(case\) or the longest matching pattern \(the `)144 84 R(`)
--.74 E/F1 10/Times-Bold@0 SF(##)A F0 1.761 -.74('' c)D .281
-(ase\) deleted.).74 F(If)5.281 E/F2 10/Times-Italic@0 SF(par)4.031 E
-(ameter)-.15 E F0(is)3.511 E F1(@)2.781 E F0(or)2.781 E F1(*)2.781 E F0
-2.781(,t)C .281(he pattern)-2.781 F(remo)144 96 Q -.25(va)-.15 G 3.274
-(lo).25 G .774
+487.2 R 2.652(xpansion. If)-.15 F .152(the pattern matches the be)2.652
+F .152(ginning of the v)-.15 F .152(alue of)-.25 F F1(par)2.652 E
+(ameter)-.15 E F0 2.652(,t).73 G .151(hen the result of)-2.652 F 1.4
+(the e)144 499.2 R 1.4(xpansion is the e)-.15 F 1.4(xpanded v)-.15 F 1.4
+(alue of)-.25 F F1(par)5.15 E(ameter)-.15 E F0 1.4
+(with the shortest matching pattern \(the `)4.63 F(`)-.74 E F2(#)A F0
+-.74('')C .281(case\) or the longest matching pattern \(the `)144 511.2
+R(`)-.74 E F2(##)A F0 1.761 -.74('' c)D .281(ase\) deleted.).74 F(If)
+5.281 E F1(par)4.031 E(ameter)-.15 E F0(is)3.511 E F2(@)2.781 E F0(or)
+2.781 E F2(*)2.781 E F0 2.781(,t)C .281(he pattern)-2.781 F(remo)144
+523.2 Q -.25(va)-.15 G 3.274(lo).25 G .774
(peration is applied to each positional parameter in turn, and the e)
--3.274 F .774(xpansion is the resul-)-.15 F .402(tant list.)144 108 R
-(If)5.402 E F2(par)4.152 E(ameter)-.15 E F0 .401(is an array v)3.632 F
-.401(ariable subscripted with)-.25 F F1(@)2.901 E F0(or)2.901 E F1(*)
+-3.274 F .774(xpansion is the resul-)-.15 F .402(tant list.)144 535.2 R
+(If)5.402 E F1(par)4.152 E(ameter)-.15 E F0 .401(is an array v)3.632 F
+.401(ariable subscripted with)-.25 F F2(@)2.901 E F0(or)2.901 E F2(*)
2.901 E F0 2.901(,t)C .401(he pattern remo)-2.901 F -.25(va)-.15 G 2.901
(lo).25 G(peration)-2.901 E
-(is applied to each member of the array in turn, and the e)144 120 Q
-(xpansion is the resultant list.)-.15 E(${)108 136.8 Q F2(par)A(ameter)
--.15 E F1(%)A F2(wor)A(d)-.37 E F0(})A(${)108 148.8 Q F2(par)A(ameter)
--.15 E F1(%%)A F2(wor)A(d)-.37 E F0(})A F1(Remo)144 160.8 Q .346 -.1
-(ve m)-.1 H .146(atching suf\214x patter).1 F(n)-.15 E F0 5.146(.T)C(he)
--5.146 E F2(wor)2.646 E(d)-.37 E F0 .147(is e)2.647 F .147
-(xpanded to produce a pattern just as in pathname)-.15 F -.15(ex)144
-172.8 S 3.088(pansion. If).15 F .588
+(is applied to each member of the array in turn, and the e)144 547.2 Q
+(xpansion is the resultant list.)-.15 E(${)108 564 Q F1(par)A(ameter)
+-.15 E F2(%)A F1(wor)A(d)-.37 E F0(})A(${)108 576 Q F1(par)A(ameter)-.15
+E F2(%%)A F1(wor)A(d)-.37 E F0(})A F2(Remo)144 588 Q .346 -.1(ve m)-.1 H
+.146(atching suf\214x patter).1 F(n)-.15 E F0 5.146(.T)C(he)-5.146 E F1
+(wor)2.646 E(d)-.37 E F0 .147(is e)2.647 F .147
+(xpanded to produce a pattern just as in pathname)-.15 F -.15(ex)144 600
+S 3.088(pansion. If).15 F .588
(the pattern matches a trailing portion of the e)3.088 F .588(xpanded v)
--.15 F .588(alue of)-.25 F F2(par)3.088 E(ameter)-.15 E F0 3.088(,t).73
-G .588(hen the)-3.088 F .226(result of the e)144 184.8 R .226
-(xpansion is the e)-.15 F .226(xpanded v)-.15 F .226(alue of)-.25 F F2
+-.15 F .588(alue of)-.25 F F1(par)3.088 E(ameter)-.15 E F0 3.088(,t).73
+G .588(hen the)-3.088 F .226(result of the e)144 612 R .226
+(xpansion is the e)-.15 F .226(xpanded v)-.15 F .226(alue of)-.25 F F1
(par)3.976 E(ameter)-.15 E F0 .226
-(with the shortest matching pattern \(the)3.456 F -.74(``)144 196.8 S F1
+(with the shortest matching pattern \(the)3.456 F -.74(``)144 624 S F2
(%).74 E F0 1.522 -.74('' c)D .042
-(ase\) or the longest matching pattern \(the `).74 F(`)-.74 E F1(%%)A F0
-1.522 -.74('' c)D .042(ase\) deleted.).74 F(If)5.042 E F2(par)3.792 E
-(ameter)-.15 E F0(is)3.272 E F1(@)2.541 E F0(or)2.541 E F1(*)2.541 E F0
-2.541(,t)C(he)-2.541 E .44(pattern remo)144 208.8 R -.25(va)-.15 G 2.94
+(ase\) or the longest matching pattern \(the `).74 F(`)-.74 E F2(%%)A F0
+1.522 -.74('' c)D .042(ase\) deleted.).74 F(If)5.042 E F1(par)3.792 E
+(ameter)-.15 E F0(is)3.272 E F2(@)2.541 E F0(or)2.541 E F2(*)2.541 E F0
+2.541(,t)C(he)-2.541 E .44(pattern remo)144 636 R -.25(va)-.15 G 2.94
(lo).25 G .441
(peration is applied to each positional parameter in turn, and the e)
--2.94 F .441(xpansion is the)-.15 F .241(resultant list.)144 220.8 R(If)
-5.241 E F2(par)3.991 E(ameter)-.15 E F0 .241(is an array v)3.471 F .241
-(ariable subscripted with)-.25 F F1(@)2.741 E F0(or)2.74 E F1(*)2.74 E
+-2.94 F .441(xpansion is the)-.15 F .241(resultant list.)144 648 R(If)
+5.241 E F1(par)3.991 E(ameter)-.15 E F0 .241(is an array v)3.471 F .241
+(ariable subscripted with)-.25 F F2(@)2.741 E F0(or)2.74 E F2(*)2.74 E
F0 2.74(,t)C .24(he pattern remo)-2.74 F -.25(va)-.15 G 2.74(lo).25 G
(per)-2.74 E(-)-.2 E
-(ation is applied to each member of the array in turn, and the e)144
-232.8 Q(xpansion is the resultant list.)-.15 E(${)108 249.6 Q F2(par)A
-(ameter)-.15 E F1(/)A F2(pattern)A F1(/)A F2(string)A F0(})A F1 -.1(Pa)
-144 261.6 S(tter).1 E 3.606(ns)-.15 G(ubstitution)-3.606 E F0 6.106(.T)C
-(he)-6.106 E F2(pattern)3.606 E F0 1.106(is e)3.606 F 1.107
+(ation is applied to each member of the array in turn, and the e)144 660
+Q(xpansion is the resultant list.)-.15 E(${)108 676.8 Q F1(par)A(ameter)
+-.15 E F2(/)A F1(pattern)A F2(/)A F1(string)A F0(})A F2 -.1(Pa)144 688.8
+S(tter).1 E 3.606(ns)-.15 G(ubstitution)-3.606 E F0 6.106(.T)C(he)-6.106
+E F1(pattern)3.606 E F0 1.106(is e)3.606 F 1.107
(xpanded to produce a pattern just as in pathname e)-.15 F(xpan-)-.15 E
-(sion.)144 273.6 Q F2 -.8(Pa)6.034 G -.15(ra).8 G(meter).15 E F0 1.034
-(is e)3.534 F 1.033(xpanded and the longest match of)-.15 F F2(pattern)
+(sion.)144 700.8 Q F1 -.8(Pa)6.034 G -.15(ra).8 G(meter).15 E F0 1.034
+(is e)3.534 F 1.033(xpanded and the longest match of)-.15 F F1(pattern)
3.533 E F0(ag)3.533 E 1.033(ainst its v)-.05 F 1.033
-(alue is replaced with)-.25 F F2(string)144 285.6 Q F0 5.16(.I)C(f)-5.16
-E F2(pattern)2.66 E F0(be)2.66 E .16(gins with)-.15 F F1(/)2.66 E F0
-2.66(,a)C .161(ll matches of)-2.66 F F2(pattern)2.661 E F0 .161
-(are replaced with)2.661 F F2(string)2.661 E F0 5.161(.N)C .161
-(ormally only the)-5.161 F .807(\214rst match is replaced.)144 297.6 R
-(If)5.807 E F2(pattern)3.307 E F0(be)3.307 E .807(gins with)-.15 F F1(#)
+(alue is replaced with)-.25 F F1(string)144 712.8 Q F0 5.16(.I)C(f)-5.16
+E F1(pattern)2.66 E F0(be)2.66 E .16(gins with)-.15 F F2(/)2.66 E F0
+2.66(,a)C .161(ll matches of)-2.66 F F1(pattern)2.661 E F0 .161
+(are replaced with)2.661 F F1(string)2.661 E F0 5.161(.N)C .161
+(ormally only the)-5.161 F .807(\214rst match is replaced.)144 724.8 R
+(If)5.807 E F1(pattern)3.307 E F0(be)3.307 E .807(gins with)-.15 F F2(#)
3.307 E F0 3.306(,i)C 3.306(tm)-3.306 G .806(ust match at the be)-3.306
-F .806(ginning of the e)-.15 F(xpanded)-.15 E -.25(va)144 309.6 S .62
-(lue of).25 F F2(par)3.12 E(ameter)-.15 E F0 5.62(.I)C(f)-5.62 E F2
-(pattern)3.12 E F0(be)3.12 E .62(gins with)-.15 F F1(%)3.12 E F0 3.12
-(,i)C 3.121(tm)-3.12 G .621(ust match at the end of the e)-3.121 F .621
-(xpanded v)-.15 F .621(alue of)-.25 F F2(par)144 321.6 Q(ameter)-.15 E
-F0 6.254(.I)C(f)-6.254 E F2(string)3.754 E F0 1.253(is null, matches of)
-3.753 F F2(pattern)3.753 E F0 1.253(are deleted and the)3.753 F F1(/)
-3.753 E F0(follo)3.753 E(wing)-.25 E F2(pattern)3.753 E F0 1.253(may be)
-3.753 F 2.678(omitted. If)144 333.6 R F2(par)3.928 E(ameter)-.15 E F0
-(is)3.408 E F1(@)2.678 E F0(or)2.678 E F1(*)2.679 E F0 2.679(,t)C .179
+F .806(ginning of the e)-.15 F(xpanded)-.15 E(GNU Bash 4.2)72 768 Q
+(2012 July 5)151.505 E(21)200.665 E 0 Cg EP
+%%Page: 22 22
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E -.25(va)144 84 S .62(lue of).25 F/F1 10/Times-Italic@0 SF(par)
+3.12 E(ameter)-.15 E F0 5.62(.I)C(f)-5.62 E F1(pattern)3.12 E F0(be)3.12
+E .62(gins with)-.15 F/F2 10/Times-Bold@0 SF(%)3.12 E F0 3.12(,i)C 3.121
+(tm)-3.12 G .621(ust match at the end of the e)-3.121 F .621(xpanded v)
+-.15 F .621(alue of)-.25 F F1(par)144 96 Q(ameter)-.15 E F0 6.254(.I)C
+(f)-6.254 E F1(string)3.754 E F0 1.253(is null, matches of)3.753 F F1
+(pattern)3.753 E F0 1.253(are deleted and the)3.753 F F2(/)3.753 E F0
+(follo)3.753 E(wing)-.25 E F1(pattern)3.753 E F0 1.253(may be)3.753 F
+2.678(omitted. If)144 108 R F1(par)3.928 E(ameter)-.15 E F0(is)3.408 E
+F2(@)2.678 E F0(or)2.678 E F2(*)2.679 E F0 2.679(,t)C .179
(he substitution operation is applied to each positional parameter)
--2.679 F .619(in turn, and the e)144 345.6 R .619
-(xpansion is the resultant list.)-.15 F(If)5.619 E F2(par)4.369 E
+-2.679 F .619(in turn, and the e)144 120 R .619
+(xpansion is the resultant list.)-.15 F(If)5.619 E F1(par)4.369 E
(ameter)-.15 E F0 .618(is an array v)3.849 F .618
-(ariable subscripted with)-.25 F F1(@)144 357.6 Q F0(or)3.223 E F1(*)
-3.223 E F0 3.223(,t)C .723(he substitution operation is applied to each\
- member of the array in turn, and the e)-3.223 F(xpan-)-.15 E
-(sion is the resultant list.)144 369.6 Q(${)108 386.4 Q F2(par)A(ameter)
--.15 E F1(^)A F2(pattern)A F0(})A(${)108 398.4 Q F2(par)A(ameter)-.15 E
-F1(^^)A F2(pattern)A F0(})A(${)108 410.4 Q F2(par)A(ameter)-.15 E F1(,)A
-F2(pattern)A F0(})A(${)108 422.4 Q F2(par)A(ameter)-.15 E F1(,,)A F2
-(pattern)A F0(})A F1 .438(Case modi\214cation)144 434.4 R F0 5.438(.T)C
+(ariable subscripted with)-.25 F F2(@)144 132 Q F0(or)3.223 E F2(*)3.223
+E F0 3.223(,t)C .723(he substitution operation is applied to each membe\
+r of the array in turn, and the e)-3.223 F(xpan-)-.15 E
+(sion is the resultant list.)144 144 Q(${)108 160.8 Q F1(par)A(ameter)
+-.15 E F2(^)A F1(pattern)A F0(})A(${)108 172.8 Q F1(par)A(ameter)-.15 E
+F2(^^)A F1(pattern)A F0(})A(${)108 184.8 Q F1(par)A(ameter)-.15 E F2(,)A
+F1(pattern)A F0(})A(${)108 196.8 Q F1(par)A(ameter)-.15 E F2(,,)A F1
+(pattern)A F0(})A F2 .438(Case modi\214cation)144 208.8 R F0 5.438(.T)C
.438(his e)-5.438 F .437
-(xpansion modi\214es the case of alphabetic characters in)-.15 F F2(par)
-2.937 E(ameter)-.15 E F0 5.437(.T)C(he)-5.437 E F2(pattern)144 446.4 Q
+(xpansion modi\214es the case of alphabetic characters in)-.15 F F1(par)
+2.937 E(ameter)-.15 E F0 5.437(.T)C(he)-5.437 E F1(pattern)144 220.8 Q
F0 1.406(is e)3.906 F 1.407
(xpanded to produce a pattern just as in pathname e)-.15 F 3.907
-(xpansion. Each)-.15 F 1.407(character in the)3.907 F -.15(ex)144 458.4
-S 1.232(panded v).15 F 1.232(alue of)-.25 F F2(par)3.732 E(ameter)-.15 E
-F0 1.232(is tested ag)3.732 F(ainst)-.05 E F2(pattern)3.732 E F0 3.732
+(xpansion. Each)-.15 F 1.407(character in the)3.907 F -.15(ex)144 232.8
+S 1.232(panded v).15 F 1.232(alue of)-.25 F F1(par)3.732 E(ameter)-.15 E
+F0 1.232(is tested ag)3.732 F(ainst)-.05 E F1(pattern)3.732 E F0 3.732
(,a)C 1.232(nd, if it matches the pattern, its case is)-3.732 F(con)144
-470.4 Q -.15(ve)-.4 G 2.924(rted. The).15 F .424
+244.8 Q -.15(ve)-.4 G 2.924(rted. The).15 F .424
(pattern should not attempt to match more than one character)2.924 F
-5.424(.T)-.55 G(he)-5.424 E F1(^)2.924 E F0 .424(operator con-)2.924 F
--.15(ve)144 482.4 S .61(rts lo).15 F .61(wercase letters matching)-.25 F
-F2(pattern)3.11 E F0 .61(to uppercase; the)3.11 F F1(,)3.11 E F0 .61
+5.424(.T)-.55 G(he)-5.424 E F2(^)2.924 E F0 .424(operator con-)2.924 F
+-.15(ve)144 256.8 S .61(rts lo).15 F .61(wercase letters matching)-.25 F
+F1(pattern)3.11 E F0 .61(to uppercase; the)3.11 F F2(,)3.11 E F0 .61
(operator con)3.11 F -.15(ve)-.4 G .61(rts matching uppercase).15 F
-1.547(letters to lo)144 494.4 R 4.047(wercase. The)-.25 F F1(^^)4.047 E
-F0(and)4.047 E F1(,,)4.047 E F0 -.15(ex)4.047 G 1.547(pansions con).15 F
+1.547(letters to lo)144 268.8 R 4.047(wercase. The)-.25 F F2(^^)4.047 E
+F0(and)4.047 E F2(,,)4.047 E F0 -.15(ex)4.047 G 1.547(pansions con).15 F
-.15(ve)-.4 G 1.547(rt each matched character in the e).15 F(xpanded)
--.15 E -.25(va)144 506.4 S .634(lue; the).25 F F1(^)3.134 E F0(and)3.134
-E F1(,)3.134 E F0 -.15(ex)3.134 G .634(pansions match and con).15 F -.15
+-.15 E -.25(va)144 280.8 S .634(lue; the).25 F F2(^)3.134 E F0(and)3.134
+E F2(,)3.134 E F0 -.15(ex)3.134 G .634(pansions match and con).15 F -.15
(ve)-.4 G .633(rt only the \214rst character in the e).15 F .633
-(xpanded v)-.15 F 3.133(alue. If)-.25 F F2(pattern)144 518.4 Q F0 .78
-(is omitted, it is treated lik)3.28 F 3.28(ea)-.1 G F1(?)A F0 3.28(,w)C
+(xpanded v)-.15 F 3.133(alue. If)-.25 F F1(pattern)144 292.8 Q F0 .78
+(is omitted, it is treated lik)3.28 F 3.28(ea)-.1 G F2(?)A F0 3.28(,w)C
.78(hich matches e)-3.28 F -.15(ve)-.25 G .78(ry character).15 F 5.78
-(.I)-.55 G(f)-5.78 E F2(par)4.53 E(ameter)-.15 E F0(is)4.01 E F1(@)3.28
-E F0(or)3.28 E F1(*)3.28 E F0(,)A .582(the case modi\214cation operatio\
-n is applied to each positional parameter in turn, and the e)144 530.4 R
-(xpansion)-.15 E .468(is the resultant list.)144 542.4 R(If)5.468 E F2
+(.I)-.55 G(f)-5.78 E F1(par)4.53 E(ameter)-.15 E F0(is)4.01 E F2(@)3.28
+E F0(or)3.28 E F2(*)3.28 E F0(,)A .582(the case modi\214cation operatio\
+n is applied to each positional parameter in turn, and the e)144 304.8 R
+(xpansion)-.15 E .468(is the resultant list.)144 316.8 R(If)5.468 E F1
(par)4.218 E(ameter)-.15 E F0 .468(is an array v)3.698 F .468
-(ariable subscripted with)-.25 F F1(@)2.968 E F0(or)2.968 E F1(*)2.969 E
+(ariable subscripted with)-.25 F F2(@)2.968 E F0(or)2.968 E F2(*)2.969 E
F0 2.969(,t)C .469(he case modi\214ca-)-2.969 F .005(tion operation is \
-applied to each member of the array in turn, and the e)144 554.4 R .005
-(xpansion is the resultant list.)-.15 F F1(Command Substitution)87 571.2
-Q F2 1.697(Command substitution)108 583.2 R F0(allo)4.197 E 1.697
+applied to each member of the array in turn, and the e)144 328.8 R .005
+(xpansion is the resultant list.)-.15 F F2(Command Substitution)87 345.6
+Q F1 1.697(Command substitution)108 357.6 R F0(allo)4.197 E 1.697
(ws the output of a command to replace the command name.)-.25 F 1.698
-(There are tw)6.698 F(o)-.1 E(forms:)108 595.2 Q F1($\()144 612 Q F2
-(command)A F1(\))1.666 E F0(or)108 624 Q F1<92>144 636 Q F2(command)A F1
-<92>A(Bash)108 652.8 Q F0 .02(performs the e)2.52 F .02(xpansion by e)
--.15 F -.15(xe)-.15 G(cuting).15 E F2(command)2.519 E F0 .019
-(and replacing the command substitution with the stan-)2.519 F .768
-(dard output of the command, with an)108 664.8 R 3.268(yt)-.15 G .768
+(There are tw)6.698 F(o)-.1 E(forms:)108 369.6 Q F2($\()144 386.4 Q F1
+(command)A F2(\))1.666 E F0(or)108 398.4 Q F2<92>144 410.4 Q F1(command)
+A F2<92>A(Bash)108 427.2 Q F0 .02(performs the e)2.52 F .02
+(xpansion by e)-.15 F -.15(xe)-.15 G(cuting).15 E F1(command)2.519 E F0
+.019(and replacing the command substitution with the stan-)2.519 F .768
+(dard output of the command, with an)108 439.2 R 3.268(yt)-.15 G .768
(railing ne)-3.268 F .768(wlines deleted.)-.25 F .768(Embedded ne)5.768
-F .768(wlines are not deleted, b)-.25 F(ut)-.2 E(the)108 676.8 Q 3.219
+F .768(wlines are not deleted, b)-.25 F(ut)-.2 E(the)108 451.2 Q 3.219
(ym)-.15 G .719(ay be remo)-3.219 F -.15(ve)-.15 G 3.219(dd).15 G .719
(uring w)-3.219 F .719(ord splitting.)-.1 F .719
-(The command substitution)5.719 F F1($\(cat)3.219 E F2(\214le)3.219 E F1
-(\))A F0 .718(can be replaced by the)3.219 F(equi)108 688.8 Q -.25(va)
--.25 G(lent b).25 E(ut f)-.2 E(aster)-.1 E F1($\(<)2.5 E F2(\214le)2.5 E
-F1(\))A F0(.)A 1.724(When the old-style backquote form of substitution \
-is used, backslash retains its literal meaning e)108 705.6 R(xcept)-.15
-E .315(when follo)108 717.6 R .315(wed by)-.25 F F1($)2.815 E F0(,)A F1
-<92>2.815 E F0 2.815(,o)C(r)-2.815 E F1(\\)2.815 E F0 5.315(.T)C .314(h\
-e \214rst backquote not preceded by a backslash terminates the command \
-sub-)-5.315 F 5.766(stitution. When)108 729.6 R 3.266(using the $\()
-5.766 F F2(command).833 E F0 5.766(\)f)1.666 G 3.266
-(orm, all characters between the parentheses mak)-5.766 F 5.767(eu)-.1 G
-5.767(pt)-5.767 G(he)-5.767 E(GNU Bash 4.2)72 768 Q(2012 February 4)
-141.79 E(21)190.95 E 0 Cg EP
-%%Page: 22 22
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(command; none are treated specially)108 84 Q(.)-.65 E .894
-(Command substitutions may be nested.)108 100.8 R 2.494 -.8(To n)5.894 H
+(The command substitution)5.719 F F2($\(cat)3.219 E F1(\214le)3.219 E F2
+(\))A F0 .718(can be replaced by the)3.219 F(equi)108 463.2 Q -.25(va)
+-.25 G(lent b).25 E(ut f)-.2 E(aster)-.1 E F2($\(<)2.5 E F1(\214le)2.5 E
+F2(\))A F0(.)A 1.724(When the old-style backquote form of substitution \
+is used, backslash retains its literal meaning e)108 480 R(xcept)-.15 E
+.315(when follo)108 492 R .315(wed by)-.25 F F2($)2.815 E F0(,)A F2<92>
+2.815 E F0 2.815(,o)C(r)-2.815 E F2(\\)2.815 E F0 5.315(.T)C .314(he \
+\214rst backquote not preceded by a backslash terminates the command su\
+b-)-5.315 F 3.886(stitution. When)108 504 R 1.386(using the $\()3.886 F
+F1(command).833 E F0 3.886(\)f)1.666 G 1.387
+(orm, all characters between the parentheses mak)-3.886 F 3.887(eu)-.1 G
+3.887(pt)-3.887 G 1.387(he com-)-3.887 F
+(mand; none are treated specially)108 516 Q(.)-.65 E .894
+(Command substitutions may be nested.)108 532.8 R 2.494 -.8(To n)5.894 H
.894(est when using the backquoted form, escape the inner back-).8 F
-(quotes with backslashes.)108 112.8 Q .422
-(If the substitution appears within double quotes, w)108 129.6 R .422
+(quotes with backslashes.)108 544.8 Q .422
+(If the substitution appears within double quotes, w)108 561.6 R .422
(ord splitting and pathname e)-.1 F .423(xpansion are not performed)-.15
-F(on the results.)108 141.6 Q/F1 10/Times-Bold@0 SF
-(Arithmetic Expansion)87 158.4 Q F0 1.035(Arithmetic e)108 170.4 R 1.035
-(xpansion allo)-.15 F 1.035(ws the e)-.25 F -.25(va)-.25 G 1.034
-(luation of an arithmetic e).25 F 1.034
-(xpression and the substitution of the result.)-.15 F
-(The format for arithmetic e)108 182.4 Q(xpansion is:)-.15 E F1($\(\()
-144 199.2 Q/F2 10/Times-Italic@0 SF -.2(ex)C(pr).2 E(ession)-.37 E F1
-(\)\))A F0(The)108 216 Q F2 -.2(ex)2.665 G(pr).2 E(ession)-.37 E F0 .165
+F(on the results.)108 573.6 Q F2(Arithmetic Expansion)87 590.4 Q F0
+1.035(Arithmetic e)108 602.4 R 1.035(xpansion allo)-.15 F 1.035
+(ws the e)-.25 F -.25(va)-.25 G 1.034(luation of an arithmetic e).25 F
+1.034(xpression and the substitution of the result.)-.15 F
+(The format for arithmetic e)108 614.4 Q(xpansion is:)-.15 E F2($\(\()
+144 631.2 Q F1 -.2(ex)C(pr).2 E(ession)-.37 E F2(\)\))A F0(The)108 648 Q
+F1 -.2(ex)2.665 G(pr).2 E(ession)-.37 E F0 .165
(is treated as if it were within double quotes, b)2.905 F .166
(ut a double quote inside the parentheses is not)-.2 F 1.075
-(treated specially)108 228 R 6.075(.A)-.65 G 1.074(ll tok)-6.075 F 1.074
+(treated specially)108 660 R 6.075(.A)-.65 G 1.074(ll tok)-6.075 F 1.074
(ens in the e)-.1 F 1.074(xpression under)-.15 F 1.074(go parameter e)
-.18 F 1.074(xpansion, string e)-.15 F 1.074(xpansion, command)-.15 F
-(substitution, and quote remo)108 240 Q -.25(va)-.15 G 2.5
+(substitution, and quote remo)108 672 Q -.25(va)-.15 G 2.5
(l. Arithmetic).25 F -.15(ex)2.5 G(pansions may be nested.).15 E 1.378
-(The e)108 256.8 R -.25(va)-.25 G 1.378
+(The e)108 688.8 R -.25(va)-.25 G 1.378
(luation is performed according to the rules listed belo).25 F 3.878(wu)
-.25 G(nder)-3.878 E/F3 9/Times-Bold@0 SF 1.378(ARITHMETIC EV)3.878 F
(ALU)-1.215 E -.855(AT)-.54 G(ION).855 E/F4 9/Times-Roman@0 SF(.)A F0
-(If)5.879 E F2 -.2(ex)108 268.8 S(pr).2 E(ession)-.37 E F0(is in)2.74 E
--.25(va)-.4 G(lid,).25 E F1(bash)2.5 E F0(prints a message indicating f)
-2.5 E(ailure and no substitution occurs.)-.1 E F1(Pr)87 285.6 Q
-(ocess Substitution)-.18 E F2(Pr)108 297.6 Q .971(ocess substitution)
--.45 F F0 .971(is supported on systems that support named pipes \()3.471
-F F2(FIFOs)A F0 3.47(\)o)C 3.47(rt)-3.47 G(he)-3.47 E F1(/de)3.47 E
-(v/fd)-.15 E F0 .97(method of)3.47 F .021(naming open \214les.)108 309.6
-R .021(It tak)5.021 F .021(es the form of)-.1 F F1(<\()2.521 E F2(list)A
-F1(\)).833 E F0(or)2.521 E F1(>\()2.521 E F2(list)A F1(\)).833 E F0
-5.021(.T)C .021(he process)-5.021 F F2(list)2.521 E F0 .021
-(is run with its input or output con-)2.521 F .059(nected to a)108 321.6
-R F2(FIFO)2.559 E F0 .058(or some \214le in)2.559 F F1(/de)2.558 E(v/fd)
+(If)5.879 E F1 -.2(ex)108 700.8 S(pr).2 E(ession)-.37 E F0(is in)2.74 E
+-.25(va)-.4 G(lid,).25 E F2(bash)2.5 E F0(prints a message indicating f)
+2.5 E(ailure and no substitution occurs.)-.1 E(GNU Bash 4.2)72 768 Q
+(2012 July 5)151.505 E(22)200.665 E 0 Cg EP
+%%Page: 23 23
+%%BeginPageSetup
+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(Pr)87 84 Q(ocess Substitution)-.18 E/F2 10
+/Times-Italic@0 SF(Pr)108 96 Q .971(ocess substitution)-.45 F F0 .971
+(is supported on systems that support named pipes \()3.471 F F2(FIFOs)A
+F0 3.47(\)o)C 3.47(rt)-3.47 G(he)-3.47 E F1(/de)3.47 E(v/fd)-.15 E F0
+.97(method of)3.47 F .021(naming open \214les.)108 108 R .021(It tak)
+5.021 F .021(es the form of)-.1 F F1(<\()2.521 E F2(list)A F1(\)).833 E
+F0(or)2.521 E F1(>\()2.521 E F2(list)A F1(\)).833 E F0 5.021(.T)C .021
+(he process)-5.021 F F2(list)2.521 E F0 .021
+(is run with its input or output con-)2.521 F .059(nected to a)108 120 R
+F2(FIFO)2.559 E F0 .058(or some \214le in)2.559 F F1(/de)2.558 E(v/fd)
-.15 E F0 5.058(.T)C .058(he name of this \214le is passed as an ar)
-5.058 F .058(gument to the current com-)-.18 F .13
-(mand as the result of the e)108 333.6 R 2.63(xpansion. If)-.15 F(the)
-2.63 E F1(>\()2.63 E F2(list)A F1(\)).833 E F0 .13
+(mand as the result of the e)108 132 R 2.63(xpansion. If)-.15 F(the)2.63
+E F1(>\()2.63 E F2(list)A F1(\)).833 E F0 .13
(form is used, writing to the \214le will pro)2.63 F .131
-(vide input for)-.15 F F2(list)2.631 E F0(.)A(If the)108 345.6 Q F1(<\()
+(vide input for)-.15 F F2(list)2.631 E F0(.)A(If the)108 144 Q F1(<\()
2.5 E F2(list)A F1(\)).833 E F0
(form is used, the \214le passed as an ar)2.5 E
(gument should be read to obtain the output of)-.18 E F2(list)2.5 E F0
-(.)A .897(When a)108 362.4 R -.25(va)-.2 G .896(ilable, process substit\
+(.)A .897(When a)108 160.8 R -.25(va)-.2 G .896(ilable, process substit\
ution is performed simultaneously with parameter and v).25 F .896
(ariable e)-.25 F(xpansion,)-.15 E
-(command substitution, and arithmetic e)108 374.4 Q(xpansion.)-.15 E F1
--.75(Wo)87 391.2 S(rd Splitting).75 E F0 1.142
-(The shell scans the results of parameter e)108 403.2 R 1.143
+(command substitution, and arithmetic e)108 172.8 Q(xpansion.)-.15 E F1
+-.75(Wo)87 189.6 S(rd Splitting).75 E F0 1.142
+(The shell scans the results of parameter e)108 201.6 R 1.143
(xpansion, command substitution, and arithmetic e)-.15 F 1.143
-(xpansion that)-.15 F(did not occur within double quotes for)108 415.2 Q
+(xpansion that)-.15 F(did not occur within double quotes for)108 213.6 Q
F2(wor)2.5 E 2.5(ds)-.37 G(plitting)-2.5 E F0(.).22 E .063
-(The shell treats each character of)108 432 R F3(IFS)2.563 E F0 .063
-(as a delimiter)2.313 F 2.563(,a)-.4 G .063
+(The shell treats each character of)108 230.4 R/F3 9/Times-Bold@0 SF
+(IFS)2.563 E F0 .063(as a delimiter)2.313 F 2.563(,a)-.4 G .063
(nd splits the results of the other e)-2.563 F .063(xpansions into w)
--.15 F(ords)-.1 E 1.788(on these characters.)108 444 R(If)6.788 E F3
+-.15 F(ords)-.1 E 1.788(on these characters.)108 242.4 R(If)6.788 E F3
(IFS)4.288 E F0 1.788(is unset, or its v)4.038 F 1.789(alue is e)-.25 F
(xactly)-.15 E F1(<space><tab><newline>)4.289 E F0 4.289(,t)C 1.789
-(he def)-4.289 F 1.789(ault, then)-.1 F .022(sequences of)108 456 R F1
+(he def)-4.289 F 1.789(ault, then)-.1 F .022(sequences of)108 254.4 R F1
(<space>)2.522 E F0(,)A F1(<tab>)2.522 E F0 2.521(,a)C(nd)-2.521 E F1
(<newline>)2.521 E F0 .021(at the be)2.521 F .021
(ginning and end of the results of the pre)-.15 F .021(vious e)-.25 F
-(xpan-)-.15 E .585(sions are ignored, and an)108 468 R 3.086(ys)-.15 G
+(xpan-)-.15 E .585(sions are ignored, and an)108 266.4 R 3.086(ys)-.15 G
.586(equence of)-3.086 F F3(IFS)3.086 E F0 .586
(characters not at the be)2.836 F .586(ginning or end serv)-.15 F .586
-(es to delimit w)-.15 F(ords.)-.1 E(If)108 480 Q F3(IFS)3.617 E F0 1.117
-(has a v)3.367 F 1.117(alue other than the def)-.25 F 1.117
+(es to delimit w)-.15 F(ords.)-.1 E(If)108 278.4 Q F3(IFS)3.617 E F0
+1.117(has a v)3.367 F 1.117(alue other than the def)-.25 F 1.117
(ault, then sequences of the whitespace characters)-.1 F F1(space)3.617
E F0(and)3.617 E F1(tab)3.617 E F0(are)3.617 E .315(ignored at the be)
-108 492 R .315(ginning and end of the w)-.15 F .315
+108 290.4 R .315(ginning and end of the w)-.15 F .315
(ord, as long as the whitespace character is in the v)-.1 F .315
-(alue of)-.25 F F3(IFS)2.815 E F0(\(an)2.566 E F3(IFS)108 504 Q F0 1.054
-(whitespace character\).)3.304 F(An)6.054 E 3.554(yc)-.15 G 1.054
+(alue of)-.25 F F3(IFS)2.815 E F0(\(an)2.566 E F3(IFS)108 302.4 Q F0
+1.054(whitespace character\).)3.304 F(An)6.054 E 3.554(yc)-.15 G 1.054
(haracter in)-3.554 F F3(IFS)3.554 E F0 1.053(that is not)3.303 F F3
(IFS)3.553 E F0 1.053(whitespace, along with an)3.303 F 3.553(ya)-.15 G
(djacent)-3.553 E F3(IFS)3.553 E F0 .331
-(whitespace characters, delimits a \214eld.)108 516 R 2.831(As)5.331 G
+(whitespace characters, delimits a \214eld.)108 314.4 R 2.831(As)5.331 G
.332(equence of)-2.831 F F3(IFS)2.832 E F0 .332
-(whitespace characters is also treated as a delim-)2.582 F(iter)108 528
-Q 5(.I)-.55 G 2.5(ft)-5 G(he v)-2.5 E(alue of)-.25 E F3(IFS)2.5 E F0
-(is null, no w)2.25 E(ord splitting occurs.)-.1 E 1.879
-(Explicit null ar)108 544.8 R 1.879(guments \()-.18 F F1 .833("").833 G
+(whitespace characters is also treated as a delim-)2.582 F(iter)108
+326.4 Q 5(.I)-.55 G 2.5(ft)-5 G(he v)-2.5 E(alue of)-.25 E F3(IFS)2.5 E
+F0(is null, no w)2.25 E(ord splitting occurs.)-.1 E 1.879
+(Explicit null ar)108 343.2 R 1.879(guments \()-.18 F F1 .833("").833 G
F0(or)3.545 E F1 .833<0808>5.211 G F0 4.378(\)a)C 1.878(re retained.)
-4.378 F 1.878(Unquoted implicit null ar)6.878 F 1.878
-(guments, resulting from the)-.18 F -.15(ex)108 556.8 S .176
+(guments, resulting from the)-.18 F -.15(ex)108 355.2 S .176
(pansion of parameters that ha).15 F .476 -.15(ve n)-.2 H 2.676(ov).15 G
.176(alues, are remo)-2.926 F -.15(ve)-.15 G 2.676(d. If).15 F 2.677(ap)
2.677 G .177(arameter with no v)-2.677 F .177(alue is e)-.25 F .177
-(xpanded within)-.15 F(double quotes, a null ar)108 568.8 Q
-(gument results and is retained.)-.18 E(Note that if no e)108 585.6 Q
-(xpansion occurs, no splitting is performed.)-.15 E F1 -.1(Pa)87 602.4 S
-(thname Expansion).1 E F0 .371(After w)108 614.4 R .371
+(xpanded within)-.15 F(double quotes, a null ar)108 367.2 Q
+(gument results and is retained.)-.18 E(Note that if no e)108 384 Q
+(xpansion occurs, no splitting is performed.)-.15 E F1 -.1(Pa)87 400.8 S
+(thname Expansion).1 E F0 .371(After w)108 412.8 R .371
(ord splitting, unless the)-.1 F F1<ad66>2.871 E F0 .371
(option has been set,)2.871 F F1(bash)2.871 E F0 .37(scans each w)2.87 F
.37(ord for the characters)-.1 F F1(*)2.87 E F0(,)A F1(?)2.87 E F0 2.87
(,a)C(nd)-2.87 E F1([)2.87 E F0(.)A .677
-(If one of these characters appears, then the w)108 626.4 R .677
+(If one of these characters appears, then the w)108 424.8 R .677
(ord is re)-.1 F -.05(ga)-.15 G .677(rded as a).05 F F2(pattern)3.177 E
F0 3.177(,a).24 G .678(nd replaced with an alphabeti-)-3.177 F .562
-(cally sorted list of \214lenames matching the pattern \(see)108 638.4 R
+(cally sorted list of \214lenames matching the pattern \(see)108 436.8 R
F3 -.09(Pa)3.062 G(tter).09 E 2.812(nM)-.135 G(atching)-2.812 E F0(belo)
2.812 E 3.062(w\). If)-.25 F .561(no matching \214lenames)3.061 F .008
-(are found, and the shell option)108 650.4 R F1(nullglob)2.508 E F0 .008
+(are found, and the shell option)108 448.8 R F1(nullglob)2.508 E F0 .008
(is not enabled, the w)2.508 F .009(ord is left unchanged.)-.1 F .009
(If the)5.009 F F1(nullglob)2.509 E F0 .009(option is)2.509 F .443
-(set, and no matches are found, the w)108 662.4 R .443(ord is remo)-.1 F
+(set, and no matches are found, the w)108 460.8 R .443(ord is remo)-.1 F
-.15(ve)-.15 G 2.943(d. If).15 F(the)2.942 E F1(failglob)2.942 E F0 .442
(shell option is set, and no matches are)2.942 F 1.38
-(found, an error message is printed and the command is not e)108 674.4 R
+(found, an error message is printed and the command is not e)108 472.8 R
-.15(xe)-.15 G 3.88(cuted. If).15 F 1.38(the shell option)3.88 F F1
(nocaseglob)3.88 E F0(is)3.88 E .104
-(enabled, the match is performed without re)108 686.4 R -.05(ga)-.15 G
+(enabled, the match is performed without re)108 484.8 R -.05(ga)-.15 G
.104(rd to the case of alphabetic characters.).05 F .103
-(When a pattern is used)5.103 F .377(for pathname e)108 698.4 R .377
+(When a pattern is used)5.103 F .377(for pathname e)108 496.8 R .377
(xpansion, the character)-.15 F F1 -.63(``)2.878 G -.55(.').63 G(')-.08
E F0 .378(at the start of a name or immediately follo)5.378 F .378
-(wing a slash must be)-.25 F .579(matched e)108 710.4 R(xplicitly)-.15 E
+(wing a slash must be)-.25 F .579(matched e)108 508.8 R(xplicitly)-.15 E
3.079(,u)-.65 G .579(nless the shell option)-3.079 F F1(dotglob)3.079 E
F0 .579(is set.)3.079 F .578
(When matching a pathname, the slash character)5.579 F 1.788(must al)108
-722.4 R -.1(wa)-.1 G 1.788(ys be matched e).1 F(xplicitly)-.15 E 6.788
+520.8 R -.1(wa)-.1 G 1.788(ys be matched e).1 F(xplicitly)-.15 E 6.788
(.I)-.65 G 4.288(no)-6.788 G 1.788(ther cases, the)-4.288 F F1 -.63(``)
4.288 G -.55(.').63 G(')-.08 E F0 1.788
(character is not treated specially)6.788 F 6.789(.S)-.65 G 1.789
-(ee the)-6.789 F(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(22)
-190.95 E 0 Cg EP
-%%Page: 23 23
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E .166(description of)108 84 R/F1 10/Times-Bold@0 SF(shopt)2.666 E
-F0(belo)2.666 E 2.666(wu)-.25 G(nder)-2.666 E/F2 9/Times-Bold@0 SF .166
-(SHELL B)2.666 F(UIL)-.09 E .165(TIN COMMANDS)-.828 F F0 .165
-(for a description of the)2.415 F F1(nocaseglob)2.665 E F0(,)A F1(null-)
-2.665 E(glob)108 96 Q F0(,)A F1(failglob)2.5 E F0 2.5(,a)C(nd)-2.5 E F1
-(dotglob)2.5 E F0(shell options.)2.5 E(The)108 112.8 Q F2(GLOBIGNORE)
-2.785 E F0 .285(shell v)2.535 F .285
+(ee the)-6.789 F .166(description of)108 532.8 R F1(shopt)2.666 E F0
+(belo)2.666 E 2.666(wu)-.25 G(nder)-2.666 E F3 .166(SHELL B)2.666 F(UIL)
+-.09 E .165(TIN COMMANDS)-.828 F F0 .165(for a description of the)2.415
+F F1(nocaseglob)2.665 E F0(,)A F1(null-)2.665 E(glob)108 544.8 Q F0(,)A
+F1(failglob)2.5 E F0 2.5(,a)C(nd)-2.5 E F1(dotglob)2.5 E F0
+(shell options.)2.5 E(The)108 561.6 Q F3(GLOBIGNORE)2.785 E F0 .285
+(shell v)2.535 F .285
(ariable may be used to restrict the set of \214lenames matching a)-.25
-F/F3 10/Times-Italic@0 SF(pattern)2.786 E F0 5.286(.I).24 G(f)-5.286 E
-F2(GLO-)2.786 E(BIGNORE)108 124.8 Q F0 2.316(is set, each matching \214\
-lename that also matches one of the patterns in)4.566 F F2(GLOBIGNORE)
-4.816 E F0(is)4.565 E(remo)108 136.8 Q -.15(ve)-.15 G 2.659(df).15 G
-.159(rom the list of matches.)-2.659 F .16(The \214lenames)5.16 F F1
--.63(``)2.66 G -.55(.').63 G(')-.08 E F0(and)5.16 E F1 -.63(``)2.66 G
-(..).63 E -.63('')-.55 G F0 .16(are al)5.79 F -.1(wa)-.1 G .16
-(ys ignored when).1 F F2(GLOBIGNORE)2.66 E F0(is)2.41 E .046
-(set and not null.)108 148.8 R(Ho)5.046 E(we)-.25 E -.15(ve)-.25 G .846
--.4(r, s).15 H(etting).4 E F2(GLOBIGNORE)2.546 E F0 .046
-(to a non-null v)2.296 F .045(alue has the ef)-.25 F .045
-(fect of enabling the)-.25 F F1(dotglob)2.545 E F0 .786
-(shell option, so all other \214lenames be)108 160.8 R .787
-(ginning with a)-.15 F F1 -.63(``)3.287 G -.55(.').63 G(')-.08 E F0 .787
-(will match.)5.787 F 2.387 -.8(To g)5.787 H .787(et the old beha).8 F
-.787(vior of ignoring)-.2 F .642(\214lenames be)108 172.8 R .642
+F F2(pattern)2.786 E F0 5.286(.I).24 G(f)-5.286 E F3(GLO-)2.786 E
+(BIGNORE)108 573.6 Q F0 2.316(is set, each matching \214lename that als\
+o matches one of the patterns in)4.566 F F3(GLOBIGNORE)4.816 E F0(is)
+4.565 E(remo)108 585.6 Q -.15(ve)-.15 G 2.659(df).15 G .159
+(rom the list of matches.)-2.659 F .16(The \214lenames)5.16 F F1 -.63
+(``)2.66 G -.55(.').63 G(')-.08 E F0(and)5.16 E F1 -.63(``)2.66 G(..).63
+E -.63('')-.55 G F0 .16(are al)5.79 F -.1(wa)-.1 G .16(ys ignored when)
+.1 F F3(GLOBIGNORE)2.66 E F0(is)2.41 E .046(set and not null.)108 597.6
+R(Ho)5.046 E(we)-.25 E -.15(ve)-.25 G .846 -.4(r, s).15 H(etting).4 E F3
+(GLOBIGNORE)2.546 E F0 .046(to a non-null v)2.296 F .045
+(alue has the ef)-.25 F .045(fect of enabling the)-.25 F F1(dotglob)
+2.545 E F0 .786(shell option, so all other \214lenames be)108 609.6 R
+.787(ginning with a)-.15 F F1 -.63(``)3.287 G -.55(.').63 G(')-.08 E F0
+.787(will match.)5.787 F 2.387 -.8(To g)5.787 H .787(et the old beha).8
+F .787(vior of ignoring)-.2 F .642(\214lenames be)108 621.6 R .642
(ginning with a)-.15 F F1 -.63(``)3.142 G -.55(.').63 G(')-.08 E F0
3.142(,m)C(ak)-3.142 E(e)-.1 E F1 -.63(``)3.142 G(.*').63 E(')-.63 E F0
-.642(one of the patterns in)5.642 F F2(GLOBIGNORE)3.141 E/F4 9
+.642(one of the patterns in)5.642 F F3(GLOBIGNORE)3.141 E/F4 9
/Times-Roman@0 SF(.)A F0(The)5.141 E F1(dotglob)3.141 E F0 .641
-(option is)3.141 F(disabled when)108 184.8 Q F2(GLOBIGNORE)2.5 E F0
-(is unset.)2.25 E F1 -.1(Pa)108 201.6 S(tter).1 E 2.5(nM)-.15 G(atching)
--2.5 E F0(An)108 218.4 Q 3.138(yc)-.15 G .638(haracter that appears in \
+(option is)3.141 F(disabled when)108 633.6 Q F3(GLOBIGNORE)2.5 E F0
+(is unset.)2.25 E F1 -.1(Pa)108 650.4 S(tter).1 E 2.5(nM)-.15 G(atching)
+-2.5 E F0(An)108 667.2 Q 3.138(yc)-.15 G .638(haracter that appears in \
a pattern, other than the special pattern characters described belo)
--3.138 F 1.938 -.65(w, m)-.25 H(atches).65 E 3.62(itself. The)108 230.4
+-3.138 F 1.938 -.65(w, m)-.25 H(atches).65 E 3.62(itself. The)108 679.2
R 1.12(NUL character may not occur in a pattern.)3.62 F 3.62(Ab)6.12 G
1.12(ackslash escapes the follo)-3.62 F 1.12(wing character; the)-.25 F
-.576(escaping backslash is discarded when matching.)108 242.4 R .576
+.576(escaping backslash is discarded when matching.)108 691.2 R .576
(The special pattern characters must be quoted if the)5.576 F 3.076(ya)
--.15 G(re)-3.076 E(to be matched literally)108 254.4 Q(.)-.65 E
-(The special pattern characters ha)108 271.2 Q .3 -.15(ve t)-.2 H
-(he follo).15 E(wing meanings:)-.25 E F1(*)144 288 Q F0 .377(Matches an)
-31 F 2.877(ys)-.15 G .376(tring, including the null string.)-2.877 F
-.376(When the)5.376 F F1(globstar)2.876 E F0 .376
-(shell option is enabled,)2.876 F(and)180 300 Q F1(*)3.275 E F0 .775
-(is used in a pathname e)3.275 F .775(xpansion conte)-.15 F .775(xt, tw)
--.15 F 3.275(oa)-.1 G(djacent)-3.275 E F1(*)3.275 E F0 3.275(su)C .775
-(sed as a single pattern)-3.275 F 1.058(will match all \214les and zero\
- or more directories and subdirectories.)180 312 R 1.058(If follo)6.058
-F 1.058(wed by a)-.25 F F1(/)3.558 E F0(,)A(tw)180 324 Q 2.5(oa)-.1 G
-(djacent)-2.5 E F1(*)2.5 E F0 2.5(sw)C
-(ill match only directories and subdirectories.)-2.5 E F1(?)144 336 Q F0
-(Matches an)31 E 2.5(ys)-.15 G(ingle character)-2.5 E(.)-.55 E F1([...])
-144 348 Q F0 .578(Matches an)21.84 F 3.078(yo)-.15 G .578
+-.15 G(re)-3.076 E(to be matched literally)108 703.2 Q(.)-.65 E
+(The special pattern characters ha)108 720 Q .3 -.15(ve t)-.2 H
+(he follo).15 E(wing meanings:)-.25 E(GNU Bash 4.2)72 768 Q(2012 July 5)
+151.505 E(23)200.665 E 0 Cg EP
+%%Page: 24 24
+%%BeginPageSetup
+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(*)144 84 Q F0 .377(Matches an)31 F 2.877
+(ys)-.15 G .376(tring, including the null string.)-2.877 F .376
+(When the)5.376 F F1(globstar)2.876 E F0 .376(shell option is enabled,)
+2.876 F(and)180 96 Q F1(*)3.275 E F0 .775(is used in a pathname e)3.275
+F .775(xpansion conte)-.15 F .775(xt, tw)-.15 F 3.275(oa)-.1 G(djacent)
+-3.275 E F1(*)3.275 E F0 3.275(su)C .775(sed as a single pattern)-3.275
+F 1.058(will match all \214les and zero or more directories and subdire\
+ctories.)180 108 R 1.058(If follo)6.058 F 1.058(wed by a)-.25 F F1(/)
+3.558 E F0(,)A(tw)180 120 Q 2.5(oa)-.1 G(djacent)-2.5 E F1(*)2.5 E F0
+2.5(sw)C(ill match only directories and subdirectories.)-2.5 E F1(?)144
+132 Q F0(Matches an)31 E 2.5(ys)-.15 G(ingle character)-2.5 E(.)-.55 E
+F1([...])144 144 Q F0 .578(Matches an)21.84 F 3.078(yo)-.15 G .578
(ne of the enclosed characters.)-3.078 F 3.079(Ap)5.579 G .579
(air of characters separated by a h)-3.079 F(yphen)-.05 E .537
-(denotes a)180 360 R F3 -.15(ra)3.037 G(ng).15 E 3.037(ee)-.1 G(xpr)
--3.237 E(ession)-.37 E F0 3.037(;a)C .837 -.15(ny c)-3.037 H .537
-(haracter that sorts between those tw).15 F 3.036(oc)-.1 G .536
-(haracters, inclu-)-3.036 F(si)180 372 Q -.15(ve)-.25 G 3.712(,u).15 G
-1.212(sing the current locale')-3.712 F 3.712(sc)-.55 G 1.212
+(denotes a)180 156 R/F2 10/Times-Italic@0 SF -.15(ra)3.037 G(ng).15 E
+3.037(ee)-.1 G(xpr)-3.237 E(ession)-.37 E F0 3.037(;a)C .837 -.15(ny c)
+-3.037 H .537(haracter that sorts between those tw).15 F 3.036(oc)-.1 G
+.536(haracters, inclu-)-3.036 F(si)180 168 Q -.15(ve)-.25 G 3.712(,u).15
+G 1.212(sing the current locale')-3.712 F 3.712(sc)-.55 G 1.212
(ollating sequence and character set, is matched.)-3.712 F 1.213(If the)
-6.213 F 1.124(\214rst character follo)180 384 R 1.124(wing the)-.25 F F1
+6.213 F 1.124(\214rst character follo)180 180 R 1.124(wing the)-.25 F F1
([)3.624 E F0 1.124(is a)3.624 F F1(!)3.624 E F0 1.124(or a)6.124 F F1
(^)3.623 E F0 1.123(then an)3.623 F 3.623(yc)-.15 G 1.123
(haracter not enclosed is matched.)-3.623 F .894
-(The sorting order of characters in range e)180 396 R .895
+(The sorting order of characters in range e)180 192 R .895
(xpressions is determined by the current locale)-.15 F .376(and the v)
-180 408 R .376(alues of the)-.25 F F2(LC_COLLA)2.875 E(TE)-.855 E F0(or)
-2.625 E F2(LC_ALL)2.875 E F0 .375(shell v)2.625 F .375
+180 204 R .376(alues of the)-.25 F/F3 9/Times-Bold@0 SF(LC_COLLA)2.875 E
+(TE)-.855 E F0(or)2.625 E F3(LC_ALL)2.875 E F0 .375(shell v)2.625 F .375
(ariables, if set.)-.25 F 1.975 -.8(To o)5.375 H .375(btain the tra-).8
-F .067(ditional interpretation of range e)180 420 R .067
+F .067(ditional interpretation of range e)180 216 R .067
(xpressions, where)-.15 F F1([a\255d])2.567 E F0 .068(is equi)2.568 F
-.25(va)-.25 G .068(lent to).25 F F1([abcd])2.568 E F0 2.568(,s)C .068
-(et v)-2.568 F(alue)-.25 E .157(of the)180 432 R F1(LC_ALL)2.657 E F0
+(et v)-2.568 F(alue)-.25 E .157(of the)180 228 R F1(LC_ALL)2.657 E F0
.157(shell v)2.657 F .157(ariable to)-.25 F F1(C)2.657 E F0 2.657(,o)C
2.657(re)-2.657 G .157(nable the)-2.657 F F1(globasciiranges)2.657 E F0
.156(shell option.)2.656 F(A)5.156 E F1<ad>2.656 E F0(may)2.656 E .193(\
be matched by including it as the \214rst or last character in the set.)
-180 444 R(A)5.193 E F1(])2.693 E F0 .194(may be matched by)2.693 F
-(including it as the \214rst character in the set.)180 456 Q -.4(Wi)180
-474 S(thin).4 E F1([)3.071 E F0(and)3.071 E F1(])3.071 E F0(,)A F3 -.15
+180 240 R(A)5.193 E F1(])2.693 E F0 .194(may be matched by)2.693 F
+(including it as the \214rst character in the set.)180 252 Q -.4(Wi)180
+270 S(thin).4 E F1([)3.071 E F0(and)3.071 E F1(])3.071 E F0(,)A F2 -.15
(ch)3.071 G(ar).15 E .571(acter classes)-.15 F F0 .571
-(can be speci\214ed using the syntax)3.071 F F1([:)3.07 E F3(class)A F1
-(:])A F0 3.07(,w)C(here)-3.07 E F3(class)3.07 E F0(is one of the follo)
-180 486 Q(wing classes de\214ned in the POSIX standard:)-.25 E F1 8.173
-(alnum alpha ascii blank cntrl digit graph lo)180 498 R 8.173
-(wer print punct space)-.1 F 5(upper w)180 510 R 5(ord xdigit)-.1 F F0
-4.29(Ac)180 522 S 1.789(haracter class matches an)-4.29 F 4.289(yc)-.15
+(can be speci\214ed using the syntax)3.071 F F1([:)3.07 E F2(class)A F1
+(:])A F0 3.07(,w)C(here)-3.07 E F2(class)3.07 E F0(is one of the follo)
+180 282 Q(wing classes de\214ned in the POSIX standard:)-.25 E F1 8.173
+(alnum alpha ascii blank cntrl digit graph lo)180 294 R 8.173
+(wer print punct space)-.1 F 5(upper w)180 306 R 5(ord xdigit)-.1 F F0
+4.29(Ac)180 318 S 1.789(haracter class matches an)-4.29 F 4.289(yc)-.15
G 1.789(haracter belonging to that class.)-4.289 F(The)6.789 E F1 -.1
(wo)4.289 G(rd).1 E F0(character)4.289 E
-(class matches letters, digits, and the character _.)180 534 Q -.4(Wi)
-180 552 S(thin).4 E F1([)4.536 E F0(and)4.536 E F1(])4.536 E F0 4.536
-(,a)C(n)-4.536 E F3 2.036(equivalence class)4.536 F F0 2.037
-(can be speci\214ed using the syntax)4.536 F F1([=)4.537 E F3(c)A F1(=])
+(class matches letters, digits, and the character _.)180 330 Q -.4(Wi)
+180 348 S(thin).4 E F1([)4.536 E F0(and)4.536 E F1(])4.536 E F0 4.536
+(,a)C(n)-4.536 E F2 2.036(equivalence class)4.536 F F0 2.037
+(can be speci\214ed using the syntax)4.536 F F1([=)4.537 E F2(c)A F1(=])
A F0 4.537(,w)C(hich)-4.537 E .125(matches all characters with the same\
- collation weight \(as de\214ned by the current locale\) as)180 564 R
-(the character)180 576 Q F3(c)2.5 E F0(.)A -.4(Wi)180 594 S(thin).4 E F1
+ collation weight \(as de\214ned by the current locale\) as)180 360 R
+(the character)180 372 Q F2(c)2.5 E F0(.)A -.4(Wi)180 390 S(thin).4 E F1
([)2.5 E F0(and)2.5 E F1(])2.5 E F0 2.5(,t)C(he syntax)-2.5 E F1([.)2.5
-E F3(symbol)A F1(.])A F0(matches the collating symbol)2.5 E F3(symbol)
-2.5 E F0(.)A .704(If the)108 610.8 R F1(extglob)3.204 E F0 .705
+E F2(symbol)A F1(.])A F0(matches the collating symbol)2.5 E F2(symbol)
+2.5 E F0(.)A .704(If the)108 406.8 R F1(extglob)3.204 E F0 .705
(shell option is enabled using the)3.204 F F1(shopt)3.205 E F0 -.2(bu)
3.205 G .705(iltin, se).2 F -.15(ve)-.25 G .705(ral e).15 F .705
(xtended pattern matching operators)-.15 F .256(are recognized.)108
-622.8 R .256(In the follo)5.256 F .256(wing description, a)-.25 F F3
+418.8 R .256(In the follo)5.256 F .256(wing description, a)-.25 F F2
(pattern-list)2.755 E F0 .255
(is a list of one or more patterns separated by a)2.755 F F1(|)2.755 E
F0(.)A(Composite patterns may be formed using one or more of the follo)
-108 634.8 Q(wing sub-patterns:)-.25 E F1(?\()144 658.8 Q F3
+108 430.8 Q(wing sub-patterns:)-.25 E F1(?\()144 454.8 Q F2
(pattern-list).833 E F1(\)).833 E F0
-(Matches zero or one occurrence of the gi)180 670.8 Q -.15(ve)-.25 G 2.5
-(np).15 G(atterns)-2.5 E F1(*\()144 682.8 Q F3(pattern-list).833 E F1
-(\)).833 E F0(Matches zero or more occurrences of the gi)180 694.8 Q
--.15(ve)-.25 G 2.5(np).15 G(atterns)-2.5 E F1(+\()144 706.8 Q F3
+(Matches zero or one occurrence of the gi)180 466.8 Q -.15(ve)-.25 G 2.5
+(np).15 G(atterns)-2.5 E F1(*\()144 478.8 Q F2(pattern-list).833 E F1
+(\)).833 E F0(Matches zero or more occurrences of the gi)180 490.8 Q
+-.15(ve)-.25 G 2.5(np).15 G(atterns)-2.5 E F1(+\()144 502.8 Q F2
(pattern-list).833 E F1(\)).833 E F0
-(Matches one or more occurrences of the gi)180 718.8 Q -.15(ve)-.25 G
-2.5(np).15 G(atterns)-2.5 E(GNU Bash 4.2)72 768 Q(2012 February 4)141.79
-E(23)190.95 E 0 Cg EP
-%%Page: 24 24
-%%BeginPageSetup
-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(@\()144 84 Q/F2 10/Times-Italic@0 SF
-(pattern-list).833 E F1(\)).833 E F0(Matches one of the gi)180 96 Q -.15
-(ve)-.25 G 2.5(np).15 G(atterns)-2.5 E F1(!\()144 108 Q F2(pattern-list)
-.833 E F1(\)).833 E F0(Matches an)180 120 Q(ything e)-.15 E
-(xcept one of the gi)-.15 E -.15(ve)-.25 G 2.5(np).15 G(atterns)-2.5 E
-F1(Quote Remo)87 136.8 Q -.1(va)-.1 G(l).1 E F0 1.112
-(After the preceding e)108 148.8 R 1.112
+(Matches one or more occurrences of the gi)180 514.8 Q -.15(ve)-.25 G
+2.5(np).15 G(atterns)-2.5 E F1(@\()144 526.8 Q F2(pattern-list).833 E F1
+(\)).833 E F0(Matches one of the gi)180 538.8 Q -.15(ve)-.25 G 2.5(np)
+.15 G(atterns)-2.5 E F1(!\()144 550.8 Q F2(pattern-list).833 E F1(\))
+.833 E F0(Matches an)180 562.8 Q(ything e)-.15 E(xcept one of the gi)
+-.15 E -.15(ve)-.25 G 2.5(np).15 G(atterns)-2.5 E F1(Quote Remo)87 579.6
+Q -.1(va)-.1 G(l).1 E F0 1.112(After the preceding e)108 591.6 R 1.112
(xpansions, all unquoted occurrences of the characters)-.15 F F1(\\)
3.613 E F0(,)A F1<08>3.613 E F0 3.613(,a)C(nd)-3.613 E F1(")4.446 E F0
-1.113(that did not result)4.446 F(from one of the abo)108 160.8 Q .3
--.15(ve ex)-.15 H(pansions are remo).15 E -.15(ve)-.15 G(d.).15 E/F3
-10.95/Times-Bold@0 SF(REDIRECTION)72 177.6 Q F0 .545
-(Before a command is e)108 189.6 R -.15(xe)-.15 G .545
+1.113(that did not result)4.446 F(from one of the abo)108 603.6 Q .3
+-.15(ve ex)-.15 H(pansions are remo).15 E -.15(ve)-.15 G(d.).15 E/F4
+10.95/Times-Bold@0 SF(REDIRECTION)72 620.4 Q F0 .545
+(Before a command is e)108 632.4 R -.15(xe)-.15 G .545
(cuted, its input and output may be).15 F F2 -.37(re)3.045 G(dir).37 E
(ected)-.37 E F0 .545(using a special notation interpreted)3.815 F .405
-(by the shell.)108 201.6 R .405(Redirection allo)5.405 F .405(ws comman\
+(by the shell.)108 644.4 R .405(Redirection allo)5.405 F .405(ws comman\
ds' \214le handles to be duplicated, opened, closed, made to refer to)
--.25 F(dif)108 213.6 Q 1.02(ferent \214les, and can change the \214les \
+-.25 F(dif)108 656.4 Q 1.02(ferent \214les, and can change the \214les \
the command reads from and writes to.)-.25 F 1.019
(Redirection may also be)6.019 F .215
-(used to modify \214le handles in the current shell e)108 225.6 R -.15
+(used to modify \214le handles in the current shell e)108 668.4 R -.15
(xe)-.15 G .215(cution en).15 F 2.715(vironment. The)-.4 F(follo)2.715 E
.215(wing redirection operators)-.25 F .876(may precede or appear an)108
-237.6 R .876(ywhere within a)-.15 F F2 .875(simple command)3.715 F F0
+680.4 R .876(ywhere within a)-.15 F F2 .875(simple command)3.715 F F0
.875(or may follo)4.145 F 3.375(wa)-.25 G F2(command)A F0 5.875(.R).77 G
-.875(edirections are)-5.875 F(processed in the order the)108 249.6 Q 2.5
+.875(edirections are)-5.875 F(processed in the order the)108 692.4 Q 2.5
(ya)-.15 G(ppear)-2.5 E 2.5(,f)-.4 G(rom left to right.)-2.5 E .771(Eac\
h redirection that may be preceded by a \214le descriptor number may in\
-stead be preceded by a w)108 266.4 R .772(ord of)-.1 F .293(the form {)
-108 278.4 R F2(varname)A F0 2.793(}. In)B .293
+stead be preceded by a w)108 709.2 R .772(ord of)-.1 F .293(the form {)
+108 721.2 R F2(varname)A F0 2.793(}. In)B .293
(this case, for each redirection operator e)2.793 F .293
-(xcept >&- and <&-, the shell will allocate)-.15 F 3.179<618c>108 290.4
-S .679(le descriptor greater than or equal to 10 and assign it to)-3.179
-F F2(varname)3.179 E F0 5.679(.I)C 3.179(f>)-5.679 G .679
-(&- or <&- is preceded by {)-3.179 F F2(var)A(-)-.2 E(name)108 302.4 Q
-F0(}, the v)A(alue of)-.25 E F2(varname)2.5 E F0
+(xcept >&- and <&-, the shell will allocate)-.15 F(GNU Bash 4.2)72 768 Q
+(2012 July 5)151.505 E(24)200.665 E 0 Cg EP
+%%Page: 25 25
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E 3.179<618c>108 84 S .679
+(le descriptor greater than or equal to 10 and assign it to)-3.179 F/F1
+10/Times-Italic@0 SF(varname)3.179 E F0 5.679(.I)C 3.179(f>)-5.679 G
+.679(&- or <&- is preceded by {)-3.179 F F1(var)A(-)-.2 E(name)108 96 Q
+F0(}, the v)A(alue of)-.25 E F1(varname)2.5 E F0
(de\214nes the \214le descriptor to close.)2.5 E .284(In the follo)108
-319.2 R .283(wing descriptions, if the \214le descriptor number is omit\
+112.8 R .283(wing descriptions, if the \214le descriptor number is omit\
ted, and the \214rst character of the redirect-)-.25 F .512
-(ion operator is)108 331.2 R F1(<)3.012 E F0 3.012(,t)C .512
+(ion operator is)108 124.8 R/F2 10/Times-Bold@0 SF(<)3.012 E F0 3.012
+(,t)C .512
(he redirection refers to the standard input \(\214le descriptor 0\).)
-3.012 F .512(If the \214rst character of the)5.512 F
-(redirection operator is)108 343.2 Q F1(>)2.5 E F0 2.5(,t)C
+(redirection operator is)108 136.8 Q F2(>)2.5 E F0 2.5(,t)C
(he redirection refers to the standard output \(\214le descriptor 1\).)
--2.5 E .825(The w)108 360 R .825(ord follo)-.1 F .824
+-2.5 E .825(The w)108 153.6 R .825(ord follo)-.1 F .824
(wing the redirection operator in the follo)-.25 F .824
(wing descriptions, unless otherwise noted, is sub-)-.25 F .462
-(jected to brace e)108 372 R .462(xpansion, tilde e)-.15 F .463
+(jected to brace e)108 165.6 R .462(xpansion, tilde e)-.15 F .463
(xpansion, parameter and v)-.15 F .463(ariable e)-.25 F .463
-(xpansion, command substitution, arith-)-.15 F .867(metic e)108 384 R
+(xpansion, command substitution, arith-)-.15 F .867(metic e)108 177.6 R
.867(xpansion, quote remo)-.15 F -.25(va)-.15 G .867(l, pathname e).25 F
.867(xpansion, and w)-.15 F .867(ord splitting.)-.1 F .867(If it e)5.867
-F .866(xpands to more than one)-.15 F -.1(wo)108 396 S(rd,).1 E F1(bash)
-2.5 E F0(reports an error)2.5 E(.)-.55 E
-(Note that the order of redirections is signi\214cant.)108 412.8 Q -.15
-(Fo)5 G 2.5(re).15 G(xample, the command)-2.65 E(ls)144 429.6 Q F1(>)2.5
-E F0(dirlist 2)2.5 E F1(>&)A F0(1)A
-(directs both standard output and standard error to the \214le)108 446.4
-Q F2(dirlist)2.5 E F0 2.5(,w).68 G(hile the command)-2.5 E(ls 2)144
-463.2 Q F1(>&)A F0(1)A F1(>)2.5 E F0(dirlist)2.5 E .527
-(directs only the standard output to \214le)108 480 R F2(dirlist)3.027 E
-F0 3.027(,b).68 G .527(ecause the standard error w)-3.027 F .527
+F .866(xpands to more than one)-.15 F -.1(wo)108 189.6 S(rd,).1 E F2
+(bash)2.5 E F0(reports an error)2.5 E(.)-.55 E
+(Note that the order of redirections is signi\214cant.)108 206.4 Q -.15
+(Fo)5 G 2.5(re).15 G(xample, the command)-2.65 E(ls)144 223.2 Q F2(>)2.5
+E F0(dirlist 2)2.5 E F2(>&)A F0(1)A
+(directs both standard output and standard error to the \214le)108 240 Q
+F1(dirlist)2.5 E F0 2.5(,w).68 G(hile the command)-2.5 E(ls 2)144 256.8
+Q F2(>&)A F0(1)A F2(>)2.5 E F0(dirlist)2.5 E .527
+(directs only the standard output to \214le)108 273.6 R F1(dirlist)3.027
+E F0 3.027(,b).68 G .527(ecause the standard error w)-3.027 F .527
(as duplicated from the standard)-.1 F
-(output before the standard output w)108 492 Q(as redirected to)-.1 E F2
-(dirlist)2.5 E F0(.).68 E F1(Bash)108 508.8 Q F0 .599(handles se)3.099 F
--.15(ve)-.25 G .599(ral \214lenames specially when the).15 F 3.099(ya)
+(output before the standard output w)108 285.6 Q(as redirected to)-.1 E
+F1(dirlist)2.5 E F0(.).68 E F2(Bash)108 302.4 Q F0 .599(handles se)3.099
+F -.15(ve)-.25 G .599(ral \214lenames specially when the).15 F 3.099(ya)
-.15 G .598(re used in redirections, as described in the follo)-3.099 F
-(wing)-.25 E(table:)108 520.8 Q F1(/de)144 537.6 Q(v/fd/)-.15 E F2(fd)A
-F0(If)180 549.6 Q F2(fd)2.5 E F0(is a v)2.5 E(alid inte)-.25 E(ger)-.15
-E 2.5<2c8c>-.4 G(le descriptor)-2.5 E F2(fd)2.5 E F0(is duplicated.)2.5
-E F1(/de)144 561.6 Q(v/stdin)-.15 E F0(File descriptor 0 is duplicated.)
-180 573.6 Q F1(/de)144 585.6 Q(v/stdout)-.15 E F0
-(File descriptor 1 is duplicated.)180 597.6 Q F1(/de)144 609.6 Q
-(v/stderr)-.15 E F0(File descriptor 2 is duplicated.)180 621.6 Q F1(/de)
-144 633.6 Q(v/tcp/)-.15 E F2(host)A F1(/)A F2(port)A F0(If)180 645.6 Q
-F2(host)2.996 E F0 .496(is a v)2.996 F .496
-(alid hostname or Internet address, and)-.25 F F2(port)2.997 E F0 .497
+(wing)-.25 E(table:)108 314.4 Q F2(/de)144 331.2 Q(v/fd/)-.15 E F1(fd)A
+F0(If)180 343.2 Q F1(fd)2.5 E F0(is a v)2.5 E(alid inte)-.25 E(ger)-.15
+E 2.5<2c8c>-.4 G(le descriptor)-2.5 E F1(fd)2.5 E F0(is duplicated.)2.5
+E F2(/de)144 355.2 Q(v/stdin)-.15 E F0(File descriptor 0 is duplicated.)
+180 367.2 Q F2(/de)144 379.2 Q(v/stdout)-.15 E F0
+(File descriptor 1 is duplicated.)180 391.2 Q F2(/de)144 403.2 Q
+(v/stderr)-.15 E F0(File descriptor 2 is duplicated.)180 415.2 Q F2(/de)
+144 427.2 Q(v/tcp/)-.15 E F1(host)A F2(/)A F1(port)A F0(If)180 439.2 Q
+F1(host)2.996 E F0 .496(is a v)2.996 F .496
+(alid hostname or Internet address, and)-.25 F F1(port)2.997 E F0 .497
(is an inte)2.997 F .497(ger port number or ser)-.15 F(-)-.2 E
-(vice name,)180 657.6 Q F1(bash)2.5 E F0
-(attempts to open a TCP connection to the corresponding sock)2.5 E(et.)
--.1 E F1(/de)144 669.6 Q(v/udp/)-.15 E F2(host)A F1(/)A F2(port)A F0(If)
-180 681.6 Q F2(host)2.997 E F0 .497(is a v)2.997 F .497
-(alid hostname or Internet address, and)-.25 F F2(port)2.996 E F0 .496
+(vice name,)180 451.2 Q F2(bash)2.5 E F0
+(attempts to open the corresponding TCP sock)2.5 E(et.)-.1 E F2(/de)144
+463.2 Q(v/udp/)-.15 E F1(host)A F2(/)A F1(port)A F0(If)180 475.2 Q F1
+(host)2.997 E F0 .497(is a v)2.997 F .497
+(alid hostname or Internet address, and)-.25 F F1(port)2.996 E F0 .496
(is an inte)2.996 F .496(ger port number or ser)-.15 F(-)-.2 E
-(vice name,)180 693.6 Q F1(bash)2.5 E F0
-(attempts to open a UDP connection to the corresponding sock)2.5 E(et.)
--.1 E 2.5(Af)108 710.4 S
-(ailure to open or create a \214le causes the redirection to f)-2.6 E
-(ail.)-.1 E .946(Redirections using \214le descriptors greater than 9 s\
-hould be used with care, as the)108 727.2 R 3.447(ym)-.15 G .947
-(ay con\215ict with \214le)-3.447 F(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(24)190.95 E 0 Cg EP
-%%Page: 25 25
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(descriptors the shell uses internally)108 84 Q(.)-.65 E/F1 10
-/Times-Bold@0 SF(Redir)87 100.8 Q(ecting Input)-.18 E F0 .391
+(vice name,)180 487.2 Q F2(bash)2.5 E F0
+(attempts to open the corresponding UDP sock)2.5 E(et.)-.1 E 2.5(Af)108
+504 S(ailure to open or create a \214le causes the redirection to f)-2.6
+E(ail.)-.1 E .946(Redirections using \214le descriptors greater than 9 \
+should be used with care, as the)108 520.8 R 3.447(ym)-.15 G .947
+(ay con\215ict with \214le)-3.447 F
+(descriptors the shell uses internally)108 532.8 Q(.)-.65 E F2(Redir)87
+549.6 Q(ecting Input)-.18 E F0 .391
(Redirection of input causes the \214le whose name results from the e)
-108 112.8 R .391(xpansion of)-.15 F/F2 10/Times-Italic@0 SF(wor)3.231 E
-(d)-.37 E F0 .391(to be opened for read-)3.661 F
-(ing on \214le descriptor)108 124.8 Q F2(n)2.5 E F0 2.5(,o).24 G 2.5(rt)
--2.5 G(he standard input \(\214le descriptor 0\) if)-2.5 E F2(n)2.86 E
-F0(is not speci\214ed.)2.74 E
-(The general format for redirecting input is:)108 141.6 Q([)144 158.4 Q
-F2(n)A F0(])A F1(<)A F2(wor)A(d)-.37 E F1(Redir)87 175.2 Q
-(ecting Output)-.18 E F0 .174
+108 561.6 R .391(xpansion of)-.15 F F1(wor)3.231 E(d)-.37 E F0 .391
+(to be opened for read-)3.661 F(ing on \214le descriptor)108 573.6 Q F1
+(n)2.5 E F0 2.5(,o).24 G 2.5(rt)-2.5 G
+(he standard input \(\214le descriptor 0\) if)-2.5 E F1(n)2.86 E F0
+(is not speci\214ed.)2.74 E
+(The general format for redirecting input is:)108 590.4 Q([)144 607.2 Q
+F1(n)A F0(])A F2(<)A F1(wor)A(d)-.37 E F2(Redir)87 624 Q(ecting Output)
+-.18 E F0 .174
(Redirection of output causes the \214le whose name results from the e)
-108 187.2 R .175(xpansion of)-.15 F F2(wor)3.015 E(d)-.37 E F0 .175
-(to be opened for writ-)3.445 F .825(ing on \214le descriptor)108 199.2
-R F2(n)3.325 E F0 3.325(,o).24 G 3.325(rt)-3.325 G .824
-(he standard output \(\214le descriptor 1\) if)-3.325 F F2(n)3.684 E F0
+108 636 R .175(xpansion of)-.15 F F1(wor)3.015 E(d)-.37 E F0 .175
+(to be opened for writ-)3.445 F .825(ing on \214le descriptor)108 648 R
+F1(n)3.325 E F0 3.325(,o).24 G 3.325(rt)-3.325 G .824
+(he standard output \(\214le descriptor 1\) if)-3.325 F F1(n)3.684 E F0
.824(is not speci\214ed.)3.564 F .824(If the \214le does not)5.824 F
--.15(ex)108 211.2 S(ist it is created; if it does e).15 E
+-.15(ex)108 660 S(ist it is created; if it does e).15 E
(xist it is truncated to zero size.)-.15 E
-(The general format for redirecting output is:)108 228 Q([)144 244.8 Q
-F2(n)A F0(])A F1(>)A F2(wor)A(d)-.37 E F0 .154
-(If the redirection operator is)108 261.6 R F1(>)2.654 E F0 2.654(,a)C
-.154(nd the)-2.654 F F1(noclob)2.654 E(ber)-.1 E F0 .154(option to the)
-2.654 F F1(set)2.655 E F0 -.2(bu)2.655 G .155
-(iltin has been enabled, the redirection).2 F .658(will f)108 273.6 R
-.658(ail if the \214le whose name results from the e)-.1 F .658
-(xpansion of)-.15 F F2(wor)3.158 E(d)-.37 E F0 -.15(ex)3.158 G .657
-(ists and is a re).15 F .657(gular \214le.)-.15 F .657(If the redi-)
-5.657 F .408(rection operator is)108 285.6 R F1(>|)2.909 E F0 2.909(,o)C
-2.909(rt)-2.909 G .409(he redirection operator is)-2.909 F F1(>)2.909 E
-F0 .409(and the)2.909 F F1(noclob)2.909 E(ber)-.1 E F0 .409
-(option to the)2.909 F F1(set)2.909 E F0 -.2(bu)2.909 G .409
-(iltin command).2 F(is not enabled, the redirection is attempted e)108
-297.6 Q -.15(ve)-.25 G 2.5(ni).15 G 2.5(ft)-2.5 G(he \214le named by)
--2.5 E F2(wor)2.5 E(d)-.37 E F0 -.15(ex)2.5 G(ists.).15 E F1 -.25(Ap)87
-314.4 S(pending Redir).25 E(ected Output)-.18 E F0 .642
-(Redirection of output in this f)108 326.4 R .642
+(The general format for redirecting output is:)108 676.8 Q([)144 693.6 Q
+F1(n)A F0(])A F2(>)A F1(wor)A(d)-.37 E F0 .154
+(If the redirection operator is)108 710.4 R F2(>)2.654 E F0 2.654(,a)C
+.154(nd the)-2.654 F F2(noclob)2.654 E(ber)-.1 E F0 .154(option to the)
+2.654 F F2(set)2.655 E F0 -.2(bu)2.655 G .155
+(iltin has been enabled, the redirection).2 F 1.76(will f)108 722.4 R
+1.76(ail if the \214le whose name results from the e)-.1 F 1.759
+(xpansion of)-.15 F F1(wor)4.259 E(d)-.37 E F0 -.15(ex)4.259 G 1.759
+(ists and is a re).15 F 1.759(gular \214le.)-.15 F 1.759(If the)6.759 F
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(25)200.665 E 0 Cg EP
+%%Page: 26 26
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E .594(redirection operator is)108 84 R/F1 10/Times-Bold@0 SF(>|)
+3.094 E F0 3.094(,o)C 3.094(rt)-3.094 G .594(he redirection operator is)
+-3.094 F F1(>)3.094 E F0 .595(and the)3.094 F F1(noclob)3.095 E(ber)-.1
+E F0 .595(option to the)3.095 F F1(set)3.095 E F0 -.2(bu)3.095 G .595
+(iltin com-).2 F(mand is not enabled, the redirection is attempted e)108
+96 Q -.15(ve)-.25 G 2.5(ni).15 G 2.5(ft)-2.5 G(he \214le named by)-2.5 E
+/F2 10/Times-Italic@0 SF(wor)2.5 E(d)-.37 E F0 -.15(ex)2.5 G(ists.).15 E
+F1 -.25(Ap)87 112.8 S(pending Redir).25 E(ected Output)-.18 E F0 .642
+(Redirection of output in this f)108 124.8 R .642
(ashion causes the \214le whose name results from the e)-.1 F .641
(xpansion of)-.15 F F2(wor)3.481 E(d)-.37 E F0 .641(to be)3.911 F .473
-(opened for appending on \214le descriptor)108 338.4 R F2(n)2.973 E F0
+(opened for appending on \214le descriptor)108 136.8 R F2(n)2.973 E F0
2.974(,o).24 G 2.974(rt)-2.974 G .474
(he standard output \(\214le descriptor 1\) if)-2.974 F F2(n)3.334 E F0
.474(is not speci\214ed.)3.214 F(If)5.474 E(the \214le does not e)108
-350.4 Q(xist it is created.)-.15 E
-(The general format for appending output is:)108 367.2 Q([)144 384 Q F2
-(n)A F0(])A F1(>>)A F2(wor)A(d)-.37 E F1(Redir)87 405.6 Q
+148.8 Q(xist it is created.)-.15 E
+(The general format for appending output is:)108 165.6 Q([)144 182.4 Q
+F2(n)A F0(])A F1(>>)A F2(wor)A(d)-.37 E F1(Redir)87 204 Q
(ecting Standard Output and Standard Err)-.18 E(or)-.18 E F0 .249
-(This construct allo)108 417.6 R .249(ws both the standard output \(\
-\214le descriptor 1\) and the standard error output \(\214le descrip-)
--.25 F(tor 2\) to be redirected to the \214le whose name is the e)108
-429.6 Q(xpansion of)-.15 E F2(wor)2.5 E(d)-.37 E F0(.).77 E
-(There are tw)108 446.4 Q 2.5(of)-.1 G
+(This construct allo)108 216 R .249(ws both the standard output \(\214l\
+e descriptor 1\) and the standard error output \(\214le descrip-)-.25 F
+(tor 2\) to be redirected to the \214le whose name is the e)108 228 Q
+(xpansion of)-.15 E F2(wor)2.5 E(d)-.37 E F0(.).77 E(There are tw)108
+244.8 Q 2.5(of)-.1 G
(ormats for redirecting standard output and standard error:)-2.5 E F1
-(&>)144 463.2 Q F2(wor)A(d)-.37 E F0(and)108 475.2 Q F1(>&)144 487.2 Q
-F2(wor)A(d)-.37 E F0(Of the tw)108 504 Q 2.5(of)-.1 G
+(&>)144 261.6 Q F2(wor)A(d)-.37 E F0(and)108 273.6 Q F1(>&)144 285.6 Q
+F2(wor)A(d)-.37 E F0(Of the tw)108 302.4 Q 2.5(of)-.1 G
(orms, the \214rst is preferred.)-2.5 E(This is semantically equi)5 E
--.25(va)-.25 G(lent to).25 E F1(>)144 520.8 Q F2(wor)A(d)-.37 E F0(2)2.5
-E F1(>&)A F0(1)A .114(When using the second form,)108 537.6 R F2(wor)
-2.614 E(d)-.37 E F0 .114(may not e)2.614 F .114(xpand to a number or)
--.15 F F1<ad>2.614 E F0 5.114(.I)C 2.614(fi)-5.114 G 2.615(td)-2.614 G
-.115(oes, other redirection operators)-2.615 F(apply \(see)108 549.6 Q
-F1(Duplicating File Descriptors)2.5 E F0(belo)2.5 E
-(w\) for compatibility reasons.)-.25 E F1 -.25(Ap)87 566.4 S
+-.25(va)-.25 G(lent to).25 E F1(>)144 319.2 Q F2(wor)A(d)-.37 E F0(2)2.5
+E F1(>&)A F0(1)A .114(When using the second form,)108 336 R F2(wor)2.614
+E(d)-.37 E F0 .114(may not e)2.614 F .114(xpand to a number or)-.15 F F1
+<ad>2.614 E F0 5.114(.I)C 2.614(fi)-5.114 G 2.615(td)-2.614 G .115
+(oes, other redirection operators)-2.615 F(apply \(see)108 348 Q F1
+(Duplicating File Descriptors)2.5 E F0(belo)2.5 E
+(w\) for compatibility reasons.)-.25 E F1 -.25(Ap)87 364.8 S
(pending Standard Output and Standard Err).25 E(or)-.18 E F0 .249
-(This construct allo)108 578.4 R .249(ws both the standard output \(\
+(This construct allo)108 376.8 R .249(ws both the standard output \(\
\214le descriptor 1\) and the standard error output \(\214le descrip-)
-.25 F(tor 2\) to be appended to the \214le whose name is the e)108
-590.4 Q(xpansion of)-.15 E F2(wor)2.5 E(d)-.37 E F0(.).77 E
+388.8 Q(xpansion of)-.15 E F2(wor)2.5 E(d)-.37 E F0(.).77 E
(The format for appending standard output and standard error is:)108
-607.2 Q F1(&>>)144 624 Q F2(wor)A(d)-.37 E F0(This is semantically equi)
-108 640.8 Q -.25(va)-.25 G(lent to).25 E F1(>>)144 657.6 Q F2(wor)A(d)
--.37 E F0(2)2.5 E F1(>&)A F0(1)A(\(see)108 674.4 Q F1
-(Duplicating File Descriptors)2.5 E F0(belo)2.5 E(w\).)-.25 E F1(Her)87
-691.2 Q 2.5(eD)-.18 G(ocuments)-2.5 E F0 .33(This type of redirection i\
-nstructs the shell to read input from the current source until a line c\
-ontaining only)108 703.2 R F2(delimiter)108.35 715.2 Q F0 .615
+405.6 Q F1(&>>)144 422.4 Q F2(wor)A(d)-.37 E F0
+(This is semantically equi)108 439.2 Q -.25(va)-.25 G(lent to).25 E F1
+(>>)144 456 Q F2(wor)A(d)-.37 E F0(2)2.5 E F1(>&)A F0(1)A(\(see)108
+472.8 Q F1(Duplicating File Descriptors)2.5 E F0(belo)2.5 E(w\).)-.25 E
+F1(Her)87 489.6 Q 2.5(eD)-.18 G(ocuments)-2.5 E F0 .33(This type of red\
+irection instructs the shell to read input from the current source unti\
+l a line containing only)108 501.6 R F2(delimiter)108.35 513.6 Q F0 .615
(\(with no trailing blanks\) is seen.)3.845 F .615
(All of the lines read up to that point are then used as the stan-)5.615
-F(dard input for a command.)108 727.2 Q(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(25)190.95 E 0 Cg EP
-%%Page: 26 26
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(The format of here-documents is:)108 84 Q/F1 10/Times-Bold@0 SF
-(<<)144 100.8 Q F0([)A F1<ad>A F0(])A/F2 10/Times-Italic@0 SF(wor)A(d)
--.37 E(her)164 112.8 Q(e-document)-.37 E(delimiter)144 124.8 Q F0 .301
-(No parameter and v)108 141.6 R .302(ariable e)-.25 F .302
-(xpansion, command substitution, arithmetic e)-.15 F .302
-(xpansion, or pathname e)-.15 F(xpansion)-.15 E .226(is performed on)108
-153.6 R F2(wor)2.726 E(d)-.37 E F0 5.226(.I).77 G 2.726(fa)-5.226 G .526
--.15(ny c)-2.726 H .226(haracters in).15 F F2(wor)3.066 E(d)-.37 E F0
-.226(are quoted, the)3.496 F F2(delimiter)3.076 E F0 .225
-(is the result of quote remo)3.456 F -.25(va)-.15 G 2.725(lo).25 G(n)
--2.725 E F2(wor)108 165.6 Q(d)-.37 E F0 2.714(,a).77 G .214
+F(dard input for a command.)108 525.6 Q
+(The format of here-documents is:)108 542.4 Q F1(<<)144 559.2 Q F0([)A
+F1<ad>A F0(])A F2(wor)A(d)-.37 E(her)164 571.2 Q(e-document)-.37 E
+(delimiter)144 583.2 Q F0 .301(No parameter and v)108 600 R .302
+(ariable e)-.25 F .302(xpansion, command substitution, arithmetic e)-.15
+F .302(xpansion, or pathname e)-.15 F(xpansion)-.15 E .226
+(is performed on)108 612 R F2(wor)2.726 E(d)-.37 E F0 5.226(.I).77 G
+2.726(fa)-5.226 G .526 -.15(ny c)-2.726 H .226(haracters in).15 F F2
+(wor)3.066 E(d)-.37 E F0 .226(are quoted, the)3.496 F F2(delimiter)3.076
+E F0 .225(is the result of quote remo)3.456 F -.25(va)-.15 G 2.725(lo)
+.25 G(n)-2.725 E F2(wor)108 624 Q(d)-.37 E F0 2.714(,a).77 G .214
(nd the lines in the here-document are not e)-2.714 F 2.714(xpanded. If)
-.15 F F2(wor)2.715 E(d)-.37 E F0 .215
(is unquoted, all lines of the here-docu-)2.715 F .499
-(ment are subjected to parameter e)108 177.6 R .499
+(ment are subjected to parameter e)108 636 R .499
(xpansion, command substitution, and arithmetic e)-.15 F .499
-(xpansion, the character)-.15 F(sequence)108 189.6 Q F1(\\<newline>)2.5
-E F0(is ignored, and)2.5 E F1(\\)2.5 E F0
+(xpansion, the character)-.15 F(sequence)108 648 Q F1(\\<newline>)2.5 E
+F0(is ignored, and)2.5 E F1(\\)2.5 E F0
(must be used to quote the characters)2.5 E F1(\\)2.5 E F0(,)A F1($)2.5
E F0 2.5(,a)C(nd)-2.5 E F1<92>2.5 E F0(.)A .601
-(If the redirection operator is)108 206.4 R F1(<<\255)3.101 E F0 3.101
+(If the redirection operator is)108 664.8 R F1(<<\255)3.101 E F0 3.101
(,t)C .601(hen all leading tab characters are stripped from input lines\
- and the line)-3.101 F(containing)108 218.4 Q F2(delimiter)2.5 E F0 5
+ and the line)-3.101 F(containing)108 676.8 Q F2(delimiter)2.5 E F0 5
(.T).73 G(his allo)-5 E
(ws here-documents within shell scripts to be indented in a natural f)
--.25 E(ashion.)-.1 E F1(Her)87 235.2 Q 2.5(eS)-.18 G(trings)-2.5 E F0
-2.5(Av)108 247.2 S(ariant of here documents, the format is:)-2.75 E F1
-(<<<)144 264 Q F2(wor)A(d)-.37 E F0(The)108 280.8 Q F2(wor)2.894 E(d)
--.37 E F0(under)2.894 E .394(goes brace e)-.18 F .393(xpansion, tilde e)
--.15 F .393(xpansion, parameter and v)-.15 F .393(ariable e)-.25 F .393
-(xpansion, command substi-)-.15 F 2.147(tution, arithmetic e)108 292.8 R
+-.25 E(ashion.)-.1 E F1(Her)87 693.6 Q 2.5(eS)-.18 G(trings)-2.5 E F0
+2.5(Av)108 705.6 S(ariant of here documents, the format is:)-2.75 E F1
+(<<<)144 722.4 Q F2(wor)A(d)-.37 E F0(GNU Bash 4.2)72 768 Q(2012 July 5)
+151.505 E(26)200.665 E 0 Cg EP
+%%Page: 27 27
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E(The)108 84 Q/F1 10/Times-Italic@0 SF(wor)2.894 E(d)-.37 E F0
+(under)2.894 E .394(goes brace e)-.18 F .393(xpansion, tilde e)-.15 F
+.393(xpansion, parameter and v)-.15 F .393(ariable e)-.25 F .393
+(xpansion, command substi-)-.15 F 2.147(tution, arithmetic e)108 96 R
2.147(xpansion, and quote remo)-.15 F -.25(va)-.15 G 4.648(l. P).25 F
2.148(athname e)-.15 F 2.148(xpansion and w)-.15 F 2.148
-(ord splitting are not per)-.1 F(-)-.2 E 2.5(formed. The)108 304.8 R(re\
-sult is supplied as a single string to the command on its standard inpu\
-t.)2.5 E F1(Duplicating File Descriptors)87 321.6 Q F0
-(The redirection operator)108 333.6 Q([)144 350.4 Q F2(n)A F0(])A F1(<&)
-A F2(wor)A(d)-.37 E F0 .127
-(is used to duplicate input \214le descriptors.)108 367.2 R(If)5.127 E
-F2(wor)2.967 E(d)-.37 E F0 -.15(ex)3.397 G .126
+(ord splitting are not per)-.1 F(-)-.2 E 2.5(formed. The)108 108 R(resu\
+lt is supplied as a single string to the command on its standard input.)
+2.5 E/F2 10/Times-Bold@0 SF(Duplicating File Descriptors)87 124.8 Q F0
+(The redirection operator)108 136.8 Q([)144 153.6 Q F1(n)A F0(])A F2(<&)
+A F1(wor)A(d)-.37 E F0 .127
+(is used to duplicate input \214le descriptors.)108 170.4 R(If)5.127 E
+F1(wor)2.967 E(d)-.37 E F0 -.15(ex)3.397 G .126
(pands to one or more digits, the \214le descriptor denoted).15 F(by)108
-379.2 Q F2(n)3.317 E F0 .457(is made to be a cop)3.197 F 2.957(yo)-.1 G
+182.4 Q F1(n)3.317 E F0 .457(is made to be a cop)3.197 F 2.957(yo)-.1 G
2.957(ft)-2.957 G .457(hat \214le descriptor)-2.957 F 5.457(.I)-.55 G
-2.957(ft)-5.457 G .457(he digits in)-2.957 F F2(wor)3.298 E(d)-.37 E F0
+2.957(ft)-5.457 G .457(he digits in)-2.957 F F1(wor)3.298 E(d)-.37 E F0
.458(do not specify a \214le descriptor open)3.728 F .15
-(for input, a redirection error occurs.)108 391.2 R(If)5.15 E F2(wor)
-2.99 E(d)-.37 E F0 -.25(eva)3.42 G .15(luates to).25 F F1<ad>2.65 E F0
-2.649<2c8c>C .149(le descriptor)-2.649 F F2(n)3.009 E F0 .149
-(is closed.)2.889 F(If)5.149 E F2(n)3.009 E F0 .149(is not speci\214ed,)
-2.889 F(the standard input \(\214le descriptor 0\) is used.)108 403.2 Q
-(The operator)108 420 Q([)144 436.8 Q F2(n)A F0(])A F1(>&)A F2(wor)A(d)
+(for input, a redirection error occurs.)108 194.4 R(If)5.15 E F1(wor)
+2.99 E(d)-.37 E F0 -.25(eva)3.42 G .15(luates to).25 F F2<ad>2.65 E F0
+2.649<2c8c>C .149(le descriptor)-2.649 F F1(n)3.009 E F0 .149
+(is closed.)2.889 F(If)5.149 E F1(n)3.009 E F0 .149(is not speci\214ed,)
+2.889 F(the standard input \(\214le descriptor 0\) is used.)108 206.4 Q
+(The operator)108 223.2 Q([)144 240 Q F1(n)A F0(])A F2(>&)A F1(wor)A(d)
-.37 E F0 .443
-(is used similarly to duplicate output \214le descriptors.)108 453.6 R
-(If)5.443 E F2(n)3.304 E F0 .444
+(is used similarly to duplicate output \214le descriptors.)108 256.8 R
+(If)5.443 E F1(n)3.304 E F0 .444
(is not speci\214ed, the standard output \(\214le descrip-)3.184 F 1.358
-(tor 1\) is used.)108 465.6 R 1.358(If the digits in)6.358 F F2(wor)
+(tor 1\) is used.)108 268.8 R 1.358(If the digits in)6.358 F F1(wor)
4.198 E(d)-.37 E F0 1.357(do not specify a \214le descriptor open for o\
-utput, a redirection error)4.628 F 2.753(occurs. If)108 477.6 R F2(wor)
-3.093 E(d)-.37 E F0 -.25(eva)3.523 G .253(luates to).25 F F1<ad>2.754 E
-F0 2.754<2c8c>C .254(le descriptor)-2.754 F F2(n)3.114 E F0 .254
-(is closed.)2.994 F .254(As a special case, if)5.254 F F2(n)2.754 E F0
-.254(is omitted, and)2.754 F F2(wor)2.754 E(d)-.37 E F0(does)2.754 E
-.966(not e)108 489.6 R .966(xpand to one or more digits or)-.15 F F1<ad>
+utput, a redirection error)4.628 F 2.753(occurs. If)108 280.8 R F1(wor)
+3.093 E(d)-.37 E F0 -.25(eva)3.523 G .253(luates to).25 F F2<ad>2.754 E
+F0 2.754<2c8c>C .254(le descriptor)-2.754 F F1(n)3.114 E F0 .254
+(is closed.)2.994 F .254(As a special case, if)5.254 F F1(n)2.754 E F0
+.254(is omitted, and)2.754 F F1(wor)2.754 E(d)-.37 E F0(does)2.754 E
+.966(not e)108 292.8 R .966(xpand to one or more digits or)-.15 F F2<ad>
3.466 E F0 3.466(,t)C .965
(he standard output and standard error are redirected as described)
--3.466 F(pre)108 501.6 Q(viously)-.25 E(.)-.65 E F1(Mo)87 518.4 Q
-(ving File Descriptors)-.1 E F0(The redirection operator)108 530.4 Q([)
-144 547.2 Q F2(n)A F0(])A F1(<&)A F2(digit)A F1<ad>A F0(mo)108 564 Q
--.15(ve)-.15 G 3.035(st).15 G .535(he \214le descriptor)-3.035 F F2
-(digit)3.035 E F0 .535(to \214le descriptor)3.035 F F2(n)3.035 E F0
+-3.466 F(pre)108 304.8 Q(viously)-.25 E(.)-.65 E F2(Mo)87 321.6 Q
+(ving File Descriptors)-.1 E F0(The redirection operator)108 333.6 Q([)
+144 350.4 Q F1(n)A F0(])A F2(<&)A F1(digit)A F2<ad>A F0(mo)108 367.2 Q
+-.15(ve)-.15 G 3.035(st).15 G .535(he \214le descriptor)-3.035 F F1
+(digit)3.035 E F0 .535(to \214le descriptor)3.035 F F1(n)3.035 E F0
3.035(,o).24 G 3.035(rt)-3.035 G .536
-(he standard input \(\214le descriptor 0\) if)-3.035 F F2(n)3.036 E F0
-.536(is not speci-)3.036 F(\214ed.)108 576 Q F2(digit)5 E F0
-(is closed after being duplicated to)2.5 E F2(n)2.5 E F0(.)A(Similarly)
-108 592.8 Q 2.5(,t)-.65 G(he redirection operator)-2.5 E([)144 609.6 Q
-F2(n)A F0(])A F1(>&)A F2(digit)A F1<ad>A F0(mo)108 626.4 Q -.15(ve)-.15
-G 2.786(st).15 G .286(he \214le descriptor)-2.786 F F2(digit)2.786 E F0
-.286(to \214le descriptor)2.786 F F2(n)2.786 E F0 2.786(,o).24 G 2.786
+(he standard input \(\214le descriptor 0\) if)-3.035 F F1(n)3.036 E F0
+.536(is not speci-)3.036 F(\214ed.)108 379.2 Q F1(digit)5 E F0
+(is closed after being duplicated to)2.5 E F1(n)2.5 E F0(.)A(Similarly)
+108 396 Q 2.5(,t)-.65 G(he redirection operator)-2.5 E([)144 412.8 Q F1
+(n)A F0(])A F2(>&)A F1(digit)A F2<ad>A F0(mo)108 429.6 Q -.15(ve)-.15 G
+2.786(st).15 G .286(he \214le descriptor)-2.786 F F1(digit)2.786 E F0
+.286(to \214le descriptor)2.786 F F1(n)2.786 E F0 2.786(,o).24 G 2.786
(rt)-2.786 G .285(he standard output \(\214le descriptor 1\) if)-2.786 F
-F2(n)2.785 E F0 .285(is not speci-)2.785 F(\214ed.)108 638.4 Q F1
-(Opening File Descriptors f)87 655.2 Q(or Reading and Writing)-.25 E F0
-(The redirection operator)108 667.2 Q([)144 684 Q F2(n)A F0(])A F1(<>)A
-F2(wor)A(d)-.37 E F0 1.349(causes the \214le whose name is the e)108
-700.8 R 1.349(xpansion of)-.15 F F2(wor)4.189 E(d)-.37 E F0 1.349
+F1(n)2.785 E F0 .285(is not speci-)2.785 F(\214ed.)108 441.6 Q F2
+(Opening File Descriptors f)87 458.4 Q(or Reading and Writing)-.25 E F0
+(The redirection operator)108 470.4 Q([)144 487.2 Q F1(n)A F0(])A F2(<>)
+A F1(wor)A(d)-.37 E F0 1.349(causes the \214le whose name is the e)108
+504 R 1.349(xpansion of)-.15 F F1(wor)4.189 E(d)-.37 E F0 1.349
(to be opened for both reading and writing on \214le)4.619 F(descriptor)
-108 712.8 Q F2(n)2.5 E F0 2.5(,o).24 G 2.5(ro)-2.5 G 2.5<6e8c>-2.5 G
-(le descriptor 0 if)-2.5 E F2(n)2.86 E F0(is not speci\214ed.)2.74 E
-(If the \214le does not e)5 E(xist, it is created.)-.15 E(GNU Bash 4.2)
-72 768 Q(2012 February 4)141.79 E(26)190.95 E 0 Cg EP
-%%Page: 27 27
-%%BeginPageSetup
-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.95/Times-Bold@0 SF(ALIASES)72 84 Q/F2 10/Times-Italic@0 SF
-(Aliases)108 96 Q F0(allo)3.174 E 3.174(was)-.25 G .674
-(tring to be substituted for a w)-3.174 F .674
+108 516 Q F1(n)2.5 E F0 2.5(,o).24 G 2.5(ro)-2.5 G 2.5<6e8c>-2.5 G
+(le descriptor 0 if)-2.5 E F1(n)2.86 E F0(is not speci\214ed.)2.74 E
+(If the \214le does not e)5 E(xist, it is created.)-.15 E/F3 10.95
+/Times-Bold@0 SF(ALIASES)72 532.8 Q F1(Aliases)108 544.8 Q F0(allo)3.174
+E 3.174(was)-.25 G .674(tring to be substituted for a w)-3.174 F .674
(ord when it is used as the \214rst w)-.1 F .673
(ord of a simple command.)-.1 F .394(The shell maintains a list of alia\
-ses that may be set and unset with the)108 108 R/F3 10/Times-Bold@0 SF
-(alias)2.894 E F0(and)2.894 E F3(unalias)2.894 E F0 -.2(bu)2.894 G .394
-(iltin commands).2 F(\(see)108 120 Q/F4 9/Times-Bold@0 SF 1.98(SHELL B)
-4.48 F(UIL)-.09 E 1.98(TIN COMMANDS)-.828 F F0(belo)4.23 E 4.48
-(w\). The)-.25 F 1.98(\214rst w)4.48 F 1.979
-(ord of each simple command, if unquoted, is)-.1 F(check)108 132 Q .472
-(ed to see if it has an alias.)-.1 F .472(If so, that w)5.472 F .473
-(ord is replaced by the te)-.1 F .473(xt of the alias.)-.15 F .473
-(The characters)5.473 F F3(/)2.973 E F0(,)A F3($)2.973 E F0(,)A F3<92>
-2.973 E F0(,)A(and)108 144 Q F3(=)3.612 E F0 1.112(and an)3.612 F 3.612
-(yo)-.15 G 3.612(ft)-3.612 G 1.112(he shell)-3.612 F F2(metac)3.612 E
-(har)-.15 E(acter)-.15 E(s)-.1 E F0 1.112
+ses that may be set and unset with the)108 556.8 R F2(alias)2.894 E F0
+(and)2.894 E F2(unalias)2.894 E F0 -.2(bu)2.894 G .394(iltin commands).2
+F(\(see)108 568.8 Q/F4 9/Times-Bold@0 SF 1.98(SHELL B)4.48 F(UIL)-.09 E
+1.98(TIN COMMANDS)-.828 F F0(belo)4.23 E 4.48(w\). The)-.25 F 1.98
+(\214rst w)4.48 F 1.979(ord of each simple command, if unquoted, is)-.1
+F(check)108 580.8 Q .472(ed to see if it has an alias.)-.1 F .472
+(If so, that w)5.472 F .473(ord is replaced by the te)-.1 F .473
+(xt of the alias.)-.15 F .473(The characters)5.473 F F2(/)2.973 E F0(,)A
+F2($)2.973 E F0(,)A F2<92>2.973 E F0(,)A(and)108 592.8 Q F2(=)3.612 E F0
+1.112(and an)3.612 F 3.612(yo)-.15 G 3.612(ft)-3.612 G 1.112(he shell)
+-3.612 F F1(metac)3.612 E(har)-.15 E(acter)-.15 E(s)-.1 E F0 1.112
(or quoting characters listed abo)3.612 F 1.411 -.15(ve m)-.15 H 1.111
-(ay not appear in an alias).15 F 3.619(name. The)108 156 R 1.119
+(ay not appear in an alias).15 F 3.619(name. The)108 604.8 R 1.119
(replacement te)3.619 F 1.119(xt may contain an)-.15 F 3.619(yv)-.15 G
1.119(alid shell input, including shell metacharacters.)-3.869 F 1.12
-(The \214rst)6.12 F -.1(wo)108 168 S .514(rd of the replacement te).1 F
-.514(xt is tested for aliases, b)-.15 F .514(ut a w)-.2 F .513
+(The \214rst)6.12 F -.1(wo)108 616.8 S .514(rd of the replacement te).1
+F .514(xt is tested for aliases, b)-.15 F .514(ut a w)-.2 F .513
(ord that is identical to an alias being e)-.1 F .513(xpanded is)-.15 F
-.295(not e)108 180 R .295(xpanded a second time.)-.15 F .296
-(This means that one may alias)5.295 F F3(ls)2.796 E F0(to)2.796 E F3
-.296(ls \255F)2.796 F F0 2.796(,f)C .296(or instance, and)-2.796 F F3
-(bash)2.796 E F0 .296(does not try)2.796 F .543(to recursi)108 192 R
+.295(not e)108 628.8 R .295(xpanded a second time.)-.15 F .296
+(This means that one may alias)5.295 F F2(ls)2.796 E F0(to)2.796 E F2
+.296(ls \255F)2.796 F F0 2.796(,f)C .296(or instance, and)-2.796 F F2
+(bash)2.796 E F0 .296(does not try)2.796 F .543(to recursi)108 640.8 R
-.15(ve)-.25 G .543(ly e).15 F .543(xpand the replacement te)-.15 F
3.043(xt. If)-.15 F .543(the last character of the alias v)3.043 F .542
-(alue is a)-.25 F F2(blank)3.042 E F0 3.042(,t).67 G .542(hen the ne)
--3.042 F(xt)-.15 E(command w)108 204 Q(ord follo)-.1 E
+(alue is a)-.25 F F1(blank)3.042 E F0 3.042(,t).67 G .542(hen the ne)
+-3.042 F(xt)-.15 E(command w)108 652.8 Q(ord follo)-.1 E
(wing the alias is also check)-.25 E(ed for alias e)-.1 E(xpansion.)-.15
-E(Aliases are created and listed with the)108 220.8 Q F3(alias)2.5 E F0
-(command, and remo)2.5 E -.15(ve)-.15 G 2.5(dw).15 G(ith the)-2.5 E F3
+E(Aliases are created and listed with the)108 669.6 Q F2(alias)2.5 E F0
+(command, and remo)2.5 E -.15(ve)-.15 G 2.5(dw).15 G(ith the)-2.5 E F2
(unalias)2.5 E F0(command.)2.5 E .284
-(There is no mechanism for using ar)108 237.6 R .284
+(There is no mechanism for using ar)108 686.4 R .284
(guments in the replacement te)-.18 F 2.784(xt. If)-.15 F(ar)2.784 E
.284(guments are needed, a shell func-)-.18 F(tion should be used \(see)
-108 249.6 Q F4(FUNCTIONS)2.5 E F0(belo)2.25 E(w\).)-.25 E 1.22
-(Aliases are not e)108 266.4 R 1.22
+108 698.4 Q F4(FUNCTIONS)2.5 E F0(belo)2.25 E(w\).)-.25 E 1.22
+(Aliases are not e)108 715.2 R 1.22
(xpanded when the shell is not interacti)-.15 F -.15(ve)-.25 G 3.72(,u)
-.15 G 1.22(nless the)-3.72 F F3(expand_aliases)3.72 E F0 1.22
-(shell option is set)3.72 F(using)108 278.4 Q F3(shopt)2.5 E F0
-(\(see the description of)2.5 E F3(shopt)2.5 E F0(under)2.5 E F4
+.15 G 1.22(nless the)-3.72 F F2(expand_aliases)3.72 E F0 1.22
+(shell option is set)3.72 F(using)108 727.2 Q F2(shopt)2.5 E F0
+(\(see the description of)2.5 E F2(shopt)2.5 E F0(under)2.5 E F4
(SHELL B)2.5 E(UIL)-.09 E(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)-.25
-E .435
+E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(27)200.665 E 0 Cg EP
+%%Page: 28 28
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E .435
(The rules concerning the de\214nition and use of aliases are some)108
-295.2 R .436(what confusing.)-.25 F F3(Bash)5.436 E F0(al)2.936 E -.1
-(wa)-.1 G .436(ys reads at least).1 F .338
-(one complete line of input before e)108 307.2 R -.15(xe)-.15 G .338
+84 R .436(what confusing.)-.25 F/F1 10/Times-Bold@0 SF(Bash)5.436 E F0
+(al)2.936 E -.1(wa)-.1 G .436(ys reads at least).1 F .338
+(one complete line of input before e)108 96 R -.15(xe)-.15 G .338
(cuting an).15 F 2.838(yo)-.15 G 2.838(ft)-2.838 G .338
(he commands on that line.)-2.838 F .337(Aliases are e)5.337 F .337
-(xpanded when)-.15 F 3.403(ac)108 319.2 S .904
+(xpanded when)-.15 F 3.403(ac)108 108 S .904
(ommand is read, not when it is e)-3.403 F -.15(xe)-.15 G 3.404
(cuted. Therefore,).15 F .904
(an alias de\214nition appearing on the same line as)3.404 F 1.162
-(another command does not tak)108 331.2 R 3.662(ee)-.1 G -.25(ff)-3.662
-G 1.162(ect until the ne).25 F 1.162(xt line of input is read.)-.15 F
+(another command does not tak)108 120 R 3.662(ee)-.1 G -.25(ff)-3.662 G
+1.162(ect until the ne).25 F 1.162(xt line of input is read.)-.15 F
1.161(The commands follo)6.161 F 1.161(wing the)-.25 F .277
-(alias de\214nition on that line are not af)108 343.2 R .277
+(alias de\214nition on that line are not af)108 132 R .277
(fected by the ne)-.25 F 2.777(wa)-.25 G 2.777(lias. This)-2.777 F(beha)
2.777 E .277(vior is also an issue when functions)-.2 F .699(are e)108
-355.2 R -.15(xe)-.15 G 3.199(cuted. Aliases).15 F .699(are e)3.199 F
-.699(xpanded when a function de\214nition is read, not when the functio\
-n is e)-.15 F -.15(xe)-.15 G(cuted,).15 E .494
-(because a function de\214nition is itself a compound command.)108 367.2
-R .495(As a consequence, aliases de\214ned in a func-)5.494 F .085
-(tion are not a)108 379.2 R -.25(va)-.2 G .084
+144 R -.15(xe)-.15 G 3.199(cuted. Aliases).15 F .699(are e)3.199 F .699
+(xpanded when a function de\214nition is read, not when the function is\
+ e)-.15 F -.15(xe)-.15 G(cuted,).15 E .494
+(because a function de\214nition is itself a compound command.)108 156 R
+.495(As a consequence, aliases de\214ned in a func-)5.494 F .085
+(tion are not a)108 168 R -.25(va)-.2 G .084
(ilable until after that function is e).25 F -.15(xe)-.15 G 2.584
(cuted. T).15 F 2.584(ob)-.8 G 2.584(es)-2.584 G .084(afe, al)-2.584 F
-.1(wa)-.1 G .084(ys put alias de\214nitions on a sepa-).1 F
-(rate line, and do not use)108 391.2 Q F3(alias)2.5 E F0
-(in compound commands.)2.5 E -.15(Fo)108 408 S 2.5(ra).15 G(lmost e)-2.5
-E -.15(ve)-.25 G(ry purpose, aliases are superseded by shell functions.)
-.15 E F1(FUNCTIONS)72 424.8 Q F0 3.467(As)108 436.8 S .967
+(rate line, and do not use)108 180 Q F1(alias)2.5 E F0
+(in compound commands.)2.5 E -.15(Fo)108 196.8 S 2.5(ra).15 G(lmost e)
+-2.5 E -.15(ve)-.25 G
+(ry purpose, aliases are superseded by shell functions.).15 E/F2 10.95
+/Times-Bold@0 SF(FUNCTIONS)72 213.6 Q F0 3.467(As)108 225.6 S .967
(hell function, de\214ned as described abo)-3.467 F 1.267 -.15(ve u)-.15
-H(nder).15 E F4 .967(SHELL GRAMMAR)3.467 F/F5 9/Times-Roman@0 SF(,)A F0
-.968(stores a series of commands for)3.217 F 1.002(later e)108 448.8 R
--.15(xe)-.15 G 3.502(cution. When).15 F 1.002(the name of a shell funct\
-ion is used as a simple command name, the list of com-)3.502 F .315
-(mands associated with that function name is e)108 460.8 R -.15(xe)-.15
-G 2.816(cuted. Functions).15 F .316(are e)2.816 F -.15(xe)-.15 G .316
-(cuted in the conte).15 F .316(xt of the current)-.15 F .036
-(shell; no ne)108 472.8 R 2.536(wp)-.25 G .036
+H(nder).15 E/F3 9/Times-Bold@0 SF .967(SHELL GRAMMAR)3.467 F/F4 9
+/Times-Roman@0 SF(,)A F0 .968(stores a series of commands for)3.217 F
+1.002(later e)108 237.6 R -.15(xe)-.15 G 3.502(cution. When).15 F 1.002
+(the name of a shell function is used as a simple command name, the lis\
+t of com-)3.502 F .315(mands associated with that function name is e)108
+249.6 R -.15(xe)-.15 G 2.816(cuted. Functions).15 F .316(are e)2.816 F
+-.15(xe)-.15 G .316(cuted in the conte).15 F .316(xt of the current)-.15
+F .036(shell; no ne)108 261.6 R 2.536(wp)-.25 G .036
(rocess is created to interpret them \(contrast this with the e)-2.536 F
-.15(xe)-.15 G .036(cution of a shell script\).).15 F .035(When a)5.035
-F .639(function is e)108 484.8 R -.15(xe)-.15 G .639(cuted, the ar).15 F
+F .639(function is e)108 273.6 R -.15(xe)-.15 G .639(cuted, the ar).15 F
.639
(guments to the function become the positional parameters during its e)
--.18 F -.15(xe)-.15 G(cution.).15 E .533(The special parameter)108 496.8
-R F3(#)3.033 E F0 .532(is updated to re\215ect the change.)3.033 F .532
-(Special parameter)5.532 F F3(0)3.032 E F0 .532(is unchanged.)3.032 F
-.532(The \214rst ele-)5.532 F(ment of the)108 508.8 Q F4(FUNCN)2.5 E
+-.18 F -.15(xe)-.15 G(cution.).15 E .533(The special parameter)108 285.6
+R F1(#)3.033 E F0 .532(is updated to re\215ect the change.)3.033 F .532
+(Special parameter)5.532 F F1(0)3.032 E F0 .532(is unchanged.)3.032 F
+.532(The \214rst ele-)5.532 F(ment of the)108 297.6 Q F3(FUNCN)2.5 E
(AME)-.18 E F0 -.25(va)2.25 G
(riable is set to the name of the function while the function is e).25 E
-.15(xe)-.15 G(cuting.).15 E 1.25(All other aspects of the shell e)108
-525.6 R -.15(xe)-.15 G 1.25(cution en).15 F 1.25
+314.4 R -.15(xe)-.15 G 1.25(cution en).15 F 1.25
(vironment are identical between a function and its caller with)-.4 F
-1.049(these e)108 537.6 R 3.548(xceptions: the)-.15 F F4(DEB)3.548 E(UG)
--.09 E F0(and)3.298 E F3(RETURN)3.548 E F0 1.048
-(traps \(see the description of the)3.548 F F3(trap)3.548 E F0 -.2(bu)
-3.548 G 1.048(iltin under).2 F F4(SHELL)3.548 E -.09(BU)108 549.6 S(IL)
+1.049(these e)108 326.4 R 3.548(xceptions: the)-.15 F F3(DEB)3.548 E(UG)
+-.09 E F0(and)3.298 E F1(RETURN)3.548 E F0 1.048
+(traps \(see the description of the)3.548 F F1(trap)3.548 E F0 -.2(bu)
+3.548 G 1.048(iltin under).2 F F3(SHELL)3.548 E -.09(BU)108 338.4 S(IL)
.09 E .478(TIN COMMANDS)-.828 F F0(belo)2.728 E .479
(w\) are not inherited unless the function has been gi)-.25 F -.15(ve)
--.25 G 2.979(nt).15 G(he)-2.979 E F3(trace)2.979 E F0(attrib)2.979 E
-.479(ute \(see)-.2 F .421(the description of the)108 561.6 R F4(declar)
+-.25 G 2.979(nt).15 G(he)-2.979 E F1(trace)2.979 E F0(attrib)2.979 E
+.479(ute \(see)-.2 F .421(the description of the)108 350.4 R F3(declar)
2.92 E(e)-.162 E F0 -.2(bu)2.67 G .42(iltin belo).2 F .42(w\) or the)
--.25 F F3 .42(\255o functrace)2.92 F F0 .42
-(shell option has been enabled with the)2.92 F F3(set)2.92 E F0 -.2(bu)
-108 573.6 S .071(iltin \(in which case all functions inherit the).2 F F3
-(DEB)2.572 E(UG)-.1 E F0(and)2.572 E F3(RETURN)2.572 E F0 .072
-(traps\), and the)2.572 F F4(ERR)2.572 E F0 .072(trap is not inher)2.322
-F(-)-.2 E(ited unless the)108 585.6 Q F3(\255o errtrace)2.5 E F0
-(shell option has been enabled.)2.5 E -1.11(Va)108 602.4 S .656
-(riables local to the function may be declared with the)1.11 F F3(local)
+-.25 F F1 .42(\255o functrace)2.92 F F0 .42
+(shell option has been enabled with the)2.92 F F1(set)2.92 E F0 -.2(bu)
+108 362.4 S .071(iltin \(in which case all functions inherit the).2 F F1
+(DEB)2.572 E(UG)-.1 E F0(and)2.572 E F1(RETURN)2.572 E F0 .072
+(traps\), and the)2.572 F F3(ERR)2.572 E F0 .072(trap is not inher)2.322
+F(-)-.2 E(ited unless the)108 374.4 Q F1(\255o errtrace)2.5 E F0
+(shell option has been enabled.)2.5 E -1.11(Va)108 391.2 S .656
+(riables local to the function may be declared with the)1.11 F F1(local)
3.155 E F0 -.2(bu)3.155 G .655(iltin command.).2 F(Ordinarily)5.655 E
-3.155(,v)-.65 G .655(ariables and)-3.405 F(their v)108 614.4 Q
+3.155(,v)-.65 G .655(ariables and)-3.405 F(their v)108 403.2 Q
(alues are shared between the function and its caller)-.25 E(.)-.55 E
-(The)108 631.2 Q F3(FUNCNEST)3.528 E F0 -.25(va)3.528 G 1.028
+(The)108 420 Q F1(FUNCNEST)3.528 E F0 -.25(va)3.528 G 1.028
(riable, if set to a numeric v).25 F 1.028
(alue greater than 0, de\214nes a maximum function nesting)-.25 F(le)108
-643.2 Q -.15(ve)-.25 G 2.5(l. Function).15 F(in)2.5 E -.2(vo)-.4 G
+432 Q -.15(ve)-.25 G 2.5(l. Function).15 F(in)2.5 E -.2(vo)-.4 G
(cations that e).2 E(xceed the limit cause the entire command to abort.)
--.15 E .044(If the b)108 660 R .043(uiltin command)-.2 F F3 -.18(re)
+-.15 E .044(If the b)108 448.8 R .043(uiltin command)-.2 F F1 -.18(re)
2.543 G(tur).18 E(n)-.15 E F0 .043(is e)2.543 F -.15(xe)-.15 G .043
(cuted in a function, the function completes and e).15 F -.15(xe)-.15 G
-.043(cution resumes with).15 F 1.011(the ne)108 672 R 1.011
+.043(cution resumes with).15 F 1.011(the ne)108 460.8 R 1.011
(xt command after the function call.)-.15 F(An)6.011 E 3.511(yc)-.15 G
-1.011(ommand associated with the)-3.511 F F3(RETURN)3.512 E F0 1.012
-(trap is e)3.512 F -.15(xe)-.15 G(cuted).15 E .214(before e)108 684 R
+1.011(ommand associated with the)-3.511 F F1(RETURN)3.512 E F0 1.012
+(trap is e)3.512 F -.15(xe)-.15 G(cuted).15 E .214(before e)108 472.8 R
-.15(xe)-.15 G .214(cution resumes.).15 F .213
(When a function completes, the v)5.214 F .213
(alues of the positional parameters and the spe-)-.25 F(cial parameter)
-108 696 Q F3(#)2.5 E F0(are restored to the v)2.5 E(alues the)-.25 E 2.5
-(yh)-.15 G(ad prior to the function')-2.5 E 2.5(se)-.55 G -.15(xe)-2.65
-G(cution.).15 E 1.358
-(Function names and de\214nitions may be listed with the)108 712.8 R F3
-<ad66>3.858 E F0 1.358(option to the)3.858 F F3(declar)3.858 E(e)-.18 E
-F0(or)3.859 E F3(typeset)3.859 E F0 -.2(bu)3.859 G 1.359(iltin com-).2 F
-3.39(mands. The)108 724.8 R F3<ad46>3.39 E F0 .89(option to)3.39 F F3
-(declar)3.39 E(e)-.18 E F0(or)3.39 E F3(typeset)3.39 E F0 .89
+108 484.8 Q F1(#)2.5 E F0(are restored to the v)2.5 E(alues the)-.25 E
+2.5(yh)-.15 G(ad prior to the function')-2.5 E 2.5(se)-.55 G -.15(xe)
+-2.65 G(cution.).15 E 1.358
+(Function names and de\214nitions may be listed with the)108 501.6 R F1
+<ad66>3.858 E F0 1.358(option to the)3.858 F F1(declar)3.858 E(e)-.18 E
+F0(or)3.859 E F1(typeset)3.859 E F0 -.2(bu)3.859 G 1.359(iltin com-).2 F
+3.39(mands. The)108 513.6 R F1<ad46>3.39 E F0 .89(option to)3.39 F F1
+(declar)3.39 E(e)-.18 E F0(or)3.39 E F1(typeset)3.39 E F0 .89
(will list the function names only \(and optionally the source)3.39 F
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(27)190.95 E 0 Cg EP
-%%Page: 28 28
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E .326(\214le and line number)108 84 R 2.826(,i)-.4 G 2.826(ft)
--2.826 G(he)-2.826 E/F1 10/Times-Bold@0 SF(extdeb)2.826 E(ug)-.2 E F0
-.326(shell option is enabled\).)2.826 F .327(Functions may be e)5.327 F
-.327(xported so that subshells)-.15 F 1.298(automatically ha)108 96 R
+.326(\214le and line number)108 525.6 R 2.826(,i)-.4 G 2.826(ft)-2.826 G
+(he)-2.826 E F1(extdeb)2.826 E(ug)-.2 E F0 .326
+(shell option is enabled\).)2.826 F .327(Functions may be e)5.327 F .327
+(xported so that subshells)-.15 F 1.298(automatically ha)108 537.6 R
1.598 -.15(ve t)-.2 H 1.298(hem de\214ned with the).15 F F1<ad66>3.798 E
F0 1.298(option to the)3.798 F F1(export)3.797 E F0 -.2(bu)3.797 G 3.797
(iltin. A).2 F 1.297(function de\214nition may be)3.797 F .16
-(deleted using the)108 108 R F1<ad66>2.66 E F0 .16(option to the)2.66 F
-F1(unset)2.66 E F0 -.2(bu)2.66 G 2.661(iltin. Note).2 F .161
+(deleted using the)108 549.6 R F1<ad66>2.66 E F0 .16(option to the)2.66
+F F1(unset)2.66 E F0 -.2(bu)2.66 G 2.661(iltin. Note).2 F .161
(that shell functions and v)2.661 F .161(ariables with the same name)
-.25 F 1.325(may result in multiple identically-named entries in the en)
-108 120 R 1.325(vironment passed to the shell')-.4 F 3.825(sc)-.55 G
-3.825(hildren. Care)-3.825 F(should be tak)108 132 Q
+108 561.6 R 1.325(vironment passed to the shell')-.4 F 3.825(sc)-.55 G
+3.825(hildren. Care)-3.825 F(should be tak)108 573.6 Q
(en in cases where this may cause a problem.)-.1 E .371
-(Functions may be recursi)108 148.8 R -.15(ve)-.25 G 5.371(.T).15 G(he)
+(Functions may be recursi)108 590.4 R -.15(ve)-.25 G 5.371(.T).15 G(he)
-5.371 E F1(FUNCNEST)2.871 E F0 -.25(va)2.871 G .371
(riable may be used to limit the depth of the function call).25 F 1.141
-(stack and restrict the number of function in)108 160.8 R -.2(vo)-.4 G
+(stack and restrict the number of function in)108 602.4 R -.2(vo)-.4 G
3.641(cations. By).2 F(def)3.641 E 1.141
-(ault, no limit is imposed on the number of)-.1 F(recursi)108 172.8 Q .3
--.15(ve c)-.25 H(alls.).15 E/F2 10.95/Times-Bold@0 SF(ARITHMETIC EV)72
-189.6 Q(ALU)-1.478 E -1.04(AT)-.657 G(ION)1.04 E F0 2.297
-(The shell allo)108 201.6 R 2.297(ws arithmetic e)-.25 F 2.297
-(xpressions to be e)-.15 F -.25(va)-.25 G 2.297
-(luated, under certain circumstances \(see the).25 F F1(let)4.798 E F0
-(and)4.798 E F1(declar)108 213.6 Q(e)-.18 E F0 -.2(bu)2.706 G .206
+(ault, no limit is imposed on the number of)-.1 F(recursi)108 614.4 Q .3
+-.15(ve c)-.25 H(alls.).15 E F2(ARITHMETIC EV)72 631.2 Q(ALU)-1.478 E
+-1.04(AT)-.657 G(ION)1.04 E F0 2.297(The shell allo)108 643.2 R 2.297
+(ws arithmetic e)-.25 F 2.297(xpressions to be e)-.15 F -.25(va)-.25 G
+2.297(luated, under certain circumstances \(see the).25 F F1(let)4.798 E
+F0(and)4.798 E F1(declar)108 655.2 Q(e)-.18 E F0 -.2(bu)2.706 G .206
(iltin commands and).2 F F1 .206(Arithmetic Expansion)2.706 F F0 2.705
(\). Ev)B .205(aluation is done in \214x)-.25 F .205(ed-width inte)-.15
-F .205(gers with no)-.15 F .428(check for o)108 225.6 R -.15(ve)-.15 G
+F .205(gers with no)-.15 F .428(check for o)108 667.2 R -.15(ve)-.15 G
(r\215o).15 E 1.728 -.65(w, t)-.25 H .428(hough di).65 F .428
(vision by 0 is trapped and \215agged as an error)-.25 F 5.429(.T)-.55 G
.429(he operators and their prece-)-5.429 F 1.92(dence, associati)108
-237.6 R(vity)-.25 E 4.42(,a)-.65 G 1.92(nd v)-4.42 F 1.92
+679.2 R(vity)-.25 E 4.42(,a)-.65 G 1.92(nd v)-4.42 F 1.92
(alues are the same as in the C language.)-.25 F 1.919(The follo)6.919 F
-1.919(wing list of operators is)-.25 F(grouped into le)108 249.6 Q -.15
+1.919(wing list of operators is)-.25 F(grouped into le)108 691.2 Q -.15
(ve)-.25 G(ls of equal-precedence operators.).15 E(The le)5 E -.15(ve)
--.25 G(ls are listed in order of decreasing precedence.).15 E/F3 10
-/Times-Italic@0 SF(id)108 266.4 Q F1(++)A F3(id)2.5 E F1<adad>A F0 -.25
-(va)144 278.4 S(riable post-increment and post-decrement).25 E F1(++)108
-290.4 Q F3(id)A F1<adad>2.5 E F3(id)A F0 -.25(va)144 302.4 S
-(riable pre-increment and pre-decrement).25 E F1 2.5<ad2b>108 314.4 S F0
-(unary minus and plus)19.6 E F1 2.5(!~)108 326.4 S F0
-(logical and bitwise ne)24.34 E -.05(ga)-.15 G(tion).05 E F1(**)108
-338.4 Q F0 -.15(ex)26 G(ponentiation).15 E F1 2.5(*/%)108 350.4 S F0
-(multiplication, di)10.72 E(vision, remainder)-.25 E F1 2.5<2bad>108
-362.4 S F0(addition, subtraction)19.6 E F1(<< >>)108 374.4 Q F0
-(left and right bitwise shifts)10.7 E F1(<= >= < >)108 386.4 Q F0
-(comparison)144 398.4 Q F1(== !=)108 410.4 Q F0(equality and inequality)
-13.07 E F1(&)108 422.4 Q F0(bitwise AND)27.67 E F1(^)108 434.4 Q F0
-(bitwise e)32.67 E(xclusi)-.15 E .3 -.15(ve O)-.25 H(R).15 E F1(|)108
-446.4 Q F0(bitwise OR)33.8 E F1(&&)108 458.4 Q F0(logical AND)19.34 E F1
-(||)108 470.4 Q F0(logical OR)31.6 E F3 -.2(ex)108 482.4 S(pr).2 E F1(?)
-A F3 -.2(ex)C(pr).2 E F1(:)A F3 -.2(ex)C(pr).2 E F0
-(conditional operator)144 494.4 Q F1 2.5(=*)108 506.4 S 2.5(=/)-2.5 G
-2.5(=%)-2.5 G 2.5(=+)-2.5 G 2.5<3dad>-2.5 G 2.5(=<)-2.5 G
-(<= >>= &= ^= |=)-2.5 E F0(assignment)144 518.4 Q F3 -.2(ex)108 530.4 S
-(pr1).2 E F1(,)2.5 E F3 -.2(ex)2.5 G(pr2).2 E F0(comma)144 542.4 Q .68
-(Shell v)108 559.2 R .68(ariables are allo)-.25 F .68
-(wed as operands; parameter e)-.25 F .68
+-.25 G(ls are listed in order of decreasing precedence.).15 E
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(28)200.665 E 0 Cg EP
+%%Page: 29 29
+%%BeginPageSetup
+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-Italic@0 SF(id)108 84 Q/F2 10/Times-Bold@0 SF(++)A F1
+(id)2.5 E F2<adad>A F0 -.25(va)144 96 S
+(riable post-increment and post-decrement).25 E F2(++)108 108 Q F1(id)A
+F2<adad>2.5 E F1(id)A F0 -.25(va)144 120 S
+(riable pre-increment and pre-decrement).25 E F2 2.5<ad2b>108 132 S F0
+(unary minus and plus)19.6 E F2 2.5(!~)108 144 S F0
+(logical and bitwise ne)24.34 E -.05(ga)-.15 G(tion).05 E F2(**)108 156
+Q F0 -.15(ex)26 G(ponentiation).15 E F2 2.5(*/%)108 168 S F0
+(multiplication, di)10.72 E(vision, remainder)-.25 E F2 2.5<2bad>108 180
+S F0(addition, subtraction)19.6 E F2(<< >>)108 192 Q F0
+(left and right bitwise shifts)10.7 E F2(<= >= < >)108 204 Q F0
+(comparison)144 216 Q F2(== !=)108 228 Q F0(equality and inequality)
+13.07 E F2(&)108 240 Q F0(bitwise AND)27.67 E F2(^)108 252 Q F0
+(bitwise e)32.67 E(xclusi)-.15 E .3 -.15(ve O)-.25 H(R).15 E F2(|)108
+264 Q F0(bitwise OR)33.8 E F2(&&)108 276 Q F0(logical AND)19.34 E F2(||)
+108 288 Q F0(logical OR)31.6 E F1 -.2(ex)108 300 S(pr).2 E F2(?)A F1 -.2
+(ex)C(pr).2 E F2(:)A F1 -.2(ex)C(pr).2 E F0(conditional operator)144 312
+Q F2 2.5(=*)108 324 S 2.5(=/)-2.5 G 2.5(=%)-2.5 G 2.5(=+)-2.5 G 2.5
+<3dad>-2.5 G 2.5(=<)-2.5 G(<= >>= &= ^= |=)-2.5 E F0(assignment)144 336
+Q F1 -.2(ex)108 348 S(pr1).2 E F2(,)2.5 E F1 -.2(ex)2.5 G(pr2).2 E F0
+(comma)144 360 Q .68(Shell v)108 376.8 R .68(ariables are allo)-.25 F
+.68(wed as operands; parameter e)-.25 F .68
(xpansion is performed before the e)-.15 F .68(xpression is e)-.15 F
--.25(va)-.25 G(lu-).25 E 3.508(ated. W)108 571.2 R 1.008(ithin an e)-.4
+-.25(va)-.25 G(lu-).25 E 3.508(ated. W)108 388.8 R 1.008(ithin an e)-.4
F 1.008(xpression, shell v)-.15 F 1.007
(ariables may also be referenced by name without using the parameter)
--.25 F -.15(ex)108 583.2 S 1.04(pansion syntax.).15 F 3.54(As)6.04 G
+-.25 F -.15(ex)108 400.8 S 1.04(pansion syntax.).15 F 3.54(As)6.04 G
1.04(hell v)-3.54 F 1.04(ariable that is null or unset e)-.25 F -.25(va)
-.25 G 1.041(luates to 0 when referenced by name without).25 F 1.467
-(using the parameter e)108 595.2 R 1.467(xpansion syntax.)-.15 F 1.467
+(using the parameter e)108 412.8 R 1.467(xpansion syntax.)-.15 F 1.467
(The v)6.467 F 1.467(alue of a v)-.25 F 1.467(ariable is e)-.25 F -.25
(va)-.25 G 1.466(luated as an arithmetic e).25 F(xpression)-.15 E 1.389
-(when it is referenced, or when a v)108 607.2 R 1.389
+(when it is referenced, or when a v)108 424.8 R 1.389
(ariable which has been gi)-.25 F -.15(ve)-.25 G 3.89(nt).15 G(he)-3.89
-E F3(inte)3.89 E -.1(ge)-.4 G(r).1 E F0(attrib)3.89 E 1.39(ute using)-.2
-F F1(declar)3.89 E 3.89(e-)-.18 G(i)-3.89 E F0(is)3.89 E .333
-(assigned a v)108 619.2 R 2.832(alue. A)-.25 F .332(null v)2.832 F .332
+E F1(inte)3.89 E -.1(ge)-.4 G(r).1 E F0(attrib)3.89 E 1.39(ute using)-.2
+F F2(declar)3.89 E 3.89(e-)-.18 G(i)-3.89 E F0(is)3.89 E .333
+(assigned a v)108 436.8 R 2.832(alue. A)-.25 F .332(null v)2.832 F .332
(alue e)-.25 F -.25(va)-.25 G .332(luates to 0.).25 F 2.832(As)5.332 G
.332(hell v)-2.832 F .332(ariable need not ha)-.25 F .632 -.15(ve i)-.2
-H(ts).15 E F3(inte)2.832 E -.1(ge)-.4 G(r).1 E F0(attrib)2.832 E .332
-(ute turned on)-.2 F(to be used in an e)108 631.2 Q(xpression.)-.15 E
+H(ts).15 E F1(inte)2.832 E -.1(ge)-.4 G(r).1 E F0(attrib)2.832 E .332
+(ute turned on)-.2 F(to be used in an e)108 448.8 Q(xpression.)-.15 E
1.406(Constants with a leading 0 are interpreted as octal numbers.)108
-648 R 3.906(Al)6.406 G 1.407(eading 0x or 0X denotes he)-3.906 F
-(xadecimal.)-.15 E .113(Otherwise, numbers tak)108 660 R 2.613(et)-.1 G
-.113(he form [)-2.613 F F3(base#)A F0 .112(]n, where the optional)B F3
+465.6 R 3.906(Al)6.406 G 1.407(eading 0x or 0X denotes he)-3.906 F
+(xadecimal.)-.15 E .113(Otherwise, numbers tak)108 477.6 R 2.613(et)-.1
+G .113(he form [)-2.613 F F1(base#)A F0 .112(]n, where the optional)B F1
(base)2.612 E F0 .112(is a decimal number between 2 and 64)2.612 F .533
-(representing the arithmetic base, and)108 672 R F3(n)3.033 E F0 .533
-(is a number in that base.)3.033 F(If)5.534 E F3(base#)3.034 E F0 .534
-(is omitted, then base 10 is used.)3.034 F .16(When specifying)108 684 R
-F3(n)2.66 E F0 2.66(,t)C .16
+(representing the arithmetic base, and)108 489.6 R F1(n)3.033 E F0 .533
+(is a number in that base.)3.033 F(If)5.534 E F1(base#)3.034 E F0 .534
+(is omitted, then base 10 is used.)3.034 F .16(When specifying)108 501.6
+R F1(n)2.66 E F0 2.66(,t)C .16
(he digits greater< than 9 are represented by the lo)-2.66 F .16
(wercase letters, the uppercase letters,)-.25 F .942
-(@, and _, in that order)108 696 R 5.942(.I)-.55 G(f)-5.942 E F3(base)
+(@, and _, in that order)108 513.6 R 5.942(.I)-.55 G(f)-5.942 E F1(base)
3.442 E F0 .942(is less than or equal to 36, lo)3.442 F .943
(wercase and uppercase letters may be used)-.25 F
-(interchangeably to represent numbers between 10 and 35.)108 708 Q .235
-(Operators are e)108 724.8 R -.25(va)-.25 G .235
+(interchangeably to represent numbers between 10 and 35.)108 525.6 Q
+.235(Operators are e)108 542.4 R -.25(va)-.25 G .235
(luated in order of precedence.).25 F(Sub-e)5.234 E .234
(xpressions in parentheses are e)-.15 F -.25(va)-.25 G .234
-(luated \214rst and may).25 F(GNU Bash 4.2)72 768 Q(2012 February 4)
-141.79 E(28)190.95 E 0 Cg EP
-%%Page: 29 29
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E -.15(ove)108 84 S(rride the precedence rules abo).15 E -.15(ve)
--.15 G(.).15 E/F1 10.95/Times-Bold@0 SF(CONDITION)72 100.8 Q
-(AL EXPRESSIONS)-.219 E F0 .255(Conditional e)108 112.8 R .255
-(xpressions are used by the)-.15 F/F2 10/Times-Bold@0 SF([[)2.755 E F0
-.255(compound command and the)2.755 F F2(test)2.755 E F0(and)2.755 E F2
-([)2.756 E F0 -.2(bu)2.756 G .256(iltin commands to test).2 F .77
-(\214le attrib)108 124.8 R .77
+(luated \214rst and may).25 F -.15(ove)108 554.4 S
+(rride the precedence rules abo).15 E -.15(ve)-.15 G(.).15 E/F3 10.95
+/Times-Bold@0 SF(CONDITION)72 571.2 Q(AL EXPRESSIONS)-.219 E F0 .255
+(Conditional e)108 583.2 R .255(xpressions are used by the)-.15 F F2([[)
+2.755 E F0 .255(compound command and the)2.755 F F2(test)2.755 E F0(and)
+2.755 E F2([)2.756 E F0 -.2(bu)2.756 G .256(iltin commands to test).2 F
+.77(\214le attrib)108 595.2 R .77
(utes and perform string and arithmetic comparisons.)-.2 F .77
(Expressions are formed from the follo)5.77 F(wing)-.25 E 1.04
-(unary or binary primaries.)108 136.8 R 1.04(If an)6.04 F(y)-.15 E/F3 10
-/Times-Italic@0 SF(\214le)3.54 E F0(ar)3.54 E 1.041
-(gument to one of the primaries is of the form)-.18 F F3(/de)3.541 E
+(unary or binary primaries.)108 607.2 R 1.04(If an)6.04 F(y)-.15 E F1
+(\214le)3.54 E F0(ar)3.54 E 1.041
+(gument to one of the primaries is of the form)-.18 F F1(/de)3.541 E
(v/fd/n)-.15 E F0 3.541(,t)C 1.041(hen \214le)-3.541 F(descriptor)108
-148.8 Q F3(n)3.789 E F0 1.289(is check)3.789 F 3.789(ed. If)-.1 F(the)
-3.789 E F3(\214le)3.789 E F0(ar)3.789 E 1.289
-(gument to one of the primaries is one of)-.18 F F3(/de)3.789 E(v/stdin)
--.15 E F0(,)A F3(/de)3.788 E(v/stdout)-.15 E F0 3.788(,o)C(r)-3.788 E F3
-(/de)108 160.8 Q(v/stderr)-.15 E F0 2.5<2c8c>C
+619.2 Q F1(n)3.789 E F0 1.289(is check)3.789 F 3.789(ed. If)-.1 F(the)
+3.789 E F1(\214le)3.789 E F0(ar)3.789 E 1.289
+(gument to one of the primaries is one of)-.18 F F1(/de)3.789 E(v/stdin)
+-.15 E F0(,)A F1(/de)3.788 E(v/stdout)-.15 E F0 3.788(,o)C(r)-3.788 E F1
+(/de)108 631.2 Q(v/stderr)-.15 E F0 2.5<2c8c>C
(le descriptor 0, 1, or 2, respecti)-2.5 E -.15(ve)-.25 G(ly).15 E 2.5
(,i)-.65 G 2.5(sc)-2.5 G(heck)-2.5 E(ed.)-.1 E .721
(Unless otherwise speci\214ed, primaries that operate on \214les follo)
-108 177.6 R 3.221(ws)-.25 G .722(ymbolic links and operate on the tar)
--3.221 F(get)-.18 E(of the link, rather than the link itself.)108 189.6
-Q 1.096(When used with)108 207.6 R F2([[)3.596 E F0 3.596(,t)C(he)-3.596
-E F2(<)3.596 E F0(and)3.595 E F2(>)3.595 E F0 1.095(operators sort le)
+108 648 R 3.221(ws)-.25 G .722(ymbolic links and operate on the tar)
+-3.221 F(get)-.18 E(of the link, rather than the link itself.)108 660 Q
+1.096(When used with)108 678 R F2([[)3.596 E F0 3.596(,t)C(he)-3.596 E
+F2(<)3.596 E F0(and)3.595 E F2(>)3.595 E F0 1.095(operators sort le)
3.595 F 1.095(xicographically using the current locale.)-.15 F(The)6.095
E F2(test)3.595 E F0(com-)3.595 E(mand sorts using ASCII ordering.)108
-219.6 Q F2<ad61>108 243.6 Q F3(\214le)2.5 E F0 -.35(Tr)10.58 G(ue if).35
-E F3(\214le)2.5 E F0 -.15(ex)2.5 G(ists.).15 E F2<ad62>108 255.6 Q F3
-(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35 E F3(\214le)2.5 E F0 -.15(ex)
-2.5 G(ists and is a block special \214le.).15 E F2<ad63>108 267.6 Q F3
-(\214le)2.5 E F0 -.35(Tr)11.14 G(ue if).35 E F3(\214le)2.5 E F0 -.15(ex)
-2.5 G(ists and is a character special \214le.).15 E F2<ad64>108 279.6 Q
-F3(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35 E F3(\214le)2.5 E F0 -.15
-(ex)2.5 G(ists and is a directory).15 E(.)-.65 E F2<ad65>108 291.6 Q F3
-(\214le)2.5 E F0 -.35(Tr)11.14 G(ue if).35 E F3(\214le)2.5 E F0 -.15(ex)
-2.5 G(ists.).15 E F2<ad66>108 303.6 Q F3(\214le)2.5 E F0 -.35(Tr)12.25 G
-(ue if).35 E F3(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is a re).15 E
-(gular \214le.)-.15 E F2<ad67>108 315.6 Q F3(\214le)2.5 E F0 -.35(Tr)
-10.58 G(ue if).35 E F3(\214le)2.5 E F0 -.15(ex)2.5 G
-(ists and is set-group-id.).15 E F2<ad68>108 327.6 Q F3(\214le)2.5 E F0
--.35(Tr)10.02 G(ue if).35 E F3(\214le)2.5 E F0 -.15(ex)2.5 G
-(ists and is a symbolic link.).15 E F2<ad6b>108 339.6 Q F3(\214le)2.5 E
-F0 -.35(Tr)10.02 G(ue if).35 E F3(\214le)2.5 E F0 -.15(ex)2.5 G
-(ists and its `).15 E(`stick)-.74 E(y')-.15 E 2.5('b)-.74 G(it is set.)
--2.5 E F2<ad70>108 351.6 Q F3(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35
-E F3(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is a named pipe \(FIFO\).)
-.15 E F2<ad72>108 363.6 Q F3(\214le)2.5 E F0 -.35(Tr)11.14 G(ue if).35 E
-F3(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is readable.).15 E F2<ad73>108
-375.6 Q F3(\214le)2.5 E F0 -.35(Tr)11.69 G(ue if).35 E F3(\214le)2.5 E
-F0 -.15(ex)2.5 G(ists and has a size greater than zero.).15 E F2<ad74>
-108 387.6 Q F3(fd)2.5 E F0 -.35(Tr)16.69 G(ue if \214le descriptor).35 E
-F3(fd)4.47 E F0(is open and refers to a terminal.)3.27 E F2<ad75>108
-399.6 Q F3(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35 E F3(\214le)2.5 E
-F0 -.15(ex)2.5 G(ists and its set-user).15 E(-id bit is set.)-.2 E F2
-<ad77>108 411.6 Q F3(\214le)2.5 E F0 -.35(Tr)8.36 G(ue if).35 E F3
-(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is writable.).15 E F2<ad78>108
-423.6 Q F3(\214le)2.5 E F0 -.35(Tr)10.58 G(ue if).35 E F3(\214le)2.5 E
-F0 -.15(ex)2.5 G(ists and is e).15 E -.15(xe)-.15 G(cutable.).15 E F2
-<ad47>108 435.6 Q F3(\214le)2.5 E F0 -.35(Tr)7.8 G(ue if).35 E F3
-(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is o).15 E(wned by the ef)-.25 E
-(fecti)-.25 E .3 -.15(ve g)-.25 H(roup id.).15 E F2<ad4c>108 447.6 Q F3
-(\214le)2.5 E F0 -.35(Tr)8.91 G(ue if).35 E F3(\214le)2.5 E F0 -.15(ex)
-2.5 G(ists and is a symbolic link.).15 E F2<ad4e>108 459.6 Q F3(\214le)
-2.5 E F0 -.35(Tr)8.36 G(ue if).35 E F3(\214le)2.5 E F0 -.15(ex)2.5 G
-(ists and has been modi\214ed since it w).15 E(as last read.)-.1 E F2
-<ad4f>108 471.6 Q F3(\214le)2.5 E F0 -.35(Tr)7.8 G(ue if).35 E F3
-(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is o).15 E(wned by the ef)-.25 E
-(fecti)-.25 E .3 -.15(ve u)-.25 H(ser id.).15 E F2<ad53>108 483.6 Q F3
-(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35 E F3(\214le)2.5 E F0 -.15(ex)
-2.5 G(ists and is a sock).15 E(et.)-.1 E F3(\214le1)108 495.6 Q F2
-(\255ef)2.5 E F3(\214le2)2.5 E F0 -.35(Tr)144 507.6 S(ue if).35 E F3
-(\214le1)2.5 E F0(and)2.5 E F3(\214le2)2.5 E F0(refer to the same de)2.5
-E(vice and inode numbers.)-.25 E F3(\214le1)108 519.6 Q F0<ad>2.5 E F2
-(nt)A F3(\214le2)2.5 E F0 -.35(Tr)144 531.6 S .038(ue if).35 F F3
-(\214le1)2.538 E F0 .039(is ne)2.539 F .039
-(wer \(according to modi\214cation date\) than)-.25 F F3(\214le2)2.539 E
-F0 2.539(,o)C 2.539(ri)-2.539 G(f)-2.539 E F3(\214le1)2.539 E F0 -.15
-(ex)2.539 G .039(ists and).15 F F3(\214le2)2.539 E F0 .039(does not.)
-2.539 F F3(\214le1)108 543.6 Q F0<ad>2.5 E F2(ot)A F3(\214le2)2.5 E F0
--.35(Tr)144 555.6 S(ue if).35 E F3(\214le1)2.5 E F0(is older than)2.5 E
-F3(\214le2)2.5 E F0 2.5(,o)C 2.5(ri)-2.5 G(f)-2.5 E F3(\214le2)2.5 E F0
--.15(ex)2.5 G(ists and).15 E F3(\214le1)2.5 E F0(does not.)2.5 E F2
-<ad6f>108 567.6 Q F3(optname)2.5 E F0 -.35(Tr)144 579.6 S .263
-(ue if the shell option).35 F F3(optname)2.992 E F0 .262(is enabled.)
-2.942 F .262(See the list of options under the description of the)5.262
-F F2<ad6f>2.762 E F0(option to the)144 591.6 Q F2(set)2.5 E F0 -.2(bu)
-2.5 G(iltin belo).2 E -.65(w.)-.25 G F2<ad76>108 603.6 Q F3(varname)2.5
-E F0 -.35(Tr)144 615.6 S(ue if the shell v).35 E(ariable)-.25 E F3
-(varname)2.79 E F0(is set \(has been assigned a v)2.68 E(alue\).)-.25 E
-F2<ad7a>108 627.6 Q F3(string)2.5 E F0 -.35(Tr)144 639.6 S
-(ue if the length of).35 E F3(string)2.5 E F0(is zero.)2.5 E F3(string)
-108 651.6 Q F2<ad6e>108 663.6 Q F3(string)2.5 E F0 -.35(Tr)144 675.6 S
-(ue if the length of).35 E F3(string)2.84 E F0(is non-zero.)2.72 E F3
-(string1)108 692.4 Q F2(==)2.5 E F3(string2)2.5 E(string1)108 704.4 Q F2
-(=)2.5 E F3(string2)2.5 E F0 -.35(Tr)144 716.4 S
-(ue if the strings are equal.).35 E F2(=)5 E F0(should be used with the)
-2.5 E F2(test)2.5 E F0(command for POSIX conformance.)2.5 E
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(29)190.95 E 0 Cg EP
+690 Q F2<ad61>108 714 Q F1(\214le)2.5 E F0 -.35(Tr)10.58 G(ue if).35 E
+F1(\214le)2.5 E F0 -.15(ex)2.5 G(ists.).15 E(GNU Bash 4.2)72 768 Q
+(2012 July 5)151.505 E(29)200.665 E 0 Cg EP
%%Page: 30 30
%%BeginPageSetup
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-Italic@0 SF(string1)108 84 Q/F2 10/Times-Bold@0 SF
-(!=)2.5 E F1(string2)2.5 E F0 -.35(Tr)144 96 S
-(ue if the strings are not equal.).35 E F1(string1)108 112.8 Q F2(<)2.5
-E F1(string2)2.5 E F0 -.35(Tr)144 124.8 S(ue if).35 E F1(string1)2.5 E
-F0(sorts before)2.5 E F1(string2)2.5 E F0(le)2.5 E(xicographically)-.15
-E(.)-.65 E F1(string1)108 141.6 Q F2(>)2.5 E F1(string2)2.5 E F0 -.35
-(Tr)144 153.6 S(ue if).35 E F1(string1)2.5 E F0(sorts after)2.5 E F1
-(string2)2.5 E F0(le)2.5 E(xicographically)-.15 E(.)-.65 E F1(ar)108.33
-170.4 Q(g1)-.37 E F2(OP)2.5 E F1(ar)2.5 E(g2)-.37 E/F3 9/Times-Bold@0 SF
-(OP)144 182.4 Q F0 .385(is one of)2.634 F F2(\255eq)2.885 E F0(,)A F2
-(\255ne)2.885 E F0(,)A F2(\255lt)2.885 E F0(,)A F2(\255le)2.885 E F0(,)A
-F2(\255gt)2.885 E F0 2.885(,o)C(r)-2.885 E F2(\255ge)2.885 E F0 5.385
-(.T)C .385(hese arithmetic binary operators return true if)-5.385 F F1
+-.35 E/F1 10/Times-Bold@0 SF<ad62>108 84 Q/F2 10/Times-Italic@0 SF
+(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)
+2.5 G(ists and is a block special \214le.).15 E F1<ad63>108 96 Q F2
+(\214le)2.5 E F0 -.35(Tr)11.14 G(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)
+2.5 G(ists and is a character special \214le.).15 E F1<ad64>108 108 Q F2
+(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)
+2.5 G(ists and is a directory).15 E(.)-.65 E F1<ad65>108 120 Q F2
+(\214le)2.5 E F0 -.35(Tr)11.14 G(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)
+2.5 G(ists.).15 E F1<ad66>108 132 Q F2(\214le)2.5 E F0 -.35(Tr)12.25 G
+(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is a re).15 E
+(gular \214le.)-.15 E F1<ad67>108 144 Q F2(\214le)2.5 E F0 -.35(Tr)10.58
+G(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)2.5 G
+(ists and is set-group-id.).15 E F1<ad68>108 156 Q F2(\214le)2.5 E F0
+-.35(Tr)10.02 G(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)2.5 G
+(ists and is a symbolic link.).15 E F1<ad6b>108 168 Q F2(\214le)2.5 E F0
+-.35(Tr)10.02 G(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)2.5 G
+(ists and its `).15 E(`stick)-.74 E(y')-.15 E 2.5('b)-.74 G(it is set.)
+-2.5 E F1<ad70>108 180 Q F2(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35 E
+F2(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is a named pipe \(FIFO\).).15
+E F1<ad72>108 192 Q F2(\214le)2.5 E F0 -.35(Tr)11.14 G(ue if).35 E F2
+(\214le)2.5 E F0 -.15(ex)2.5 G(ists and is readable.).15 E F1<ad73>108
+204 Q F2(\214le)2.5 E F0 -.35(Tr)11.69 G(ue if).35 E F2(\214le)2.5 E F0
+-.15(ex)2.5 G(ists and has a size greater than zero.).15 E F1<ad74>108
+216 Q F2(fd)2.5 E F0 -.35(Tr)16.69 G(ue if \214le descriptor).35 E F2
+(fd)4.47 E F0(is open and refers to a terminal.)3.27 E F1<ad75>108 228 Q
+F2(\214le)2.5 E F0 -.35(Tr)10.02 G(ue if).35 E F2(\214le)2.5 E F0 -.15
+(ex)2.5 G(ists and its set-user).15 E(-id bit is set.)-.2 E F1<ad77>108
+240 Q F2(\214le)2.5 E F0 -.35(Tr)8.36 G(ue if).35 E F2(\214le)2.5 E F0
+-.15(ex)2.5 G(ists and is writable.).15 E F1<ad78>108 252 Q F2(\214le)
+2.5 E F0 -.35(Tr)10.58 G(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)2.5 G
+(ists and is e).15 E -.15(xe)-.15 G(cutable.).15 E F1<ad47>108 264 Q F2
+(\214le)2.5 E F0 -.35(Tr)7.8 G(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)
+2.5 G(ists and is o).15 E(wned by the ef)-.25 E(fecti)-.25 E .3 -.15
+(ve g)-.25 H(roup id.).15 E F1<ad4c>108 276 Q F2(\214le)2.5 E F0 -.35
+(Tr)8.91 G(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)2.5 G
+(ists and is a symbolic link.).15 E F1<ad4e>108 288 Q F2(\214le)2.5 E F0
+-.35(Tr)8.36 G(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)2.5 G
+(ists and has been modi\214ed since it w).15 E(as last read.)-.1 E F1
+<ad4f>108 300 Q F2(\214le)2.5 E F0 -.35(Tr)7.8 G(ue if).35 E F2(\214le)
+2.5 E F0 -.15(ex)2.5 G(ists and is o).15 E(wned by the ef)-.25 E(fecti)
+-.25 E .3 -.15(ve u)-.25 H(ser id.).15 E F1<ad53>108 312 Q F2(\214le)2.5
+E F0 -.35(Tr)10.02 G(ue if).35 E F2(\214le)2.5 E F0 -.15(ex)2.5 G
+(ists and is a sock).15 E(et.)-.1 E F2(\214le1)108 324 Q F1(\255ef)2.5 E
+F2(\214le2)2.5 E F0 -.35(Tr)144 336 S(ue if).35 E F2(\214le1)2.5 E F0
+(and)2.5 E F2(\214le2)2.5 E F0(refer to the same de)2.5 E
+(vice and inode numbers.)-.25 E F2(\214le1)108 348 Q F0<ad>2.5 E F1(nt)A
+F2(\214le2)2.5 E F0 -.35(Tr)144 360 S .038(ue if).35 F F2(\214le1)2.538
+E F0 .039(is ne)2.539 F .039
+(wer \(according to modi\214cation date\) than)-.25 F F2(\214le2)2.539 E
+F0 2.539(,o)C 2.539(ri)-2.539 G(f)-2.539 E F2(\214le1)2.539 E F0 -.15
+(ex)2.539 G .039(ists and).15 F F2(\214le2)2.539 E F0 .039(does not.)
+2.539 F F2(\214le1)108 372 Q F0<ad>2.5 E F1(ot)A F2(\214le2)2.5 E F0
+-.35(Tr)144 384 S(ue if).35 E F2(\214le1)2.5 E F0(is older than)2.5 E F2
+(\214le2)2.5 E F0 2.5(,o)C 2.5(ri)-2.5 G(f)-2.5 E F2(\214le2)2.5 E F0
+-.15(ex)2.5 G(ists and).15 E F2(\214le1)2.5 E F0(does not.)2.5 E F1
+<ad6f>108 396 Q F2(optname)2.5 E F0 -.35(Tr)144 408 S .263
+(ue if the shell option).35 F F2(optname)2.992 E F0 .262(is enabled.)
+2.942 F .262(See the list of options under the description of the)5.262
+F F1<ad6f>2.762 E F0(option to the)144 420 Q F1(set)2.5 E F0 -.2(bu)2.5
+G(iltin belo).2 E -.65(w.)-.25 G F1<ad76>108 432 Q F2(varname)2.5 E F0
+-.35(Tr)144 444 S(ue if the shell v).35 E(ariable)-.25 E F2(varname)2.79
+E F0(is set \(has been assigned a v)2.68 E(alue\).)-.25 E F1<ad7a>108
+456 Q F2(string)2.5 E F0 -.35(Tr)144 468 S(ue if the length of).35 E F2
+(string)2.5 E F0(is zero.)2.5 E F2(string)108 480 Q F1<ad6e>108 492 Q F2
+(string)2.5 E F0 -.35(Tr)144 504 S(ue if the length of).35 E F2(string)
+2.84 E F0(is non-zero.)2.72 E F2(string1)108 520.8 Q F1(==)2.5 E F2
+(string2)2.5 E(string1)108 532.8 Q F1(=)2.5 E F2(string2)2.5 E F0 -.35
+(Tr)144 544.8 S(ue if the strings are equal.).35 E F1(=)5 E F0
+(should be used with the)2.5 E F1(test)2.5 E F0
+(command for POSIX conformance.)2.5 E F2(string1)108 561.6 Q F1(!=)2.5 E
+F2(string2)2.5 E F0 -.35(Tr)144 573.6 S
+(ue if the strings are not equal.).35 E F2(string1)108 590.4 Q F1(<)2.5
+E F2(string2)2.5 E F0 -.35(Tr)144 602.4 S(ue if).35 E F2(string1)2.5 E
+F0(sorts before)2.5 E F2(string2)2.5 E F0(le)2.5 E(xicographically)-.15
+E(.)-.65 E F2(string1)108 619.2 Q F1(>)2.5 E F2(string2)2.5 E F0 -.35
+(Tr)144 631.2 S(ue if).35 E F2(string1)2.5 E F0(sorts after)2.5 E F2
+(string2)2.5 E F0(le)2.5 E(xicographically)-.15 E(.)-.65 E F2(ar)108.33
+648 Q(g1)-.37 E F1(OP)2.5 E F2(ar)2.5 E(g2)-.37 E/F3 9/Times-Bold@0 SF
+(OP)144 660 Q F0 .385(is one of)2.634 F F1(\255eq)2.885 E F0(,)A F1
+(\255ne)2.885 E F0(,)A F1(\255lt)2.885 E F0(,)A F1(\255le)2.885 E F0(,)A
+F1(\255gt)2.885 E F0 2.885(,o)C(r)-2.885 E F1(\255ge)2.885 E F0 5.385
+(.T)C .385(hese arithmetic binary operators return true if)-5.385 F F2
(ar)2.885 E(g1)-.37 E F0 .845(is equal to, not equal to, less than, les\
-s than or equal to, greater than, or greater than or equal to)144 194.4
-R F1(ar)144 206.4 Q(g2)-.37 E F0 2.5(,r)C(especti)-2.5 E -.15(ve)-.25 G
-(ly).15 E(.)-.65 E F1(Ar)6.01 E(g1)-.37 E F0(and)2.5 E F1(ar)2.83 E(g2)
--.37 E F0(may be positi)2.52 E .3 -.15(ve o)-.25 H 2.5(rn).15 G -2.25
--.15(eg a)-2.5 H(ti).15 E .3 -.15(ve i)-.25 H(nte).15 E(gers.)-.15 E/F4
-10.95/Times-Bold@0 SF(SIMPLE COMMAND EXP)72 223.2 Q(ANSION)-.81 E F0
-.613(When a simple command is e)108 235.2 R -.15(xe)-.15 G .614
+s than or equal to, greater than, or greater than or equal to)144 672 R
+F2(ar)144 684 Q(g2)-.37 E F0 2.5(,r)C(especti)-2.5 E -.15(ve)-.25 G(ly)
+.15 E(.)-.65 E F2(Ar)6.01 E(g1)-.37 E F0(and)2.5 E F2(ar)2.83 E(g2)-.37
+E F0(may be positi)2.52 E .3 -.15(ve o)-.25 H 2.5(rn).15 G -2.25 -.15
+(eg a)-2.5 H(ti).15 E .3 -.15(ve i)-.25 H(nte).15 E(gers.)-.15 E/F4
+10.95/Times-Bold@0 SF(SIMPLE COMMAND EXP)72 700.8 Q(ANSION)-.81 E F0
+.613(When a simple command is e)108 712.8 R -.15(xe)-.15 G .614
(cuted, the shell performs the follo).15 F .614(wing e)-.25 F .614
(xpansions, assignments, and redi-)-.15 F(rections, from left to right.)
-108 247.2 Q 26(1. The)108 264 R -.1(wo)4.349 G 1.849
+108 724.8 Q(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(30)200.665 E 0
+Cg EP
+%%Page: 31 31
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E 26(1. The)108 84 R -.1(wo)4.349 G 1.849
(rds that the parser has mark).1 F 1.848(ed as v)-.1 F 1.848
(ariable assignments \(those preceding the command)-.25 F
-(name\) and redirections are sa)144 276 Q -.15(ve)-.2 G 2.5(df).15 G
-(or later processing.)-2.5 E 26(2. The)108 292.8 R -.1(wo)3.663 G 1.163
+(name\) and redirections are sa)144 96 Q -.15(ve)-.2 G 2.5(df).15 G
+(or later processing.)-2.5 E 26(2. The)108 112.8 R -.1(wo)3.663 G 1.163
(rds that are not v).1 F 1.164
(ariable assignments or redirections are e)-.25 F 3.664(xpanded. If)-.15
F(an)3.664 E 3.664(yw)-.15 G 1.164(ords remain)-3.764 F .776(after e)144
-304.8 R .776(xpansion, the \214rst w)-.15 F .776(ord is tak)-.1 F .775
+124.8 R .776(xpansion, the \214rst w)-.15 F .776(ord is tak)-.1 F .775
(en to be the name of the command and the remaining w)-.1 F(ords)-.1 E
-(are the ar)144 316.8 Q(guments.)-.18 E 26(3. Redirections)108 333.6 R
-(are performed as described abo)2.5 E .3 -.15(ve u)-.15 H(nder).15 E F3
-(REDIRECTION)2.5 E/F5 9/Times-Roman@0 SF(.)A F0 26(4. The)108 350.4 R
-(te)3.216 E .717(xt after the)-.15 F F2(=)3.217 E F0 .717(in each v)
-3.217 F .717(ariable assignment under)-.25 F .717(goes tilde e)-.18 F
-.717(xpansion, parameter e)-.15 F(xpansion,)-.15 E .34
-(command substitution, arithmetic e)144 362.4 R .339
+(are the ar)144 136.8 Q(guments.)-.18 E 26(3. Redirections)108 153.6 R
+(are performed as described abo)2.5 E .3 -.15(ve u)-.15 H(nder).15 E/F1
+9/Times-Bold@0 SF(REDIRECTION)2.5 E/F2 9/Times-Roman@0 SF(.)A F0 26
+(4. The)108 170.4 R(te)3.216 E .717(xt after the)-.15 F/F3 10
+/Times-Bold@0 SF(=)3.217 E F0 .717(in each v)3.217 F .717
+(ariable assignment under)-.25 F .717(goes tilde e)-.18 F .717
+(xpansion, parameter e)-.15 F(xpansion,)-.15 E .34
+(command substitution, arithmetic e)144 182.4 R .339
(xpansion, and quote remo)-.15 F -.25(va)-.15 G 2.839(lb).25 G .339
-(efore being assigned to the v)-2.839 F(ari-)-.25 E(able.)144 374.4 Q
-.332(If no command name results, the v)108 391.2 R .332
+(efore being assigned to the v)-2.839 F(ari-)-.25 E(able.)144 194.4 Q
+.332(If no command name results, the v)108 211.2 R .332
(ariable assignments af)-.25 F .332(fect the current shell en)-.25 F
-2.833(vironment. Otherwise,)-.4 F(the)2.833 E -.25(va)108 403.2 S .757
+2.833(vironment. Otherwise,)-.4 F(the)2.833 E -.25(va)108 223.2 S .757
(riables are added to the en).25 F .757(vironment of the e)-.4 F -.15
(xe)-.15 G .757(cuted command and do not af).15 F .757
-(fect the current shell en)-.25 F(vi-)-.4 E 3.176(ronment. If)108 415.2
+(fect the current shell en)-.25 F(vi-)-.4 E 3.176(ronment. If)108 235.2
R(an)3.176 E 3.176(yo)-.15 G 3.176(ft)-3.176 G .677
(he assignments attempts to assign a v)-3.176 F .677
(alue to a readonly v)-.25 F .677(ariable, an error occurs, and)-.25 F
-(the command e)108 427.2 Q(xits with a non-zero status.)-.15 E .15
-(If no command name results, redirections are performed, b)108 444 R
+(the command e)108 247.2 Q(xits with a non-zero status.)-.15 E .15
+(If no command name results, redirections are performed, b)108 264 R
.149(ut do not af)-.2 F .149(fect the current shell en)-.25 F 2.649
-(vironment. A)-.4 F(redirection error causes the command to e)108 456 Q
+(vironment. A)-.4 F(redirection error causes the command to e)108 276 Q
(xit with a non-zero status.)-.15 E 1.064
-(If there is a command name left after e)108 472.8 R 1.064(xpansion, e)
+(If there is a command name left after e)108 292.8 R 1.064(xpansion, e)
-.15 F -.15(xe)-.15 G 1.064(cution proceeds as described belo).15 F
4.864 -.65(w. O)-.25 H 1.064(therwise, the).65 F .069(command e)108
-484.8 R 2.569(xits. If)-.15 F .069(one of the e)2.569 F .069
+304.8 R 2.569(xits. If)-.15 F .069(one of the e)2.569 F .069
(xpansions contained a command substitution, the e)-.15 F .068
-(xit status of the command)-.15 F .466(is the e)108 496.8 R .466
+(xit status of the command)-.15 F .466(is the e)108 316.8 R .466
(xit status of the last command substitution performed.)-.15 F .467
-(If there were no command substitutions, the)5.466 F(command e)108 508.8
-Q(xits with a status of zero.)-.15 E F4(COMMAND EXECUTION)72 525.6 Q F0
-.547(After a command has been split into w)108 537.6 R .546
+(If there were no command substitutions, the)5.466 F(command e)108 328.8
+Q(xits with a status of zero.)-.15 E/F4 10.95/Times-Bold@0 SF
+(COMMAND EXECUTION)72 345.6 Q F0 .547
+(After a command has been split into w)108 357.6 R .546
(ords, if it results in a simple command and an optional list of ar)-.1
-F(gu-)-.18 E(ments, the follo)108 549.6 Q(wing actions are tak)-.25 E
+F(gu-)-.18 E(ments, the follo)108 369.6 Q(wing actions are tak)-.25 E
(en.)-.1 E .379(If the command name contains no slashes, the shell atte\
-mpts to locate it.)108 566.4 R .379(If there e)5.379 F .379
+mpts to locate it.)108 386.4 R .379(If there e)5.379 F .379
(xists a shell function by)-.15 F .246(that name, that function is in)
-108 578.4 R -.2(vo)-.4 G -.1(ke).2 G 2.746(da).1 G 2.746(sd)-2.746 G
-.246(escribed abo)-2.746 F .546 -.15(ve i)-.15 H(n).15 E F3(FUNCTIONS)
-2.746 E F5(.)A F0 .246(If the name does not match a func-)4.746 F
-(tion, the shell searches for it in the list of shell b)108 590.4 Q 2.5
+108 398.4 R -.2(vo)-.4 G -.1(ke).2 G 2.746(da).1 G 2.746(sd)-2.746 G
+.246(escribed abo)-2.746 F .546 -.15(ve i)-.15 H(n).15 E F1(FUNCTIONS)
+2.746 E F2(.)A F0 .246(If the name does not match a func-)4.746 F
+(tion, the shell searches for it in the list of shell b)108 410.4 Q 2.5
(uiltins. If)-.2 F 2.5(am)2.5 G(atch is found, that b)-2.5 E
(uiltin is in)-.2 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E .309
-(If the name is neither a shell function nor a b)108 607.2 R .31
-(uiltin, and contains no slashes,)-.2 F F2(bash)2.81 E F0 .31
-(searches each element of)2.81 F(the)108 619.2 Q F3 -.666(PA)3.163 G(TH)
+(If the name is neither a shell function nor a b)108 427.2 R .31
+(uiltin, and contains no slashes,)-.2 F F3(bash)2.81 E F0 .31
+(searches each element of)2.81 F(the)108 439.2 Q F1 -.666(PA)3.163 G(TH)
-.189 E F0 .662(for a directory containing an e)2.913 F -.15(xe)-.15 G
-.662(cutable \214le by that name.).15 F F2(Bash)5.662 E F0 .662
+.662(cutable \214le by that name.).15 F F3(Bash)5.662 E F0 .662
(uses a hash table to remember)3.162 F 1.914(the full pathnames of e)108
-631.2 R -.15(xe)-.15 G 1.915(cutable \214les \(see).15 F F2(hash)4.415 E
-F0(under)4.415 E F3 1.915(SHELL B)4.415 F(UIL)-.09 E 1.915(TIN COMMANDS)
+451.2 R -.15(xe)-.15 G 1.915(cutable \214les \(see).15 F F3(hash)4.415 E
+F0(under)4.415 E F1 1.915(SHELL B)4.415 F(UIL)-.09 E 1.915(TIN COMMANDS)
-.828 F F0(belo)4.165 E 4.415(w\). A)-.25 F(full)4.415 E .72
-(search of the directories in)108 643.2 R F3 -.666(PA)3.22 G(TH)-.189 E
+(search of the directories in)108 463.2 R F1 -.666(PA)3.22 G(TH)-.189 E
F0 .719
(is performed only if the command is not found in the hash table.)2.97 F
.719(If the)5.719 F .956(search is unsuccessful, the shell searches for\
- a de\214ned shell function named)108 655.2 R F2(command_not_f)3.456 E
-(ound_han-)-.25 E(dle)108 667.2 Q F0 5.278(.I)C 2.778(ft)-5.278 G .278
+ a de\214ned shell function named)108 475.2 R F3(command_not_f)3.456 E
+(ound_han-)-.25 E(dle)108 487.2 Q F0 5.278(.I)C 2.778(ft)-5.278 G .278
(hat function e)-2.778 F .278(xists, it is in)-.15 F -.2(vo)-.4 G -.1
(ke).2 G 2.778(dw).1 G .277
(ith the original command and the original command')-2.778 F 2.777(sa)
--.55 G -.18(rg)-2.777 G(uments).18 E .775(as its ar)108 679.2 R .775
+-.55 G -.18(rg)-2.777 G(uments).18 E .775(as its ar)108 499.2 R .775
(guments, and the function')-.18 F 3.275(se)-.55 G .775
(xit status becomes the e)-3.425 F .775(xit status of the shell.)-.15 F
.776(If that function is not)5.776 F
-(de\214ned, the shell prints an error message and returns an e)108 691.2
+(de\214ned, the shell prints an error message and returns an e)108 511.2
Q(xit status of 127.)-.15 E 1.089(If the search is successful, or if th\
-e command name contains one or more slashes, the shell e)108 708 R -.15
-(xe)-.15 G 1.089(cutes the).15 F 2.31(named program in a separate e)108
-720 R -.15(xe)-.15 G 2.31(cution en).15 F 4.81(vironment. Ar)-.4 F 2.31
-(gument 0 is set to the name gi)-.18 F -.15(ve)-.25 G 2.31(n, and the)
-.15 F(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(30)190.95 E 0 Cg EP
-%%Page: 31 31
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(remaining ar)108 84 Q(guments to the command are set to the ar)
--.18 E(guments gi)-.18 E -.15(ve)-.25 G(n, if an).15 E -.65(y.)-.15 G
-1.809(If this e)108 100.8 R -.15(xe)-.15 G 1.809(cution f).15 F 1.809
+e command name contains one or more slashes, the shell e)108 528 R -.15
+(xe)-.15 G 1.089(cutes the).15 F .197(named program in a separate e)108
+540 R -.15(xe)-.15 G .197(cution en).15 F 2.698(vironment. Ar)-.4 F .198
+(gument 0 is set to the name gi)-.18 F -.15(ve)-.25 G .198
+(n, and the remain-).15 F(ing ar)108 552 Q
+(guments to the command are set to the ar)-.18 E(guments gi)-.18 E -.15
+(ve)-.25 G(n, if an).15 E -.65(y.)-.15 G 1.809(If this e)108 568.8 R
+-.15(xe)-.15 G 1.809(cution f).15 F 1.809
(ails because the \214le is not in e)-.1 F -.15(xe)-.15 G 1.809
(cutable format, and the \214le is not a directory).15 F 4.309(,i)-.65 G
-4.309(ti)-4.309 G(s)-4.309 E .677(assumed to be a)108 112.8 R/F1 10
+4.309(ti)-4.309 G(s)-4.309 E .677(assumed to be a)108 580.8 R/F5 10
/Times-Italic@0 SF .678(shell script)3.177 F F0 3.178(,a\214)C .678
(le containing shell commands.)-3.178 F 3.178(As)5.678 G .678
(ubshell is spa)-3.178 F .678(wned to e)-.15 F -.15(xe)-.15 G .678
(cute it.).15 F(This)5.678 E .33
-(subshell reinitializes itself, so that the ef)108 124.8 R .33
+(subshell reinitializes itself, so that the ef)108 592.8 R .33
(fect is as if a ne)-.25 F 2.829(ws)-.25 G .329(hell had been in)-2.829
F -.2(vo)-.4 G -.1(ke).2 G 2.829(dt).1 G 2.829(oh)-2.829 G .329
-(andle the script, with)-2.829 F 1.219(the e)108 136.8 R 1.219
+(andle the script, with)-2.829 F 1.219(the e)108 604.8 R 1.219
(xception that the locations of commands remembered by the parent \(see)
--.15 F/F2 10/Times-Bold@0 SF(hash)3.719 E F0(belo)3.719 E 3.719(wu)-.25
-G(nder)-3.719 E/F3 9/Times-Bold@0 SF(SHELL)3.719 E -.09(BU)108 148.8 S
-(IL).09 E(TIN COMMANDS)-.828 E/F4 9/Times-Roman@0 SF(\))A F0
-(are retained by the child.)2.25 E .348(If the program is a \214le be)
-108 165.6 R .348(ginning with)-.15 F F2(#!)2.848 E F0 2.848(,t)C .347(h\
+-.15 F F3(hash)3.719 E F0(belo)3.719 E 3.719(wu)-.25 G(nder)-3.719 E F1
+(SHELL)3.719 E -.09(BU)108 616.8 S(IL).09 E(TIN COMMANDS)-.828 E F2(\))A
+F0(are retained by the child.)2.25 E .348(If the program is a \214le be)
+108 633.6 R .348(ginning with)-.15 F F3(#!)2.848 E F0 2.848(,t)C .347(h\
e remainder of the \214rst line speci\214es an interpreter for the pro-)
--2.848 F 3.178(gram. The)108 177.6 R .678(shell e)3.178 F -.15(xe)-.15 G
+-2.848 F 3.178(gram. The)108 645.6 R .678(shell e)3.178 F -.15(xe)-.15 G
.678(cutes the speci\214ed interpreter on operating systems that do not\
handle this e).15 F -.15(xe)-.15 G(cutable).15 E 1.193(format themselv)
-108 189.6 R 3.693(es. The)-.15 F(ar)3.693 E 1.193
+108 657.6 R 3.693(es. The)-.15 F(ar)3.693 E 1.193
(guments to the interpreter consist of a single optional ar)-.18 F 1.192
(gument follo)-.18 F 1.192(wing the)-.25 F 1.13
-(interpreter name on the \214rst line of the program, follo)108 201.6 R
+(interpreter name on the \214rst line of the program, follo)108 669.6 R
1.131(wed by the name of the program, follo)-.25 F 1.131(wed by the)-.25
-F(command ar)108 213.6 Q(guments, if an)-.18 E -.65(y.)-.15 G/F5 10.95
-/Times-Bold@0 SF(COMMAND EXECUTION ENVIR)72 230.4 Q(ONMENT)-.329 E F0
-(The shell has an)108 242.4 Q F1 -.2(ex)2.5 G(ecution en).2 E(vir)-.4 E
-(onment)-.45 E F0 2.5(,w)C(hich consists of the follo)-2.5 E(wing:)-.25
-E 32.5<836f>108 259.2 S 1.406(pen \214les inherited by the shell at in)
--32.5 F -.2(vo)-.4 G 1.405
-(cation, as modi\214ed by redirections supplied to the).2 F F2(exec)
-3.905 E F0 -.2(bu)144 271.2 S(iltin).2 E 32.5<8374>108 288 S
-(he current w)-32.5 E(orking directory as set by)-.1 E F2(cd)2.5 E F0(,)
-A F2(pushd)2.5 E F0 2.5(,o)C(r)-2.5 E F2(popd)2.5 E F0 2.5(,o)C 2.5(ri)
--2.5 G(nherited by the shell at in)-2.5 E -.2(vo)-.4 G(cation).2 E 32.5
-<8374>108 304.8 S(he \214le creation mode mask as set by)-32.5 E F2
-(umask)2.5 E F0(or inherited from the shell')2.5 E 2.5(sp)-.55 G(arent)
--2.5 E 32.5<8363>108 321.6 S(urrent traps set by)-32.5 E F2(trap)2.5 E
-F0 32.5<8373>108 338.4 S .256(hell parameters that are set by v)-32.5 F
-.256(ariable assignment or with)-.25 F F2(set)2.756 E F0 .257
+F(command ar)108 681.6 Q(guments, if an)-.18 E -.65(y.)-.15 G F4
+(COMMAND EXECUTION ENVIR)72 698.4 Q(ONMENT)-.329 E F0(The shell has an)
+108 710.4 Q F5 -.2(ex)2.5 G(ecution en).2 E(vir)-.4 E(onment)-.45 E F0
+2.5(,w)C(hich consists of the follo)-2.5 E(wing:)-.25 E(GNU Bash 4.2)72
+768 Q(2012 July 5)151.505 E(31)200.665 E 0 Cg EP
+%%Page: 32 32
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E 32.5<836f>108 84 S 1.406
+(pen \214les inherited by the shell at in)-32.5 F -.2(vo)-.4 G 1.405
+(cation, as modi\214ed by redirections supplied to the).2 F/F1 10
+/Times-Bold@0 SF(exec)3.905 E F0 -.2(bu)144 96 S(iltin).2 E 32.5<8374>
+108 112.8 S(he current w)-32.5 E(orking directory as set by)-.1 E F1(cd)
+2.5 E F0(,)A F1(pushd)2.5 E F0 2.5(,o)C(r)-2.5 E F1(popd)2.5 E F0 2.5
+(,o)C 2.5(ri)-2.5 G(nherited by the shell at in)-2.5 E -.2(vo)-.4 G
+(cation).2 E 32.5<8374>108 129.6 S
+(he \214le creation mode mask as set by)-32.5 E F1(umask)2.5 E F0
+(or inherited from the shell')2.5 E 2.5(sp)-.55 G(arent)-2.5 E 32.5
+<8363>108 146.4 S(urrent traps set by)-32.5 E F1(trap)2.5 E F0 32.5
+<8373>108 163.2 S .256(hell parameters that are set by v)-32.5 F .256
+(ariable assignment or with)-.25 F F1(set)2.756 E F0 .257
(or inherited from the shell')2.756 F 2.757(sp)-.55 G(arent)-2.757 E
-(in the en)144 350.4 Q(vironment)-.4 E 32.5<8373>108 367.2 S
+(in the en)144 175.2 Q(vironment)-.4 E 32.5<8373>108 192 S
(hell functions de\214ned during e)-32.5 E -.15(xe)-.15 G
(cution or inherited from the shell').15 E 2.5(sp)-.55 G
-(arent in the en)-2.5 E(vironment)-.4 E 32.5<836f>108 384 S
+(arent in the en)-2.5 E(vironment)-.4 E 32.5<836f>108 208.8 S
(ptions enabled at in)-32.5 E -.2(vo)-.4 G(cation \(either by def).2 E
-(ault or with command-line ar)-.1 E(guments\) or by)-.18 E F2(set)2.5 E
-F0 32.5<836f>108 400.8 S(ptions enabled by)-32.5 E F2(shopt)2.5 E F0
-32.5<8373>108 417.6 S(hell aliases de\214ned with)-32.5 E F2(alias)2.5 E
-F0 32.5<8376>108 434.4 S
+(ault or with command-line ar)-.1 E(guments\) or by)-.18 E F1(set)2.5 E
+F0 32.5<836f>108 225.6 S(ptions enabled by)-32.5 E F1(shopt)2.5 E F0
+32.5<8373>108 242.4 S(hell aliases de\214ned with)-32.5 E F1(alias)2.5 E
+F0 32.5<8376>108 259.2 S
(arious process IDs, including those of background jobs, the v)-32.75 E
-(alue of)-.25 E F2($$)2.5 E F0 2.5(,a)C(nd the v)-2.5 E(alue of)-.25 E
-F3(PPID)2.5 E F0 .427(When a simple command other than a b)108 451.2 R
-.426(uiltin or shell function is to be e)-.2 F -.15(xe)-.15 G .426
+(alue of)-.25 E F1($$)2.5 E F0 2.5(,a)C(nd the v)-2.5 E(alue of)-.25 E
+/F2 9/Times-Bold@0 SF(PPID)2.5 E F0 .427
+(When a simple command other than a b)108 276 R .426
+(uiltin or shell function is to be e)-.2 F -.15(xe)-.15 G .426
(cuted, it is in).15 F -.2(vo)-.4 G -.1(ke).2 G 2.926(di).1 G 2.926(nas)
--2.926 G(eparate)-2.926 E -.15(exe)108 463.2 S .133(cution en).15 F .133
+-2.926 G(eparate)-2.926 E -.15(exe)108 288 S .133(cution en).15 F .133
(vironment that consists of the follo)-.4 F 2.634(wing. Unless)-.25 F
.134(otherwise noted, the v)2.634 F .134(alues are inherited from)-.25 F
-(the shell.)108 475.2 Q 32.5<8374>108 492 S 1.056(he shell')-32.5 F
+(the shell.)108 300 Q 32.5<8374>108 316.8 S 1.056(he shell')-32.5 F
3.556(so)-.55 G 1.056(pen \214les, plus an)-3.556 F 3.556(ym)-.15 G
1.056
(odi\214cations and additions speci\214ed by redirections to the com-)
--3.556 F(mand)144 504 Q 32.5<8374>108 520.8 S(he current w)-32.5 E
-(orking directory)-.1 E 32.5<8374>108 537.6 S
-(he \214le creation mode mask)-32.5 E 32.5<8373>108 554.4 S .856(hell v)
+-3.556 F(mand)144 328.8 Q 32.5<8374>108 345.6 S(he current w)-32.5 E
+(orking directory)-.1 E 32.5<8374>108 362.4 S
+(he \214le creation mode mask)-32.5 E 32.5<8373>108 379.2 S .856(hell v)
-32.5 F .857(ariables and functions mark)-.25 F .857(ed for e)-.1 F .857
(xport, along with v)-.15 F .857(ariables e)-.25 F .857
-(xported for the command,)-.15 F(passed in the en)144 566.4 Q(vironment)
--.4 E 32.5<8374>108 583.2 S .307
+(xported for the command,)-.15 F(passed in the en)144 391.2 Q(vironment)
+-.4 E 32.5<8374>108 408 S .307
(raps caught by the shell are reset to the v)-32.5 F .306
(alues inherited from the shell')-.25 F 2.806(sp)-.55 G .306
-(arent, and traps ignored)-2.806 F(by the shell are ignored)144 595.2 Q
-2.5(Ac)108 612 S(ommand in)-2.5 E -.2(vo)-.4 G -.1(ke).2 G 2.5(di).1 G
+(arent, and traps ignored)-2.806 F(by the shell are ignored)144 420 Q
+2.5(Ac)108 436.8 S(ommand in)-2.5 E -.2(vo)-.4 G -.1(ke).2 G 2.5(di).1 G
2.5(nt)-2.5 G(his separate en)-2.5 E(vironment cannot af)-.4 E
(fect the shell')-.25 E 2.5(se)-.55 G -.15(xe)-2.65 G(cution en).15 E
(vironment.)-.4 E .577(Command substitution, commands grouped with pare\
-ntheses, and asynchronous commands are in)108 628.8 R -.2(vo)-.4 G -.1
-(ke).2 G 3.078(di).1 G(n)-3.078 E 2.745(as)108 640.8 S .245(ubshell en)
+ntheses, and asynchronous commands are in)108 453.6 R -.2(vo)-.4 G -.1
+(ke).2 G 3.078(di).1 G(n)-3.078 E 2.745(as)108 465.6 S .245(ubshell en)
-2.745 F .245(vironment that is a duplicate of the shell en)-.4 F .244
(vironment, e)-.4 F .244(xcept that traps caught by the shell are)-.15 F
-.358(reset to the v)108 652.8 R .358
+.358(reset to the v)108 477.6 R .358
(alues that the shell inherited from its parent at in)-.25 F -.2(vo)-.4
G 2.858(cation. Builtin).2 F .359(commands that are in)2.859 F -.2(vo)
--.4 G -.1(ke).2 G(d).1 E .857(as part of a pipeline are also e)108 664.8
+-.4 G -.1(ke).2 G(d).1 E .857(as part of a pipeline are also e)108 489.6
R -.15(xe)-.15 G .856(cuted in a subshell en).15 F 3.356
(vironment. Changes)-.4 F .856(made to the subshell en)3.356 F(viron-)
--.4 E(ment cannot af)108 676.8 Q(fect the shell')-.25 E 2.5(se)-.55 G
+-.4 E(ment cannot af)108 501.6 Q(fect the shell')-.25 E 2.5(se)-.55 G
-.15(xe)-2.65 G(cution en).15 E(vironment.)-.4 E 1.376(Subshells spa)108
-693.6 R 1.376(wned to e)-.15 F -.15(xe)-.15 G 1.377
+518.4 R 1.376(wned to e)-.15 F -.15(xe)-.15 G 1.377
(cute command substitutions inherit the v).15 F 1.377(alue of the)-.25 F
-F2<ad65>3.877 E F0 1.377(option from the parent)3.877 F 2.5(shell. When)
-108 705.6 R(not in)2.5 E F1(posix)2.5 E F0(mode,)2.5 E F2(bash)2.5 E F0
-(clears the)2.5 E F2<ad65>2.5 E F0(option in such subshells.)2.5 E .405
-(If a command is follo)108 722.4 R .405(wed by a)-.25 F F2(&)2.905 E F0
-.404(and job control is not acti)2.905 F -.15(ve)-.25 G 2.904(,t).15 G
-.404(he def)-2.904 F .404(ault standard input for the command)-.1 F
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(31)190.95 E 0 Cg EP
-%%Page: 32 32
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E .197(is the empty \214le)108 84 R/F1 10/Times-Italic@0 SF(/de)
-2.697 E(v/null)-.15 E F0 5.197(.O)C .197(therwise, the in)-5.197 F -.2
-(vo)-.4 G -.1(ke).2 G 2.697(dc).1 G .198
+F1<ad65>3.877 E F0 1.377(option from the parent)3.877 F 2.5(shell. When)
+108 530.4 R(not in)2.5 E/F3 10/Times-Italic@0 SF(posix)2.5 E F0(mode,)
+2.5 E F1(bash)2.5 E F0(clears the)2.5 E F1<ad65>2.5 E F0
+(option in such subshells.)2.5 E .405(If a command is follo)108 547.2 R
+.405(wed by a)-.25 F F1(&)2.905 E F0 .404(and job control is not acti)
+2.905 F -.15(ve)-.25 G 2.904(,t).15 G .404(he def)-2.904 F .404
+(ault standard input for the command)-.1 F .197(is the empty \214le)108
+559.2 R F3(/de)2.697 E(v/null)-.15 E F0 5.197(.O)C .197
+(therwise, the in)-5.197 F -.2(vo)-.4 G -.1(ke).2 G 2.697(dc).1 G .198
(ommand inherits the \214le descriptors of the calling shell)-2.697 F
-(as modi\214ed by redirections.)108 96 Q/F2 10.95/Times-Bold@0 SF(ENVIR)
-72 112.8 Q(ONMENT)-.329 E F0 2.354(When a program is in)108 124.8 R -.2
-(vo)-.4 G -.1(ke).2 G 4.853(di).1 G 4.853(ti)-4.853 G 4.853(sg)-4.853 G
--2.15 -.25(iv e)-4.853 H 4.853(na).25 G 4.853(na)-4.853 G 2.353
-(rray of strings called the)-4.853 F F1(en)4.853 E(vir)-.4 E(onment)-.45
-E F0 7.353(.T).68 G 2.353(his is a list of)-7.353 F F1(name)108 136.8 Q
-F0<ad>A F1(value)A F0(pairs, of the form)2.5 E F1(name)2.5 E F0(=)A F1
-(value)A F0(.).18 E 1.485(The shell pro)108 153.6 R 1.485(vides se)-.15
+(as modi\214ed by redirections.)108 571.2 Q/F4 10.95/Times-Bold@0 SF
+(ENVIR)72 588 Q(ONMENT)-.329 E F0 2.354(When a program is in)108 600 R
+-.2(vo)-.4 G -.1(ke).2 G 4.853(di).1 G 4.853(ti)-4.853 G 4.853(sg)-4.853
+G -2.15 -.25(iv e)-4.853 H 4.853(na).25 G 4.853(na)-4.853 G 2.353
+(rray of strings called the)-4.853 F F3(en)4.853 E(vir)-.4 E(onment)-.45
+E F0 7.353(.T).68 G 2.353(his is a list of)-7.353 F F3(name)108 612 Q F0
+<ad>A F3(value)A F0(pairs, of the form)2.5 E F3(name)2.5 E F0(=)A F3
+(value)A F0(.).18 E 1.485(The shell pro)108 628.8 R 1.485(vides se)-.15
F -.15(ve)-.25 G 1.485(ral w).15 F 1.485(ays to manipulate the en)-.1 F
3.985(vironment. On)-.4 F(in)3.985 E -.2(vo)-.4 G 1.486
-(cation, the shell scans its o).2 F(wn)-.25 E(en)108 165.6 Q .144(viron\
+(cation, the shell scans its o).2 F(wn)-.25 E(en)108 640.8 Q .144(viron\
ment and creates a parameter for each name found, automatically marking\
- it for)-.4 F F1 -.2(ex)2.643 G(port).2 E F0 .143(to child pro-)3.323 F
-2.703(cesses. Ex)108 177.6 R .203(ecuted commands inherit the en)-.15 F
-2.703(vironment. The)-.4 F/F3 10/Times-Bold@0 SF(export)2.703 E F0(and)
-2.703 E F3(declar)2.703 E 2.703<65ad>-.18 G(x)-2.703 E F0 .203
-(commands allo)2.703 F 2.704(wp)-.25 G(aram-)-2.704 E 1.153
-(eters and functions to be added to and deleted from the en)108 189.6 R
+ it for)-.4 F F3 -.2(ex)2.643 G(port).2 E F0 .143(to child pro-)3.323 F
+2.703(cesses. Ex)108 652.8 R .203(ecuted commands inherit the en)-.15 F
+2.703(vironment. The)-.4 F F1(export)2.703 E F0(and)2.703 E F1(declar)
+2.703 E 2.703<65ad>-.18 G(x)-2.703 E F0 .203(commands allo)2.703 F 2.704
+(wp)-.25 G(aram-)-2.704 E 1.153
+(eters and functions to be added to and deleted from the en)108 664.8 R
3.653(vironment. If)-.4 F 1.153(the v)3.653 F 1.153
-(alue of a parameter in the)-.25 F(en)108 201.6 Q .64
+(alue of a parameter in the)-.25 F(en)108 676.8 Q .64
(vironment is modi\214ed, the ne)-.4 F 3.14(wv)-.25 G .64
(alue becomes part of the en)-3.39 F .64(vironment, replacing the old.)
--.4 F .64(The en)5.64 F(viron-)-.4 E .58(ment inherited by an)108 213.6
+-.4 F .64(The en)5.64 F(viron-)-.4 E .58(ment inherited by an)108 688.8
R 3.08(ye)-.15 G -.15(xe)-3.23 G .58
(cuted command consists of the shell').15 F 3.08(si)-.55 G .58
(nitial en)-3.08 F .58(vironment, whose v)-.4 F .58(alues may be)-.25 F
-.3(modi\214ed in the shell, less an)108 225.6 R 2.8(yp)-.15 G .3
+.3(modi\214ed in the shell, less an)108 700.8 R 2.8(yp)-.15 G .3
(airs remo)-2.8 F -.15(ve)-.15 G 2.8(db).15 G 2.801(yt)-2.8 G(he)-2.801
-E F3(unset)2.801 E F0 .301(command, plus an)2.801 F 2.801(ya)-.15 G .301
-(dditions via the)-2.801 F F3(export)2.801 E F0(and)2.801 E F3(declar)
-108 237.6 Q 2.5<65ad>-.18 G(x)-2.5 E F0(commands.)2.5 E .563(The en)108
-254.4 R .563(vironment for an)-.4 F(y)-.15 E F1 .563(simple command)
+E F1(unset)2.801 E F0 .301(command, plus an)2.801 F 2.801(ya)-.15 G .301
+(dditions via the)-2.801 F F1(export)2.801 E F0(and)2.801 E F1(declar)
+108 712.8 Q 2.5<65ad>-.18 G(x)-2.5 E F0(commands.)2.5 E .563(The en)108
+729.6 R .563(vironment for an)-.4 F(y)-.15 E F3 .563(simple command)
3.403 F F0 .562
(or function may be augmented temporarily by pre\214xing it with)3.833 F
-.202(parameter assignments, as described abo)108 266.4 R .502 -.15(ve i)
--.15 H(n).15 E/F4 9/Times-Bold@0 SF -.666(PA)2.702 G(RAMETERS).666 E/F5
-9/Times-Roman@0 SF(.)A F0 .202(These assignment statements af)4.702 F
-.203(fect only the)-.25 F(en)108 278.4 Q
-(vironment seen by that command.)-.4 E .81(If the)108 295.2 R F3<ad6b>
-3.31 E F0 .81(option is set \(see the)3.31 F F3(set)3.31 E F0 -.2(bu)
-3.31 G .81(iltin command belo).2 F .81(w\), then)-.25 F F1(all)3.64 E F0
-.81(parameter assignments are placed in)3.82 F(the en)108 307.2 Q
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(32)200.665 E 0 Cg EP
+%%Page: 33 33
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E .202(parameter assignments, as described abo)108 84 R .502 -.15
+(ve i)-.15 H(n).15 E/F1 9/Times-Bold@0 SF -.666(PA)2.702 G(RAMETERS).666
+E/F2 9/Times-Roman@0 SF(.)A F0 .202(These assignment statements af)4.702
+F .203(fect only the)-.25 F(en)108 96 Q(vironment seen by that command.)
+-.4 E .81(If the)108 112.8 R/F3 10/Times-Bold@0 SF<ad6b>3.31 E F0 .81
+(option is set \(see the)3.31 F F3(set)3.31 E F0 -.2(bu)3.31 G .81
+(iltin command belo).2 F .81(w\), then)-.25 F/F4 10/Times-Italic@0 SF
+(all)3.64 E F0 .81(parameter assignments are placed in)3.82 F(the en)108
+124.8 Q
(vironment for a command, not just those that precede the command name.)
--.4 E(When)108 324 Q F3(bash)3.585 E F0(in)3.585 E -.2(vo)-.4 G -.1(ke)
-.2 G 3.585(sa).1 G 3.585(ne)-3.585 G 1.085(xternal command, the v)-3.735
-F(ariable)-.25 E F3(_)3.585 E F0 1.086
+-.4 E(When)108 141.6 Q F3(bash)3.585 E F0(in)3.585 E -.2(vo)-.4 G -.1
+(ke).2 G 3.585(sa).1 G 3.585(ne)-3.585 G 1.085(xternal command, the v)
+-3.735 F(ariable)-.25 E F3(_)3.585 E F0 1.086
(is set to the full \214lename of the command and)3.586 F
-(passed to that command in its en)108 336 Q(vironment.)-.4 E F2(EXIT ST)
-72 352.8 Q -1.04(AT)-.986 G(US)1.04 E F0 .151(The e)108 364.8 R .151
-(xit status of an e)-.15 F -.15(xe)-.15 G .151(cuted command is the v)
-.15 F .15(alue returned by the)-.25 F F1(waitpid)2.65 E F0 .15
-(system call or equi)2.65 F -.25(va)-.25 G .15(lent func-).25 F 2.847
-(tion. Exit)108 376.8 R .347(statuses f)2.847 F .347
-(all between 0 and 255, though, as e)-.1 F .347(xplained belo)-.15 F
+(passed to that command in its en)108 153.6 Q(vironment.)-.4 E/F5 10.95
+/Times-Bold@0 SF(EXIT ST)72 170.4 Q -1.04(AT)-.986 G(US)1.04 E F0 .151
+(The e)108 182.4 R .151(xit status of an e)-.15 F -.15(xe)-.15 G .151
+(cuted command is the v).15 F .15(alue returned by the)-.25 F F4
+(waitpid)2.65 E F0 .15(system call or equi)2.65 F -.25(va)-.25 G .15
+(lent func-).25 F 2.847(tion. Exit)108 194.4 R .347(statuses f)2.847 F
+.347(all between 0 and 255, though, as e)-.1 F .347(xplained belo)-.15 F
1.647 -.65(w, t)-.25 H .347(he shell may use v).65 F .348(alues abo)-.25
-F .648 -.15(ve 1)-.15 H(25).15 E(specially)108 388.8 Q 5.674(.E)-.65 G
+F .648 -.15(ve 1)-.15 H(25).15 E(specially)108 206.4 Q 5.674(.E)-.65 G
.674(xit statuses from shell b)-5.674 F .673
(uiltins and compound commands are also limited to this range. Under)-.2
-F(certain circumstances, the shell will use special v)108 400.8 Q
+F(certain circumstances, the shell will use special v)108 218.4 Q
(alues to indicate speci\214c f)-.25 E(ailure modes.)-.1 E -.15(Fo)108
-417.6 S 3.372(rt).15 G .872(he shell')-3.372 F 3.372(sp)-.55 G .873
+235.2 S 3.372(rt).15 G .872(he shell')-3.372 F 3.372(sp)-.55 G .873
(urposes, a command which e)-3.372 F .873(xits with a zero e)-.15 F .873
(xit status has succeeded.)-.15 F .873(An e)5.873 F .873(xit status of)
--.15 F .049(zero indicates success.)108 429.6 R 2.549(An)5.049 G .049
+-.15 F .049(zero indicates success.)108 247.2 R 2.549(An)5.049 G .049
(on-zero e)-2.549 F .049(xit status indicates f)-.15 F 2.549
(ailure. When)-.1 F 2.549(ac)2.549 G .048(ommand terminates on a f)
--2.549 F .048(atal sig-)-.1 F(nal)108 441.6 Q F1(N)2.5 E F0(,)A F3(bash)
-2.5 E F0(uses the v)2.5 E(alue of 128+)-.25 E F1(N)A F0(as the e)2.5 E
+-2.549 F .048(atal sig-)-.1 F(nal)108 259.2 Q F4(N)2.5 E F0(,)A F3(bash)
+2.5 E F0(uses the v)2.5 E(alue of 128+)-.25 E F4(N)A F0(as the e)2.5 E
(xit status.)-.15 E .404
-(If a command is not found, the child process created to e)108 458.4 R
+(If a command is not found, the child process created to e)108 276 R
-.15(xe)-.15 G .404(cute it returns a status of 127.).15 F .405
-(If a command is)5.405 F(found b)108 470.4 Q(ut is not e)-.2 E -.15(xe)
--.15 G(cutable, the return status is 126.).15 E(If a command f)108 487.2
+(If a command is)5.405 F(found b)108 288 Q(ut is not e)-.2 E -.15(xe)
+-.15 G(cutable, the return status is 126.).15 E(If a command f)108 304.8
Q(ails because of an error during e)-.1 E
(xpansion or redirection, the e)-.15 E(xit status is greater than zero.)
--.15 E .081(Shell b)108 504 R .081
-(uiltin commands return a status of 0 \()-.2 F F1(true)A F0 2.581(\)i)C
-2.581(fs)-2.581 G .08(uccessful, and non-zero \()-2.581 F F1(false)A F0
+-.15 E .081(Shell b)108 321.6 R .081
+(uiltin commands return a status of 0 \()-.2 F F4(true)A F0 2.581(\)i)C
+2.581(fs)-2.581 G .08(uccessful, and non-zero \()-2.581 F F4(false)A F0
2.58(\)i)C 2.58(fa)-2.58 G 2.58(ne)-2.58 G .08(rror occurs while)-2.58 F
-(the)108 516 Q 2.5(ye)-.15 G -.15(xe)-2.65 G 2.5(cute. All).15 F -.2(bu)
-2.5 G(iltins return an e).2 E
-(xit status of 2 to indicate incorrect usage.)-.15 E F3(Bash)108 532.8 Q
+(the)108 333.6 Q 2.5(ye)-.15 G -.15(xe)-2.65 G 2.5(cute. All).15 F -.2
+(bu)2.5 G(iltins return an e).2 E
+(xit status of 2 to indicate incorrect usage.)-.15 E F3(Bash)108 350.4 Q
F0 .201(itself returns the e)2.701 F .202
(xit status of the last command e)-.15 F -.15(xe)-.15 G .202
-(cuted, unless a syntax error occurs, in which case).15 F(it e)108 544.8
+(cuted, unless a syntax error occurs, in which case).15 F(it e)108 362.4
Q(xits with a non-zero v)-.15 E 2.5(alue. See)-.25 F(also the)2.5 E F3
-(exit)2.5 E F0 -.2(bu)2.5 G(iltin command belo).2 E -.65(w.)-.25 G F2
-(SIGN)72 561.6 Q(ALS)-.219 E F0(When)108 573.6 Q F3(bash)3.183 E F0 .683
+(exit)2.5 E F0 -.2(bu)2.5 G(iltin command belo).2 E -.65(w.)-.25 G F5
+(SIGN)72 379.2 Q(ALS)-.219 E F0(When)108 391.2 Q F3(bash)3.183 E F0 .683
(is interacti)3.183 F -.15(ve)-.25 G 3.183(,i).15 G 3.183(nt)-3.183 G
.683(he absence of an)-3.183 F 3.183(yt)-.15 G .683(raps, it ignores)
--3.183 F F4(SIGTERM)3.183 E F0 .682(\(so that)2.933 F F3 .682(kill 0)
-3.182 F F0 .682(does not kill an)3.182 F(interacti)108 585.6 Q .757 -.15
-(ve s)-.25 H .457(hell\), and).15 F F4(SIGINT)2.957 E F0 .458
+-3.183 F F1(SIGTERM)3.183 E F0 .682(\(so that)2.933 F F3 .682(kill 0)
+3.182 F F0 .682(does not kill an)3.182 F(interacti)108 403.2 Q .757 -.15
+(ve s)-.25 H .457(hell\), and).15 F F1(SIGINT)2.957 E F0 .458
(is caught and handled \(so that the)2.707 F F3(wait)2.958 E F0 -.2(bu)
2.958 G .458(iltin is interruptible\).).2 F .458(In all cases,)5.458 F
-F3(bash)108 597.6 Q F0(ignores)2.5 E F4(SIGQ)2.5 E(UIT)-.09 E F5(.)A F0
+F3(bash)108 415.2 Q F0(ignores)2.5 E F1(SIGQ)2.5 E(UIT)-.09 E F2(.)A F0
(If job control is in ef)4.5 E(fect,)-.25 E F3(bash)2.5 E F0(ignores)2.5
-E F4(SIGTTIN)2.5 E F5(,)A F4(SIGTT)2.25 E(OU)-.162 E F5(,)A F0(and)2.25
-E F4(SIGTSTP)2.5 E F5(.)A F0(Non-b)108 614.4 Q 1.065
+E F1(SIGTTIN)2.5 E F2(,)A F1(SIGTT)2.25 E(OU)-.162 E F2(,)A F0(and)2.25
+E F1(SIGTSTP)2.5 E F2(.)A F0(Non-b)108 432 Q 1.065
(uiltin commands run by)-.2 F F3(bash)3.565 E F0(ha)3.565 E 1.365 -.15
(ve s)-.2 H 1.065(ignal handlers set to the v).15 F 1.064
-(alues inherited by the shell from its)-.25 F 3.247(parent. When)108
-626.4 R .747(job control is not in ef)3.247 F .747
-(fect, asynchronous commands ignore)-.25 F F4(SIGINT)3.248 E F0(and)
-2.998 E F4(SIGQ)3.248 E(UIT)-.09 E F0 .748(in addi-)2.998 F .653
-(tion to these inherited handlers.)108 638.4 R .653
+(alues inherited by the shell from its)-.25 F 3.247(parent. When)108 444
+R .747(job control is not in ef)3.247 F .747
+(fect, asynchronous commands ignore)-.25 F F1(SIGINT)3.248 E F0(and)
+2.998 E F1(SIGQ)3.248 E(UIT)-.09 E F0 .748(in addi-)2.998 F .653
+(tion to these inherited handlers.)108 456 R .653
(Commands run as a result of command substitution ignore the k)5.653 F
--.15(ey)-.1 G(board-).15 E(generated job control signals)108 650.4 Q F4
-(SIGTTIN)2.5 E F5(,)A F4(SIGTT)2.25 E(OU)-.162 E F5(,)A F0(and)2.25 E F4
-(SIGTSTP)2.5 E F5(.)A F0 2.045(The shell e)108 667.2 R 2.045
-(xits by def)-.15 F 2.045(ault upon receipt of a)-.1 F F4(SIGHUP)4.545 E
-F5(.)A F0 2.045(Before e)6.545 F 2.045(xiting, an interacti)-.15 F 2.346
--.15(ve s)-.25 H 2.046(hell resends the).15 F F4(SIGHUP)108 679.2 Q F0
+-.15(ey)-.1 G(board-).15 E(generated job control signals)108 468 Q F1
+(SIGTTIN)2.5 E F2(,)A F1(SIGTT)2.25 E(OU)-.162 E F2(,)A F0(and)2.25 E F1
+(SIGTSTP)2.5 E F2(.)A F0 2.045(The shell e)108 484.8 R 2.045
+(xits by def)-.15 F 2.045(ault upon receipt of a)-.1 F F1(SIGHUP)4.545 E
+F2(.)A F0 2.045(Before e)6.545 F 2.045(xiting, an interacti)-.15 F 2.346
+-.15(ve s)-.25 H 2.046(hell resends the).15 F F1(SIGHUP)108 496.8 Q F0
1.005(to all jobs, running or stopped.)3.255 F 1.004
-(Stopped jobs are sent)6.005 F F4(SIGCONT)3.504 E F0 1.004
+(Stopped jobs are sent)6.005 F F1(SIGCONT)3.504 E F0 1.004
(to ensure that the)3.254 F 3.504(yr)-.15 G(ecei)-3.504 E 1.304 -.15
-(ve t)-.25 H(he).15 E F4(SIGHUP)108 691.2 Q F5(.)A F0 2.529 -.8(To p)
+(ve t)-.25 H(he).15 E F1(SIGHUP)108 508.8 Q F2(.)A F0 2.529 -.8(To p)
5.429 H(re).8 E -.15(ve)-.25 G .93(nt the shell from sending the signal\
to a particular job, it should be remo).15 F -.15(ve)-.15 G 3.43(df).15
-G .93(rom the)-3.43 F 1.357(jobs table with the)108 703.2 R F3(diso)
-3.857 E(wn)-.1 E F0 -.2(bu)3.857 G 1.357(iltin \(see).2 F F4 1.356
+G .93(rom the)-3.43 F 1.357(jobs table with the)108 520.8 R F3(diso)
+3.857 E(wn)-.1 E F0 -.2(bu)3.857 G 1.357(iltin \(see).2 F F1 1.356
(SHELL B)3.856 F(UIL)-.09 E 1.356(TIN COMMANDS)-.828 F F0(belo)3.606 E
-1.356(w\) or mark)-.25 F 1.356(ed to not recei)-.1 F -.15(ve)-.25 G F4
-(SIGHUP)108 715.2 Q F0(using)2.25 E F3(diso)2.5 E(wn \255h)-.1 E F0(.)A
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(32)190.95 E 0 Cg EP
-%%Page: 33 33
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E .166(If the)108 84 R/F1 10/Times-Bold@0 SF(huponexit)2.666 E F0
-.166(shell option has been set with)2.666 F F1(shopt)2.666 E F0(,)A F1
-(bash)2.666 E F0 .166(sends a)2.666 F/F2 9/Times-Bold@0 SF(SIGHUP)2.666
-E F0 .166(to all jobs when an interacti)2.416 F -.15(ve)-.25 G
-(login shell e)108 96 Q(xits.)-.15 E(If)108 112.8 Q F1(bash)3.047 E F0
-.547(is w)3.047 F .546(aiting for a command to complete and recei)-.1 F
--.15(ve)-.25 G 3.046(sas).15 G .546
-(ignal for which a trap has been set, the trap)-3.046 F .662
-(will not be e)108 124.8 R -.15(xe)-.15 G .662
-(cuted until the command completes.).15 F(When)5.663 E F1(bash)3.163 E
+1.356(w\) or mark)-.25 F 1.356(ed to not recei)-.1 F -.15(ve)-.25 G F1
+(SIGHUP)108 532.8 Q F0(using)2.25 E F3(diso)2.5 E(wn \255h)-.1 E F0(.)A
+.166(If the)108 549.6 R F3(huponexit)2.666 E F0 .166
+(shell option has been set with)2.666 F F3(shopt)2.666 E F0(,)A F3(bash)
+2.666 E F0 .166(sends a)2.666 F F1(SIGHUP)2.666 E F0 .166
+(to all jobs when an interacti)2.416 F -.15(ve)-.25 G(login shell e)108
+561.6 Q(xits.)-.15 E(If)108 578.4 Q F3(bash)3.047 E F0 .547(is w)3.047 F
+.546(aiting for a command to complete and recei)-.1 F -.15(ve)-.25 G
+3.046(sas).15 G .546(ignal for which a trap has been set, the trap)
+-3.046 F .662(will not be e)108 590.4 R -.15(xe)-.15 G .662
+(cuted until the command completes.).15 F(When)5.663 E F3(bash)3.163 E
F0 .663(is w)3.163 F .663(aiting for an asynchronous command)-.1 F .99
-(via the)108 136.8 R F1(wait)3.49 E F0 -.2(bu)3.49 G .99(iltin, the rec\
-eption of a signal for which a trap has been set will cause the).2 F F1
+(via the)108 602.4 R F3(wait)3.49 E F0 -.2(bu)3.49 G .99(iltin, the rec\
+eption of a signal for which a trap has been set will cause the).2 F F3
(wait)3.49 E F0 -.2(bu)3.49 G .99(iltin to).2 F
-(return immediately with an e)108 148.8 Q
+(return immediately with an e)108 614.4 Q
(xit status greater than 128, immediately after which the trap is e)-.15
-E -.15(xe)-.15 G(cuted.).15 E/F3 10.95/Times-Bold@0 SF(JOB CONTR)72
-165.6 Q(OL)-.329 E/F4 10/Times-Italic@0 SF -.25(Jo)108 177.6 S 4.567(bc)
-.25 G(ontr)-4.567 E(ol)-.45 E F0 2.067(refers to the ability to selecti)
-5.077 F -.15(ve)-.25 G 2.067(ly stop \().15 F F4(suspend)A F0 4.567(\)t)
-C 2.068(he e)-4.567 F -.15(xe)-.15 G 2.068
-(cution of processes and continue).15 F(\()108 189.6 Q F4 -.37(re)C
-(sume).37 E F0 3.202(\)t)C .702(heir e)-3.202 F -.15(xe)-.15 G .702
-(cution at a later point.).15 F 3.202(Au)5.702 G .702
+E -.15(xe)-.15 G(cuted.).15 E F5(JOB CONTR)72 631.2 Q(OL)-.329 E F4 -.25
+(Jo)108 643.2 S 4.567(bc).25 G(ontr)-4.567 E(ol)-.45 E F0 2.067
+(refers to the ability to selecti)5.077 F -.15(ve)-.25 G 2.067
+(ly stop \().15 F F4(suspend)A F0 4.567(\)t)C 2.068(he e)-4.567 F -.15
+(xe)-.15 G 2.068(cution of processes and continue).15 F(\()108 655.2 Q
+F4 -.37(re)C(sume).37 E F0 3.202(\)t)C .702(heir e)-3.202 F -.15(xe)-.15
+G .702(cution at a later point.).15 F 3.202(Au)5.702 G .702
(ser typically emplo)-3.202 F .702(ys this f)-.1 F .702
(acility via an interacti)-.1 F 1.001 -.15(ve i)-.25 H(nterf).15 E(ace)
--.1 E(supplied jointly by the operating system k)108 201.6 Q(ernel')-.1
+-.1 E(supplied jointly by the operating system k)108 667.2 Q(ernel')-.1
E 2.5(st)-.55 G(erminal dri)-2.5 E -.15(ve)-.25 G 2.5(ra).15 G(nd)-2.5 E
-F1(bash)2.5 E F0(.)A .784(The shell associates a)108 218.4 R F4(job)
-5.024 E F0 .784(with each pipeline.)3.514 F .784(It k)5.784 F .785
+F3(bash)2.5 E F0(.)A .784(The shell associates a)108 684 R F4(job)5.024
+E F0 .784(with each pipeline.)3.514 F .784(It k)5.784 F .785
(eeps a table of currently e)-.1 F -.15(xe)-.15 G .785
-(cuting jobs, which may be).15 F .341(listed with the)108 230.4 R F1
-(jobs)2.841 E F0 2.841(command. When)2.841 F F1(bash)2.841 E F0 .341
+(cuting jobs, which may be).15 F .341(listed with the)108 696 R F3(jobs)
+2.841 E F0 2.841(command. When)2.841 F F3(bash)2.841 E F0 .341
(starts a job asynchronously \(in the)2.841 F F4(bac)2.84 E(kgr)-.2 E
-(ound)-.45 E F0 .34(\), it prints a line).77 F(that looks lik)108 242.4
-Q(e:)-.1 E([1] 25647)144 259.2 Q .241(indicating that this job is job n\
-umber 1 and that the process ID of the last process in the pipeline ass\
-ociated)108 276 R .733(with this job is 25647.)108 288 R .732
+(ound)-.45 E F0 .34(\), it prints a line).77 F(that looks lik)108 708 Q
+(e:)-.1 E([1] 25647)144 724.8 Q(GNU Bash 4.2)72 768 Q(2012 July 5)
+151.505 E(33)200.665 E 0 Cg EP
+%%Page: 34 34
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E .241(indicating that this job is job number 1 and that the proce\
+ss ID of the last process in the pipeline associated)108 84 R .733
+(with this job is 25647.)108 96 R .732
(All of the processes in a single pipeline are members of the same job)
-5.733 F(.)-.4 E F1(Bash)5.732 E F0(uses)3.232 E(the)108 300 Q F4(job)
-4.24 E F0(abstraction as the basis for job control.)2.73 E 3.062 -.8
-(To f)108 316.8 T 1.462(acilitate the implementation of the user interf)
-.7 F 1.463(ace to job control, the operating system maintains the)-.1 F
-.871(notion of a)108 328.8 R F4(curr)3.371 E .871(ent terminal pr)-.37 F
+5.733 F(.)-.4 E/F1 10/Times-Bold@0 SF(Bash)5.732 E F0(uses)3.232 E(the)
+108 108 Q/F2 10/Times-Italic@0 SF(job)4.24 E F0
+(abstraction as the basis for job control.)2.73 E 3.062 -.8(To f)108
+124.8 T 1.462(acilitate the implementation of the user interf).7 F 1.463
+(ace to job control, the operating system maintains the)-.1 F .871
+(notion of a)108 136.8 R F2(curr)3.371 E .871(ent terminal pr)-.37 F
.871(ocess gr)-.45 F .871(oup ID)-.45 F F0 5.871(.M)C .87
(embers of this process group \(processes whose process)-5.871 F .023
(group ID is equal to the current terminal process group ID\) recei)108
-340.8 R .323 -.15(ve k)-.25 H -.15(ey).05 G .023
-(board-generated signals such as).15 F F2(SIG-)2.523 E(INT)108 352.8 Q
-/F5 9/Times-Roman@0 SF(.)A F0 1.347
-(These processes are said to be in the)5.847 F F4(for)3.846 E -.4(eg)
--.37 G -.45(ro).4 G(und).45 E F0(.).77 E F4(Bac)6.926 E(kgr)-.2 E(ound)
+148.8 R .323 -.15(ve k)-.25 H -.15(ey).05 G .023
+(board-generated signals such as).15 F/F3 9/Times-Bold@0 SF(SIG-)2.523 E
+(INT)108 160.8 Q/F4 9/Times-Roman@0 SF(.)A F0 1.347
+(These processes are said to be in the)5.847 F F2(for)3.846 E -.4(eg)
+-.37 G -.45(ro).4 G(und).45 E F0(.).77 E F2(Bac)6.926 E(kgr)-.2 E(ound)
-.45 E F0 1.346(processes are those whose process)4.616 F .145
-(group ID dif)108 364.8 R .145(fers from the terminal')-.25 F .146
+(group ID dif)108 172.8 R .145(fers from the terminal')-.25 F .146
(s; such processes are immune to k)-.55 F -.15(ey)-.1 G .146
(board-generated signals.).15 F .146(Only fore-)5.146 F .16
-(ground processes are allo)108 376.8 R .16(wed to read from or)-.25 F
-2.66(,i)-.4 G 2.66(ft)-2.66 G .16(he user so speci\214es with)-2.66 F/F6
+(ground processes are allo)108 184.8 R .16(wed to read from or)-.25 F
+2.66(,i)-.4 G 2.66(ft)-2.66 G .16(he user so speci\214es with)-2.66 F/F5
10/Courier@0 SF .16(stty tostop)2.66 F F0 2.66(,w)C .16(rite to the ter)
--2.66 F(-)-.2 E 3.051(minal. Background)108 388.8 R .551
-(processes which attempt to read from \(write to when)3.051 F F6 .551
+-2.66 F(-)-.2 E 3.051(minal. Background)108 196.8 R .551
+(processes which attempt to read from \(write to when)3.051 F F5 .551
(stty tostop)3.051 F F0 .552(is in ef)3.052 F .552(fect\) the)-.25 F
-.718(terminal are sent a)108 400.8 R F2 .718(SIGTTIN \(SIGTT)3.218 F
+.718(terminal are sent a)108 208.8 R F3 .718(SIGTTIN \(SIGTT)3.218 F
(OU\))-.162 E F0 .718(signal by the k)2.968 F(ernel')-.1 E 3.217(st)-.55
G .717(erminal dri)-3.217 F -.15(ve)-.25 G 1.517 -.4(r, w).15 H .717
-(hich, unless caught, sus-).4 F(pends the process.)108 412.8 Q 1.087
-(If the operating system on which)108 429.6 R F1(bash)3.587 E F0 1.088
+(hich, unless caught, sus-).4 F(pends the process.)108 220.8 Q 1.087
+(If the operating system on which)108 237.6 R F1(bash)3.587 E F0 1.088
(is running supports job control,)3.588 F F1(bash)3.588 E F0 1.088
-(contains f)3.588 F 1.088(acilities to use it.)-.1 F -.8(Ty)108 441.6 S
-.302(ping the).8 F F4(suspend)3.142 E F0 .302(character \(typically)
+(contains f)3.588 F 1.088(acilities to use it.)-.1 F -.8(Ty)108 249.6 S
+.302(ping the).8 F F2(suspend)3.142 E F0 .302(character \(typically)
3.572 F F1(^Z)2.801 E F0 2.801(,C)C .301
(ontrol-Z\) while a process is running causes that process to be)-2.801
-F 2.142(stopped and returns control to)108 453.6 R F1(bash)4.642 E F0
-7.142(.T)C 2.142(yping the)-7.942 F F4 2.142(delayed suspend)4.992 F F0
+F 2.142(stopped and returns control to)108 261.6 R F1(bash)4.642 E F0
+7.142(.T)C 2.142(yping the)-7.942 F F2 2.142(delayed suspend)4.992 F F0
2.143(character \(typically)5.413 F F1(^Y)4.643 E F0 4.643(,C)C
(ontrol-Y\))-4.643 E .021(causes the process to be stopped when it atte\
mpts to read input from the terminal, and control to be returned)108
-465.6 R(to)108 477.6 Q F1(bash)3.392 E F0 5.892(.T)C .892
+273.6 R(to)108 285.6 Q F1(bash)3.392 E F0 5.892(.T)C .892
(he user may then manipulate the state of this job, using the)-5.892 F
F1(bg)3.392 E F0 .892(command to continue it in the)3.392 F .895
-(background, the)108 489.6 R F1(fg)3.395 E F0 .895
+(background, the)108 297.6 R F1(fg)3.395 E F0 .895
(command to continue it in the fore)3.395 F .895(ground, or the)-.15 F
F1(kill)3.395 E F0 .894(command to kill it.)3.395 F(A)5.894 E F1(^Z)
-3.394 E F0(tak)3.394 E(es)-.1 E(ef)108 501.6 Q .948(fect immediately)
+3.394 E F0(tak)3.394 E(es)-.1 E(ef)108 309.6 Q .948(fect immediately)
-.25 F 3.448(,a)-.65 G .948(nd has the additional side ef)-3.448 F .948
(fect of causing pending output and typeahead to be dis-)-.25 F(carded.)
-108 513.6 Q .777(There are a number of w)108 530.4 R .777
+108 321.6 Q .777(There are a number of w)108 338.4 R .777
(ays to refer to a job in the shell.)-.1 F .777(The character)5.777 F F1
-(%)3.277 E F0 .777(introduces a job speci\214cation)3.277 F(\()108 542.4
-Q F4(jobspec)A F0 3.457(\). Job)B(number)3.457 E F4(n)3.817 E F0 .957
+(%)3.277 E F0 .777(introduces a job speci\214cation)3.277 F(\()108 350.4
+Q F2(jobspec)A F0 3.457(\). Job)B(number)3.457 E F2(n)3.817 E F0 .957
(may be referred to as)3.697 F F1(%n)3.457 E F0 5.957(.A)C .957
(job may also be referred to using a pre\214x of the)-2.5 F .59(name us\
ed to start it, or using a substring that appears in its command line.)
-108 554.4 R -.15(Fo)5.59 G 3.09(re).15 G(xample,)-3.24 E F1(%ce)3.09 E
-F0 .59(refers to a)3.09 F(stopped)108 566.4 Q F1(ce)3.463 E F0(job)3.463
+108 362.4 R -.15(Fo)5.59 G 3.09(re).15 G(xample,)-3.24 E F1(%ce)3.09 E
+F0 .59(refers to a)3.09 F(stopped)108 374.4 Q F1(ce)3.463 E F0(job)3.463
E 5.963(.I)-.4 G 3.463(fap)-5.963 G .963
(re\214x matches more than one job,)-3.463 F F1(bash)3.463 E F0 .963
(reports an error)3.463 F 5.963(.U)-.55 G(sing)-5.963 E F1(%?ce)3.463 E
F0 3.464(,o)C 3.464(nt)-3.464 G .964(he other)-3.464 F .087
-(hand, refers to an)108 578.4 R 2.587(yj)-.15 G .087
+(hand, refers to an)108 386.4 R 2.587(yj)-.15 G .087
(ob containing the string)-2.587 F F1(ce)2.587 E F0 .087
(in its command line.)2.587 F .087
-(If the substring matches more than one)5.087 F(job,)108 590.4 Q F1
+(If the substring matches more than one)5.087 F(job,)108 398.4 Q F1
(bash)2.518 E F0 .018(reports an error)2.518 F 5.018(.T)-.55 G .018
(he symbols)-5.018 F F1(%%)2.518 E F0(and)2.518 E F1(%+)2.518 E F0 .018
(refer to the shell')2.518 F 2.518(sn)-.55 G .018(otion of the)-2.518 F
-F4(curr)2.518 E .018(ent job)-.37 F F0 2.518(,w).23 G .018(hich is)
--2.518 F .495(the last job stopped while it w)108 602.4 R .495
+F2(curr)2.518 E .018(ent job)-.37 F F0 2.518(,w).23 G .018(hich is)
+-2.518 F .495(the last job stopped while it w)108 410.4 R .495
(as in the fore)-.1 F .495(ground or started in the background.)-.15 F
-(The)5.494 E F4(pr)4.244 E -.15(ev)-.37 G .494(ious job).15 F F0 .494
-(may be)3.224 F .787(referenced using)108 614.4 R F1<25ad>3.287 E F0
+(The)5.494 E F2(pr)4.244 E -.15(ev)-.37 G .494(ious job).15 F F0 .494
+(may be)3.224 F .787(referenced using)108 422.4 R F1<25ad>3.287 E F0
5.787(.I)C 3.287(ft)-5.787 G .787(here is only a single job,)-3.287 F F1
(%+)3.287 E F0(and)3.287 E F1<25ad>3.287 E F0 .788
(can both be used to refer to that job)3.287 F 5.788(.I)-.4 G(n)-5.788 E
-.257(output pertaining to jobs \(e.g., the output of the)108 626.4 R F1
+.257(output pertaining to jobs \(e.g., the output of the)108 434.4 R F1
(jobs)2.756 E F0 .256(command\), the current job is al)2.756 F -.1(wa)
-.1 G .256(ys \215agged with a).1 F F1(+)2.756 E F0(,)A .41(and the pre)
-108 638.4 R .41(vious job with a)-.25 F F1<ad>2.91 E F0 5.41(.A)C .411
+108 446.4 R .41(vious job with a)-.25 F F1<ad>2.91 E F0 5.41(.A)C .411
(single % \(with no accompan)-2.5 F .411
(ying job speci\214cation\) also refers to the cur)-.15 F(-)-.2 E
-(rent job)108 650.4 Q(.)-.4 E .444
-(Simply naming a job can be used to bring it into the fore)108 667.2 R
+(rent job)108 458.4 Q(.)-.4 E .444
+(Simply naming a job can be used to bring it into the fore)108 475.2 R
(ground:)-.15 E F1(%1)2.943 E F0 .443(is a synon)2.943 F .443(ym for)
-.15 F F1 -.63(``)2.943 G .443(fg %1').63 F(')-.63 E F0 2.943(,b)C
(ringing)-2.943 E 1.472(job 1 from the background into the fore)108
-679.2 R 3.972(ground. Similarly)-.15 F(,)-.65 E F1 -.63(``)3.973 G 1.473
+487.2 R 3.972(ground. Similarly)-.15 F(,)-.65 E F1 -.63(``)3.973 G 1.473
(%1 &').63 F(')-.63 E F0 1.473(resumes job 1 in the background,)3.973 F
-(equi)108 691.2 Q -.25(va)-.25 G(lent to).25 E F1 -.63(``)2.5 G(bg %1')
-.63 E(')-.63 E F0(.)A .131(The shell learns immediately whene)108 708 R
+(equi)108 499.2 Q -.25(va)-.25 G(lent to).25 E F1 -.63(``)2.5 G(bg %1')
+.63 E(')-.63 E F0(.)A .131(The shell learns immediately whene)108 516 R
-.15(ve)-.25 G 2.631(raj).15 G .131(ob changes state.)-2.631 F(Normally)
5.131 E(,)-.65 E F1(bash)2.631 E F0 -.1(wa)2.63 G .13
(its until it is about to print a).1 F .157
-(prompt before reporting changes in a job')108 720 R 2.657(ss)-.55 G
+(prompt before reporting changes in a job')108 528 R 2.657(ss)-.55 G
.157(tatus so as to not interrupt an)-2.657 F 2.658(yo)-.15 G .158
(ther output.)-2.658 F .158(If the)5.158 F F1<ad62>2.658 E F0 .158
-(option to)2.658 F(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(33)
-190.95 E 0 Cg EP
-%%Page: 34 34
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(the)108 84 Q/F1 10/Times-Bold@0 SF(set)3.952 E F0 -.2(bu)3.952 G
-1.452(iltin command is enabled,).2 F F1(bash)3.952 E F0 1.451
+(option to)2.658 F(the)108 540 Q F1(set)3.952 E F0 -.2(bu)3.952 G 1.452
+(iltin command is enabled,).2 F F1(bash)3.952 E F0 1.451
(reports such changes immediately)3.952 F 6.451(.A)-.65 G 1.751 -.15
-(ny t)-6.451 H 1.451(rap on).15 F/F2 9/Times-Bold@0 SF(SIGCHLD)3.951 E
-F0(is)3.701 E -.15(exe)108 96 S(cuted for each child that e).15 E(xits.)
--.15 E .032(If an attempt to e)108 112.8 R(xit)-.15 E F1(bash)2.532 E F0
-.032(is made while jobs are stopped \(or)2.532 F 2.533(,i)-.4 G 2.533
-(ft)-2.533 G(he)-2.533 E F1(checkjobs)2.533 E F0 .033
-(shell option has been enabled)2.533 F 2.02(using the)108 124.8 R F1
+(ny t)-6.451 H 1.451(rap on).15 F F3(SIGCHLD)3.951 E F0(is)3.701 E -.15
+(exe)108 552 S(cuted for each child that e).15 E(xits.)-.15 E .032
+(If an attempt to e)108 568.8 R(xit)-.15 E F1(bash)2.532 E F0 .032
+(is made while jobs are stopped \(or)2.532 F 2.533(,i)-.4 G 2.533(ft)
+-2.533 G(he)-2.533 E F1(checkjobs)2.533 E F0 .033
+(shell option has been enabled)2.533 F 2.02(using the)108 580.8 R F1
(shopt)4.52 E F0 -.2(bu)4.52 G 2.02
(iltin, running\), the shell prints a w).2 F 2.019
(arning message, and, if the)-.1 F F1(checkjobs)4.519 E F0 2.019
(option is)4.519 F .458(enabled, lists the jobs and their statuses.)108
-136.8 R(The)5.458 E F1(jobs)2.958 E F0 .459
+592.8 R(The)5.458 E F1(jobs)2.958 E F0 .459
(command may then be used to inspect their status.)2.958 F .459(If a)
-5.459 F .604(second attempt to e)108 148.8 R .604
+5.459 F .604(second attempt to e)108 604.8 R .604
(xit is made without an interv)-.15 F .604
(ening command, the shell does not print another w)-.15 F(arning,)-.1 E
-(and an)108 160.8 Q 2.5(ys)-.15 G(topped jobs are terminated.)-2.5 E/F3
-10.95/Times-Bold@0 SF(PR)72 177.6 Q(OMPTING)-.329 E F0 .644(When e)108
-189.6 R -.15(xe)-.15 G .644(cuting interacti).15 F -.15(ve)-.25 G(ly).15
+(and an)108 616.8 Q 2.5(ys)-.15 G(topped jobs are terminated.)-2.5 E/F6
+10.95/Times-Bold@0 SF(PR)72 633.6 Q(OMPTING)-.329 E F0 .644(When e)108
+645.6 R -.15(xe)-.15 G .644(cuting interacti).15 F -.15(ve)-.25 G(ly).15
E(,)-.65 E F1(bash)3.144 E F0 .645(displays the primary prompt)3.145 F
-F2(PS1)3.145 E F0 .645(when it is ready to read a command,)2.895 F 1.826
-(and the secondary prompt)108 201.6 R F2(PS2)4.326 E F0 1.825
+F3(PS1)3.145 E F0 .645(when it is ready to read a command,)2.895 F 1.826
+(and the secondary prompt)108 657.6 R F3(PS2)4.326 E F0 1.825
(when it needs more input to complete a command.)4.076 F F1(Bash)6.825 E
F0(allo)4.325 E 1.825(ws these)-.25 F 1.499(prompt strings to be custom\
ized by inserting a number of backslash-escaped special characters that\
- are)108 213.6 R(decoded as follo)108 225.6 Q(ws:)-.25 E F1(\\a)144
-237.6 Q F0(an ASCII bell character \(07\))28.22 E F1(\\d)144 249.6 Q F0
+ are)108 669.6 R(decoded as follo)108 681.6 Q(ws:)-.25 E F1(\\a)144
+693.6 Q F0(an ASCII bell character \(07\))28.22 E F1(\\d)144 705.6 Q F0
(the date in "W)27.66 E(eekday Month Date" format \(e.g., "T)-.8 E
-(ue May 26"\))-.45 E F1(\\D{)144 261.6 Q/F4 10/Times-Italic@0 SF(format)
-A F1(})A F0(the)180 273.6 Q F4(format)3.927 E F0 1.427(is passed to)
-3.927 F F4(strftime)3.927 E F0 1.427
+(ue May 26"\))-.45 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(34)
+200.665 E 0 Cg EP
+%%Page: 35 35
+%%BeginPageSetup
+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(\\D{)144 84 Q/F2 10/Times-Italic@0 SF
+(format)A F1(})A F0(the)180 96 Q F2(format)3.927 E F0 1.427
+(is passed to)3.927 F F2(strftime)3.927 E F0 1.427
(\(3\) and the result is inserted into the prompt string; an)B(empty)180
-285.6 Q F4(format)2.5 E F0
+108 Q F2(format)2.5 E F0
(results in a locale-speci\214c time representation.)2.5 E
-(The braces are required)5 E F1(\\e)144 297.6 Q F0
-(an ASCII escape character \(033\))28.78 E F1(\\h)144 309.6 Q F0
-(the hostname up to the \214rst `.)27.66 E(')-.7 E F1(\\H)144 321.6 Q F0
-(the hostname)25.44 E F1(\\j)144 333.6 Q F0
+(The braces are required)5 E F1(\\e)144 120 Q F0
+(an ASCII escape character \(033\))28.78 E F1(\\h)144 132 Q F0
+(the hostname up to the \214rst `.)27.66 E(')-.7 E F1(\\H)144 144 Q F0
+(the hostname)25.44 E F1(\\j)144 156 Q F0
(the number of jobs currently managed by the shell)29.89 E F1(\\l)144
-345.6 Q F0(the basename of the shell')30.44 E 2.5(st)-.55 G(erminal de)
--2.5 E(vice name)-.25 E F1(\\n)144 357.6 Q F0(ne)27.66 E(wline)-.25 E F1
-(\\r)144 369.6 Q F0(carriage return)28.78 E F1(\\s)144 381.6 Q F0
+168 Q F0(the basename of the shell')30.44 E 2.5(st)-.55 G(erminal de)
+-2.5 E(vice name)-.25 E F1(\\n)144 180 Q F0(ne)27.66 E(wline)-.25 E F1
+(\\r)144 192 Q F0(carriage return)28.78 E F1(\\s)144 204 Q F0
(the name of the shell, the basename of)29.33 E F1($0)2.5 E F0
(\(the portion follo)2.5 E(wing the \214nal slash\))-.25 E F1(\\t)144
-393.6 Q F0(the current time in 24-hour HH:MM:SS format)29.89 E F1(\\T)
-144 405.6 Q F0(the current time in 12-hour HH:MM:SS format)26.55 E F1
-(\\@)144 417.6 Q F0(the current time in 12-hour am/pm format)23.92 E F1
-(\\A)144 429.6 Q F0(the current time in 24-hour HH:MM format)26 E F1
-(\\u)144 441.6 Q F0(the username of the current user)27.66 E F1(\\v)144
-453.6 Q F0(the v)28.22 E(ersion of)-.15 E F1(bash)2.5 E F0
-(\(e.g., 2.00\))2.5 E F1(\\V)144 465.6 Q F0(the release of)26 E F1(bash)
-2.5 E F0 2.5(,v)C(ersion + patch le)-2.65 E -.15(ve)-.25 G 2.5(l\().15 G
-(e.g., 2.00.0\))-2.5 E F1(\\w)144 477.6 Q F0 .115(the current w)26 F
-.115(orking directory)-.1 F 2.615(,w)-.65 G(ith)-2.615 E F2($HOME)2.615
-E F0(abbre)2.365 E .116(viated with a tilde \(uses the v)-.25 F .116
-(alue of the)-.25 F F2(PR)180 489.6 Q(OMPT_DIR)-.27 E(TRIM)-.36 E F0
--.25(va)2.25 G(riable\)).25 E F1(\\W)144 501.6 Q F0
+216 Q F0(the current time in 24-hour HH:MM:SS format)29.89 E F1(\\T)144
+228 Q F0(the current time in 12-hour HH:MM:SS format)26.55 E F1(\\@)144
+240 Q F0(the current time in 12-hour am/pm format)23.92 E F1(\\A)144 252
+Q F0(the current time in 24-hour HH:MM format)26 E F1(\\u)144 264 Q F0
+(the username of the current user)27.66 E F1(\\v)144 276 Q F0(the v)
+28.22 E(ersion of)-.15 E F1(bash)2.5 E F0(\(e.g., 2.00\))2.5 E F1(\\V)
+144 288 Q F0(the release of)26 E F1(bash)2.5 E F0 2.5(,v)C
+(ersion + patch le)-2.65 E -.15(ve)-.25 G 2.5(l\().15 G(e.g., 2.00.0\))
+-2.5 E F1(\\w)144 300 Q F0 .115(the current w)26 F .115
+(orking directory)-.1 F 2.615(,w)-.65 G(ith)-2.615 E/F3 9/Times-Bold@0
+SF($HOME)2.615 E F0(abbre)2.365 E .116(viated with a tilde \(uses the v)
+-.25 F .116(alue of the)-.25 F F3(PR)180 312 Q(OMPT_DIR)-.27 E(TRIM)-.36
+E F0 -.25(va)2.25 G(riable\)).25 E F1(\\W)144 324 Q F0
(the basename of the current w)23.22 E(orking directory)-.1 E 2.5(,w)
--.65 G(ith)-2.5 E F2($HOME)2.5 E F0(abbre)2.25 E(viated with a tilde)
--.25 E F1(\\!)144 513.6 Q F0(the history number of this command)29.89 E
-F1(\\#)144 525.6 Q F0(the command number of this command)28.22 E F1(\\$)
-144 537.6 Q F0(if the ef)28.22 E(fecti)-.25 E .3 -.15(ve U)-.25 H
-(ID is 0, a).15 E F1(#)2.5 E F0 2.5(,o)C(therwise a)-2.5 E F1($)2.5 E
-(\\)144 549.6 Q F4(nnn)A F0
-(the character corresponding to the octal number)18.22 E F4(nnn)2.5 E F1
-(\\\\)144 561.6 Q F0 2.5(ab)30.44 G(ackslash)-2.5 E F1(\\[)144 573.6 Q
-F0(be)29.89 E 1.257(gin a sequence of non-printing characters, which co\
-uld be used to embed a terminal)-.15 F(control sequence into the prompt)
-180 585.6 Q F1(\\])144 597.6 Q F0
+-.65 G(ith)-2.5 E F3($HOME)2.5 E F0(abbre)2.25 E(viated with a tilde)
+-.25 E F1(\\!)144 336 Q F0(the history number of this command)29.89 E F1
+(\\#)144 348 Q F0(the command number of this command)28.22 E F1(\\$)144
+360 Q F0(if the ef)28.22 E(fecti)-.25 E .3 -.15(ve U)-.25 H(ID is 0, a)
+.15 E F1(#)2.5 E F0 2.5(,o)C(therwise a)-2.5 E F1($)2.5 E(\\)144 372 Q
+F2(nnn)A F0(the character corresponding to the octal number)18.22 E F2
+(nnn)2.5 E F1(\\\\)144 384 Q F0 2.5(ab)30.44 G(ackslash)-2.5 E F1(\\[)
+144 396 Q F0(be)29.89 E 1.257(gin a sequence of non-printing characters\
+, which could be used to embed a terminal)-.15 F
+(control sequence into the prompt)180 408 Q F1(\\])144 420 Q F0
(end a sequence of non-printing characters)29.89 E .119
-(The command number and the history number are usually dif)108 614.4 R
+(The command number and the history number are usually dif)108 436.8 R
.12(ferent: the history number of a command is its)-.25 F 1.585(positio\
n in the history list, which may include commands restored from the his\
-tory \214le \(see)108 626.4 R F2(HIST)4.084 E(OR)-.162 E(Y)-.315 E F0
-(belo)108 638.4 Q .541(w\), while the command number is the position in\
+tory \214le \(see)108 448.8 R F3(HIST)4.084 E(OR)-.162 E(Y)-.315 E F0
+(belo)108 460.8 Q .541(w\), while the command number is the position in\
the sequence of commands e)-.25 F -.15(xe)-.15 G .541
-(cuted during the cur).15 F(-)-.2 E .546(rent shell session.)108 650.4 R
+(cuted during the cur).15 F(-)-.2 E .546(rent shell session.)108 472.8 R
.546(After the string is decoded, it is e)5.546 F .546
(xpanded via parameter e)-.15 F .546(xpansion, command substitu-)-.15 F
-.351(tion, arithmetic e)108 662.4 R .352(xpansion, and quote remo)-.15 F
+.351(tion, arithmetic e)108 484.8 R .352(xpansion, and quote remo)-.15 F
-.25(va)-.15 G .352(l, subject to the v).25 F .352(alue of the)-.25 F F1
(pr)2.852 E(omptv)-.18 E(ars)-.1 E F0 .352(shell option \(see the)2.852
-F(description of the)108 674.4 Q F1(shopt)2.5 E F0(command under)2.5 E
-F2(SHELL B)2.5 E(UIL)-.09 E(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)
--.25 E F3(READLINE)72 691.2 Q F0 .151
+F(description of the)108 496.8 Q F1(shopt)2.5 E F0(command under)2.5 E
+F3(SHELL B)2.5 E(UIL)-.09 E(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)
+-.25 E/F4 10.95/Times-Bold@0 SF(READLINE)72 513.6 Q F0 .151
(This is the library that handles reading input when using an interacti)
-108 703.2 R .45 -.15(ve s)-.25 H .15(hell, unless the).15 F F1
-(\255\255noediting)2.65 E F0(option)2.65 E 1.208(is gi)108 715.2 R -.15
+108 525.6 R .45 -.15(ve s)-.25 H .15(hell, unless the).15 F F1
+(\255\255noediting)2.65 E F0(option)2.65 E 1.208(is gi)108 537.6 R -.15
(ve)-.25 G 3.708(na).15 G 3.708(ts)-3.708 G 1.208(hell in)-3.708 F -.2
(vo)-.4 G 3.708(cation. Line).2 F 1.208
(editing is also used when using the)3.708 F F1<ad65>3.709 E F0 1.209
(option to the)3.709 F F1 -.18(re)3.709 G(ad).18 E F0 -.2(bu)3.709 G
-3.709(iltin. By).2 F(def)108 727.2 Q .851
+3.709(iltin. By).2 F(def)108 549.6 Q .851
(ault, the line editing commands are similar to those of Emacs.)-.1 F
3.351(Av)5.851 G .851(i-style line editing interf)-3.351 F .851
-(ace is also)-.1 F(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(34)
-190.95 E 0 Cg EP
-%%Page: 35 35
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E -.2(av)108 84 S 3.35(ailable. Line)-.05 F .85
+(ace is also)-.1 F -.2(av)108 561.6 S 3.35(ailable. Line)-.05 F .85
(editing can be enabled at an)3.35 F 3.35(yt)-.15 G .85(ime using the)
--3.35 F/F1 10/Times-Bold@0 SF .85(\255o emacs)3.35 F F0(or)3.35 E F1 .85
-(\255o vi)3.35 F F0 .85(options to the)3.35 F F1(set)3.35 E F0 -.2(bu)
-3.35 G(iltin).2 E(\(see)108 96 Q/F2 9/Times-Bold@0 SF .763(SHELL B)3.263
-F(UIL)-.09 E .763(TIN COMMANDS)-.828 F F0(belo)3.013 E 3.263(w\). T)-.25
-F 3.263(ot)-.8 G .763(urn of)-3.263 F 3.263(fl)-.25 G .763
+-3.35 F F1 .85(\255o emacs)3.35 F F0(or)3.35 E F1 .85(\255o vi)3.35 F F0
+.85(options to the)3.35 F F1(set)3.35 E F0 -.2(bu)3.35 G(iltin).2 E
+(\(see)108 573.6 Q F3 .763(SHELL B)3.263 F(UIL)-.09 E .763(TIN COMMANDS)
+-.828 F F0(belo)3.013 E 3.263(w\). T)-.25 F 3.263(ot)-.8 G .763(urn of)
+-3.263 F 3.263(fl)-.25 G .763
(ine editing after the shell is running, use the)-3.263 F F1(+o)3.262 E
-(emacs)108 108 Q F0(or)2.5 E F1(+o vi)2.5 E F0(options to the)2.5 E F1
-(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E F1(Readline Notation)87 124.8 Q
+(emacs)108 585.6 Q F0(or)2.5 E F1(+o vi)2.5 E F0(options to the)2.5 E F1
+(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E F1(Readline Notation)87 602.4 Q
F0 .463(In this section, the Emacs-style notation is used to denote k)
-108 136.8 R -.15(ey)-.1 G(strok).15 E 2.963(es. Control)-.1 F -.1(ke)
-2.963 G .463(ys are denoted by C\255)-.05 F/F3 10/Times-Italic@0 SF -.1
-(ke)C(y)-.2 E F0(,)A 1.153(e.g., C\255n means Control\255N.)108 148.8 R
-(Similarly)6.153 E(,)-.65 E F3(meta)4.033 E F0 -.1(ke)3.913 G 1.153
-(ys are denoted by M\255)-.05 F F3 -.1(ke)C(y)-.2 E F0 3.652(,s)C 3.652
-(oM)-3.652 G 1.152(\255x means Meta\255X.)-3.652 F(\(On)6.152 E -.1(ke)
-108 160.8 S .83(yboards without a)-.05 F F3(meta)3.71 E F0 -.1(ke)3.59 G
-2.13 -.65(y, M)-.05 H<ad>.65 E F3(x)A F0 .83(means ESC)3.33 F F3(x)3.33
-E F0 3.33(,i)C .831(.e., press the Escape k)-3.33 F 1.131 -.15(ey t)-.1
-H .831(hen the).15 F F3(x)4.101 E F0 -.1(ke)3.861 G 4.631 -.65(y. T)-.05
-H .831(his mak).65 F(es)-.1 E .6(ESC the)108 172.8 R F3 .6(meta pr)3.1 F
-(e\214x)-.37 E F0 5.6(.T)C .6(he combination M\255C\255)-5.6 F F3(x)A F0
-.599(means ESC\255Control\255)3.099 F F3(x)A F0 3.099(,o)C 3.099(rp)
+108 614.4 R -.15(ey)-.1 G(strok).15 E 2.963(es. Control)-.1 F -.1(ke)
+2.963 G .463(ys are denoted by C\255)-.05 F F2 -.1(ke)C(y)-.2 E F0(,)A
+1.153(e.g., C\255n means Control\255N.)108 626.4 R(Similarly)6.153 E(,)
+-.65 E F2(meta)4.033 E F0 -.1(ke)3.913 G 1.153(ys are denoted by M\255)
+-.05 F F2 -.1(ke)C(y)-.2 E F0 3.652(,s)C 3.652(oM)-3.652 G 1.152
+(\255x means Meta\255X.)-3.652 F(\(On)6.152 E -.1(ke)108 638.4 S .83
+(yboards without a)-.05 F F2(meta)3.71 E F0 -.1(ke)3.59 G 2.13 -.65
+(y, M)-.05 H<ad>.65 E F2(x)A F0 .83(means ESC)3.33 F F2(x)3.33 E F0 3.33
+(,i)C .831(.e., press the Escape k)-3.33 F 1.131 -.15(ey t)-.1 H .831
+(hen the).15 F F2(x)4.101 E F0 -.1(ke)3.861 G 4.631 -.65(y. T)-.05 H
+.831(his mak).65 F(es)-.1 E .6(ESC the)108 650.4 R F2 .6(meta pr)3.1 F
+(e\214x)-.37 E F0 5.6(.T)C .6(he combination M\255C\255)-5.6 F F2(x)A F0
+.599(means ESC\255Control\255)3.099 F F2(x)A F0 3.099(,o)C 3.099(rp)
-3.099 G .599(ress the Escape k)-3.099 F .899 -.15(ey t)-.1 H .599
-(hen hold).15 F(the Control k)108 184.8 Q .3 -.15(ey w)-.1 H
-(hile pressing the).15 E F3(x)3.27 E F0 -.1(ke)3.03 G -.65(y.)-.05 G(\))
-.65 E .619(Readline commands may be gi)108 201.6 R -.15(ve)-.25 G 3.119
-(nn).15 G(umeric)-3.119 E F3(ar)3.119 E(guments)-.37 E F0 3.119(,w).27 G
+(hen hold).15 F(the Control k)108 662.4 Q .3 -.15(ey w)-.1 H
+(hile pressing the).15 E F2(x)3.27 E F0 -.1(ke)3.03 G -.65(y.)-.05 G(\))
+.65 E .619(Readline commands may be gi)108 679.2 R -.15(ve)-.25 G 3.119
+(nn).15 G(umeric)-3.119 E F2(ar)3.119 E(guments)-.37 E F0 3.119(,w).27 G
.619(hich normally act as a repeat count.)-3.119 F(Sometimes,)5.62 E(ho)
-108 213.6 Q(we)-.25 E -.15(ve)-.25 G 1.419 -.4(r, i).15 H 3.119(ti).4 G
+108 691.2 Q(we)-.25 E -.15(ve)-.25 G 1.419 -.4(r, i).15 H 3.119(ti).4 G
3.119(st)-3.119 G .619(he sign of the ar)-3.119 F .619
(gument that is signi\214cant.)-.18 F -.15(Pa)5.619 G .619(ssing a ne)
.15 F -.05(ga)-.15 G(ti).05 E .919 -.15(ve a)-.25 H -.18(rg).15 G .619
-(ument to a command that).18 F 1.018(acts in the forw)108 225.6 R 1.018
+(ument to a command that).18 F 1.018(acts in the forw)108 703.2 R 1.018
(ard direction \(e.g.,)-.1 F F1(kill\255line)3.518 E F0 3.518(\)c)C
1.018(auses that command to act in a backw)-3.518 F 1.019
-(ard direction.)-.1 F(Com-)6.019 E(mands whose beha)108 237.6 Q
+(ard direction.)-.1 F(Com-)6.019 E(mands whose beha)108 715.2 Q
(vior with ar)-.2 E(guments de)-.18 E(viates from this are noted belo)
--.25 E -.65(w.)-.25 G .812(When a command is described as)108 254.4 R F3
-(killing)3.311 E F0(te)3.311 E .811(xt, the te)-.15 F .811
+-.25 E -.65(w.)-.25 G(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(35)
+200.665 E 0 Cg EP
+%%Page: 36 36
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E .812(When a command is described as)108 84 R/F1 10/Times-Italic@0
+SF(killing)3.311 E F0(te)3.311 E .811(xt, the te)-.15 F .811
(xt deleted is sa)-.15 F -.15(ve)-.2 G 3.311(df).15 G .811
-(or possible future retrie)-3.311 F -.25(va)-.25 G 3.311(l\().25 G F3
-(yank-)-3.311 E(ing)108 266.4 Q F0 2.529(\). The)B .029(killed te)2.529
-F .029(xt is sa)-.15 F -.15(ve)-.2 G 2.529(di).15 G 2.529(na)-2.529 G F3
+(or possible future retrie)-3.311 F -.25(va)-.25 G 3.311(l\().25 G F1
+(yank-)-3.311 E(ing)108 96 Q F0 2.529(\). The)B .029(killed te)2.529 F
+.029(xt is sa)-.15 F -.15(ve)-.2 G 2.529(di).15 G 2.529(na)-2.529 G F1
.029(kill ring)B F0 5.029(.C)C(onsecuti)-5.029 E .329 -.15(ve k)-.25 H
.029(ills cause the te).15 F .029(xt to be accumulated into one unit,)
--.15 F .567(which can be yank)108 278.4 R .567(ed all at once.)-.1 F
-.567(Commands which do not kill te)5.567 F .567
+-.15 F .567(which can be yank)108 108 R .567(ed all at once.)-.1 F .567
+(Commands which do not kill te)5.567 F .567
(xt separate the chunks of te)-.15 F .567(xt on the kill)-.15 F(ring.)
-108 290.4 Q F1(Readline Initialization)87 307.2 Q F0 .091(Readline is c\
-ustomized by putting commands in an initialization \214le \(the)108
-319.2 R F3(inputr)2.591 E(c)-.37 E F0 2.591(\214le\). The)2.591 F .092
-(name of this \214le)2.591 F .197(is tak)108 331.2 R .196(en from the v)
--.1 F .196(alue of the)-.25 F F2(INPUTRC)2.696 E F0 -.25(va)2.446 G
-2.696(riable. If).25 F .196(that v)2.696 F .196
-(ariable is unset, the def)-.25 F .196(ault is)-.1 F F3(~/.inputr)2.696
-E(c)-.37 E F0 5.196(.W).31 G .196(hen a)-5.196 F 1.034(program which us\
-es the readline library starts up, the initialization \214le is read, a\
-nd the k)108 343.2 R 1.335 -.15(ey b)-.1 H 1.035(indings and).15 F -.25
-(va)108 355.2 S 1.15(riables are set.).25 F 1.15(There are only a fe)
-6.15 F 3.649(wb)-.25 G 1.149(asic constructs allo)-3.649 F 1.149
+108 120 Q/F2 10/Times-Bold@0 SF(Readline Initialization)87 136.8 Q F0
+.091(Readline is customized by putting commands in an initialization \
+\214le \(the)108 148.8 R F1(inputr)2.591 E(c)-.37 E F0 2.591
+(\214le\). The)2.591 F .092(name of this \214le)2.591 F .197(is tak)108
+160.8 R .196(en from the v)-.1 F .196(alue of the)-.25 F/F3 9
+/Times-Bold@0 SF(INPUTRC)2.696 E F0 -.25(va)2.446 G 2.696(riable. If).25
+F .196(that v)2.696 F .196(ariable is unset, the def)-.25 F .196
+(ault is)-.1 F F1(~/.inputr)2.696 E(c)-.37 E F0 5.196(.W).31 G .196
+(hen a)-5.196 F 1.034(program which uses the readline library starts up\
+, the initialization \214le is read, and the k)108 172.8 R 1.335 -.15
+(ey b)-.1 H 1.035(indings and).15 F -.25(va)108 184.8 S 1.15
+(riables are set.).25 F 1.15(There are only a fe)6.15 F 3.649(wb)-.25 G
+1.149(asic constructs allo)-3.649 F 1.149
(wed in the readline initialization \214le.)-.25 F(Blank)6.149 E .736
-(lines are ignored.)108 367.2 R .737(Lines be)5.737 F .737
-(ginning with a)-.15 F F1(#)3.237 E F0 .737(are comments.)3.237 F .737
-(Lines be)5.737 F .737(ginning with a)-.15 F F1($)3.237 E F0 .737
-(indicate conditional)3.237 F 2.5(constructs. Other)108 379.2 R
+(lines are ignored.)108 196.8 R .737(Lines be)5.737 F .737
+(ginning with a)-.15 F F2(#)3.237 E F0 .737(are comments.)3.237 F .737
+(Lines be)5.737 F .737(ginning with a)-.15 F F2($)3.237 E F0 .737
+(indicate conditional)3.237 F 2.5(constructs. Other)108 208.8 R
(lines denote k)2.5 E .3 -.15(ey b)-.1 H(indings and v).15 E
-(ariable settings.)-.25 E .987(The def)108 396 R .987(ault k)-.1 F -.15
-(ey)-.1 G .987(-bindings may be changed with an).15 F F3(inputr)3.497 E
-(c)-.37 E F0 3.487(\214le. Other)3.797 F .987
-(programs that use this library may)3.487 F(add their o)108 408 Q
-(wn commands and bindings.)-.25 E -.15(Fo)108 424.8 S 2.5(re).15 G
-(xample, placing)-2.65 E(M\255Control\255u: uni)144 441.6 Q -.15(ve)-.25
-G(rsal\255ar).15 E(gument)-.18 E(or)108 453.6 Q(C\255Meta\255u: uni)144
-465.6 Q -.15(ve)-.25 G(rsal\255ar).15 E(gument)-.18 E(into the)108 477.6
-Q F3(inputr)2.51 E(c)-.37 E F0 -.1(wo)2.81 G(uld mak).1 E 2.5(eM)-.1 G
-(\255C\255u e)-2.5 E -.15(xe)-.15 G(cute the readline command).15 E F3
+(ariable settings.)-.25 E .987(The def)108 225.6 R .987(ault k)-.1 F
+-.15(ey)-.1 G .987(-bindings may be changed with an).15 F F1(inputr)
+3.497 E(c)-.37 E F0 3.487(\214le. Other)3.797 F .987
+(programs that use this library may)3.487 F(add their o)108 237.6 Q
+(wn commands and bindings.)-.25 E -.15(Fo)108 254.4 S 2.5(re).15 G
+(xample, placing)-2.65 E(M\255Control\255u: uni)144 271.2 Q -.15(ve)-.25
+G(rsal\255ar).15 E(gument)-.18 E(or)108 283.2 Q(C\255Meta\255u: uni)144
+295.2 Q -.15(ve)-.25 G(rsal\255ar).15 E(gument)-.18 E(into the)108 307.2
+Q F1(inputr)2.51 E(c)-.37 E F0 -.1(wo)2.81 G(uld mak).1 E 2.5(eM)-.1 G
+(\255C\255u e)-2.5 E -.15(xe)-.15 G(cute the readline command).15 E F1
(univer)2.5 E(sal\255ar)-.1 E(gument)-.37 E F0(.).68 E 1.26(The follo)
-108 494.4 R 1.261(wing symbolic character names are recognized:)-.25 F
-F3 -.4(RU)3.761 G(BOUT).4 E F0(,)1.27 E F3(DEL)3.761 E F0(,).53 E F3
-(ESC)3.761 E F0(,).72 E F3(LFD)3.761 E F0(,).28 E F3(NEWLINE)3.761 E F0
-(,).73 E F3(RET)3.761 E F0(,)1.27 E F3(RETURN)108 506.4 Q F0(,)1.1 E F3
-(SPC)2.5 E F0(,).72 E F3(SP)2.5 E -.3(AC)-.9 G(E).3 E F0 2.5(,a).73 G
-(nd)-2.5 E F3 -.5(TA)2.5 G(B).5 E F0(.).27 E .209
-(In addition to command names, readline allo)108 523.2 R .209(ws k)-.25
+108 324 R 1.261(wing symbolic character names are recognized:)-.25 F F1
+-.4(RU)3.761 G(BOUT).4 E F0(,)1.27 E F1(DEL)3.761 E F0(,).53 E F1(ESC)
+3.761 E F0(,).72 E F1(LFD)3.761 E F0(,).28 E F1(NEWLINE)3.761 E F0(,).73
+E F1(RET)3.761 E F0(,)1.27 E F1(RETURN)108 336 Q F0(,)1.1 E F1(SPC)2.5 E
+F0(,).72 E F1(SP)2.5 E -.3(AC)-.9 G(E).3 E F0 2.5(,a).73 G(nd)-2.5 E F1
+-.5(TA)2.5 G(B).5 E F0(.).27 E .209
+(In addition to command names, readline allo)108 352.8 R .209(ws k)-.25
F -.15(ey)-.1 G 2.709(st).15 G 2.709(ob)-2.709 G 2.709(eb)-2.709 G .209
(ound to a string that is inserted when the k)-2.709 F .509 -.15(ey i)
--.1 H(s).15 E(pressed \(a)108 535.2 Q F3(macr)2.5 E(o)-.45 E F0(\).)A F1
-(Readline K)87 552 Q(ey Bindings)-.25 E F0 .366
-(The syntax for controlling k)108 564 R .666 -.15(ey b)-.1 H .366
-(indings in the).15 F F3(inputr)2.876 E(c)-.37 E F0 .366
+-.1 H(s).15 E(pressed \(a)108 364.8 Q F1(macr)2.5 E(o)-.45 E F0(\).)A F2
+(Readline K)87 381.6 Q(ey Bindings)-.25 E F0 .366
+(The syntax for controlling k)108 393.6 R .666 -.15(ey b)-.1 H .366
+(indings in the).15 F F1(inputr)2.876 E(c)-.37 E F0 .366
(\214le is simple.)3.176 F .366(All that is required is the name of the)
-5.366 F .383(command or the te)108 576 R .383(xt of a macro and a k)-.15
-F .683 -.15(ey s)-.1 H .383
+5.366 F .383(command or the te)108 405.6 R .383(xt of a macro and a k)
+-.15 F .683 -.15(ey s)-.1 H .383
(equence to which it should be bound. The name may be speci-).15 F .853
-(\214ed in one of tw)108 588 R 3.353(ow)-.1 G .853(ays: as a symbolic k)
--3.453 F 1.153 -.15(ey n)-.1 H .853(ame, possibly with).15 F F3
-(Meta\255)3.353 E F0(or)3.353 E F3(Contr)3.353 E(ol\255)-.45 E F0
-(pre\214x)3.353 E .853(es, or as a k)-.15 F -.15(ey)-.1 G(sequence.)108
-600 Q 1.542(When using the form)108 616.8 R F1 -.1(ke)4.042 G(yname).1 E
-F0(:)A F3(function\255name).833 E F0(or)4.042 E F3(macr)4.042 E(o)-.45 E
-F0(,)A F3 -.1(ke)4.042 G(yname)-.2 E F0 1.542(is the name of a k)4.222 F
-1.841 -.15(ey s)-.1 H 1.541(pelled out in).15 F 2.5(English. F)108 628.8
-R(or e)-.15 E(xample:)-.15 E(Control-u: uni)144 652.8 Q -.15(ve)-.25 G
-(rsal\255ar).15 E(gument)-.18 E(Meta-Rubout: backw)144 664.8 Q
-(ard-kill-w)-.1 E(ord)-.1 E(Control-o: "> output")144 676.8 Q .698
-(In the abo)108 693.6 R .998 -.15(ve ex)-.15 H(ample,).15 E F3(C\255u)
-3.038 E F0 .698(is bound to the function)3.448 F F1(uni)3.198 E -.1(ve)
--.1 G(rsal\255ar).1 E(gument)-.1 E F0(,)A F3(M\255DEL)3.878 E F0 .698
-(is bound to the func-)3.728 F(tion)108 705.6 Q F1
-(backward\255kill\255w)2.759 E(ord)-.1 E F0 2.759(,a)C(nd)-2.759 E F3
+(\214ed in one of tw)108 417.6 R 3.353(ow)-.1 G .853
+(ays: as a symbolic k)-3.453 F 1.153 -.15(ey n)-.1 H .853
+(ame, possibly with).15 F F1(Meta\255)3.353 E F0(or)3.353 E F1(Contr)
+3.353 E(ol\255)-.45 E F0(pre\214x)3.353 E .853(es, or as a k)-.15 F -.15
+(ey)-.1 G(sequence.)108 429.6 Q 1.542(When using the form)108 446.4 R F2
+-.1(ke)4.042 G(yname).1 E F0(:)A F1(function\255name).833 E F0(or)4.042
+E F1(macr)4.042 E(o)-.45 E F0(,)A F1 -.1(ke)4.042 G(yname)-.2 E F0 1.542
+(is the name of a k)4.222 F 1.841 -.15(ey s)-.1 H 1.541(pelled out in)
+.15 F 2.5(English. F)108 458.4 R(or e)-.15 E(xample:)-.15 E
+(Control-u: uni)144 482.4 Q -.15(ve)-.25 G(rsal\255ar).15 E(gument)-.18
+E(Meta-Rubout: backw)144 494.4 Q(ard-kill-w)-.1 E(ord)-.1 E
+(Control-o: "> output")144 506.4 Q .698(In the abo)108 523.2 R .998 -.15
+(ve ex)-.15 H(ample,).15 E F1(C\255u)3.038 E F0 .698
+(is bound to the function)3.448 F F2(uni)3.198 E -.1(ve)-.1 G
+(rsal\255ar).1 E(gument)-.1 E F0(,)A F1(M\255DEL)3.878 E F0 .698
+(is bound to the func-)3.728 F(tion)108 535.2 Q F2
+(backward\255kill\255w)2.759 E(ord)-.1 E F0 2.759(,a)C(nd)-2.759 E F1
(C\255o)2.599 E F0 .258(is bound to run the macro e)2.939 F .258
(xpressed on the right hand side \(that is, to)-.15 F(insert the te)108
-717.6 Q(xt)-.15 E/F4 10/Courier@0 SF 6(>o)2.5 G(utput)-6 E F0
-(into the line\).)2.5 E(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E
-(35)190.95 E 0 Cg EP
-%%Page: 36 36
+547.2 Q(xt)-.15 E/F4 10/Courier@0 SF 6(>o)2.5 G(utput)-6 E F0
+(into the line\).)2.5 E .055(In the second form,)108 564 R F2("k)2.555 E
+(eyseq")-.1 E F0(:)A F1(function\255name).833 E F0(or)2.555 E F1(macr)
+2.555 E(o)-.45 E F0(,)A F2 -.1(ke)2.555 G(yseq).1 E F0(dif)2.556 E .056
+(fers from)-.25 F F2 -.1(ke)2.556 G(yname).1 E F0(abo)2.556 E .356 -.15
+(ve i)-.15 H 2.556(nt).15 G .056(hat strings)-2.556 F 1.284
+(denoting an entire k)108 576 R 1.584 -.15(ey s)-.1 H 1.284(equence may\
+ be speci\214ed by placing the sequence within double quotes.).15 F
+(Some)6.284 E .385(GNU Emacs style k)108 588 R .685 -.15(ey e)-.1 H .385
+(scapes can be used, as in the follo).15 F .385(wing e)-.25 F .386
+(xample, b)-.15 F .386(ut the symbolic character names)-.2 F
+(are not recognized.)108 600 Q("\\C\255u": uni)144 624 Q -.15(ve)-.25 G
+(rsal\255ar).15 E(gument)-.18 E
+("\\C\255x\\C\255r": re\255read\255init\255\214le)144 636 Q
+("\\e[11~": "Function K)144 648 Q .3 -.15(ey 1)-.25 H(").15 E .315
+(In this e)108 664.8 R(xample,)-.15 E F1(C\255u)2.655 E F0 .315(is ag)
+3.065 F .315(ain bound to the function)-.05 F F2(uni)2.815 E -.1(ve)-.1
+G(rsal\255ar).1 E(gument)-.1 E F0(.)A F1 .315(C\255x C\255r)5.155 F F0
+.314(is bound to the func-)3.544 F(tion)108 676.8 Q F2 -.18(re)2.5 G
+<ad72>.18 E(ead\255init\255\214le)-.18 E F0 2.5(,a)C(nd)-2.5 E F1
+(ESC [ 1 1 ~)3.01 E F0(is bound to insert the te)3.94 E(xt)-.15 E F4
+(Function Key 1)2.5 E F0(.)A
+(The full set of GNU Emacs style escape sequences is)108 693.6 Q F2
+<5c43ad>144 705.6 Q F0(control pre\214x)20.3 E F2<5c4dad>144 717.6 Q F0
+(meta pre\214x)18.08 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(36)
+200.665 E 0 Cg EP
+%%Page: 37 37
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E .055(In the second form,)108 84 R/F1 10/Times-Bold@0 SF("k)2.555
-E(eyseq")-.1 E F0(:)A/F2 10/Times-Italic@0 SF(function\255name).833 E F0
-(or)2.555 E F2(macr)2.555 E(o)-.45 E F0(,)A F1 -.1(ke)2.555 G(yseq).1 E
-F0(dif)2.556 E .056(fers from)-.25 F F1 -.1(ke)2.556 G(yname).1 E F0
-(abo)2.556 E .356 -.15(ve i)-.15 H 2.556(nt).15 G .056(hat strings)
--2.556 F 1.284(denoting an entire k)108 96 R 1.584 -.15(ey s)-.1 H 1.284
-(equence may be speci\214ed by placing the sequence within double quote\
-s.).15 F(Some)6.284 E .385(GNU Emacs style k)108 108 R .685 -.15(ey e)
--.1 H .385(scapes can be used, as in the follo).15 F .385(wing e)-.25 F
-.386(xample, b)-.15 F .386(ut the symbolic character names)-.2 F
-(are not recognized.)108 120 Q("\\C\255u": uni)144 144 Q -.15(ve)-.25 G
-(rsal\255ar).15 E(gument)-.18 E
-("\\C\255x\\C\255r": re\255read\255init\255\214le)144 156 Q
-("\\e[11~": "Function K)144 168 Q .3 -.15(ey 1)-.25 H(").15 E .315
-(In this e)108 184.8 R(xample,)-.15 E F2(C\255u)2.655 E F0 .315(is ag)
-3.065 F .315(ain bound to the function)-.05 F F1(uni)2.815 E -.1(ve)-.1
-G(rsal\255ar).1 E(gument)-.1 E F0(.)A F2 .315(C\255x C\255r)5.155 F F0
-.314(is bound to the func-)3.544 F(tion)108 196.8 Q F1 -.18(re)2.5 G
-<ad72>.18 E(ead\255init\255\214le)-.18 E F0 2.5(,a)C(nd)-2.5 E F2
-(ESC [ 1 1 ~)3.01 E F0(is bound to insert the te)3.94 E(xt)-.15 E/F3 10
-/Courier@0 SF(Function Key 1)2.5 E F0(.)A
-(The full set of GNU Emacs style escape sequences is)108 213.6 Q F1
-<5c43ad>144 225.6 Q F0(control pre\214x)20.3 E F1<5c4dad>144 237.6 Q F0
-(meta pre\214x)18.08 E F1(\\e)144 249.6 Q F0(an escape character)28.78 E
-F1(\\\\)144 261.6 Q F0(backslash)30.44 E F1(\\")144 273.6 Q F0
-(literal ")27.67 E F1<5c08>144 285.6 Q F0(literal \010)30.44 E(In addit\
-ion to the GNU Emacs style escape sequences, a second set of backslash \
-escapes is a)108 302.4 Q -.25(va)-.2 G(ilable:).25 E F1(\\a)144 314.4 Q
-F0(alert \(bell\))28.22 E F1(\\b)144 326.4 Q F0(backspace)27.66 E F1
-(\\d)144 338.4 Q F0(delete)27.66 E F1(\\f)144 350.4 Q F0(form feed)29.89
-E F1(\\n)144 362.4 Q F0(ne)27.66 E(wline)-.25 E F1(\\r)144 374.4 Q F0
-(carriage return)28.78 E F1(\\t)144 386.4 Q F0(horizontal tab)29.89 E F1
-(\\v)144 398.4 Q F0 -.15(ve)28.22 G(rtical tab).15 E F1(\\)144 410.4 Q
-F2(nnn)A F0(the eight-bit character whose v)18.22 E(alue is the octal v)
--.25 E(alue)-.25 E F2(nnn)2.5 E F0(\(one to three digits\))2.5 E F1(\\x)
-144 422.4 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 1.141
-(When entering the te)108 439.2 R 1.141(xt of a macro, single or double\
- quotes must be used to indicate a macro de\214nition.)-.15 F .09
-(Unquoted te)108 451.2 R .09(xt is assumed to be a function name.)-.15 F
-.089(In the macro body)5.089 F 2.589(,t)-.65 G .089
-(he backslash escapes described abo)-2.589 F -.15(ve)-.15 G(are e)108
-463.2 Q 2.5(xpanded. Backslash)-.15 F(will quote an)2.5 E 2.5(yo)-.15 G
-(ther character in the macro te)-2.5 E(xt, including " and \010.)-.15 E
-F1(Bash)108 480 Q F0(allo)2.929 E .429(ws the current readline k)-.25 F
-.729 -.15(ey b)-.1 H .429
+-.35 E/F1 10/Times-Bold@0 SF(\\e)144 84 Q F0(an escape character)28.78 E
+F1(\\\\)144 96 Q F0(backslash)30.44 E F1(\\")144 108 Q F0(literal ")
+27.67 E F1<5c08>144 120 Q F0(literal \010)30.44 E(In addition to the GN\
+U Emacs style escape sequences, a second set of backslash escapes is a)
+108 136.8 Q -.25(va)-.2 G(ilable:).25 E F1(\\a)144 148.8 Q F0
+(alert \(bell\))28.22 E F1(\\b)144 160.8 Q F0(backspace)27.66 E F1(\\d)
+144 172.8 Q F0(delete)27.66 E F1(\\f)144 184.8 Q F0(form feed)29.89 E F1
+(\\n)144 196.8 Q F0(ne)27.66 E(wline)-.25 E F1(\\r)144 208.8 Q F0
+(carriage return)28.78 E F1(\\t)144 220.8 Q F0(horizontal tab)29.89 E F1
+(\\v)144 232.8 Q F0 -.15(ve)28.22 G(rtical tab).15 E F1(\\)144 244.8 Q
+/F2 10/Times-Italic@0 SF(nnn)A F0(the eight-bit character whose v)18.22
+E(alue is the octal v)-.25 E(alue)-.25 E F2(nnn)2.5 E F0
+(\(one to three digits\))2.5 E F1(\\x)144 256.8 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 1.141(When entering the te)108
+273.6 R 1.141(xt of a macro, single or double quotes must be used to in\
+dicate a macro de\214nition.)-.15 F .09(Unquoted te)108 285.6 R .09
+(xt is assumed to be a function name.)-.15 F .089(In the macro body)
+5.089 F 2.589(,t)-.65 G .089(he backslash escapes described abo)-2.589 F
+-.15(ve)-.15 G(are e)108 297.6 Q 2.5(xpanded. Backslash)-.15 F
+(will quote an)2.5 E 2.5(yo)-.15 G(ther character in the macro te)-2.5 E
+(xt, including " and \010.)-.15 E F1(Bash)108 314.4 Q F0(allo)2.929 E
+.429(ws the current readline k)-.25 F .729 -.15(ey b)-.1 H .429
(indings to be displayed or modi\214ed with the).15 F F1(bind)2.93 E F0
-.2(bu)2.93 G .43(iltin command.).2 F .046
-(The editing mode may be switched during interacti)108 492 R .346 -.15
+(The editing mode may be switched during interacti)108 326.4 R .346 -.15
(ve u)-.25 H .046(se by using the).15 F F1<ad6f>2.545 E F0 .045
(option to the)2.545 F F1(set)2.545 E F0 -.2(bu)2.545 G .045
-(iltin command).2 F(\(see)108 504 Q/F4 9/Times-Bold@0 SF(SHELL B)2.5 E
+(iltin command).2 F(\(see)108 338.4 Q/F3 9/Times-Bold@0 SF(SHELL B)2.5 E
(UIL)-.09 E(TIN COMMANDS)-.828 E F0(belo)2.25 E(w\).)-.25 E F1
-(Readline V)87 520.8 Q(ariables)-.92 E F0 .043(Readline has v)108 532.8
+(Readline V)87 355.2 Q(ariables)-.92 E F0 .043(Readline has v)108 367.2
R .043(ariables that can be used to further customize its beha)-.25 F
(vior)-.2 E 5.043(.A)-.55 G -.25(va)-2.5 G .043
-(riable may be set in the).25 F F2(inpu-)2.554 E(tr)108 544.8 Q(c)-.37 E
-F0(\214le with a statement of the form)2.81 E F1(set)144 561.6 Q F2
+(riable may be set in the).25 F F2(inpu-)2.554 E(tr)108 379.2 Q(c)-.37 E
+F0(\214le with a statement of the form)2.81 E F1(set)144 396 Q F2
(variable\255name value)2.5 E F0 .79(Except where noted, readline v)108
-578.4 R .79(ariables can tak)-.25 F 3.29(et)-.1 G .79(he v)-3.29 F
+412.8 R .79(ariables can tak)-.25 F 3.29(et)-.1 G .79(he v)-3.29 F
(alues)-.25 E F1(On)3.29 E F0(or)3.29 E F1(Off)3.29 E F0 .79
(\(without re)3.29 F -.05(ga)-.15 G .79(rd to case\).).05 F(Unrecog-)
-5.79 E .448(nized v)108 590.4 R .448(ariable names are ignored.)-.25 F
+5.79 E .448(nized v)108 424.8 R .448(ariable names are ignored.)-.25 F
.448(When a v)5.448 F .448(ariable v)-.25 F .448
(alue is read, empty or null v)-.25 F .449(alues, "on" \(case-insensi-)
--.25 F(ti)108 602.4 Q -.15(ve)-.25 G .468(\), and "1" are equi).15 F
+-.25 F(ti)108 436.8 Q -.15(ve)-.25 G .468(\), and "1" are equi).15 F
-.25(va)-.25 G .468(lent to).25 F F1(On)2.968 E F0 5.468(.A)C .468
(ll other v)-5.468 F .468(alues are equi)-.25 F -.25(va)-.25 G .468
(lent to).25 F F1(Off)2.968 E F0 5.468(.T)C .467(he v)-5.468 F .467
-(ariables and their def)-.25 F(ault)-.1 E -.25(va)108 614.4 S(lues are:)
-.25 E F1(bell\255style \(audible\))108 631.2 Q F0 .01
-(Controls what happens when readline w)144 643.2 R .011
+(ariables and their def)-.25 F(ault)-.1 E -.25(va)108 448.8 S(lues are:)
+.25 E F1(bell\255style \(audible\))108 465.6 Q F0 .01
+(Controls what happens when readline w)144 477.6 R .011
(ants to ring the terminal bell.)-.1 F .011(If set to)5.011 F F1(none)
2.511 E F0 2.511(,r)C .011(eadline ne)-2.511 F -.15(ve)-.25 G(r).15 E
-.94(rings the bell.)144 655.2 R .94(If set to)5.94 F F1(visible)3.44 E
+.94(rings the bell.)144 489.6 R .94(If set to)5.94 F F1(visible)3.44 E
F0 3.44(,r)C .94(eadline uses a visible bell if one is a)-3.44 F -.25
(va)-.2 G 3.44(ilable. If).25 F .94(set to)3.44 F F1(audible)3.44 E F0
-(,)A(readline attempts to ring the terminal')144 667.2 Q 2.5(sb)-.55 G
-(ell.)-2.5 E F1(bind\255tty\255special\255chars \(On\))108 679.2 Q F0
-.055(If set to)144 691.2 R F1(On)2.555 E F0 2.555(,r)C .056(eadline att\
+(,)A(readline attempts to ring the terminal')144 501.6 Q 2.5(sb)-.55 G
+(ell.)-2.5 E F1(bind\255tty\255special\255chars \(On\))108 513.6 Q F0
+.055(If set to)144 525.6 R F1(On)2.555 E F0 2.555(,r)C .056(eadline att\
empts to bind the control characters treated specially by the k)-2.555 F
-(ernel')-.1 E 2.556(st)-.55 G(ermi-)-2.556 E(nal dri)144 703.2 Q -.15
+(ernel')-.1 E 2.556(st)-.55 G(ermi-)-2.556 E(nal dri)144 537.6 Q -.15
(ve)-.25 G 2.5(rt).15 G 2.5(ot)-2.5 G(heir readline equi)-2.5 E -.25(va)
--.25 G(lents.).25 E(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(36)
-190.95 E 0 Cg EP
-%%Page: 37 37
-%%BeginPageSetup
-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(color)108 84 Q(ed\255stats \(Off\))-.18 E
-F0 1.58(If set to)144 96 R F1(On)4.08 E F0 4.08(,r)C 1.579
+-.25 G(lents.).25 E F1(color)108 549.6 Q(ed\255stats \(Off\))-.18 E F0
+1.58(If set to)144 561.6 R F1(On)4.08 E F0 4.08(,r)C 1.579
(eadline displays possible completions using dif)-4.08 F 1.579
-(ferent colors to indicate their \214le)-.25 F 2.5(type. The)144 108 R
+(ferent colors to indicate their \214le)-.25 F 2.5(type. The)144 573.6 R
(color de\214nitions are tak)2.5 E(en from the v)-.1 E(alue of the)-.25
E F1(LS_COLORS)2.5 E F0(en)2.5 E(vironment v)-.4 E(ariable.)-.25 E F1
-(comment\255begin \(`)108 120 Q(`#')-.63 E('\))-.63 E F0 .884
-(The string that is inserted when the readline)144 132 R F1
+(comment\255begin \(`)108 585.6 Q(`#')-.63 E('\))-.63 E F0 .884
+(The string that is inserted when the readline)144 597.6 R F1
(insert\255comment)3.385 E F0 .885(command is e)3.385 F -.15(xe)-.15 G
-3.385(cuted. This).15 F(com-)3.385 E(mand is bound to)144 144 Q F1
+3.385(cuted. This).15 F(com-)3.385 E(mand is bound to)144 609.6 Q F1
(M\255#)2.5 E F0(in emacs mode and to)2.5 E F1(#)2.5 E F0
-(in vi command mode.)2.5 E F1(completion\255ignor)108 156 Q
-(e\255case \(Off\))-.18 E F0(If set to)144 168 Q F1(On)2.5 E F0 2.5(,r)C
-(eadline performs \214lename matching and completion in a case\255insen\
-siti)-2.5 E .3 -.15(ve f)-.25 H(ashion.).05 E F1(completion\255pr)108
-180 Q(e\214x\255display\255length \(0\))-.18 E F0 .829(The length in ch\
-aracters of the common pre\214x of a list of possible completions that \
-is displayed)144 192 R 1.274(without modi\214cation.)144 204 R 1.274
-(When set to a v)6.274 F 1.274(alue greater than zero, common pre\214x)
--.25 F 1.275(es longer than this)-.15 F -.25(va)144 216 S(lue are repla\
-ced with an ellipsis when displaying possible completions.).25 E F1
-(completion\255query\255items \(100\))108 228 Q F0 .53
-(This determines when the user is queried about vie)144 240 R .529
+(in vi command mode.)2.5 E F1(completion\255ignor)108 621.6 Q
+(e\255case \(Off\))-.18 E F0(If set to)144 633.6 Q F1(On)2.5 E F0 2.5
+(,r)C(eadline performs \214lename matching and completion in a case\255\
+insensiti)-2.5 E .3 -.15(ve f)-.25 H(ashion.).05 E F1(completion\255pr)
+108 645.6 Q(e\214x\255display\255length \(0\))-.18 E F0 .829(The length\
+ in characters of the common pre\214x of a list of possible completions\
+ that is displayed)144 657.6 R 1.274(without modi\214cation.)144 669.6 R
+1.274(When set to a v)6.274 F 1.274
+(alue greater than zero, common pre\214x)-.25 F 1.275
+(es longer than this)-.15 F -.25(va)144 681.6 S(lue are replaced with a\
+n ellipsis when displaying possible completions.).25 E F1
+(completion\255query\255items \(100\))108 693.6 Q F0 .53
+(This determines when the user is queried about vie)144 705.6 R .529
(wing the number of possible completions gen-)-.25 F .56(erated by the)
-144 252 R F1(possible\255completions)3.06 E F0 3.06(command. It)3.06 F
+144 717.6 R F1(possible\255completions)3.06 E F0 3.06(command. It)3.06 F
.561(may be set to an)3.061 F 3.061(yi)-.15 G(nte)-3.061 E .561(ger v)
--.15 F .561(alue greater than or)-.25 F .783(equal to zero.)144 264 R
+-.15 F .561(alue greater than or)-.25 F .783(equal to zero.)144 729.6 R
.783(If the number of possible completions is greater than or equal to \
-the v)5.783 F .782(alue of this)-.25 F -.25(va)144 276 S .237
-(riable, the user is ask).25 F .237(ed whether or not he wishes to vie)
--.1 F 2.737(wt)-.25 G .237(hem; otherwise the)-2.737 F 2.737(ya)-.15 G
-.237(re simply listed)-2.737 F(on the terminal.)144 288 Q F1(con)108 300
-Q -.1(ve)-.4 G(rt\255meta \(On\)).1 E F0 .613(If set to)144 312 R F1(On)
+the v)5.783 F .782(alue of this)-.25 F(GNU Bash 4.2)72 768 Q
+(2012 July 5)151.505 E(37)200.665 E 0 Cg EP
+%%Page: 38 38
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E -.25(va)144 84 S .237(riable, the user is ask).25 F .237
+(ed whether or not he wishes to vie)-.1 F 2.737(wt)-.25 G .237
+(hem; otherwise the)-2.737 F 2.737(ya)-.15 G .237(re simply listed)
+-2.737 F(on the terminal.)144 96 Q/F1 10/Times-Bold@0 SF(con)108 108 Q
+-.1(ve)-.4 G(rt\255meta \(On\)).1 E F0 .613(If set to)144 120 R F1(On)
3.113 E F0 3.113(,r)C .613(eadline will con)-3.113 F -.15(ve)-.4 G .613
(rt characters with the eighth bit set to an ASCII k).15 F .912 -.15
(ey s)-.1 H .612(equence by).15 F .541
(stripping the eighth bit and pre\214xing an escape character \(in ef)
-144 324 R .541(fect, using escape as the)-.25 F/F2 10/Times-Italic@0 SF
-.542(meta pr)3.042 F(e-)-.37 E<8c78>144 336 Q F0(\).)A F1
-(disable\255completion \(Off\))108 348 Q F0 .038(If set to)144 360 R F1
+144 132 R .541(fect, using escape as the)-.25 F/F2 10/Times-Italic@0 SF
+.542(meta pr)3.042 F(e-)-.37 E<8c78>144 144 Q F0(\).)A F1
+(disable\255completion \(Off\))108 156 Q F0 .038(If set to)144 168 R F1
(On)2.538 E F0 2.538(,r)C .038(eadline will inhibit w)-2.538 F .038
(ord completion.)-.1 F .038
(Completion characters will be inserted into the)5.038 F(line as if the)
-144 372 Q 2.5(yh)-.15 G(ad been mapped to)-2.5 E F1(self-insert)2.5 E F0
-(.)A F1(editing\255mode \(emacs\))108 384 Q F0 .141
-(Controls whether readline be)144 396 R .141(gins with a set of k)-.15 F
+144 180 Q 2.5(yh)-.15 G(ad been mapped to)-2.5 E F1(self-insert)2.5 E F0
+(.)A F1(editing\255mode \(emacs\))108 192 Q F0 .141
+(Controls whether readline be)144 204 R .141(gins with a set of k)-.15 F
.441 -.15(ey b)-.1 H .141(indings similar to).15 F F2(Emacs)2.642 E F0
(or)2.642 E F2(vi)2.642 E F0(.)A F1(editing\255mode)5.142 E F0
-(can be set to either)144 408 Q F1(emacs)2.5 E F0(or)2.5 E F1(vi)2.5 E
-F0(.)A F1(echo\255contr)108 420 Q(ol\255characters \(On\))-.18 E F0
-1.211(When set to)144 432 R F1(On)3.711 E F0 3.711(,o)C 3.711(no)-3.711
+(can be set to either)144 216 Q F1(emacs)2.5 E F0(or)2.5 E F1(vi)2.5 E
+F0(.)A F1(echo\255contr)108 228 Q(ol\255characters \(On\))-.18 E F0
+1.211(When set to)144 240 R F1(On)3.711 E F0 3.711(,o)C 3.711(no)-3.711
G 1.211(perating systems that indicate the)-3.711 F 3.711(ys)-.15 G 1.21
(upport it, readline echoes a character)-3.711 F
-(corresponding to a signal generated from the k)144 444 Q -.15(ey)-.1 G
-(board.).15 E F1(enable\255k)108 456 Q(eypad \(Off\))-.1 E F0 .892
-(When set to)144 468 R F1(On)3.393 E F0 3.393(,r)C .893
+(corresponding to a signal generated from the k)144 252 Q -.15(ey)-.1 G
+(board.).15 E F1(enable\255k)108 264 Q(eypad \(Off\))-.1 E F0 .892
+(When set to)144 276 R F1(On)3.393 E F0 3.393(,r)C .893
(eadline will try to enable the application k)-3.393 F -.15(ey)-.1 G
.893(pad when it is called.).15 F .893(Some sys-)5.893 F
-(tems need this to enable the arro)144 480 Q 2.5(wk)-.25 G -.15(ey)-2.6
-G(s.).15 E F1(enable\255meta\255k)108 492 Q(ey \(On\))-.1 E F0 .64
-(When set to)144 504 R F1(On)3.14 E F0 3.14(,r)C .64
+(tems need this to enable the arro)144 288 Q 2.5(wk)-.25 G -.15(ey)-2.6
+G(s.).15 E F1(enable\255meta\255k)108 300 Q(ey \(On\))-.1 E F0 .64
+(When set to)144 312 R F1(On)3.14 E F0 3.14(,r)C .64
(eadline will try to enable an)-3.14 F 3.14(ym)-.15 G .64
(eta modi\214er k)-3.14 F .94 -.15(ey t)-.1 H .64
-(he terminal claims to support).15 F(when it is called.)144 516 Q
+(he terminal claims to support).15 F(when it is called.)144 324 Q
(On man)5 E 2.5(yt)-.15 G(erminals, the meta k)-2.5 E .3 -.15(ey i)-.1 H
2.5(su).15 G(sed to send eight-bit characters.)-2.5 E F1
-(expand\255tilde \(Off\))108 528 Q F0(If set to)144 540 Q F1(On)2.5 E F0
+(expand\255tilde \(Off\))108 336 Q F0(If set to)144 348 Q F1(On)2.5 E F0
2.5(,t)C(ilde e)-2.5 E(xpansion is performed when readline attempts w)
--.15 E(ord completion.)-.1 E F1(history\255pr)108 552 Q(eser)-.18 E -.1
-(ve)-.1 G(\255point \(Off\)).1 E F0 1.338(If set to)144 564 R F1(On)
+-.15 E(ord completion.)-.1 E F1(history\255pr)108 360 Q(eser)-.18 E -.1
+(ve)-.1 G(\255point \(Off\)).1 E F0 1.338(If set to)144 372 R F1(On)
3.838 E F0 3.838(,t)C 1.338(he history code attempts to place point at \
-the same location on each history line)-3.838 F(retrie)144 576 Q -.15
+the same location on each history line)-3.838 F(retrie)144 384 Q -.15
(ve)-.25 G 2.5(dw).15 G(ith)-2.5 E F1(pr)2.5 E -.15(ev)-.18 G
(ious-history).15 E F0(or)2.5 E F1(next-history)2.5 E F0(.)A F1
-(history\255size \(0\))108 588 Q F0 .463
-(Set the maximum number of history entries sa)144 600 R -.15(ve)-.2 G
+(history\255size \(0\))108 396 Q F0 .463
+(Set the maximum number of history entries sa)144 408 R -.15(ve)-.2 G
2.963(di).15 G 2.963(nt)-2.963 G .463(he history list.)-2.963 F .462
(If set to zero, the number of)5.463 F
-(entries in the history list is not limited.)144 612 Q F1
-(horizontal\255scr)108 624 Q(oll\255mode \(Off\))-.18 E F0 .448
-(When set to)144 636 R F1(On)2.948 E F0 2.948(,m)C(ak)-2.948 E .448
+(entries in the history list is not limited.)144 420 Q F1
+(horizontal\255scr)108 432 Q(oll\255mode \(Off\))-.18 E F0 .448
+(When set to)144 444 R F1(On)2.948 E F0 2.948(,m)C(ak)-2.948 E .448
(es readline use a single line for display)-.1 F 2.948(,s)-.65 G .449
(crolling the input horizontally on a)-2.948 F 1.194(single screen line\
when it becomes longer than the screen width rather than wrapping to a\
- ne)144 648 R(w)-.25 E(line.)144 660 Q F1(input\255meta \(Off\))108 672
-Q F0 .227(If set to)144 684 R F1(On)2.727 E F0 2.727(,r)C .228(eadline \
+ ne)144 456 R(w)-.25 E(line.)144 468 Q F1(input\255meta \(Off\))108 480
+Q F0 .227(If set to)144 492 R F1(On)2.727 E F0 2.727(,r)C .228(eadline \
will enable eight-bit input \(that is, it will not strip the high bit f\
-rom the char)-2.727 F(-)-.2 E .957(acters it reads\), re)144 696 R -.05
+rom the char)-2.727 F(-)-.2 E .957(acters it reads\), re)144 504 R -.05
(ga)-.15 G .956(rdless of what the terminal claims it can support.).05 F
.956(The name)5.956 F F1(meta\255\215ag)3.456 E F0 .956(is a)3.456 F
-(synon)144 708 Q(ym for this v)-.15 E(ariable.)-.25 E(GNU Bash 4.2)72
-768 Q(2012 February 4)141.79 E(37)190.95 E 0 Cg EP
-%%Page: 38 38
-%%BeginPageSetup
-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(isear)108 84 Q(ch\255terminators \(`)-.18 E
-(`C\255[C\255J')-.63 E('\))-.63 E F0 .439(The string of characters that\
- should terminate an incremental search without subsequently e)144 96 R
--.15(xe)-.15 G(cut-).15 E .935(ing the character as a command.)144 108 R
-.935(If this v)5.935 F .935(ariable has not been gi)-.25 F -.15(ve)-.25
-G 3.434(nav).15 G .934(alue, the characters)-3.684 F/F2 10
-/Times-Italic@0 SF(ESC)3.434 E F0(and)144 120 Q F2(C\255J)2.5 E F0
-(will terminate an incremental search.)2.5 E F1 -.1(ke)108 132 S
-(ymap \(emacs\)).1 E F0 2.02(Set the current readline k)144 144 R -.15
-(ey)-.1 G 4.521(map. The).15 F 2.021(set of v)4.521 F 2.021(alid k)-.25
-F -.15(ey)-.1 G 2.021(map names is).15 F F2 2.021
+(synon)144 516 Q(ym for this v)-.15 E(ariable.)-.25 E F1(isear)108 528 Q
+(ch\255terminators \(`)-.18 E(`C\255[C\255J')-.63 E('\))-.63 E F0 .439(\
+The string of characters that should terminate an incremental search wi\
+thout subsequently e)144 540 R -.15(xe)-.15 G(cut-).15 E .935
+(ing the character as a command.)144 552 R .935(If this v)5.935 F .935
+(ariable has not been gi)-.25 F -.15(ve)-.25 G 3.434(nav).15 G .934
+(alue, the characters)-3.684 F F2(ESC)3.434 E F0(and)144 564 Q F2
+(C\255J)2.5 E F0(will terminate an incremental search.)2.5 E F1 -.1(ke)
+108 576 S(ymap \(emacs\)).1 E F0 2.02(Set the current readline k)144 588
+R -.15(ey)-.1 G 4.521(map. The).15 F 2.021(set of v)4.521 F 2.021
+(alid k)-.25 F -.15(ey)-.1 G 2.021(map names is).15 F F2 2.021
(emacs, emacs\255standar)4.521 F(d,)-.37 E .069
-(emacs\255meta, emacs\255ctlx, vi, vi\255command)144 156 R F0 2.568(,a)C
+(emacs\255meta, emacs\255ctlx, vi, vi\255command)144 600 R F0 2.568(,a)C
(nd)-2.568 E F2(vi\255insert)2.568 E F0(.).68 E F2(vi)5.068 E F0 .068
(is equi)2.568 F -.25(va)-.25 G .068(lent to).25 F F2(vi\255command)
-2.568 E F0(;)A F2(emacs)2.568 E F0 1.543(is equi)144 168 R -.25(va)-.25
+2.568 E F0(;)A F2(emacs)2.568 E F0 1.543(is equi)144 612 R -.25(va)-.25
G 1.543(lent to).25 F F2(emacs\255standar)4.044 E(d)-.37 E F0 6.544(.T)C
1.544(he def)-6.544 F 1.544(ault v)-.1 F 1.544(alue is)-.25 F F2(emacs)
4.044 E F0 4.044(;t).27 G 1.544(he v)-4.044 F 1.544(alue of)-.25 F F1
-(editing\255mode)4.044 E F0(also)4.044 E(af)144 180 Q(fects the def)-.25
-E(ault k)-.1 E -.15(ey)-.1 G(map.).15 E F1 -.1(ke)108 192 S
-(yseq\255timeout \(500\)).1 E F0 .368(Speci\214es the duration)144 204 R
+(editing\255mode)4.044 E F0(also)4.044 E(af)144 624 Q(fects the def)-.25
+E(ault k)-.1 E -.15(ey)-.1 G(map.).15 E F1 -.1(ke)108 636 S
+(yseq\255timeout \(500\)).1 E F0 .368(Speci\214es the duration)144 648 R
F2 -.37(re)2.867 G(adline).37 E F0 .367(will w)2.867 F .367
(ait for a character when reading an ambiguous k)-.1 F .667 -.15(ey s)
--.1 H(equence).15 E 1.356(\(one that can form a complete k)144 216 R
+-.1 H(equence).15 E 1.356(\(one that can form a complete k)144 660 R
1.656 -.15(ey s)-.1 H 1.356(equence using the input read so f).15 F(ar)
-.1 E 3.856(,o)-.4 G 3.856(rc)-3.856 G 1.356(an tak)-3.856 F 3.856(ea)
--.1 G(dditional)-3.856 E .32(input to complete a longer k)144 228 R .62
+-.1 G(dditional)-3.856 E .32(input to complete a longer k)144 672 R .62
-.15(ey s)-.1 H 2.82(equence\). If).15 F .32(no input is recei)2.82 F
-.15(ve)-.25 G 2.82(dw).15 G .32(ithin the timeout,)-2.82 F F2 -.37(re)
-2.82 G(adline).37 E F0(will)2.82 E .906(use the shorter b)144 240 R .907
+2.82 G(adline).37 E F0(will)2.82 E .906(use the shorter b)144 684 R .907
(ut complete k)-.2 F 1.207 -.15(ey s)-.1 H 3.407(equence. The).15 F -.25
(va)3.407 G .907(lue is speci\214ed in milliseconds, so a v).25 F .907
-(alue of)-.25 F .05(1000 means that)144 252 R F2 -.37(re)2.55 G(adline)
+(alue of)-.25 F .05(1000 means that)144 696 R F2 -.37(re)2.55 G(adline)
.37 E F0 .05(will w)2.55 F .05(ait one second for additional input.)-.1
F .05(If this v)5.05 F .05(ariable is set to a v)-.25 F(alue)-.25 E .051
-(less than or equal to zero, or to a non-numeric v)144 264 R(alue,)-.25
+(less than or equal to zero, or to a non-numeric v)144 708 R(alue,)-.25
E F2 -.37(re)2.551 G(adline).37 E F0 .051(will w)2.551 F .051
(ait until another k)-.1 F .352 -.15(ey i)-.1 H 2.552(sp).15 G(ressed)
--2.552 E(to decide which k)144 276 Q .3 -.15(ey s)-.1 H
-(equence to complete.).15 E F1(mark\255dir)108 288 Q(ectories \(On\))
--.18 E F0(If set to)144 300 Q F1(On)2.5 E F0 2.5(,c)C
+-2.552 E(to decide which k)144 720 Q .3 -.15(ey s)-.1 H
+(equence to complete.).15 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E
+(38)200.665 E 0 Cg EP
+%%Page: 39 39
+%%BeginPageSetup
+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(mark\255dir)108 84 Q(ectories \(On\))-.18 E
+F0(If set to)144 96 Q F1(On)2.5 E F0 2.5(,c)C
(ompleted directory names ha)-2.5 E .3 -.15(ve a s)-.2 H(lash appended.)
-.15 E F1(mark\255modi\214ed\255lines \(Off\))108 312 Q F0(If set to)144
-324 Q F1(On)2.5 E F0 2.5(,h)C(istory lines that ha)-2.5 E .3 -.15(ve b)
+.15 E F1(mark\255modi\214ed\255lines \(Off\))108 108 Q F0(If set to)144
+120 Q F1(On)2.5 E F0 2.5(,h)C(istory lines that ha)-2.5 E .3 -.15(ve b)
-.2 H(een modi\214ed are displayed with a preceding asterisk \().15 E F1
-(*)A F0(\).)A F1(mark\255symlink)108 336 Q(ed\255dir)-.1 E
-(ectories \(Off\))-.18 E F0 .175(If set to)144 348 R F1(On)2.675 E F0
+(*)A F0(\).)A F1(mark\255symlink)108 132 Q(ed\255dir)-.1 E
+(ectories \(Off\))-.18 E F0 .175(If set to)144 144 R F1(On)2.675 E F0
2.675(,c)C .175
(ompleted names which are symbolic links to directories ha)-2.675 F .475
--.15(ve a s)-.2 H .175(lash appended \(sub-).15 F(ject to the v)144 360
+-.15(ve a s)-.2 H .175(lash appended \(sub-).15 F(ject to the v)144 156
Q(alue of)-.25 E F1(mark\255dir)2.5 E(ectories)-.18 E F0(\).)A F1
-(match\255hidden\255\214les \(On\))108 372 Q F0 .192(This v)144 384 R
+(match\255hidden\255\214les \(On\))108 168 Q F0 .192(This v)144 180 R
.192(ariable, when set to)-.25 F F1(On)2.692 E F0 2.692(,c)C .192
(auses readline to match \214les whose names be)-2.692 F .193
(gin with a `.)-.15 F 2.693('\()-.7 G(hidden)-2.693 E .457
-(\214les\) when performing \214lename completion.)144 396 R .456
+(\214les\) when performing \214lename completion.)144 192 R .456
(If set to)5.456 F F1(Off)2.956 E F0 2.956(,t)C .456(he leading `.)
-2.956 F 2.956('m)-.7 G .456(ust be supplied by the)-2.956 F
-(user in the \214lename to be completed.)144 408 Q F1
-(menu\255complete\255display\255pr)108 420 Q(e\214x \(Off\))-.18 E F0
-1.585(If set to)144 432 R F1(On)4.085 E F0 4.085(,m)C 1.585(enu complet\
+(user in the \214lename to be completed.)144 204 Q F1
+(menu\255complete\255display\255pr)108 216 Q(e\214x \(Off\))-.18 E F0
+1.585(If set to)144 228 R F1(On)4.085 E F0 4.085(,m)C 1.585(enu complet\
ion displays the common pre\214x of the list of possible completions)
--4.085 F(\(which may be empty\) before c)144 444 Q
-(ycling through the list.)-.15 E F1(output\255meta \(Off\))108 456 Q F0
-.507(If set to)144 468 R F1(On)3.007 E F0 3.007(,r)C .507(eadline will \
+-4.085 F(\(which may be empty\) before c)144 240 Q
+(ycling through the list.)-.15 E F1(output\255meta \(Off\))108 252 Q F0
+.507(If set to)144 264 R F1(On)3.007 E F0 3.007(,r)C .507(eadline will \
display characters with the eighth bit set directly rather than as a me\
-ta-)-3.007 F(pre\214x)144 480 Q(ed escape sequence.)-.15 E F1
-(page\255completions \(On\))108 492 Q F0 .808(If set to)144 504 R F1(On)
-3.308 E F0 3.308(,r)C .808(eadline uses an internal)-3.308 F F2(mor)
-3.308 E(e)-.37 E F0(-lik)A 3.308(ep)-.1 G .808
+ta-)-3.007 F(pre\214x)144 276 Q(ed escape sequence.)-.15 E F1
+(page\255completions \(On\))108 288 Q F0 .808(If set to)144 300 R F1(On)
+3.308 E F0 3.308(,r)C .808(eadline uses an internal)-3.308 F/F2 10
+/Times-Italic@0 SF(mor)3.308 E(e)-.37 E F0(-lik)A 3.308(ep)-.1 G .808
(ager to display a screenful of possible comple-)-3.308 F
-(tions at a time.)144 516 Q F1
-(print\255completions\255horizontally \(Off\))108 528 Q F0 1.319
-(If set to)144 540 R F1(On)3.819 E F0 3.819(,r)C 1.318(eadline will dis\
+(tions at a time.)144 312 Q F1
+(print\255completions\255horizontally \(Off\))108 324 Q F0 1.319
+(If set to)144 336 R F1(On)3.819 E F0 3.819(,r)C 1.318(eadline will dis\
play completions with matches sorted horizontally in alphabetical)-3.819
-F(order)144 552 Q 2.5(,r)-.4 G(ather than do)-2.5 E(wn the screen.)-.25
-E F1 -2.29 -.18(re v)108 564 T(ert\255all\255at\255newline \(Off\)).08 E
-F0 .698(If set to)144 576 R F1(On)3.198 E F0 3.198(,r)C .699
+F(order)144 348 Q 2.5(,r)-.4 G(ather than do)-2.5 E(wn the screen.)-.25
+E F1 -2.29 -.18(re v)108 360 T(ert\255all\255at\255newline \(Off\)).08 E
+F0 .698(If set to)144 372 R F1(On)3.198 E F0 3.198(,r)C .699
(eadline will undo all changes to history lines before returning when)
--3.198 F F1(accept\255line)3.199 E F0(is)3.199 E -.15(exe)144 588 S
+-3.198 F F1(accept\255line)3.199 E F0(is)3.199 E -.15(exe)144 384 S
2.686(cuted. By).15 F(def)2.686 E .186
(ault, history lines may be modi\214ed and retain indi)-.1 F .186
-(vidual undo lists across calls to)-.25 F F1 -.18(re)144 600 S(adline)
-.18 E F0(.)A F1(sho)108 612 Q(w\255all\255if\255ambiguous \(Off\))-.1 E
-F0 .303(This alters the def)144 624 R .303(ault beha)-.1 F .304
+(vidual undo lists across calls to)-.25 F F1 -.18(re)144 396 S(adline)
+.18 E F0(.)A F1(sho)108 408 Q(w\255all\255if\255ambiguous \(Off\))-.1 E
+F0 .303(This alters the def)144 420 R .303(ault beha)-.1 F .304
(vior of the completion functions.)-.2 F .304(If set to)5.304 F F1(On)
2.804 E F0 2.804(,w)C .304(ords which ha)-2.904 F .604 -.15(ve m)-.2 H
(ore).15 E 1.264(than one possible completion cause the matches to be l\
-isted immediately instead of ringing the)144 636 R(bell.)144 648 Q F1
-(sho)108 660 Q(w\255all\255if\255unmodi\214ed \(Off\))-.1 E F0 5.345
-(This alters the def)144 672 R 5.345(ault beha)-.1 F 5.345
+isted immediately instead of ringing the)144 432 R(bell.)144 444 Q F1
+(sho)108 456 Q(w\255all\255if\255unmodi\214ed \(Off\))-.1 E F0 5.345
+(This alters the def)144 468 R 5.345(ault beha)-.1 F 5.345
(vior of the completion functions in a f)-.2 F 5.346(ashion similar to)
--.1 F F1(sho)144 684 Q(w\255all\255if\255ambiguous)-.1 E F0 6.691(.I)C
+-.1 F F1(sho)144 480 Q(w\255all\255if\255ambiguous)-.1 E F0 6.691(.I)C
4.191(fs)-6.691 G 1.691(et to)-4.191 F F1(On)4.191 E F0 4.191(,w)C 1.691
(ords which ha)-4.291 F 1.991 -.15(ve m)-.2 H 1.691
-(ore than one possible completion).15 F 1.039(without an)144 696 R 3.539
+(ore than one possible completion).15 F 1.039(without an)144 492 R 3.539
(yp)-.15 G 1.039
(ossible partial completion \(the possible completions don')-3.539 F
3.539(ts)-.18 G 1.04(hare a common pre\214x\))-3.539 F(cause the matche\
-s to be listed immediately instead of ringing the bell.)144 708 Q
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(38)190.95 E 0 Cg EP
-%%Page: 39 39
-%%BeginPageSetup
-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(skip\255completed\255text \(Off\))108 84 Q
-F0 .095(If set to)144 96 R F1(On)2.595 E F0 2.595(,t)C .095
-(his alters the def)-2.595 F .095(ault completion beha)-.1 F .094
-(vior when inserting a single match into the line.)-.2 F(It')144 108 Q
+s to be listed immediately instead of ringing the bell.)144 504 Q F1
+(skip\255completed\255text \(Off\))108 516 Q F0 .095(If set to)144 528 R
+F1(On)2.595 E F0 2.595(,t)C .095(his alters the def)-2.595 F .095
+(ault completion beha)-.1 F .094
+(vior when inserting a single match into the line.)-.2 F(It')144 540 Q
2.545(so)-.55 G .045(nly acti)-2.545 F .345 -.15(ve w)-.25 H .046
(hen performing completion in the middle of a w).15 F 2.546(ord. If)-.1
F .046(enabled, readline does not)2.546 F 1.394(insert characters from \
-the completion that match characters after point in the w)144 120 R
-1.394(ord being com-)-.1 F(pleted, so portions of the w)144 132 Q
+the completion that match characters after point in the w)144 552 R
+1.394(ord being com-)-.1 F(pleted, so portions of the w)144 564 Q
(ord follo)-.1 E(wing the cursor are not duplicated.)-.25 E F1
-(visible\255stats \(Off\))108 144 Q F0 .846(If set to)144 156 R F1(On)
+(visible\255stats \(Off\))108 576 Q F0 .846(If set to)144 588 R F1(On)
3.346 E F0 3.346(,ac)C .846(haracter denoting a \214le')-3.346 F 3.346
-(st)-.55 G .846(ype as reported by)-3.346 F/F2 10/Times-Italic@0 SF
-(stat)3.346 E F0 .846(\(2\) is appended to the \214lename)B
-(when listing possible completions.)144 168 Q F1
-(Readline Conditional Constructs)87 184.8 Q F0 .05
-(Readline implements a f)108 196.8 R .05(acility similar in spirit to t\
+(st)-.55 G .846(ype as reported by)-3.346 F F2(stat)3.346 E F0 .846
+(\(2\) is appended to the \214lename)B
+(when listing possible completions.)144 600 Q F1
+(Readline Conditional Constructs)87 616.8 Q F0 .05
+(Readline implements a f)108 628.8 R .05(acility similar in spirit to t\
he conditional compilation features of the C preprocessor)-.1 F .096
-(which allo)108 208.8 R .096(ws k)-.25 F .396 -.15(ey b)-.1 H .096
+(which allo)108 640.8 R .096(ws k)-.25 F .396 -.15(ey b)-.1 H .096
(indings and v).15 F .096
(ariable settings to be performed as the result of tests.)-.25 F .097
-(There are four parser)5.096 F(directi)108 220.8 Q -.15(ve)-.25 G 2.5
-(su).15 G(sed.)-2.5 E F1($if)108 237.6 Q F0(The)24.89 E F1($if)2.963 E
+(There are four parser)5.096 F(directi)108 652.8 Q -.15(ve)-.25 G 2.5
+(su).15 G(sed.)-2.5 E F1($if)108 669.6 Q F0(The)24.89 E F1($if)2.963 E
F0 .463(construct allo)2.963 F .462(ws bindings to be made based on the\
editing mode, the terminal being used,)-.25 F .477
-(or the application using readline.)144 249.6 R .477(The te)5.477 F .477
+(or the application using readline.)144 681.6 R .477(The te)5.477 F .477
(xt of the test e)-.15 F .477
(xtends to the end of the line; no characters)-.15 F
-(are required to isolate it.)144 261.6 Q F1(mode)144 278.4 Q F0(The)
+(are required to isolate it.)144 693.6 Q F1(mode)144 710.4 Q F0(The)
12.67 E F1(mode=)3.712 E F0 1.212(form of the)3.712 F F1($if)3.711 E F0
(directi)3.711 E 1.511 -.15(ve i)-.25 H 3.711(su).15 G 1.211
(sed to test whether readline is in emacs or vi)-3.711 F 3.065
-(mode. This)180 290.4 R .565(may be used in conjunction with the)3.065 F
+(mode. This)180 722.4 R .565(may be used in conjunction with the)3.065 F
F1 .565(set k)3.065 F(eymap)-.1 E F0 .565(command, for instance, to)
-3.065 F .735(set bindings in the)180 302.4 R F2(emacs\255standar)3.235 E
-(d)-.37 E F0(and)3.235 E F2(emacs\255ctlx)3.235 E F0 -.1(ke)3.235 G .735
-(ymaps only if readline is starting)-.05 F(out in emacs mode.)180 314.4
-Q F1(term)144 331.2 Q F0(The)15.46 E F1(term=)3.196 E F0 .696
+3.065 F(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(39)200.665 E 0 Cg EP
+%%Page: 40 40
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E .735(set bindings in the)180 84 R/F1 10/Times-Italic@0 SF
+(emacs\255standar)3.235 E(d)-.37 E F0(and)3.235 E F1(emacs\255ctlx)3.235
+E F0 -.1(ke)3.235 G .735(ymaps only if readline is starting)-.05 F
+(out in emacs mode.)180 96 Q/F2 10/Times-Bold@0 SF(term)144 112.8 Q F0
+(The)15.46 E F2(term=)3.196 E F0 .696
(form may be used to include terminal-speci\214c k)3.196 F .996 -.15
-(ey b)-.1 H .697(indings, perhaps to bind).15 F .654(the k)180 343.2 R
+(ey b)-.1 H .697(indings, perhaps to bind).15 F .654(the k)180 124.8 R
.954 -.15(ey s)-.1 H .654(equences output by the terminal').15 F 3.154
(sf)-.55 G .654(unction k)-3.154 F -.15(ey)-.1 G 3.154(s. The).15 F -.1
-(wo)3.154 G .654(rd on the right side of).1 F(the)180 355.2 Q F1(=)3.231
+(wo)3.154 G .654(rd on the right side of).1 F(the)180 136.8 Q F2(=)3.231
E F0 .731(is tested ag)3.231 F .732(ainst the both full name of the ter\
minal and the portion of the terminal)-.05 F(name before the \214rst)180
-367.2 Q F1<ad>2.5 E F0 5(.T)C(his allo)-5 E(ws)-.25 E F2(sun)2.84 E F0
-(to match both)2.74 E F2(sun)2.84 E F0(and)2.74 E F2(sun\255cmd)2.5 E F0
-2.5(,f).77 G(or instance.)-2.5 E F1(application)144 384 Q F0(The)180 396
-Q F1(application)3.003 E F0 .503
+148.8 Q F2<ad>2.5 E F0 5(.T)C(his allo)-5 E(ws)-.25 E F1(sun)2.84 E F0
+(to match both)2.74 E F1(sun)2.84 E F0(and)2.74 E F1(sun\255cmd)2.5 E F0
+2.5(,f).77 G(or instance.)-2.5 E F2(application)144 165.6 Q F0(The)180
+177.6 Q F2(application)3.003 E F0 .503
(construct is used to include application-speci\214c settings.)3.003 F
.503(Each program)5.503 F .114(using the readline library sets the)180
-408 R F2 .114(application name)2.614 F F0 2.614(,a)C .114
+189.6 R F1 .114(application name)2.614 F F0 2.614(,a)C .114
(nd an initialization \214le can test for a)-2.614 F .501(particular v)
-180 420 R 3.001(alue. This)-.25 F .501(could be used to bind k)3.001 F
+180 201.6 R 3.001(alue. This)-.25 F .501(could be used to bind k)3.001 F
.801 -.15(ey s)-.1 H .5(equences to functions useful for a spe-).15 F
-.396(ci\214c program.)180 432 R -.15(Fo)5.396 G 2.896(ri).15 G .396
+.396(ci\214c program.)180 213.6 R -.15(Fo)5.396 G 2.896(ri).15 G .396
(nstance, the follo)-2.896 F .396(wing command adds a k)-.25 F .696 -.15
-(ey s)-.1 H .397(equence that quotes the).15 F(current or pre)180 444 Q
-(vious w)-.25 E(ord in)-.1 E F1(bash)2.5 E F0(:)A F1($if)180 468 Q F0
-(Bash)2.5 E 2.5(#Q)180 480 S(uote the current or pre)-2.5 E(vious w)-.25
-E(ord)-.1 E("\\C\255xq": "\\eb\\"\\ef\\"")180 492 Q F1($endif)180 504 Q
-($endif)108 520.8 Q F0(This command, as seen in the pre)9.33 E(vious e)
--.25 E(xample, terminates an)-.15 E F1($if)2.5 E F0(command.)2.5 E F1
-($else)108 537.6 Q F0(Commands in this branch of the)15.45 E F1($if)2.5
-E F0(directi)2.5 E .3 -.15(ve a)-.25 H(re e).15 E -.15(xe)-.15 G
-(cuted if the test f).15 E(ails.)-.1 E F1($include)108 554.4 Q F0 .357
-(This directi)144 566.4 R .657 -.15(ve t)-.25 H(ak).15 E .357
+(ey s)-.1 H .397(equence that quotes the).15 F(current or pre)180 225.6
+Q(vious w)-.25 E(ord in)-.1 E F2(bash)2.5 E F0(:)A F2($if)180 249.6 Q F0
+(Bash)2.5 E 2.5(#Q)180 261.6 S(uote the current or pre)-2.5 E(vious w)
+-.25 E(ord)-.1 E("\\C\255xq": "\\eb\\"\\ef\\"")180 273.6 Q F2($endif)180
+285.6 Q($endif)108 302.4 Q F0(This command, as seen in the pre)9.33 E
+(vious e)-.25 E(xample, terminates an)-.15 E F2($if)2.5 E F0(command.)
+2.5 E F2($else)108 319.2 Q F0(Commands in this branch of the)15.45 E F2
+($if)2.5 E F0(directi)2.5 E .3 -.15(ve a)-.25 H(re e).15 E -.15(xe)-.15
+G(cuted if the test f).15 E(ails.)-.1 E F2($include)108 336 Q F0 .357
+(This directi)144 348 R .657 -.15(ve t)-.25 H(ak).15 E .357
(es a single \214lename as an ar)-.1 F .356
(gument and reads commands and bindings from that)-.18 F 2.5(\214le. F)
-144 578.4 R(or e)-.15 E(xample, the follo)-.15 E(wing directi)-.25 E .3
--.15(ve w)-.25 H(ould read).05 E F2(/etc/inputr)2.5 E(c)-.37 E F0(:)A F1
-($include)144 602.4 Q F2(/etc/inputr)5.833 E(c)-.37 E F1(Sear)87 619.2 Q
-(ching)-.18 E F0 .834(Readline pro)108 631.2 R .834
+144 360 R(or e)-.15 E(xample, the follo)-.15 E(wing directi)-.25 E .3
+-.15(ve w)-.25 H(ould read).05 E F1(/etc/inputr)2.5 E(c)-.37 E F0(:)A F2
+($include)144 384 Q F1(/etc/inputr)5.833 E(c)-.37 E F2(Sear)87 400.8 Q
+(ching)-.18 E F0 .834(Readline pro)108 412.8 R .834
(vides commands for searching through the command history \(see)-.15 F
/F3 9/Times-Bold@0 SF(HIST)3.335 E(OR)-.162 E(Y)-.315 E F0(belo)3.085 E
-.835(w\) for lines)-.25 F(containing a speci\214ed string.)108 643.2 Q
-(There are tw)5 E 2.5(os)-.1 G(earch modes:)-2.5 E F2(incr)2.51 E
-(emental)-.37 E F0(and)3.01 E F2(non-incr)2.5 E(emental)-.37 E F0(.).51
-E .698(Incremental searches be)108 660 R .698
+.835(w\) for lines)-.25 F(containing a speci\214ed string.)108 424.8 Q
+(There are tw)5 E 2.5(os)-.1 G(earch modes:)-2.5 E F1(incr)2.51 E
+(emental)-.37 E F0(and)3.01 E F1(non-incr)2.5 E(emental)-.37 E F0(.).51
+E .698(Incremental searches be)108 441.6 R .698
(gin before the user has \214nished typing the search string.)-.15 F
.697(As each character of the)5.697 F .112
-(search string is typed, readline displays the ne)108 672 R .112
+(search string is typed, readline displays the ne)108 453.6 R .112
(xt entry from the history matching the string typed so f)-.15 F(ar)-.1
E 5.113(.A)-.55 G(n)-5.113 E .542
-(incremental search requires only as man)108 684 R 3.042(yc)-.15 G .542
-(haracters as needed to \214nd the desired history entry)-3.042 F 5.541
-(.T)-.65 G .541(he char)-5.541 F(-)-.2 E .224(acters present in the v)
-108 696 R .224(alue of the)-.25 F F1(isear)2.724 E(ch-terminators)-.18 E
-F0 -.25(va)2.724 G .224
+(incremental search requires only as man)108 465.6 R 3.042(yc)-.15 G
+.542(haracters as needed to \214nd the desired history entry)-3.042 F
+5.541(.T)-.65 G .541(he char)-5.541 F(-)-.2 E .224
+(acters present in the v)108 477.6 R .224(alue of the)-.25 F F2(isear)
+2.724 E(ch-terminators)-.18 E F0 -.25(va)2.724 G .224
(riable are used to terminate an incremental search.).25 F .66
-(If that v)108 708 R .66(ariable has not been assigned a v)-.25 F .66
+(If that v)108 489.6 R .66(ariable has not been assigned a v)-.25 F .66
(alue the Escape and Control-J characters will terminate an incre-)-.25
-F .096(mental search.)108 720 R .096(Control-G will abort an incrementa\
-l search and restore the original line.)5.096 F .097(When the search is)
-5.097 F(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(39)190.95 E 0 Cg
-EP
-%%Page: 40 40
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(terminated, the history entry containing the search string becom\
-es the current line.)108 84 Q 2.939 -.8(To \214)108 100.8 T 1.339(nd ot\
-her matching entries in the history list, type Control-S or Control-R a\
-s appropriate.).8 F 1.338(This will)6.338 F .674(search backw)108 112.8
-R .674(ard or forw)-.1 F .674(ard in the history for the ne)-.1 F .675
+F .096(mental search.)108 501.6 R .096(Control-G will abort an incremen\
+tal search and restore the original line.)5.096 F .097
+(When the search is)5.097 F(terminated, the history entry containing th\
+e search string becomes the current line.)108 513.6 Q 2.939 -.8(To \214)
+108 530.4 T 1.339(nd other matching entries in the history list, type C\
+ontrol-S or Control-R as appropriate.).8 F 1.338(This will)6.338 F .674
+(search backw)108 542.4 R .674(ard or forw)-.1 F .674
+(ard in the history for the ne)-.1 F .675
(xt entry matching the search string typed so f)-.15 F(ar)-.1 E 5.675
-(.A)-.55 G -.15(ny)-5.675 G .175(other k)108 124.8 R .475 -.15(ey s)-.1
+(.A)-.55 G -.15(ny)-5.675 G .175(other k)108 554.4 R .475 -.15(ey s)-.1
H .174
(equence bound to a readline command will terminate the search and e).15
F -.15(xe)-.15 G .174(cute that command.).15 F -.15(Fo)5.174 G(r).15 E
-.54(instance, a)108 136.8 R/F1 10/Times-Italic@0 SF(ne)3.04 E(wline)-.15
-E F0 .541(will terminate the search and accept the line, thereby e)3.04
-F -.15(xe)-.15 G .541(cuting the command from the).15 F(history list.)
-108 148.8 Q .653(Readline remembers the last incremental search string.)
-108 165.6 R .653(If tw)5.653 F 3.153(oC)-.1 G .653
+.54(instance, a)108 566.4 R F1(ne)3.04 E(wline)-.15 E F0 .541
+(will terminate the search and accept the line, thereby e)3.04 F -.15
+(xe)-.15 G .541(cuting the command from the).15 F(history list.)108
+578.4 Q .653(Readline remembers the last incremental search string.)108
+595.2 R .653(If tw)5.653 F 3.153(oC)-.1 G .653
(ontrol-Rs are typed without an)-3.153 F 3.152(yi)-.15 G(nterv)-3.152 E
-(en-)-.15 E(ing characters de\214ning a ne)108 177.6 Q 2.5(ws)-.25 G
+(en-)-.15 E(ing characters de\214ning a ne)108 607.2 Q 2.5(ws)-.25 G
(earch string, an)-2.5 E 2.5(yr)-.15 G(emembered search string is used.)
-2.5 E .567(Non-incremental searches read the entire search string befo\
-re starting to search for matching history lines.)108 194.4 R(The searc\
-h string may be typed by the user or be part of the contents of the cur\
-rent line.)108 206.4 Q/F2 10/Times-Bold@0 SF(Readline Command Names)87
-223.2 Q F0 1.392(The follo)108 235.2 R 1.391
+re starting to search for matching history lines.)108 624 R(The search \
+string may be typed by the user or be part of the contents of the curre\
+nt line.)108 636 Q F2(Readline Command Names)87 652.8 Q F0 1.392
+(The follo)108 664.8 R 1.391
(wing is a list of the names of the commands and the def)-.25 F 1.391
(ault k)-.1 F 1.691 -.15(ey s)-.1 H 1.391(equences to which the).15 F
-3.891(ya)-.15 G(re)-3.891 E 2.621(bound. Command)108 247.2 R .121
+3.891(ya)-.15 G(re)-3.891 E 2.621(bound. Command)108 676.8 R .121
(names without an accompan)2.621 F .121(ying k)-.15 F .421 -.15(ey s)-.1
H .122(equence are unbound by def).15 F 2.622(ault. In)-.1 F .122
-(the follo)2.622 F(wing)-.25 E(descriptions,)108 259.2 Q F1(point)3.411
+(the follo)2.622 F(wing)-.25 E(descriptions,)108 688.8 Q F1(point)3.411
E F0 .911(refers to the current cursor position, and)3.411 F F1(mark)
3.411 E F0 .91(refers to a cursor position sa)3.411 F -.15(ve)-.2 G 3.41
-(db).15 G 3.41(yt)-3.41 G(he)-3.41 E F2(set\255mark)108 271.2 Q F0 2.5
+(db).15 G 3.41(yt)-3.41 G(he)-3.41 E F2(set\255mark)108 700.8 Q F0 2.5
(command. The)2.5 F(te)2.5 E
(xt between the point and mark is referred to as the)-.15 E F1 -.37(re)
-2.5 G(gion)-.03 E F0(.)A F2(Commands f)87 288 Q(or Mo)-.25 E(ving)-.1 E
-(beginning\255of\255line \(C\255a\))108 300 Q F0(Mo)144 312 Q .3 -.15
-(ve t)-.15 H 2.5(ot).15 G(he start of the current line.)-2.5 E F2
-(end\255of\255line \(C\255e\))108 324 Q F0(Mo)144 336 Q .3 -.15(ve t)
--.15 H 2.5(ot).15 G(he end of the line.)-2.5 E F2 -.25(fo)108 348 S
-(rward\255char \(C\255f\)).25 E F0(Mo)144 360 Q .3 -.15(ve f)-.15 H(orw)
-.15 E(ard a character)-.1 E(.)-.55 E F2(backward\255char \(C\255b\))108
-372 Q F0(Mo)144 384 Q .3 -.15(ve b)-.15 H(ack a character).15 E(.)-.55 E
-F2 -.25(fo)108 396 S(rward\255w).25 E(ord \(M\255f\))-.1 E F0(Mo)144 408
+2.5 G(gion)-.03 E F0(.)A(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(40)
+200.665 E 0 Cg EP
+%%Page: 41 41
+%%BeginPageSetup
+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(Commands f)87 84 Q(or Mo)-.25 E(ving)-.1 E
+(beginning\255of\255line \(C\255a\))108 96 Q F0(Mo)144 108 Q .3 -.15
+(ve t)-.15 H 2.5(ot).15 G(he start of the current line.)-2.5 E F1
+(end\255of\255line \(C\255e\))108 120 Q F0(Mo)144 132 Q .3 -.15(ve t)
+-.15 H 2.5(ot).15 G(he end of the line.)-2.5 E F1 -.25(fo)108 144 S
+(rward\255char \(C\255f\)).25 E F0(Mo)144 156 Q .3 -.15(ve f)-.15 H(orw)
+.15 E(ard a character)-.1 E(.)-.55 E F1(backward\255char \(C\255b\))108
+168 Q F0(Mo)144 180 Q .3 -.15(ve b)-.15 H(ack a character).15 E(.)-.55 E
+F1 -.25(fo)108 192 S(rward\255w).25 E(ord \(M\255f\))-.1 E F0(Mo)144 204
Q .822 -.15(ve f)-.15 H(orw).15 E .522(ard to the end of the ne)-.1 F
.523(xt w)-.15 F 3.023(ord. W)-.1 F .523
(ords are composed of alphanumeric characters \(let-)-.8 F
-(ters and digits\).)144 420 Q F2(backward\255w)108 432 Q(ord \(M\255b\))
--.1 E F0(Mo)144 444 Q 1.71 -.15(ve b)-.15 H 1.41
+(ters and digits\).)144 216 Q F1(backward\255w)108 228 Q(ord \(M\255b\))
+-.1 E F0(Mo)144 240 Q 1.71 -.15(ve b)-.15 H 1.41
(ack to the start of the current or pre).15 F 1.41(vious w)-.25 F 3.91
(ord. W)-.1 F 1.41(ords are composed of alphanumeric)-.8 F
-(characters \(letters and digits\).)144 456 Q F2(shell\255f)108 468 Q
-(orward\255w)-.25 E(ord)-.1 E F0(Mo)144 480 Q .784 -.15(ve f)-.15 H(orw)
+(characters \(letters and digits\).)144 252 Q F1(shell\255f)108 264 Q
+(orward\255w)-.25 E(ord)-.1 E F0(Mo)144 276 Q .784 -.15(ve f)-.15 H(orw)
.15 E .484(ard to the end of the ne)-.1 F .484(xt w)-.15 F 2.984(ord. W)
-.1 F .484(ords are delimited by non-quoted shell metacharac-)-.8 F
-(ters.)144 492 Q F2(shell\255backward\255w)108 504 Q(ord)-.1 E F0(Mo)144
-516 Q .909 -.15(ve b)-.15 H .609(ack to the start of the current or pre)
+(ters.)144 288 Q F1(shell\255backward\255w)108 300 Q(ord)-.1 E F0(Mo)144
+312 Q .909 -.15(ve b)-.15 H .609(ack to the start of the current or pre)
.15 F .609(vious w)-.25 F 3.109(ord. W)-.1 F .608
-(ords are delimited by non-quoted shell)-.8 F(metacharacters.)144 528 Q
-F2(clear\255scr)108 540 Q(een \(C\255l\))-.18 E F0 .993
-(Clear the screen lea)144 552 R .993
+(ords are delimited by non-quoted shell)-.8 F(metacharacters.)144 324 Q
+F1(clear\255scr)108 336 Q(een \(C\255l\))-.18 E F0 .993
+(Clear the screen lea)144 348 R .993
(ving the current line at the top of the screen.)-.2 F -.4(Wi)5.993 G
.993(th an ar).4 F .993(gument, refresh the)-.18 F
-(current line without clearing the screen.)144 564 Q F2 -.18(re)108 576
+(current line without clearing the screen.)144 360 Q F1 -.18(re)108 372
S(draw\255curr).18 E(ent\255line)-.18 E F0(Refresh the current line.)144
-588 Q F2(Commands f)87 604.8 Q(or Manipulating the History)-.25 E
-(accept\255line \(Newline, Retur)108 616.8 Q(n\))-.15 E F0 .159
-(Accept the line re)144 628.8 R -.05(ga)-.15 G .159
+384 Q F1(Commands f)87 400.8 Q(or Manipulating the History)-.25 E
+(accept\255line \(Newline, Retur)108 412.8 Q(n\))-.15 E F0 .159
+(Accept the line re)144 424.8 R -.05(ga)-.15 G .159
(rdless of where the cursor is.).05 F .158(If this line is non-empty)
5.158 F 2.658(,a)-.65 G .158(dd it to the history list)-2.658 F .699
-(according to the state of the)144 640.8 R/F3 9/Times-Bold@0 SF
+(according to the state of the)144 436.8 R/F2 9/Times-Bold@0 SF
(HISTCONTR)3.199 E(OL)-.27 E F0 -.25(va)2.949 G 3.199(riable. If).25 F
.699(the line is a modi\214ed history line, then)3.199 F
-(restore the history line to its original state.)144 652.8 Q F2(pr)108
-664.8 Q -.15(ev)-.18 G(ious\255history \(C\255p\)).15 E F0
-(Fetch the pre)144 676.8 Q(vious command from the history list, mo)-.25
-E(ving back in the list.)-.15 E F2(next\255history \(C\255n\))108 688.8
-Q F0(Fetch the ne)144 700.8 Q(xt command from the history list, mo)-.15
-E(ving forw)-.15 E(ard in the list.)-.1 E(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(40)190.95 E 0 Cg EP
-%%Page: 41 41
+(restore the history line to its original state.)144 448.8 Q F1(pr)108
+460.8 Q -.15(ev)-.18 G(ious\255history \(C\255p\)).15 E F0
+(Fetch the pre)144 472.8 Q(vious command from the history list, mo)-.25
+E(ving back in the list.)-.15 E F1(next\255history \(C\255n\))108 484.8
+Q F0(Fetch the ne)144 496.8 Q(xt command from the history list, mo)-.15
+E(ving forw)-.15 E(ard in the list.)-.1 E F1
+(beginning\255of\255history \(M\255<\))108 508.8 Q F0(Mo)144 520.8 Q .3
+-.15(ve t)-.15 H 2.5(ot).15 G(he \214rst line in the history)-2.5 E(.)
+-.65 E F1(end\255of\255history \(M\255>\))108 532.8 Q F0(Mo)144 544.8 Q
+.3 -.15(ve t)-.15 H 2.5(ot).15 G(he end of the input history)-2.5 E 2.5
+(,i)-.65 G(.e., the line currently being entered.)-2.5 E F1 -2.29 -.18
+(re v)108 556.8 T(erse\255sear).08 E(ch\255history \(C\255r\))-.18 E F0
+1.471(Search backw)144 568.8 R 1.471
+(ard starting at the current line and mo)-.1 F 1.47
+(ving `up' through the history as necessary)-.15 F(.)-.65 E
+(This is an incremental search.)144 580.8 Q F1 -.25(fo)108 592.8 S
+(rward\255sear).25 E(ch\255history \(C\255s\))-.18 E F0 1.131
+(Search forw)144 604.8 R 1.131(ard starting at the current line and mo)
+-.1 F 1.132(ving `do)-.15 F 1.132(wn' through the history as necessary)
+-.25 F(.)-.65 E(This is an incremental search.)144 616.8 Q F1
+(non\255incr)108 628.8 Q(emental\255r)-.18 E -2.3 -.15(ev e)-.18 H
+(rse\255sear).15 E(ch\255history \(M\255p\))-.18 E F0 .165(Search backw)
+144 640.8 R .164(ard through the history starting at the current line u\
+sing a non-incremental search for)-.1 F 2.5(as)144 652.8 S
+(tring supplied by the user)-2.5 E(.)-.55 E F1(non\255incr)108 664.8 Q
+(emental\255f)-.18 E(orward\255sear)-.25 E(ch\255history \(M\255n\))-.18
+E F0 1.353(Search forw)144 676.8 R 1.354(ard through the history using \
+a non-incremental search for a string supplied by the)-.1 F(user)144
+688.8 Q(.)-.55 E F1(history\255sear)108 700.8 Q(ch\255f)-.18 E(orward)
+-.25 E F0 .249(Search forw)144 712.8 R .249(ard through the history for\
+ the string of characters between the start of the current line)-.1 F
+(and the point.)144 724.8 Q(This is a non-incremental search.)5 E
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(41)200.665 E 0 Cg EP
+%%Page: 42 42
%%BeginPageSetup
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(beginning\255of\255history \(M\255<\))108
-84 Q F0(Mo)144 96 Q .3 -.15(ve t)-.15 H 2.5(ot).15 G
-(he \214rst line in the history)-2.5 E(.)-.65 E F1
-(end\255of\255history \(M\255>\))108 108 Q F0(Mo)144 120 Q .3 -.15(ve t)
--.15 H 2.5(ot).15 G(he end of the input history)-2.5 E 2.5(,i)-.65 G
-(.e., the line currently being entered.)-2.5 E F1 -2.29 -.18(re v)108
-132 T(erse\255sear).08 E(ch\255history \(C\255r\))-.18 E F0 1.471
-(Search backw)144 144 R 1.471(ard starting at the current line and mo)
--.1 F 1.47(ving `up' through the history as necessary)-.15 F(.)-.65 E
-(This is an incremental search.)144 156 Q F1 -.25(fo)108 168 S
-(rward\255sear).25 E(ch\255history \(C\255s\))-.18 E F0 1.131
-(Search forw)144 180 R 1.131(ard starting at the current line and mo)-.1
-F 1.132(ving `do)-.15 F 1.132(wn' through the history as necessary)-.25
-F(.)-.65 E(This is an incremental search.)144 192 Q F1(non\255incr)108
-204 Q(emental\255r)-.18 E -2.3 -.15(ev e)-.18 H(rse\255sear).15 E
-(ch\255history \(M\255p\))-.18 E F0 .165(Search backw)144 216 R .164(ar\
-d through the history starting at the current line using a non-incremen\
-tal search for)-.1 F 2.5(as)144 228 S(tring supplied by the user)-2.5 E
-(.)-.55 E F1(non\255incr)108 240 Q(emental\255f)-.18 E(orward\255sear)
--.25 E(ch\255history \(M\255n\))-.18 E F0 1.353(Search forw)144 252 R
-1.354(ard through the history using a non-incremental search for a stri\
-ng supplied by the)-.1 F(user)144 264 Q(.)-.55 E F1(history\255sear)108
-276 Q(ch\255f)-.18 E(orward)-.25 E F0 .249(Search forw)144 288 R .249(a\
-rd through the history for the string of characters between the start o\
-f the current line)-.1 F(and the point.)144 300 Q
-(This is a non-incremental search.)5 E F1(history\255sear)108 312 Q
-(ch\255backward)-.18 E F0 .95(Search backw)144 324 R .951(ard through t\
-he history for the string of characters between the start of the curren\
-t)-.1 F(line and the point.)144 336 Q(This is a non-incremental search.)
-5 E F1(yank\255nth\255ar)108 348 Q 2.5(g\()-.1 G<4dad43ad7929>-2.5 E F0
-.622(Insert the \214rst ar)144 360 R .622(gument to the pre)-.18 F .622
+-.35 E/F1 10/Times-Bold@0 SF(history\255sear)108 84 Q(ch\255backward)
+-.18 E F0 .95(Search backw)144 96 R .951(ard through the history for th\
+e string of characters between the start of the current)-.1 F
+(line and the point.)144 108 Q(This is a non-incremental search.)5 E F1
+(yank\255nth\255ar)108 120 Q 2.5(g\()-.1 G<4dad43ad7929>-2.5 E F0 .622
+(Insert the \214rst ar)144 132 R .622(gument to the pre)-.18 F .622
(vious command \(usually the second w)-.25 F .622(ord on the pre)-.1 F
-.622(vious line\))-.25 F .794(at point.)144 372 R -.4(Wi)5.794 G .794
+.622(vious line\))-.25 F .794(at point.)144 144 R -.4(Wi)5.794 G .794
(th an ar).4 F(gument)-.18 E/F2 10/Times-Italic@0 SF(n)3.294 E F0 3.294
(,i).24 G .794(nsert the)-3.294 F F2(n)3.294 E F0 .794(th w)B .794
(ord from the pre)-.1 F .794(vious command \(the w)-.25 F .795
-(ords in the)-.1 F(pre)144 384 Q .292(vious command be)-.25 F .292
+(ords in the)-.1 F(pre)144 156 Q .292(vious command be)-.25 F .292
(gin with w)-.15 F .291(ord 0\).)-.1 F 2.791(An)5.291 G -2.25 -.15(eg a)
-2.791 H(ti).15 E .591 -.15(ve a)-.25 H -.18(rg).15 G .291
(ument inserts the).18 F F2(n)2.791 E F0 .291(th w)B .291
-(ord from the end of)-.1 F .281(the pre)144 396 R .281(vious command.)
+(ord from the end of)-.1 F .281(the pre)144 168 R .281(vious command.)
-.25 F .281(Once the ar)5.281 F(gument)-.18 E F2(n)2.781 E F0 .281
(is computed, the ar)2.781 F .281(gument is e)-.18 F .282
-(xtracted as if the "!)-.15 F F2(n)A F0(")A(history e)144 408 Q
-(xpansion had been speci\214ed.)-.15 E F1(yank\255last\255ar)108 420 Q
+(xtracted as if the "!)-.15 F F2(n)A F0(")A(history e)144 180 Q
+(xpansion had been speci\214ed.)-.15 E F1(yank\255last\255ar)108 192 Q
2.5(g\()-.1 G -1.667(M\255. ,)-2.5 F -1.667(M\255_ \))2.5 F F0 1.308
-(Insert the last ar)144 432 R 1.308(gument to the pre)-.18 F 1.307
+(Insert the last ar)144 204 R 1.308(gument to the pre)-.18 F 1.307
(vious command \(the last w)-.25 F 1.307(ord of the pre)-.1 F 1.307
-(vious history entry\).)-.25 F -.4(Wi)144 444 S .203(th a numeric ar).4
+(vious history entry\).)-.25 F -.4(Wi)144 216 S .203(th a numeric ar).4
F .203(gument, beha)-.18 F .504 -.15(ve ex)-.2 H .204(actly lik).15 F(e)
-.1 E F1(yank\255nth\255ar)2.704 E(g)-.1 E F0 5.204(.S)C(uccessi)-5.204
E .504 -.15(ve c)-.25 H .204(alls to).15 F F1(yank\255last\255ar)2.704 E
-(g)-.1 E F0(mo)144 456 Q .807 -.15(ve b)-.15 H .507
+(g)-.1 E F0(mo)144 228 Q .807 -.15(ve b)-.15 H .507
(ack through the history list, inserting the last w).15 F .507
(ord \(or the w)-.1 F .507(ord speci\214ed by the ar)-.1 F(gument)-.18 E
-1.396(to the \214rst call\) of each line in turn.)144 468 R(An)6.396 E
+1.396(to the \214rst call\) of each line in turn.)144 240 R(An)6.396 E
3.896(yn)-.15 G 1.396(umeric ar)-3.896 F 1.397
(gument supplied to these successi)-.18 F 1.697 -.15(ve c)-.25 H(alls)
-.15 E .492(determines the direction to mo)144 480 R .792 -.15(ve t)-.15
+.15 E .492(determines the direction to mo)144 252 R .792 -.15(ve t)-.15
H .492(hrough the history).15 F 5.491(.A)-.65 G(ne)-2.5 E -.05(ga)-.15 G
(ti).05 E .791 -.15(ve a)-.25 H -.18(rg).15 G .491
(ument switches the direction).18 F .494
-(through the history \(back or forw)144 492 R 2.994(ard\). The)-.1 F
+(through the history \(back or forw)144 264 R 2.994(ard\). The)-.1 F
.494(history e)2.994 F .494(xpansion f)-.15 F .494
-(acilities are used to e)-.1 F .494(xtract the last)-.15 F(ar)144 504 Q
+(acilities are used to e)-.1 F .494(xtract the last)-.15 F(ar)144 276 Q
(gument, as if the "!$" history e)-.18 E(xpansion had been speci\214ed.)
--.15 E F1(shell\255expand\255line \(M\255C\255e\))108 516 Q F0 .623
-(Expand the line as the shell does.)144 528 R .622
+-.15 E F1(shell\255expand\255line \(M\255C\255e\))108 288 Q F0 .623
+(Expand the line as the shell does.)144 300 R .622
(This performs alias and history e)5.622 F .622
-(xpansion as well as all of the)-.15 F(shell w)144 540 Q(ord e)-.1 E 2.5
+(xpansion as well as all of the)-.15 F(shell w)144 312 Q(ord e)-.1 E 2.5
(xpansions. See)-.15 F/F3 9/Times-Bold@0 SF(HIST)2.5 E(OR)-.162 E 2.25
(YE)-.315 G(XP)-2.25 E(ANSION)-.666 E F0(belo)2.25 E 2.5(wf)-.25 G
(or a description of history e)-2.5 E(xpansion.)-.15 E F1
-(history\255expand\255line \(M\255^\))108 552 Q F0 .938
-(Perform history e)144 564 R .939(xpansion on the current line.)-.15 F
+(history\255expand\255line \(M\255^\))108 324 Q F0 .938
+(Perform history e)144 336 R .939(xpansion on the current line.)-.15 F
(See)5.939 E F3(HIST)3.439 E(OR)-.162 E 3.189(YE)-.315 G(XP)-3.189 E
(ANSION)-.666 E F0(belo)3.189 E 3.439(wf)-.25 G .939(or a descrip-)
--3.439 F(tion of history e)144 576 Q(xpansion.)-.15 E F1(magic\255space)
-108 588 Q F0 1.627(Perform history e)144 600 R 1.627
+-3.439 F(tion of history e)144 348 Q(xpansion.)-.15 E F1(magic\255space)
+108 360 Q F0 1.627(Perform history e)144 372 R 1.627
(xpansion on the current line and insert a space.)-.15 F(See)6.626 E F3
(HIST)4.126 E(OR)-.162 E 3.876(YE)-.315 G(XP)-3.876 E(ANSION)-.666 E F0
-(belo)144 612 Q 2.5(wf)-.25 G(or a description of history e)-2.5 E
-(xpansion.)-.15 E F1(alias\255expand\255line)108 624 Q F0 .394
-(Perform alias e)144 636 R .394(xpansion on the current line.)-.15 F
+(belo)144 384 Q 2.5(wf)-.25 G(or a description of history e)-2.5 E
+(xpansion.)-.15 E F1(alias\255expand\255line)108 396 Q F0 .394
+(Perform alias e)144 408 R .394(xpansion on the current line.)-.15 F
(See)5.395 E F3(ALIASES)2.895 E F0(abo)2.645 E .695 -.15(ve f)-.15 H
-.395(or a description of alias e).15 F(xpan-)-.15 E(sion.)144 648 Q F1
-(history\255and\255alias\255expand\255line)108 660 Q F0
-(Perform history and alias e)144 672 Q(xpansion on the current line.)
--.15 E F1(insert\255last\255ar)108 684 Q(gument \(M\255.)-.1 E 2.5(,M)
-.833 G -1.667(\255_ \))-2.5 F F0 2.5(As)144 696 S(ynon)-2.5 E(ym for)
--.15 E F1(yank\255last\255ar)2.5 E(g)-.1 E F0(.)A(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(41)190.95 E 0 Cg EP
-%%Page: 42 42
-%%BeginPageSetup
-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(operate\255and\255get\255next \(C\255o\))
-108 84 Q F0 .948(Accept the current line for e)144 96 R -.15(xe)-.15 G
-.948(cution and fetch the ne).15 F .948(xt line relati)-.15 F 1.247 -.15
+.395(or a description of alias e).15 F(xpan-)-.15 E(sion.)144 420 Q F1
+(history\255and\255alias\255expand\255line)108 432 Q F0
+(Perform history and alias e)144 444 Q(xpansion on the current line.)
+-.15 E F1(insert\255last\255ar)108 456 Q(gument \(M\255.)-.1 E 2.5(,M)
+.833 G -1.667(\255_ \))-2.5 F F0 2.5(As)144 468 S(ynon)-2.5 E(ym for)
+-.15 E F1(yank\255last\255ar)2.5 E(g)-.1 E F0(.)A F1
+(operate\255and\255get\255next \(C\255o\))108 480 Q F0 .948
+(Accept the current line for e)144 492 R -.15(xe)-.15 G .948
+(cution and fetch the ne).15 F .948(xt line relati)-.15 F 1.247 -.15
(ve t)-.25 H 3.447(ot).15 G .947(he current line from the)-3.447 F
-(history for editing.)144 108 Q(An)5 E 2.5(ya)-.15 G -.18(rg)-2.5 G
+(history for editing.)144 504 Q(An)5 E 2.5(ya)-.15 G -.18(rg)-2.5 G
(ument is ignored.).18 E F1
-(edit\255and\255execute\255command \(C\255xC\255e\))108 120 Q F0(In)144
-132 Q -.2(vo)-.4 G 1.226 -.1(ke a).2 H 3.526(ne).1 G 1.026
+(edit\255and\255execute\255command \(C\255xC\255e\))108 516 Q F0(In)144
+528 Q -.2(vo)-.4 G 1.226 -.1(ke a).2 H 3.526(ne).1 G 1.026
(ditor on the current command line, and e)-3.526 F -.15(xe)-.15 G 1.026
(cute the result as shell commands.).15 F F1(Bash)6.026 E F0
-(attempts to in)144 144 Q -.2(vo)-.4 G -.1(ke).2 G/F2 9/Times-Bold@0 SF
-($VISU)2.6 E(AL)-.54 E/F3 9/Times-Roman@0 SF(,)A F2($EDIT)2.25 E(OR)
--.162 E F3(,)A F0(and)2.25 E/F4 10/Times-Italic@0 SF(emacs)2.5 E F0
-(as the editor)2.5 E 2.5(,i)-.4 G 2.5(nt)-2.5 G(hat order)-2.5 E(.)-.55
-E F1(Commands f)87 160.8 Q(or Changing T)-.25 E(ext)-.92 E
-(delete\255char \(C\255d\))108 172.8 Q F0 .358
-(Delete the character at point.)144 184.8 R .358(If point is at the be)
+(attempts to in)144 540 Q -.2(vo)-.4 G -.1(ke).2 G F3($VISU)2.6 E(AL)
+-.54 E/F4 9/Times-Roman@0 SF(,)A F3($EDIT)2.25 E(OR)-.162 E F4(,)A F0
+(and)2.25 E F2(emacs)2.5 E F0(as the editor)2.5 E 2.5(,i)-.4 G 2.5(nt)
+-2.5 G(hat order)-2.5 E(.)-.55 E F1(Commands f)87 556.8 Q(or Changing T)
+-.25 E(ext)-.92 E(delete\255char \(C\255d\))108 568.8 Q F0 .358
+(Delete the character at point.)144 580.8 R .358(If point is at the be)
5.358 F .358(ginning of the line, there are no characters in the)-.15 F
-(line, and the last character typed w)144 196.8 Q(as not bound to)-.1 E
-F1(delete\255char)2.5 E F0 2.5(,t)C(hen return)-2.5 E F2(EOF)2.5 E F3(.)
-A F1(backward\255delete\255char \(Rubout\))108 208.8 Q F0 .552
-(Delete the character behind the cursor)144 220.8 R 5.553(.W)-.55 G .553
+(line, and the last character typed w)144 592.8 Q(as not bound to)-.1 E
+F1(delete\255char)2.5 E F0 2.5(,t)C(hen return)-2.5 E F3(EOF)2.5 E F4(.)
+A F1(backward\255delete\255char \(Rubout\))108 604.8 Q F0 .552
+(Delete the character behind the cursor)144 616.8 R 5.553(.W)-.55 G .553
(hen gi)-5.553 F -.15(ve)-.25 G 3.053(nan).15 G .553(umeric ar)-3.053 F
.553(gument, sa)-.18 F .853 -.15(ve t)-.2 H .553(he deleted te).15 F
-.553(xt on)-.15 F(the kill ring.)144 232.8 Q F1 -.25(fo)108 244.8 S
+.553(xt on)-.15 F(the kill ring.)144 628.8 Q F1 -.25(fo)108 640.8 S
(rward\255backward\255delete\255char).25 E F0 .474
-(Delete the character under the cursor)144 256.8 R 2.974(,u)-.4 G .474
+(Delete the character under the cursor)144 652.8 R 2.974(,u)-.4 G .474
(nless the cursor is at the end of the line, in which case the)-2.974 F
-(character behind the cursor is deleted.)144 268.8 Q F1
-(quoted\255insert \(C\255q, C\255v\))108 280.8 Q F0 .778(Add the ne)144
-292.8 R .779(xt character typed to the line v)-.15 F 3.279
+(character behind the cursor is deleted.)144 664.8 Q F1
+(quoted\255insert \(C\255q, C\255v\))108 676.8 Q F0 .778(Add the ne)144
+688.8 R .779(xt character typed to the line v)-.15 F 3.279
(erbatim. This)-.15 F .779(is ho)3.279 F 3.279(wt)-.25 G 3.279(oi)-3.279
G .779(nsert characters lik)-3.279 F(e)-.1 E F1(C\255q)3.279 E F0 3.279
-(,f)C(or)-3.279 E -.15(ex)144 304.8 S(ample.).15 E F1
-(tab\255insert \(C\255v T)108 316.8 Q(AB\))-.9 E F0
-(Insert a tab character)144 328.8 Q(.)-.55 E F1
-(self\255insert \(a, b, A, 1, !, ...\))108 340.8 Q F0
-(Insert the character typed.)144 352.8 Q F1
-(transpose\255chars \(C\255t\))108 364.8 Q F0 .322
-(Drag the character before point forw)144 376.8 R .321(ard o)-.1 F -.15
-(ve)-.15 G 2.821(rt).15 G .321(he character at point, mo)-2.821 F .321
-(ving point forw)-.15 F .321(ard as well.)-.1 F 1.182
-(If point is at the end of the line, then this transposes the tw)144
-388.8 R 3.683(oc)-.1 G 1.183(haracters before point.)-3.683 F(Ne)6.183 E
--.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G(ar)144 400.8 Q(guments ha)-.18 E
-.3 -.15(ve n)-.2 H 2.5(oe).15 G -.25(ff)-2.5 G(ect.).25 E F1
-(transpose\255w)108 412.8 Q(ords \(M\255t\))-.1 E F0 .024(Drag the w)144
-424.8 R .024(ord before point past the w)-.1 F .023(ord after point, mo)
+(,f)C(or)-3.279 E -.15(ex)144 700.8 S(ample.).15 E(GNU Bash 4.2)72 768 Q
+(2012 July 5)151.505 E(42)200.665 E 0 Cg EP
+%%Page: 43 43
+%%BeginPageSetup
+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(tab\255insert \(C\255v T)108 84 Q(AB\))-.9
+E F0(Insert a tab character)144 96 Q(.)-.55 E F1
+(self\255insert \(a, b, A, 1, !, ...\))108 108 Q F0
+(Insert the character typed.)144 120 Q F1(transpose\255chars \(C\255t\))
+108 132 Q F0 .322(Drag the character before point forw)144 144 R .321
+(ard o)-.1 F -.15(ve)-.15 G 2.821(rt).15 G .321
+(he character at point, mo)-2.821 F .321(ving point forw)-.15 F .321
+(ard as well.)-.1 F 1.182
+(If point is at the end of the line, then this transposes the tw)144 156
+R 3.683(oc)-.1 G 1.183(haracters before point.)-3.683 F(Ne)6.183 E -.05
+(ga)-.15 G(ti).05 E -.15(ve)-.25 G(ar)144 168 Q(guments ha)-.18 E .3
+-.15(ve n)-.2 H 2.5(oe).15 G -.25(ff)-2.5 G(ect.).25 E F1
+(transpose\255w)108 180 Q(ords \(M\255t\))-.1 E F0 .024(Drag the w)144
+192 R .024(ord before point past the w)-.1 F .023(ord after point, mo)
-.1 F .023(ving point o)-.15 F -.15(ve)-.15 G 2.523(rt).15 G .023(hat w)
-2.523 F .023(ord as well.)-.1 F .023(If point)5.023 F
-(is at the end of the line, this transposes the last tw)144 436.8 Q 2.5
-(ow)-.1 G(ords on the line.)-2.6 E F1(upcase\255w)108 448.8 Q
-(ord \(M\255u\))-.1 E F0 1.698(Uppercase the current \(or follo)144
-460.8 R 1.698(wing\) w)-.25 F 4.198(ord. W)-.1 F 1.698(ith a ne)-.4 F
--.05(ga)-.15 G(ti).05 E 1.999 -.15(ve a)-.25 H -.18(rg).15 G 1.699
-(ument, uppercase the pre).18 F(vious)-.25 E -.1(wo)144 472.8 S(rd, b).1
-E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1(do)108 484.8 Q
-(wncase\255w)-.1 E(ord \(M\255l\))-.1 E F0(Lo)144 496.8 Q 1.648
+(is at the end of the line, this transposes the last tw)144 204 Q 2.5
+(ow)-.1 G(ords on the line.)-2.6 E F1(upcase\255w)108 216 Q
+(ord \(M\255u\))-.1 E F0 1.698(Uppercase the current \(or follo)144 228
+R 1.698(wing\) w)-.25 F 4.198(ord. W)-.1 F 1.698(ith a ne)-.4 F -.05(ga)
+-.15 G(ti).05 E 1.999 -.15(ve a)-.25 H -.18(rg).15 G 1.699
+(ument, uppercase the pre).18 F(vious)-.25 E -.1(wo)144 240 S(rd, b).1 E
+(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1(do)108 252 Q
+(wncase\255w)-.1 E(ord \(M\255l\))-.1 E F0(Lo)144 264 Q 1.648
(wercase the current \(or follo)-.25 F 1.648(wing\) w)-.25 F 4.148
(ord. W)-.1 F 1.647(ith a ne)-.4 F -.05(ga)-.15 G(ti).05 E 1.947 -.15
(ve a)-.25 H -.18(rg).15 G 1.647(ument, lo).18 F 1.647(wercase the pre)
--.25 F(vious)-.25 E -.1(wo)144 508.8 S(rd, b).1 E(ut do not mo)-.2 E .3
--.15(ve p)-.15 H(oint.).15 E F1(capitalize\255w)108 520.8 Q
-(ord \(M\255c\))-.1 E F0 1.974(Capitalize the current \(or follo)144
-532.8 R 1.974(wing\) w)-.25 F 4.474(ord. W)-.1 F 1.974(ith a ne)-.4 F
--.05(ga)-.15 G(ti).05 E 2.274 -.15(ve a)-.25 H -.18(rg).15 G 1.975
-(ument, capitalize the pre).18 F(vious)-.25 E -.1(wo)144 544.8 S(rd, b)
-.1 E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1 -.1(ove)108
-556.8 S(rwrite\255mode).1 E F0 -.8(To)144 568.8 S .438(ggle o).8 F -.15
-(ve)-.15 G .438(rwrite mode.).15 F -.4(Wi)5.438 G .438(th an e).4 F .438
+-.25 F(vious)-.25 E -.1(wo)144 276 S(rd, b).1 E(ut do not mo)-.2 E .3
+-.15(ve p)-.15 H(oint.).15 E F1(capitalize\255w)108 288 Q
+(ord \(M\255c\))-.1 E F0 1.974(Capitalize the current \(or follo)144 300
+R 1.974(wing\) w)-.25 F 4.474(ord. W)-.1 F 1.974(ith a ne)-.4 F -.05(ga)
+-.15 G(ti).05 E 2.274 -.15(ve a)-.25 H -.18(rg).15 G 1.975
+(ument, capitalize the pre).18 F(vious)-.25 E -.1(wo)144 312 S(rd, b).1
+E(ut do not mo)-.2 E .3 -.15(ve p)-.15 H(oint.).15 E F1 -.1(ove)108 324
+S(rwrite\255mode).1 E F0 -.8(To)144 336 S .438(ggle o).8 F -.15(ve)-.15
+G .438(rwrite mode.).15 F -.4(Wi)5.438 G .438(th an e).4 F .438
(xplicit positi)-.15 F .737 -.15(ve n)-.25 H .437(umeric ar).15 F .437
(gument, switches to o)-.18 F -.15(ve)-.15 G .437(rwrite mode.).15 F -.4
-(Wi)144 580.8 S .78(th an e).4 F .781(xplicit non-positi)-.15 F 1.081
--.15(ve n)-.25 H .781(umeric ar).15 F .781
-(gument, switches to insert mode.)-.18 F .781(This command af)5.781 F
-(fects)-.25 E(only)144 592.8 Q F1(emacs)4.395 E F0(mode;)4.395 E F1(vi)
-4.395 E F0 1.894(mode does o)4.395 F -.15(ve)-.15 G 1.894(rwrite dif).15
-F(ferently)-.25 E 6.894(.E)-.65 G 1.894(ach call to)-6.894 F F4 -.37(re)
-4.394 G(adline\(\)).37 E F0 1.894(starts in insert)4.394 F 3.968
-(mode. In)144 604.8 R -.15(ove)3.968 G 1.468
-(rwrite mode, characters bound to).15 F F1(self\255insert)3.969 E F0
-1.469(replace the te)3.969 F 1.469(xt at point rather than)-.15 F .958
-(pushing the te)144 616.8 R .958(xt to the right.)-.15 F .957
-(Characters bound to)5.958 F F1(backward\255delete\255char)3.457 E F0
-.957(replace the character)3.457 F(before point with a space.)144 628.8
-Q(By def)5 E(ault, this command is unbound.)-.1 E F1(Killing and Y)87
-645.6 Q(anking)-.85 E(kill\255line \(C\255k\))108 657.6 Q F0
-(Kill the te)144 669.6 Q(xt from point to the end of the line.)-.15 E F1
-(backward\255kill\255line \(C\255x Rubout\))108 681.6 Q F0(Kill backw)
-144 693.6 Q(ard to the be)-.1 E(ginning of the line.)-.15 E F1
-(unix\255line\255discard \(C\255u\))108 705.6 Q F0(Kill backw)144 717.6
+(Wi)144 348 S .78(th an e).4 F .781(xplicit non-positi)-.15 F 1.081 -.15
+(ve n)-.25 H .781(umeric ar).15 F .781(gument, switches to insert mode.)
+-.18 F .781(This command af)5.781 F(fects)-.25 E(only)144 360 Q F1
+(emacs)4.395 E F0(mode;)4.395 E F1(vi)4.395 E F0 1.894(mode does o)4.395
+F -.15(ve)-.15 G 1.894(rwrite dif).15 F(ferently)-.25 E 6.894(.E)-.65 G
+1.894(ach call to)-6.894 F/F2 10/Times-Italic@0 SF -.37(re)4.394 G
+(adline\(\)).37 E F0 1.894(starts in insert)4.394 F 3.968(mode. In)144
+372 R -.15(ove)3.968 G 1.468(rwrite mode, characters bound to).15 F F1
+(self\255insert)3.969 E F0 1.469(replace the te)3.969 F 1.469
+(xt at point rather than)-.15 F .958(pushing the te)144 384 R .958
+(xt to the right.)-.15 F .957(Characters bound to)5.958 F F1
+(backward\255delete\255char)3.457 E F0 .957(replace the character)3.457
+F(before point with a space.)144 396 Q(By def)5 E
+(ault, this command is unbound.)-.1 E F1(Killing and Y)87 412.8 Q
+(anking)-.85 E(kill\255line \(C\255k\))108 424.8 Q F0(Kill the te)144
+436.8 Q(xt from point to the end of the line.)-.15 E F1
+(backward\255kill\255line \(C\255x Rubout\))108 448.8 Q F0(Kill backw)
+144 460.8 Q(ard to the be)-.1 E(ginning of the line.)-.15 E F1
+(unix\255line\255discard \(C\255u\))108 472.8 Q F0(Kill backw)144 484.8
Q(ard from point to the be)-.1 E(ginning of the line.)-.15 E
(The killed te)5 E(xt is sa)-.15 E -.15(ve)-.2 G 2.5(do).15 G 2.5(nt)
--2.5 G(he kill-ring.)-2.5 E(GNU Bash 4.2)72 768 Q(2012 February 4)141.79
-E(42)190.95 E 0 Cg EP
-%%Page: 43 43
-%%BeginPageSetup
-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(kill\255whole\255line)108 84 Q F0
+-2.5 G(he kill-ring.)-2.5 E F1(kill\255whole\255line)108 496.8 Q F0
(Kill all characters on the current line, no matter where point is.)144
-96 Q F1(kill\255w)108 108 Q(ord \(M\255d\))-.1 E F0 .728
-(Kill from point to the end of the current w)144 120 R .729
+508.8 Q F1(kill\255w)108 520.8 Q(ord \(M\255d\))-.1 E F0 .728
+(Kill from point to the end of the current w)144 532.8 R .729
(ord, or if between w)-.1 F .729(ords, to the end of the ne)-.1 F .729
-(xt w)-.15 F(ord.)-.1 E -.8(Wo)144 132 S
+(xt w)-.15 F(ord.)-.1 E -.8(Wo)144 544.8 S
(rd boundaries are the same as those used by).8 E F1 -.25(fo)2.5 G
-(rward\255w).25 E(ord)-.1 E F0(.)A F1(backward\255kill\255w)108 144 Q
-(ord \(M\255Rubout\))-.1 E F0(Kill the w)144 156 Q(ord behind point.)-.1
-E -.8(Wo)5 G(rd boundaries are the same as those used by).8 E F1
-(backward\255w)2.5 E(ord)-.1 E F0(.)A F1(shell\255kill\255w)108 168 Q
+(rward\255w).25 E(ord)-.1 E F0(.)A F1(backward\255kill\255w)108 556.8 Q
+(ord \(M\255Rubout\))-.1 E F0(Kill the w)144 568.8 Q(ord behind point.)
+-.1 E -.8(Wo)5 G(rd boundaries are the same as those used by).8 E F1
+(backward\255w)2.5 E(ord)-.1 E F0(.)A F1(shell\255kill\255w)108 580.8 Q
(ord \(M\255d\))-.1 E F0 .729
-(Kill from point to the end of the current w)144 180 R .728
+(Kill from point to the end of the current w)144 592.8 R .728
(ord, or if between w)-.1 F .728(ords, to the end of the ne)-.1 F .728
-(xt w)-.15 F(ord.)-.1 E -.8(Wo)144 192 S
+(xt w)-.15 F(ord.)-.1 E -.8(Wo)144 604.8 S
(rd boundaries are the same as those used by).8 E F1(shell\255f)2.5 E
(orward\255w)-.25 E(ord)-.1 E F0(.)A F1(shell\255backward\255kill\255w)
-108 204 Q(ord \(M\255Rubout\))-.1 E F0 3.025(Kill the w)144 216 R 3.025
-(ord behind point.)-.1 F -.8(Wo)8.025 G 3.025
+108 616.8 Q(ord \(M\255Rubout\))-.1 E F0 3.025(Kill the w)144 628.8 R
+3.025(ord behind point.)-.1 F -.8(Wo)8.025 G 3.025
(rd boundaries are the same as those used by).8 F F1(shell\255back-)
-5.525 E(ward\255w)144 228 Q(ord)-.1 E F0(.)A F1(unix\255w)108 240 Q
-(ord\255rubout \(C\255w\))-.1 E F0 .365(Kill the w)144 252 R .365
+5.525 E(ward\255w)144 640.8 Q(ord)-.1 E F0(.)A F1(unix\255w)108 652.8 Q
+(ord\255rubout \(C\255w\))-.1 E F0 .365(Kill the w)144 664.8 R .365
(ord behind point, using white space as a w)-.1 F .364(ord boundary)-.1
F 5.364(.T)-.65 G .364(he killed te)-5.364 F .364(xt is sa)-.15 F -.15
(ve)-.2 G 2.864(do).15 G 2.864(nt)-2.864 G(he)-2.864 E(kill-ring.)144
-264 Q F1(unix\255\214lename\255rubout)108 276 Q F0 .166(Kill the w)144
-288 R .166
+676.8 Q F1(unix\255\214lename\255rubout)108 688.8 Q F0 .166(Kill the w)
+144 700.8 R .166
(ord behind point, using white space and the slash character as the w)
--.1 F .167(ord boundaries.)-.1 F(The)5.167 E(killed te)144 300 Q
+-.1 F .167(ord boundaries.)-.1 F(The)5.167 E(killed te)144 712.8 Q
(xt is sa)-.15 E -.15(ve)-.2 G 2.5(do).15 G 2.5(nt)-2.5 G(he kill-ring.)
--2.5 E F1(delete\255horizontal\255space \(M\255\\\))108 312 Q F0
-(Delete all spaces and tabs around point.)144 324 Q F1(kill\255r)108 336
-Q(egion)-.18 E F0(Kill the te)144 348 Q(xt in the current re)-.15 E
-(gion.)-.15 E F1(copy\255r)108 360 Q(egion\255as\255kill)-.18 E F0(Cop)
-144 372 Q 2.5(yt)-.1 G(he te)-2.5 E(xt in the re)-.15 E
-(gion to the kill b)-.15 E(uf)-.2 E(fer)-.25 E(.)-.55 E F1
-(copy\255backward\255w)108 384 Q(ord)-.1 E F0(Cop)144 396 Q 4.801(yt)-.1
-G 2.301(he w)-4.801 F 2.301(ord before point to the kill b)-.1 F(uf)-.2
-E(fer)-.25 E 7.301(.T)-.55 G 2.301(he w)-7.301 F 2.3
-(ord boundaries are the same as)-.1 F F1(back-)4.8 E(ward\255w)144 408 Q
-(ord)-.1 E F0(.)A F1(copy\255f)108 420 Q(orward\255w)-.25 E(ord)-.1 E F0
-(Cop)144 432 Q 4.507(yt)-.1 G 2.007(he w)-4.507 F 2.007(ord follo)-.1 F
+-2.5 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(43)200.665 E 0 Cg EP
+%%Page: 44 44
+%%BeginPageSetup
+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(delete\255horizontal\255space \(M\255\\\))
+108 84 Q F0(Delete all spaces and tabs around point.)144 96 Q F1
+(kill\255r)108 108 Q(egion)-.18 E F0(Kill the te)144 120 Q
+(xt in the current re)-.15 E(gion.)-.15 E F1(copy\255r)108 132 Q
+(egion\255as\255kill)-.18 E F0(Cop)144 144 Q 2.5(yt)-.1 G(he te)-2.5 E
+(xt in the re)-.15 E(gion to the kill b)-.15 E(uf)-.2 E(fer)-.25 E(.)
+-.55 E F1(copy\255backward\255w)108 156 Q(ord)-.1 E F0(Cop)144 168 Q
+4.801(yt)-.1 G 2.301(he w)-4.801 F 2.301(ord before point to the kill b)
+-.1 F(uf)-.2 E(fer)-.25 E 7.301(.T)-.55 G 2.301(he w)-7.301 F 2.3
+(ord boundaries are the same as)-.1 F F1(back-)4.8 E(ward\255w)144 180 Q
+(ord)-.1 E F0(.)A F1(copy\255f)108 192 Q(orward\255w)-.25 E(ord)-.1 E F0
+(Cop)144 204 Q 4.507(yt)-.1 G 2.007(he w)-4.507 F 2.007(ord follo)-.1 F
2.007(wing point to the kill b)-.25 F(uf)-.2 E(fer)-.25 E 7.008(.T)-.55
G 2.008(he w)-7.008 F 2.008(ord boundaries are the same as)-.1 F F1 -.25
-(fo)4.508 G -.37(r-).25 G(ward\255w)144 444 Q(ord)-.1 E F0(.)A F1
-(yank \(C\255y\))108 456 Q F0 -1(Ya)144 468 S
+(fo)4.508 G -.37(r-).25 G(ward\255w)144 216 Q(ord)-.1 E F0(.)A F1
+(yank \(C\255y\))108 228 Q F0 -1(Ya)144 240 S
(nk the top of the kill ring into the b)1 E(uf)-.2 E(fer at point.)-.25
-E F1(yank\255pop \(M\255y\))108 480 Q F0
-(Rotate the kill ring, and yank the ne)144 492 Q 2.5(wt)-.25 G 2.5
+E F1(yank\255pop \(M\255y\))108 252 Q F0
+(Rotate the kill ring, and yank the ne)144 264 Q 2.5(wt)-.25 G 2.5
(op. Only)-2.5 F -.1(wo)2.5 G(rks follo).1 E(wing)-.25 E F1(yank)2.5 E
-F0(or)2.5 E F1(yank\255pop)2.5 E F0(.)A F1(Numeric Ar)87 508.8 Q
-(guments)-.1 E(digit\255ar)108 520.8 Q
+F0(or)2.5 E F1(yank\255pop)2.5 E F0(.)A F1(Numeric Ar)87 280.8 Q
+(guments)-.1 E(digit\255ar)108 292.8 Q
(gument \(M\2550, M\2551, ..., M\255\255\))-.1 E F0 .642
-(Add this digit to the ar)144 532.8 R .641
+(Add this digit to the ar)144 304.8 R .641
(gument already accumulating, or start a ne)-.18 F 3.141(wa)-.25 G -.18
(rg)-3.141 G 3.141(ument. M\255\255).18 F .641(starts a ne)3.141 F(g-)
--.15 E(ati)144 544.8 Q .3 -.15(ve a)-.25 H -.18(rg).15 G(ument.).18 E F1
-(uni)108 556.8 Q -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E F0 .778
-(This is another w)144 568.8 R .779(ay to specify an ar)-.1 F 3.279
+-.15 E(ati)144 316.8 Q .3 -.15(ve a)-.25 H -.18(rg).15 G(ument.).18 E F1
+(uni)108 328.8 Q -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E F0 .778
+(This is another w)144 340.8 R .779(ay to specify an ar)-.1 F 3.279
(gument. If)-.18 F .779(this command is follo)3.279 F .779
(wed by one or more digits,)-.25 F 1.376
(optionally with a leading minus sign, those digits de\214ne the ar)144
-580.8 R 3.876(gument. If)-.18 F 1.376(the command is fol-)3.876 F(lo)144
-592.8 Q 1.17(wed by digits, e)-.25 F -.15(xe)-.15 G(cuting).15 E F1(uni)
+352.8 R 3.876(gument. If)-.18 F 1.376(the command is fol-)3.876 F(lo)144
+364.8 Q 1.17(wed by digits, e)-.25 F -.15(xe)-.15 G(cuting).15 E F1(uni)
3.67 E -.1(ve)-.1 G(rsal\255ar).1 E(gument)-.1 E F0(ag)3.67 E 1.17
(ain ends the numeric ar)-.05 F 1.17(gument, b)-.18 F 1.17(ut is other)
--.2 F(-)-.2 E .899(wise ignored.)144 604.8 R .898
+-.2 F(-)-.2 E .899(wise ignored.)144 376.8 R .898
(As a special case, if this command is immediately follo)5.899 F .898
(wed by a character that is)-.25 F .243
-(neither a digit or minus sign, the ar)144 616.8 R .243
+(neither a digit or minus sign, the ar)144 388.8 R .243
(gument count for the ne)-.18 F .243(xt command is multiplied by four)
--.15 F 5.243(.T)-.55 G(he)-5.243 E(ar)144 628.8 Q .378
+-.15 F 5.243(.T)-.55 G(he)-5.243 E(ar)144 400.8 Q .378
(gument count is initially one, so e)-.18 F -.15(xe)-.15 G .378
(cuting this function the \214rst time mak).15 F .378(es the ar)-.1 F
-.378(gument count)-.18 F(four)144 640.8 Q 2.5(,as)-.4 G(econd time mak)
+.378(gument count)-.18 F(four)144 412.8 Q 2.5(,as)-.4 G(econd time mak)
-2.5 E(es the ar)-.1 E(gument count sixteen, and so on.)-.18 E F1
-(Completing)87 657.6 Q(complete \(T)108 669.6 Q(AB\))-.9 E F0 1.137
-(Attempt to perform completion on the te)144 681.6 R 1.137
+(Completing)87 429.6 Q(complete \(T)108 441.6 Q(AB\))-.9 E F0 1.137
+(Attempt to perform completion on the te)144 453.6 R 1.137
(xt before point.)-.15 F F1(Bash)6.137 E F0 1.137
-(attempts completion treating the)3.637 F(te)144 693.6 Q .533(xt as a v)
+(attempts completion treating the)3.637 F(te)144 465.6 Q .533(xt as a v)
-.15 F .533(ariable \(if the te)-.25 F .533(xt be)-.15 F .533(gins with)
-.15 F F1($)3.033 E F0 .533(\), username \(if the te)B .532(xt be)-.15 F
.532(gins with)-.15 F F1(~)3.032 E F0 .532(\), hostname \(if the)B(te)
-144 705.6 Q .701(xt be)-.15 F .701(gins with)-.15 F F1(@)3.201 E F0 .701
+144 477.6 Q .701(xt be)-.15 F .701(gins with)-.15 F F1(@)3.201 E F0 .701
(\), or command \(including aliases and functions\) in turn.)B .702
(If none of these pro-)5.701 F
-(duces a match, \214lename completion is attempted.)144 717.6 Q
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(43)190.95 E 0 Cg EP
-%%Page: 44 44
-%%BeginPageSetup
-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(possible\255completions \(M\255?\))108 84 Q
-F0(List the possible completions of the te)144 96 Q(xt before point.)
--.15 E F1(insert\255completions \(M\255*\))108 108 Q F0 .783
-(Insert all completions of the te)144 120 R .783(xt before point that w)
--.15 F .783(ould ha)-.1 F 1.083 -.15(ve b)-.2 H .783(een generated by)
-.15 F F1(possible\255com-)3.282 E(pletions)144 132 Q F0(.)A F1
-(menu\255complete)108 144 Q F0 .928(Similar to)144 156 R F1(complete)
-3.428 E F0 3.428(,b)C .929(ut replaces the w)-3.628 F .929
-(ord to be completed with a single match from the list of)-.1 F 1.194
-(possible completions.)144 168 R 1.194(Repeated e)6.194 F -.15(xe)-.15 G
-1.194(cution of).15 F F1(menu\255complete)3.694 E F0 1.193
+(duces a match, \214lename completion is attempted.)144 489.6 Q F1
+(possible\255completions \(M\255?\))108 501.6 Q F0
+(List the possible completions of the te)144 513.6 Q(xt before point.)
+-.15 E F1(insert\255completions \(M\255*\))108 525.6 Q F0 .783
+(Insert all completions of the te)144 537.6 R .783
+(xt before point that w)-.15 F .783(ould ha)-.1 F 1.083 -.15(ve b)-.2 H
+.783(een generated by).15 F F1(possible\255com-)3.282 E(pletions)144
+549.6 Q F0(.)A F1(menu\255complete)108 561.6 Q F0 .928(Similar to)144
+573.6 R F1(complete)3.428 E F0 3.428(,b)C .929(ut replaces the w)-3.628
+F .929(ord to be completed with a single match from the list of)-.1 F
+1.194(possible completions.)144 585.6 R 1.194(Repeated e)6.194 F -.15
+(xe)-.15 G 1.194(cution of).15 F F1(menu\255complete)3.694 E F0 1.193
(steps through the list of possible)3.694 F .828
-(completions, inserting each match in turn.)144 180 R .828
+(completions, inserting each match in turn.)144 597.6 R .828
(At the end of the list of completions, the bell is rung)5.828 F .727
-(\(subject to the setting of)144 192 R F1(bell\255style)3.227 E F0 3.227
-(\)a)C .727(nd the original te)-3.227 F .727(xt is restored.)-.15 F .727
-(An ar)5.727 F .727(gument of)-.18 F/F2 10/Times-Italic@0 SF(n)3.227 E
-F0(mo)3.227 E -.15(ve)-.15 G(s).15 E F2(n)3.227 E F0 1.73
-(positions forw)144 204 R 1.73(ard in the list of matches; a ne)-.1 F
+(\(subject to the setting of)144 609.6 R F1(bell\255style)3.227 E F0
+3.227(\)a)C .727(nd the original te)-3.227 F .727(xt is restored.)-.15 F
+.727(An ar)5.727 F .727(gument of)-.18 F/F2 10/Times-Italic@0 SF(n)3.227
+E F0(mo)3.227 E -.15(ve)-.15 G(s).15 E F2(n)3.227 E F0 1.73
+(positions forw)144 621.6 R 1.73(ard in the list of matches; a ne)-.1 F
-.05(ga)-.15 G(ti).05 E 2.03 -.15(ve a)-.25 H -.18(rg).15 G 1.73
(ument may be used to mo).18 F 2.03 -.15(ve b)-.15 H(ackw).15 E(ard)-.1
-E(through the list.)144 216 Q(This command is intended to be bound to)5
-E F1 -.9(TA)2.5 G(B).9 E F0 2.5(,b)C(ut is unbound by def)-2.7 E(ault.)
--.1 E F1(menu\255complete\255backward)108 228 Q F0 .82(Identical to)144
-240 R F1(menu\255complete)3.32 E F0 3.32(,b)C .82(ut mo)-3.52 F -.15(ve)
--.15 G 3.32(sb).15 G(ackw)-3.32 E .82
+E(through the list.)144 633.6 Q(This command is intended to be bound to)
+5 E F1 -.9(TA)2.5 G(B).9 E F0 2.5(,b)C(ut is unbound by def)-2.7 E
+(ault.)-.1 E F1(menu\255complete\255backward)108 645.6 Q F0 .82
+(Identical to)144 657.6 R F1(menu\255complete)3.32 E F0 3.32(,b)C .82
+(ut mo)-3.52 F -.15(ve)-.15 G 3.32(sb).15 G(ackw)-3.32 E .82
(ard through the list of possible completions, as if)-.1 F F1
-(menu\255complete)144 252 Q F0(had been gi)2.5 E -.15(ve)-.25 G 2.5(nan)
-.15 G -2.25 -.15(eg a)-2.5 H(ti).15 E .3 -.15(ve a)-.25 H -.18(rg).15 G
-2.5(ument. This).18 F(command is unbound by def)2.5 E(ault.)-.1 E F1
-(delete\255char\255or\255list)108 264 Q F0 .234
-(Deletes the character under the cursor if not at the be)144 276 R .234
-(ginning or end of the line \(lik)-.15 F(e)-.1 E F1(delete\255char)2.735
-E F0(\).)A .425(If at the end of the line, beha)144 288 R -.15(ve)-.2 G
-2.925(si).15 G .425(dentically to)-2.925 F F1(possible\255completions)
-2.925 E F0 5.425(.T)C .425(his command is unbound)-5.425 F(by def)144
-300 Q(ault.)-.1 E F1(complete\255\214lename \(M\255/\))108 312 Q F0
-(Attempt \214lename completion on the te)144 324 Q(xt before point.)-.15
-E F1(possible\255\214lename\255completions \(C\255x /\))108 336 Q F0
-(List the possible completions of the te)144 348 Q
+(menu\255complete)144 669.6 Q F0(had been gi)2.5 E -.15(ve)-.25 G 2.5
+(nan).15 G -2.25 -.15(eg a)-2.5 H(ti).15 E .3 -.15(ve a)-.25 H -.18(rg)
+.15 G 2.5(ument. This).18 F(command is unbound by def)2.5 E(ault.)-.1 E
+F1(delete\255char\255or\255list)108 681.6 Q F0 .234
+(Deletes the character under the cursor if not at the be)144 693.6 R
+.234(ginning or end of the line \(lik)-.15 F(e)-.1 E F1(delete\255char)
+2.735 E F0(\).)A .425(If at the end of the line, beha)144 705.6 R -.15
+(ve)-.2 G 2.925(si).15 G .425(dentically to)-2.925 F F1
+(possible\255completions)2.925 E F0 5.425(.T)C .425
+(his command is unbound)-5.425 F(by def)144 717.6 Q(ault.)-.1 E
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(44)200.665 E 0 Cg EP
+%%Page: 45 45
+%%BeginPageSetup
+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(complete\255\214lename \(M\255/\))108 84 Q
+F0(Attempt \214lename completion on the te)144 96 Q(xt before point.)
+-.15 E F1(possible\255\214lename\255completions \(C\255x /\))108 108 Q
+F0(List the possible completions of the te)144 120 Q
(xt before point, treating it as a \214lename.)-.15 E F1
-(complete\255user)108 360 Q(name \(M\255~\))-.15 E F0
-(Attempt completion on the te)144 372 Q
+(complete\255user)108 132 Q(name \(M\255~\))-.15 E F0
+(Attempt completion on the te)144 144 Q
(xt before point, treating it as a username.)-.15 E F1(possible\255user)
-108 384 Q(name\255completions \(C\255x ~\))-.15 E F0
-(List the possible completions of the te)144 396 Q
+108 156 Q(name\255completions \(C\255x ~\))-.15 E F0
+(List the possible completions of the te)144 168 Q
(xt before point, treating it as a username.)-.15 E F1(complete\255v)108
-408 Q(ariable \(M\255$\))-.1 E F0(Attempt completion on the te)144 420 Q
+180 Q(ariable \(M\255$\))-.1 E F0(Attempt completion on the te)144 192 Q
(xt before point, treating it as a shell v)-.15 E(ariable.)-.25 E F1
-(possible\255v)108 432 Q(ariable\255completions \(C\255x $\))-.1 E F0
-(List the possible completions of the te)144 444 Q
+(possible\255v)108 204 Q(ariable\255completions \(C\255x $\))-.1 E F0
+(List the possible completions of the te)144 216 Q
(xt before point, treating it as a shell v)-.15 E(ariable.)-.25 E F1
-(complete\255hostname \(M\255@\))108 456 Q F0
-(Attempt completion on the te)144 468 Q
+(complete\255hostname \(M\255@\))108 228 Q F0
+(Attempt completion on the te)144 240 Q
(xt before point, treating it as a hostname.)-.15 E F1
-(possible\255hostname\255completions \(C\255x @\))108 480 Q F0
-(List the possible completions of the te)144 492 Q
+(possible\255hostname\255completions \(C\255x @\))108 252 Q F0
+(List the possible completions of the te)144 264 Q
(xt before point, treating it as a hostname.)-.15 E F1
-(complete\255command \(M\255!\))108 504 Q F0 .58
-(Attempt completion on the te)144 516 R .581
+(complete\255command \(M\255!\))108 276 Q F0 .58
+(Attempt completion on the te)144 288 R .581
(xt before point, treating it as a command name.)-.15 F .581
-(Command comple-)5.581 F .715(tion attempts to match the te)144 528 R
+(Command comple-)5.581 F .715(tion attempts to match the te)144 300 R
.715(xt ag)-.15 F .715(ainst aliases, reserv)-.05 F .715(ed w)-.15 F
.715(ords, shell functions, shell b)-.1 F .715(uiltins, and)-.2 F
-(\214nally e)144 540 Q -.15(xe)-.15 G
+(\214nally e)144 312 Q -.15(xe)-.15 G
(cutable \214lenames, in that order).15 E(.)-.55 E F1
-(possible\255command\255completions \(C\255x !\))108 552 Q F0
-(List the possible completions of the te)144 564 Q
+(possible\255command\255completions \(C\255x !\))108 324 Q F0
+(List the possible completions of the te)144 336 Q
(xt before point, treating it as a command name.)-.15 E F1
-(dynamic\255complete\255history \(M\255T)108 576 Q(AB\))-.9 E F0 .424
-(Attempt completion on the te)144 588 R .425
+(dynamic\255complete\255history \(M\255T)108 348 Q(AB\))-.9 E F0 .424
+(Attempt completion on the te)144 360 R .425
(xt before point, comparing the te)-.15 F .425(xt ag)-.15 F .425
(ainst lines from the history list)-.05 F
-(for possible completion matches.)144 600 Q F1(dab)108 612 Q(br)-.1 E
+(for possible completion matches.)144 372 Q F1(dab)108 384 Q(br)-.1 E
-.15(ev)-.18 G(\255expand).15 E F0 .611
-(Attempt menu completion on the te)144 624 R .611
+(Attempt menu completion on the te)144 396 R .611
(xt before point, comparing the te)-.15 F .61(xt ag)-.15 F .61
(ainst lines from the his-)-.05 F
-(tory list for possible completion matches.)144 636 Q F1
-(complete\255into\255braces \(M\255{\))108 648 Q F0 .4(Perform \214lena\
+(tory list for possible completion matches.)144 408 Q F1
+(complete\255into\255braces \(M\255{\))108 420 Q F0 .4(Perform \214lena\
me completion and insert the list of possible completions enclosed with\
-in braces so)144 660 R(the list is a)144 672 Q -.25(va)-.2 G
+in braces so)144 432 R(the list is a)144 444 Q -.25(va)-.2 G
(ilable to the shell \(see).25 E F1(Brace Expansion)2.5 E F0(abo)2.5 E
--.15(ve)-.15 G(\).).15 E F1 -.25(Ke)87 688.8 S(yboard Macr).25 E(os)-.18
-E(start\255kbd\255macr)108 700.8 Q 2.5(o\()-.18 G(C\255x \()-2.5 E(\))
-.833 E F0(Be)144 712.8 Q(gin sa)-.15 E
+-.15(ve)-.15 G(\).).15 E F1 -.25(Ke)87 460.8 S(yboard Macr).25 E(os)-.18
+E(start\255kbd\255macr)108 472.8 Q 2.5(o\()-.18 G(C\255x \()-2.5 E(\))
+.833 E F0(Be)144 484.8 Q(gin sa)-.15 E
(ving the characters typed into the current k)-.2 E -.15(ey)-.1 G
-(board macro.).15 E(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(44)
-190.95 E 0 Cg EP
-%%Page: 45 45
-%%BeginPageSetup
-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(end\255kbd\255macr)108 84 Q 2.5(o\()-.18 G
-(C\255x \))-2.5 E(\)).833 E F0(Stop sa)144 96 Q
+(board macro.).15 E F1(end\255kbd\255macr)108 496.8 Q 2.5(o\()-.18 G
+(C\255x \))-2.5 E(\)).833 E F0(Stop sa)144 508.8 Q
(ving the characters typed into the current k)-.2 E -.15(ey)-.1 G
(board macro and store the de\214nition.).15 E F1
-(call\255last\255kbd\255macr)108 108 Q 2.5(o\()-.18 G(C\255x e\))-2.5 E
-F0(Re-e)144 120 Q -.15(xe)-.15 G 1(cute the last k).15 F -.15(ey)-.1 G
-.999(board macro de\214ned, by making the characters in the macro appea\
-r as if).15 F .662(typed at the k)144 132 R -.15(ey)-.1 G(board.).15 E
-F1(print\255last\255kbd\255macr)5.663 E 3.163(o\()-.18 G(\))-3.163 E F0
-.663(Print the last k)3.163 F -.15(ey)-.1 G .663
+(call\255last\255kbd\255macr)108 520.8 Q 2.5(o\()-.18 G(C\255x e\))-2.5
+E F0(Re-e)144 532.8 Q -.15(xe)-.15 G 1(cute the last k).15 F -.15(ey)-.1
+G .999(board macro de\214ned, by making the characters in the macro app\
+ear as if).15 F .662(typed at the k)144 544.8 R -.15(ey)-.1 G(board.).15
+E F1(print\255last\255kbd\255macr)5.663 E 3.163(o\()-.18 G(\))-3.163 E
+F0 .663(Print the last k)3.163 F -.15(ey)-.1 G .663
(board macro de\214ned in a for).15 F(-)-.2 E(mat suitable for the)144
-144 Q/F2 10/Times-Italic@0 SF(inputr)2.5 E(c)-.37 E F0(\214le.)2.5 E F1
-(Miscellaneous)87 160.8 Q -.18(re)108 172.8 S<ad72>.18 E
+556.8 Q/F2 10/Times-Italic@0 SF(inputr)2.5 E(c)-.37 E F0(\214le.)2.5 E
+F1(Miscellaneous)87 573.6 Q -.18(re)108 585.6 S<ad72>.18 E
(ead\255init\255\214le \(C\255x C\255r\))-.18 E F0 1.777
-(Read in the contents of the)144 184.8 R F2(inputr)4.277 E(c)-.37 E F0
+(Read in the contents of the)144 597.6 R F2(inputr)4.277 E(c)-.37 E F0
1.776(\214le, and incorporate an)4.276 F 4.276(yb)-.15 G 1.776
(indings or v)-4.276 F 1.776(ariable assignments)-.25 F(found there.)144
-196.8 Q F1(abort \(C\255g\))108 208.8 Q F0 3.248
-(Abort the current editing command and ring the terminal')144 220.8 R
+609.6 Q F1(abort \(C\255g\))108 621.6 Q F0 3.248
+(Abort the current editing command and ring the terminal')144 633.6 R
5.749(sb)-.55 G 3.249(ell \(subject to the setting of)-5.749 F F1
-(bell\255style)144 232.8 Q F0(\).)A F1(do\255upper)108 244.8 Q
+(bell\255style)144 645.6 Q F0(\).)A F1(do\255upper)108 657.6 Q
(case\255v)-.18 E(ersion \(M\255a, M\255b, M\255)-.1 E F2(x)A F1 2.5(,.)
-C(..\))-2.5 E F0 1.756(If the meta\214ed character)144 256.8 R F2(x)
+C(..\))-2.5 E F0 1.756(If the meta\214ed character)144 669.6 R F2(x)
4.256 E F0 1.755(is lo)4.256 F 1.755
(wercase, run the command that is bound to the corresponding)-.25 F
-(uppercase character)144 268.8 Q(.)-.55 E F1(pr)108 280.8 Q
-(e\214x\255meta \(ESC\))-.18 E F0(Metafy the ne)144 292.8 Q
+(uppercase character)144 681.6 Q(.)-.55 E F1(pr)108 693.6 Q
+(e\214x\255meta \(ESC\))-.18 E F0(Metafy the ne)144 705.6 Q
(xt character typed.)-.15 E/F3 9/Times-Bold@0 SF(ESC)5 E F1(f)2.25 E F0
-(is equi)2.5 E -.25(va)-.25 G(lent to).25 E F1(Meta\255f)2.5 E F0(.)A F1
-(undo \(C\255_, C\255x C\255u\))108 304.8 Q F0
-(Incremental undo, separately remembered for each line.)144 316.8 Q F1
--2.29 -.18(re v)108 328.8 T(ert\255line \(M\255r\)).08 E F0 1.095
-(Undo all changes made to this line.)144 340.8 R 1.095(This is lik)6.095
-F 3.595(ee)-.1 G -.15(xe)-3.745 G 1.095(cuting the).15 F F1(undo)3.595 E
+(is equi)2.5 E -.25(va)-.25 G(lent to).25 E F1(Meta\255f)2.5 E F0(.)A
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(45)200.665 E 0 Cg EP
+%%Page: 46 46
+%%BeginPageSetup
+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(undo \(C\255_, C\255x C\255u\))108 84 Q F0
+(Incremental undo, separately remembered for each line.)144 96 Q F1
+-2.29 -.18(re v)108 108 T(ert\255line \(M\255r\)).08 E F0 1.095
+(Undo all changes made to this line.)144 120 R 1.095(This is lik)6.095 F
+3.595(ee)-.1 G -.15(xe)-3.745 G 1.095(cuting the).15 F F1(undo)3.595 E
F0 1.095(command enough times to)3.595 F
-(return the line to its initial state.)144 352.8 Q F1
-(tilde\255expand \(M\255&\))108 364.8 Q F0(Perform tilde e)144 376.8 Q
+(return the line to its initial state.)144 132 Q F1
+(tilde\255expand \(M\255&\))108 144 Q F0(Perform tilde e)144 156 Q
(xpansion on the current w)-.15 E(ord.)-.1 E F1
-(set\255mark \(C\255@, M\255<space>\))108 388.8 Q F0
-(Set the mark to the point.)144 400.8 Q(If a numeric ar)5 E
+(set\255mark \(C\255@, M\255<space>\))108 168 Q F0
+(Set the mark to the point.)144 180 Q(If a numeric ar)5 E
(gument is supplied, the mark is set to that position.)-.18 E F1
-(exchange\255point\255and\255mark \(C\255x C\255x\))108 412.8 Q F0(Sw)
-144 424.8 Q .283(ap the point with the mark.)-.1 F .283
+(exchange\255point\255and\255mark \(C\255x C\255x\))108 192 Q F0(Sw)144
+204 Q .283(ap the point with the mark.)-.1 F .283
(The current cursor position is set to the sa)5.283 F -.15(ve)-.2 G
2.782(dp).15 G .282(osition, and the old)-2.782 F(cursor position is sa)
-144 436.8 Q -.15(ve)-.2 G 2.5(da).15 G 2.5(st)-2.5 G(he mark.)-2.5 E F1
-(character\255sear)108 448.8 Q(ch \(C\255]\))-.18 E F0 3.035(Ac)144
-460.8 S .535(haracter is read and point is mo)-3.035 F -.15(ve)-.15 G
-3.035(dt).15 G 3.035(ot)-3.035 G .535(he ne)-3.035 F .535
+144 216 Q -.15(ve)-.2 G 2.5(da).15 G 2.5(st)-2.5 G(he mark.)-2.5 E F1
+(character\255sear)108 228 Q(ch \(C\255]\))-.18 E F0 3.035(Ac)144 240 S
+.535(haracter is read and point is mo)-3.035 F -.15(ve)-.15 G 3.035(dt)
+.15 G 3.035(ot)-3.035 G .535(he ne)-3.035 F .535
(xt occurrence of that character)-.15 F 5.536(.A)-.55 G(ne)-2.5 E -.05
(ga)-.15 G(ti).05 E .836 -.15(ve c)-.25 H(ount).15 E(searches for pre)
-144 472.8 Q(vious occurrences.)-.25 E F1(character\255sear)108 484.8 Q
-(ch\255backward \(M\255C\255]\))-.18 E F0 3.544(Ac)144 496.8 S 1.044
+144 252 Q(vious occurrences.)-.25 E F1(character\255sear)108 264 Q
+(ch\255backward \(M\255C\255]\))-.18 E F0 3.544(Ac)144 276 S 1.044
(haracter is read and point is mo)-3.544 F -.15(ve)-.15 G 3.544(dt).15 G
3.544(ot)-3.544 G 1.044(he pre)-3.544 F 1.044
(vious occurrence of that character)-.25 F 6.043(.A)-.55 G(ne)-2.5 E
-.05(ga)-.15 G(ti).05 E -.15(ve)-.25 G
-(count searches for subsequent occurrences.)144 508.8 Q F1
-(skip\255csi\255sequence)108 520.8 Q F0 1.826
-(Read enough characters to consume a multi-k)144 532.8 R 2.126 -.15
-(ey s)-.1 H 1.827(equence such as those de\214ned for k).15 F -.15(ey)
--.1 G 4.327(sl).15 G(ik)-4.327 E(e)-.1 E .791(Home and End.)144 544.8 R
-.791(Such sequences be)5.791 F .791
+(count searches for subsequent occurrences.)144 288 Q F1
+(skip\255csi\255sequence)108 300 Q F0 1.826
+(Read enough characters to consume a multi-k)144 312 R 2.126 -.15(ey s)
+-.1 H 1.827(equence such as those de\214ned for k).15 F -.15(ey)-.1 G
+4.327(sl).15 G(ik)-4.327 E(e)-.1 E .791(Home and End.)144 324 R .791
+(Such sequences be)5.791 F .791
(gin with a Control Sequence Indicator \(CSI\), usually ESC\255[.)-.15 F
-.331(If this sequence is bound to "\\[", k)144 556.8 R -.15(ey)-.1 G
-2.831(sp).15 G .331(roducing such sequences will ha)-2.831 F .632 -.15
-(ve n)-.2 H 2.832(oe).15 G -.25(ff)-2.832 G .332(ect unless e).25 F
-(xplic-)-.15 E .026(itly bound to a readline command, instead of insert\
-ing stray characters into the editing b)144 568.8 R(uf)-.2 E(fer)-.25 E
-5.026(.T)-.55 G(his)-5.026 E(is unbound by def)144 580.8 Q(ault, b)-.1 E
+.331(If this sequence is bound to "\\[", k)144 336 R -.15(ey)-.1 G 2.831
+(sp).15 G .331(roducing such sequences will ha)-2.831 F .632 -.15(ve n)
+-.2 H 2.832(oe).15 G -.25(ff)-2.832 G .332(ect unless e).25 F(xplic-)
+-.15 E .026(itly bound to a readline command, instead of inserting stra\
+y characters into the editing b)144 348 R(uf)-.2 E(fer)-.25 E 5.026(.T)
+-.55 G(his)-5.026 E(is unbound by def)144 360 Q(ault, b)-.1 E
(ut usually bound to ESC\255[.)-.2 E F1(insert\255comment \(M\255#\))108
-592.8 Q F0 -.4(Wi)144 604.8 S .48(thout a numeric ar).4 F .48
-(gument, the v)-.18 F .481(alue of the readline)-.25 F F1
-(comment\255begin)2.981 E F0 -.25(va)2.981 G .481
-(riable is inserted at the).25 F(be)144 616.8 Q .098
+372 Q F0 -.4(Wi)144 384 S .48(thout a numeric ar).4 F .48(gument, the v)
+-.18 F .481(alue of the readline)-.25 F F1(comment\255begin)2.981 E F0
+-.25(va)2.981 G .481(riable is inserted at the).25 F(be)144 396 Q .098
(ginning of the current line.)-.15 F .098(If a numeric ar)5.098 F .097
(gument is supplied, this command acts as a toggle:)-.18 F(if)5.097 E
-.321(the characters at the be)144 628.8 R .321
+.321(the characters at the be)144 408 R .321
(ginning of the line do not match the v)-.15 F .321(alue of)-.25 F F1
(comment\255begin)2.821 E F0 2.822(,t)C .322(he v)-2.822 F .322(alue is)
--.25 F .832(inserted, otherwise the characters in)144 640.8 R F1
+-.25 F .832(inserted, otherwise the characters in)144 420 R F1
(comment\255begin)3.332 E F0 .831(are deleted from the be)3.332 F .831
(ginning of the line.)-.15 F 1.468
-(In either case, the line is accepted as if a ne)144 652.8 R 1.468
+(In either case, the line is accepted as if a ne)144 432 R 1.468
(wline had been typed.)-.25 F 1.469(The def)6.469 F 1.469(ault v)-.1 F
-1.469(alue of)-.25 F F1(com-)3.969 E(ment\255begin)144 664.8 Q F0 .84
+1.469(alue of)-.25 F F1(com-)3.969 E(ment\255begin)144 444 Q F0 .84
(causes this command to mak)3.34 F 3.339(et)-.1 G .839
(he current line a shell comment.)-3.339 F .839(If a numeric ar)5.839 F
-(gu-)-.18 E(ment causes the comment character to be remo)144 676.8 Q
--.15(ve)-.15 G(d, the line will be e).15 E -.15(xe)-.15 G
-(cuted by the shell.).15 E F1(glob\255complete\255w)108 688.8 Q
-(ord \(M\255g\))-.1 E F0 .791(The w)144 700.8 R .791
+(gu-)-.18 E(ment causes the comment character to be remo)144 456 Q -.15
+(ve)-.15 G(d, the line will be e).15 E -.15(xe)-.15 G
+(cuted by the shell.).15 E F1(glob\255complete\255w)108 468 Q
+(ord \(M\255g\))-.1 E F0 .791(The w)144 480 R .791
(ord before point is treated as a pattern for pathname e)-.1 F .792
-(xpansion, with an asterisk implicitly)-.15 F 2.5(appended. This)144
-712.8 R(pattern is used to generate a list of matching \214lenames for \
-possible completions.)2.5 E(GNU Bash 4.2)72 768 Q(2012 February 4)141.79
-E(45)190.95 E 0 Cg EP
-%%Page: 46 46
-%%BeginPageSetup
-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(glob\255expand\255w)108 84 Q
-(ord \(C\255x *\))-.1 E F0 .176(The w)144 96 R .176
+(xpansion, with an asterisk implicitly)-.15 F 2.5(appended. This)144 492
+R(pattern is used to generate a list of matching \214lenames for possib\
+le completions.)2.5 E F1(glob\255expand\255w)108 504 Q(ord \(C\255x *\))
+-.1 E F0 .176(The w)144 516 R .176
(ord before point is treated as a pattern for pathname e)-.1 F .176
(xpansion, and the list of matching \214le-)-.15 F .516
-(names is inserted, replacing the w)144 108 R 3.016(ord. If)-.1 F 3.016
+(names is inserted, replacing the w)144 528 R 3.016(ord. If)-.1 F 3.016
(an)3.016 G .516(umeric ar)-3.016 F .516
(gument is supplied, an asterisk is appended)-.18 F(before pathname e)
-144 120 Q(xpansion.)-.15 E F1(glob\255list\255expansions \(C\255x g\))
-108 132 Q F0 .923(The list of e)144 144 R .923(xpansions that w)-.15 F
+144 540 Q(xpansion.)-.15 E F1(glob\255list\255expansions \(C\255x g\))
+108 552 Q F0 .923(The list of e)144 564 R .923(xpansions that w)-.15 F
.923(ould ha)-.1 F 1.223 -.15(ve b)-.2 H .923(een generated by).15 F F1
(glob\255expand\255w)3.423 E(ord)-.1 E F0 .923(is displayed, and)3.423 F
-.872(the line is redra)144 156 R 3.372(wn. If)-.15 F 3.372(an)3.372 G
+.872(the line is redra)144 576 R 3.372(wn. If)-.15 F 3.372(an)3.372 G
.872(umeric ar)-3.372 F .872
(gument is supplied, an asterisk is appended before pathname)-.18 F -.15
-(ex)144 168 S(pansion.).15 E F1(dump\255functions)108 180 Q F0 .627
-(Print all of the functions and their k)144 192 R .927 -.15(ey b)-.1 H
+(ex)144 588 S(pansion.).15 E F1(dump\255functions)108 600 Q F0 .627
+(Print all of the functions and their k)144 612 R .927 -.15(ey b)-.1 H
.626(indings to the readline output stream.).15 F .626(If a numeric ar)
5.626 F(gu-)-.18 E
-(ment is supplied, the output is formatted in such a w)144 204 Q
+(ment is supplied, the output is formatted in such a w)144 624 Q
(ay that it can be made part of an)-.1 E/F2 10/Times-Italic@0 SF(inputr)
-2.5 E(c)-.37 E F0(\214le.)2.5 E F1(dump\255v)108 216 Q(ariables)-.1 E F0
-1.799(Print all of the settable readline v)144 228 R 1.799
+2.5 E(c)-.37 E F0(\214le.)2.5 E F1(dump\255v)108 636 Q(ariables)-.1 E F0
+1.799(Print all of the settable readline v)144 648 R 1.799
(ariables and their v)-.25 F 1.8(alues to the readline output stream.)
--.25 F 1.8(If a)6.8 F .305(numeric ar)144 240 R .304
+-.25 F 1.8(If a)6.8 F .305(numeric ar)144 660 R .304
(gument is supplied, the output is formatted in such a w)-.18 F .304
-(ay that it can be made part of an)-.1 F F2(inputr)144 252 Q(c)-.37 E F0
-(\214le.)2.5 E F1(dump\255macr)108 264 Q(os)-.18 E F0 .592
-(Print all of the readline k)144 276 R .892 -.15(ey s)-.1 H .592
+(ay that it can be made part of an)-.1 F F2(inputr)144 672 Q(c)-.37 E F0
+(\214le.)2.5 E F1(dump\255macr)108 684 Q(os)-.18 E F0 .592
+(Print all of the readline k)144 696 R .892 -.15(ey s)-.1 H .592
(equences bound to macros and the strings the).15 F 3.093(yo)-.15 G
-3.093(utput. If)-3.093 F 3.093(an)3.093 G(umeric)-3.093 E(ar)144 288 Q
+3.093(utput. If)-3.093 F 3.093(an)3.093 G(umeric)-3.093 E(ar)144 708 Q
.528(gument is supplied, the output is formatted in such a w)-.18 F .528
(ay that it can be made part of an)-.1 F F2(inputr)3.027 E(c)-.37 E F0
-(\214le.)144 300 Q F1(display\255shell\255v)108 312 Q
-(ersion \(C\255x C\255v\))-.1 E F0(Display v)144 324 Q
+(\214le.)144 720 Q(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(46)
+200.665 E 0 Cg EP
+%%Page: 47 47
+%%BeginPageSetup
+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(display\255shell\255v)108 84 Q
+(ersion \(C\255x C\255v\))-.1 E F0(Display v)144 96 Q
(ersion information about the current instance of)-.15 E F1(bash)2.5 E
-F0(.)A F1(Pr)87 340.8 Q(ogrammable Completion)-.18 E F0 .146(When w)108
-352.8 R .147(ord completion is attempted for an ar)-.1 F .147
+F0(.)A F1(Pr)87 112.8 Q(ogrammable Completion)-.18 E F0 .146(When w)108
+124.8 R .147(ord completion is attempted for an ar)-.1 F .147
(gument to a command for which a completion speci\214cation \(a)-.18 F
-F2(compspec)108 364.8 Q F0 3.829(\)h)C 1.329
+/F2 10/Times-Italic@0 SF(compspec)108 136.8 Q F0 3.829(\)h)C 1.329
(as been de\214ned using the)-3.829 F F1(complete)3.829 E F0 -.2(bu)
3.829 G 1.329(iltin \(see).2 F/F3 9/Times-Bold@0 SF 1.329(SHELL B)3.829
F(UIL)-.09 E 1.329(TIN COMMANDS)-.828 F F0(belo)3.579 E 1.328(w\), the)
--.25 F(programmable completion f)108 376.8 Q(acilities are in)-.1 E -.2
+-.25 F(programmable completion f)108 148.8 Q(acilities are in)-.1 E -.2
(vo)-.4 G -.1(ke).2 G(d.).1 E .497
-(First, the command name is identi\214ed.)108 393.6 R .497
+(First, the command name is identi\214ed.)108 165.6 R .497
(If the command w)5.497 F .498
(ord is the empty string \(completion attempted at)-.1 F .234(the be)108
-405.6 R .233(ginning of an empty line\), an)-.15 F 2.733(yc)-.15 G .233
+177.6 R .233(ginning of an empty line\), an)-.15 F 2.733(yc)-.15 G .233
(ompspec de\214ned with the)-2.733 F F1<ad45>2.733 E F0 .233(option to)
2.733 F F1(complete)2.733 E F0 .233(is used.)2.733 F .233(If a comp-)
5.233 F .481(spec has been de\214ned for that command, the compspec is \
-used to generate the list of possible completions)108 417.6 R .823
-(for the w)108 429.6 R 3.323(ord. If)-.1 F .823(the command w)3.323 F
+used to generate the list of possible completions)108 189.6 R .823
+(for the w)108 201.6 R 3.323(ord. If)-.1 F .823(the command w)3.323 F
.822(ord is a full pathname, a compspec for the full pathname is search\
-ed for)-.1 F 2.866(\214rst. If)108 441.6 R .367(no compspec is found fo\
+ed for)-.1 F 2.866(\214rst. If)108 213.6 R .367(no compspec is found fo\
r the full pathname, an attempt is made to \214nd a compspec for the po\
-rtion)2.866 F(follo)108 453.6 Q .299(wing the \214nal slash.)-.25 F .298
+rtion)2.866 F(follo)108 225.6 Q .299(wing the \214nal slash.)-.25 F .298
(If those searches do not result in a compspec, an)5.299 F 2.798(yc)-.15
G .298(ompspec de\214ned with the)-2.798 F F1<ad44>2.798 E F0(option to)
-108 465.6 Q F1(complete)2.5 E F0(is used as the def)2.5 E(ault.)-.1 E
+108 237.6 Q F1(complete)2.5 E F0(is used as the def)2.5 E(ault.)-.1 E
.817(Once a compspec has been found, it is used to generate the list of\
- matching w)108 482.4 R 3.317(ords. If)-.1 F 3.317(ac)3.317 G .817
-(ompspec is not)-3.317 F(found, the def)108 494.4 Q(ault)-.1 E F1(bash)
+ matching w)108 254.4 R 3.317(ords. If)-.1 F 3.317(ac)3.317 G .817
+(ompspec is not)-3.317 F(found, the def)108 266.4 Q(ault)-.1 E F1(bash)
2.5 E F0(completion as described abo)2.5 E .3 -.15(ve u)-.15 H(nder).15
E F1(Completing)2.5 E F0(is performed.)2.5 E .464
-(First, the actions speci\214ed by the compspec are used.)108 511.2 R
+(First, the actions speci\214ed by the compspec are used.)108 283.2 R
.463(Only matches which are pre\214x)5.464 F .463(ed by the w)-.15 F
-.463(ord being)-.1 F .595(completed are returned.)108 523.2 R .595
+.463(ord being)-.1 F .595(completed are returned.)108 295.2 R .595
(When the)5.595 F F1<ad66>3.095 E F0(or)3.095 E F1<ad64>3.095 E F0 .596
(option is used for \214lename or directory name completion, the)3.095 F
-(shell v)108 535.2 Q(ariable)-.25 E F3(FIGNORE)2.5 E F0
-(is used to \214lter the matches.)2.25 E(An)108 552 Q 4.084(yc)-.15 G
+(shell v)108 307.2 Q(ariable)-.25 E F3(FIGNORE)2.5 E F0
+(is used to \214lter the matches.)2.25 E(An)108 324 Q 4.084(yc)-.15 G
1.584(ompletions speci\214ed by a pathname e)-4.084 F 1.584
(xpansion pattern to the)-.15 F F1<ad47>4.084 E F0 1.584
-(option are generated ne)4.084 F 4.084(xt. The)-.15 F -.1(wo)108 564 S
+(option are generated ne)4.084 F 4.084(xt. The)-.15 F -.1(wo)108 336 S
.554(rds generated by the pattern need not match the w).1 F .555
(ord being completed.)-.1 F(The)5.555 E F3(GLOBIGNORE)3.055 E F0 .555
(shell v)2.805 F(ari-)-.25 E
-(able is not used to \214lter the matches, b)108 576 Q(ut the)-.2 E F3
-(FIGNORE)2.5 E F0 -.25(va)2.25 G(riable is used.).25 E(Ne)108 592.8 Q
+(able is not used to \214lter the matches, b)108 348 Q(ut the)-.2 E F3
+(FIGNORE)2.5 E F0 -.25(va)2.25 G(riable is used.).25 E(Ne)108 364.8 Q
.321(xt, the string speci\214ed as the ar)-.15 F .321(gument to the)-.18
F F1<ad57>2.821 E F0 .32(option is considered.)2.821 F .32
(The string is \214rst split using the)5.32 F .412(characters in the)108
-604.8 R F3(IFS)2.912 E F0 .412(special v)2.662 F .412
+376.8 R F3(IFS)2.912 E F0 .412(special v)2.662 F .412
(ariable as delimiters.)-.25 F .412(Shell quoting is honored.)5.412 F
.413(Each w)5.412 F .413(ord is then e)-.1 F(xpanded)-.15 E .092
-(using brace e)108 616.8 R .092(xpansion, tilde e)-.15 F .092
+(using brace e)108 388.8 R .092(xpansion, tilde e)-.15 F .092
(xpansion, parameter and v)-.15 F .092(ariable e)-.25 F .091
(xpansion, command substitution, and arith-)-.15 F 1.396(metic e)108
-628.8 R 1.396(xpansion, as described abo)-.15 F 1.696 -.15(ve u)-.15 H
+400.8 R 1.396(xpansion, as described abo)-.15 F 1.696 -.15(ve u)-.15 H
(nder).15 E F3(EXP)3.896 E(ANSION)-.666 E/F4 9/Times-Roman@0 SF(.)A F0
1.396(The results are split using the rules described)5.896 F(abo)108
-640.8 Q .51 -.15(ve u)-.15 H(nder).15 E F1 -.75(Wo)2.71 G .21
+412.8 Q .51 -.15(ve u)-.15 H(nder).15 E F1 -.75(Wo)2.71 G .21
(rd Splitting).75 F F0 5.21(.T)C .209(he results of the e)-5.21 F .209
(xpansion are pre\214x-matched ag)-.15 F .209(ainst the w)-.05 F .209
-(ord being com-)-.1 F(pleted, and the matching w)108 652.8 Q
+(ord being com-)-.1 F(pleted, and the matching w)108 424.8 Q
(ords become the possible completions.)-.1 E 1.237
-(After these matches ha)108 669.6 R 1.537 -.15(ve b)-.2 H 1.237
+(After these matches ha)108 441.6 R 1.537 -.15(ve b)-.2 H 1.237
(een generated, an).15 F 3.737(ys)-.15 G 1.238
(hell function or command speci\214ed with the)-3.737 F F1<ad46>3.738 E
-F0(and)3.738 E F1<ad43>3.738 E F0 3.376(options is in)108 681.6 R -.2
+F0(and)3.738 E F1<ad43>3.738 E F0 3.376(options is in)108 453.6 R -.2
(vo)-.4 G -.1(ke).2 G 5.875(d. When).1 F 3.375
(the command or function is in)5.875 F -.2(vo)-.4 G -.1(ke).2 G 3.375
(d, the).1 F F3(COMP_LINE)5.875 E F4(,)A F3(COMP_POINT)5.625 E F4(,)A F3
-(COMP_KEY)108 693.6 Q F4(,)A F0(and)2.407 E F3(COMP_TYPE)2.657 E F0 -.25
+(COMP_KEY)108 465.6 Q F4(,)A F0(and)2.407 E F3(COMP_TYPE)2.657 E F0 -.25
(va)2.407 G .157(riables are assigned v).25 F .157
(alues as described abo)-.25 F .457 -.15(ve u)-.15 H(nder).15 E F1 .158
(Shell V)2.658 F(ariables)-.92 E F0 5.158(.I)C(f)-5.158 E 3.486(as)108
-705.6 S .986(hell function is being in)-3.486 F -.2(vo)-.4 G -.1(ke).2 G
+477.6 S .986(hell function is being in)-3.486 F -.2(vo)-.4 G -.1(ke).2 G
.986(d, the).1 F F3(COMP_W)3.486 E(ORDS)-.09 E F0(and)3.236 E F3
(COMP_CW)3.486 E(ORD)-.09 E F0 -.25(va)3.236 G .986
(riables are also set.).25 F(When)5.985 E .346
-(the function or command is in)108 717.6 R -.2(vo)-.4 G -.1(ke).2 G .346
+(the function or command is in)108 489.6 R -.2(vo)-.4 G -.1(ke).2 G .346
(d, the \214rst ar).1 F .346(gument \()-.18 F F1($1)A F0 2.847(\)i)C
2.847(st)-2.847 G .347(he name of the command whose ar)-2.847 F(guments)
--.18 E .264(are being completed, the second ar)108 729.6 R .264
+-.18 E .264(are being completed, the second ar)108 501.6 R .264
(gument \()-.18 F F1($2)A F0 2.764(\)i)C 2.764(st)-2.764 G .264(he w)
-2.764 F .263(ord being completed, and the third ar)-.1 F .263
-(gument \()-.18 F F1($3)A F0 2.763(\)i)C(s)-2.763 E(GNU Bash 4.2)72 768
-Q(2012 February 4)141.79 E(46)190.95 E 0 Cg EP
-%%Page: 47 47
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E .628(the w)108 84 R .628(ord preceding the w)-.1 F .629
+(gument \()-.18 F F1($3)A F0 2.763(\)i)C(s)-2.763 E .628(the w)108 513.6
+R .628(ord preceding the w)-.1 F .629
(ord being completed on the current command line.)-.1 F .629
-(No \214ltering of the generated)5.629 F .715(completions ag)108 96 R
+(No \214ltering of the generated)5.629 F .715(completions ag)108 525.6 R
.715(ainst the w)-.05 F .714(ord being completed is performed; the func\
tion or command has complete free-)-.1 F(dom in generating the matches.)
-108 108 Q(An)108 124.8 Q 2.937(yf)-.15 G .437(unction speci\214ed with)
--2.937 F/F1 10/Times-Bold@0 SF<ad46>2.937 E F0 .437(is in)2.937 F -.2
-(vo)-.4 G -.1(ke).2 G 2.937<648c>.1 G 2.937(rst. The)-2.937 F .437
+108 537.6 Q(An)108 554.4 Q 2.937(yf)-.15 G .437
+(unction speci\214ed with)-2.937 F F1<ad46>2.937 E F0 .437(is in)2.937 F
+-.2(vo)-.4 G -.1(ke).2 G 2.937<648c>.1 G 2.937(rst. The)-2.937 F .437
(function may use an)2.937 F 2.937(yo)-.15 G 2.937(ft)-2.937 G .437
-(he shell f)-2.937 F .438(acilities, including)-.1 F(the)108 136.8 Q F1
+(he shell f)-2.937 F .438(acilities, including)-.1 F(the)108 566.4 Q F1
(compgen)2.957 E F0 -.2(bu)2.957 G .457(iltin described belo).2 F 1.756
-.65(w, t)-.25 H 2.956(og).65 G .456(enerate the matches.)-2.956 F .456
-(It must put the possible completions in the)5.456 F/F2 9/Times-Bold@0
-SF(COMPREPL)108 148.8 Q(Y)-.828 E F0(array v)2.25 E
-(ariable, one per array element.)-.25 E(Ne)108 165.6 Q .08(xt, an)-.15 F
-2.58(yc)-.15 G .08(ommand speci\214ed with the)-2.58 F F1<ad43>2.58 E F0
-.081(option is in)2.581 F -.2(vo)-.4 G -.1(ke).2 G 2.581(di).1 G 2.581
-(na)-2.581 G 2.581(ne)-2.581 G -.4(nv)-2.581 G .081(ironment equi).4 F
--.25(va)-.25 G .081(lent to command sub-).25 F 2.859(stitution. It)108
-177.6 R .359(should print a list of completions, one per line, to the s\
-tandard output.)2.859 F .358(Backslash may be used)5.359 F
-(to escape a ne)108 189.6 Q(wline, if necessary)-.25 E(.)-.65 E .376
-(After all of the possible completions are generated, an)108 206.4 R
-2.877<798c>-.15 G .377(lter speci\214ed with the)-2.877 F F1<ad58>2.877
-E F0 .377(option is applied to the)2.877 F 3.182(list. The)108 218.4 R
-.682(\214lter is a pattern as used for pathname e)3.182 F .681
-(xpansion; a)-.15 F F1(&)3.181 E F0 .681
-(in the pattern is replaced with the te)3.181 F .681(xt of)-.15 F .522
-(the w)108 230.4 R .522(ord being completed.)-.1 F 3.022(Al)5.522 G
-(iteral)-3.022 E F1(&)3.022 E F0 .523
+(It must put the possible completions in the)5.456 F F3(COMPREPL)108
+578.4 Q(Y)-.828 E F0(array v)2.25 E(ariable, one per array element.)-.25
+E(Ne)108 595.2 Q .08(xt, an)-.15 F 2.58(yc)-.15 G .08
+(ommand speci\214ed with the)-2.58 F F1<ad43>2.58 E F0 .081
+(option is in)2.581 F -.2(vo)-.4 G -.1(ke).2 G 2.581(di).1 G 2.581(na)
+-2.581 G 2.581(ne)-2.581 G -.4(nv)-2.581 G .081(ironment equi).4 F -.25
+(va)-.25 G .081(lent to command sub-).25 F 2.859(stitution. It)108 607.2
+R .359(should print a list of completions, one per line, to the standar\
+d output.)2.859 F .358(Backslash may be used)5.359 F(to escape a ne)108
+619.2 Q(wline, if necessary)-.25 E(.)-.65 E .376
+(After all of the possible completions are generated, an)108 636 R 2.877
+<798c>-.15 G .377(lter speci\214ed with the)-2.877 F F1<ad58>2.877 E F0
+.377(option is applied to the)2.877 F 3.182(list. The)108 648 R .682
+(\214lter is a pattern as used for pathname e)3.182 F .681(xpansion; a)
+-.15 F F1(&)3.181 E F0 .681(in the pattern is replaced with the te)3.181
+F .681(xt of)-.15 F .522(the w)108 660 R .522(ord being completed.)-.1 F
+3.022(Al)5.522 G(iteral)-3.022 E F1(&)3.022 E F0 .523
(may be escaped with a backslash; the backslash is remo)3.022 F -.15(ve)
--.15 G 3.023(db).15 G(efore)-3.023 E .85(attempting a match.)108 242.4 R
+-.15 G 3.023(db).15 G(efore)-3.023 E .85(attempting a match.)108 672 R
(An)5.85 E 3.35(yc)-.15 G .849
(ompletion that matches the pattern will be remo)-3.35 F -.15(ve)-.15 G
3.349(df).15 G .849(rom the list.)-3.349 F 3.349(Al)5.849 G(eading)
--3.349 E F1(!)3.349 E F0(ne)108 254.4 Q -.05(ga)-.15 G
+-3.349 E F1(!)3.349 E F0(ne)108 684 Q -.05(ga)-.15 G
(tes the pattern; in this case an).05 E 2.5(yc)-.15 G
(ompletion not matching the pattern will be remo)-2.5 E -.15(ve)-.15 G
-(d.).15 E(Finally)108 271.2 Q 3.086(,a)-.65 G .886 -.15(ny p)-3.086 H
+(d.).15 E(Finally)108 700.8 Q 3.086(,a)-.65 G .886 -.15(ny p)-3.086 H
.586(re\214x and suf).15 F .587(\214x speci\214ed with the)-.25 F F1
<ad50>3.087 E F0(and)3.087 E F1<ad53>3.087 E F0 .587
(options are added to each member of the com-)3.087 F(pletion list, and\
the result is returned to the readline completion code as the list of \
-possible completions.)108 283.2 Q .247(If the pre)108 300 R .247
+possible completions.)108 712.8 Q .247(If the pre)108 729.6 R .247
(viously-applied actions do not generate an)-.25 F 2.747(ym)-.15 G .247
(atches, and the)-2.747 F F1 .247(\255o dir)2.747 F(names)-.15 E F0 .247
-(option w)2.747 F .246(as supplied to)-.1 F F1(complete)108 312 Q F0
-(when the compspec w)2.5 E
-(as de\214ned, directory name completion is attempted.)-.1 E .461
-(If the)108 328.8 R F1 .462(\255o plusdirs)2.961 F F0 .462(option w)
+(option w)2.747 F .246(as supplied to)-.1 F(GNU Bash 4.2)72 768 Q
+(2012 July 5)151.505 E(47)200.665 E 0 Cg EP
+%%Page: 48 48
+%%BeginPageSetup
+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(complete)108 84 Q F0(when the compspec w)
+2.5 E(as de\214ned, directory name completion is attempted.)-.1 E .461
+(If the)108 100.8 R F1 .462(\255o plusdirs)2.961 F F0 .462(option w)
2.962 F .462(as supplied to)-.1 F F1(complete)2.962 E F0 .462
(when the compspec w)2.962 F .462(as de\214ned, directory name com-)-.1
-F(pletion is attempted and an)108 340.8 Q 2.5(ym)-.15 G
+F(pletion is attempted and an)108 112.8 Q 2.5(ym)-.15 G
(atches are added to the results of the other actions.)-2.5 E .56
-(By def)108 357.6 R .56(ault, if a compspec is found, whate)-.1 F -.15
+(By def)108 129.6 R .56(ault, if a compspec is found, whate)-.1 F -.15
(ve)-.25 G 3.06(ri).15 G 3.06(tg)-3.06 G .559
(enerates is returned to the completion code as the full set)-3.06 F
-.631(of possible completions.)108 369.6 R .631(The def)5.631 F(ault)-.1
+.631(of possible completions.)108 141.6 R .631(The def)5.631 F(ault)-.1
E F1(bash)3.131 E F0 .631
(completions are not attempted, and the readline def)3.131 F .632
-(ault of \214le-)-.1 F .559(name completion is disabled.)108 381.6 R
+(ault of \214le-)-.1 F .559(name completion is disabled.)108 153.6 R
.559(If the)5.559 F F1 .559(\255o bashdefault)3.059 F F0 .559(option w)
3.059 F .559(as supplied to)-.1 F F1(complete)3.058 E F0 .558
-(when the compspec)3.058 F -.1(wa)108 393.6 S 3.171(sd).1 G .671
+(when the compspec)3.058 F -.1(wa)108 165.6 S 3.171(sd).1 G .671
(e\214ned, the)-3.171 F F1(bash)3.171 E F0(def)3.171 E .671
(ault completions are attempted if the compspec generates no matches.)
--.1 F .672(If the)5.672 F F1<ad6f>3.172 E(default)108 405.6 Q F0 1.207
+-.1 F .672(If the)5.672 F F1<ad6f>3.172 E(default)108 177.6 Q F0 1.207
(option w)3.707 F 1.207(as supplied to)-.1 F F1(complete)3.707 E F0
1.207(when the compspec w)3.707 F 1.207(as de\214ned, readline')-.1 F
3.707(sd)-.55 G(ef)-3.707 E 1.206(ault completion)-.1 F
(will be performed if the compspec \(and, if attempted, the def)108
-417.6 Q(ault)-.1 E F1(bash)2.5 E F0(completions\) generate no matches.)
+189.6 Q(ault)-.1 E F1(bash)2.5 E F0(completions\) generate no matches.)
2.5 E .245(When a compspec indicates that directory name completion is \
-desired, the programmable completion func-)108 434.4 R .633(tions force\
+desired, the programmable completion func-)108 206.4 R .633(tions force\
readline to append a slash to completed names which are symbolic links\
- to directories, subject)108 446.4 R 2.761(to the v)108 458.4 R 2.761
+ to directories, subject)108 218.4 R 2.761(to the v)108 230.4 R 2.761
(alue of the)-.25 F F1(mark\255dir)5.261 E(ectories)-.18 E F0 2.761
(readline v)5.261 F 2.761(ariable, re)-.25 F -.05(ga)-.15 G 2.762
-(rdless of the setting of the).05 F F1(mark-sym-)5.262 E(link)108 470.4
+(rdless of the setting of the).05 F F1(mark-sym-)5.262 E(link)108 242.4
Q(ed\255dir)-.1 E(ectories)-.18 E F0(readline v)2.5 E(ariable.)-.25 E
.191(There is some support for dynamically modifying completions.)108
-487.2 R .19(This is most useful when used in combina-)5.191 F 1.33
-(tion with a def)108 499.2 R 1.33(ault completion speci\214ed with)-.1 F
+259.2 R .19(This is most useful when used in combina-)5.191 F 1.33
+(tion with a def)108 271.2 R 1.33(ault completion speci\214ed with)-.1 F
F1 1.33(complete -D)3.83 F F0 6.33(.I)C(t')-6.33 E 3.83(sp)-.55 G 1.33
(ossible for shell functions e)-3.83 F -.15(xe)-.15 G 1.33(cuted as).15
F .93(completion handlers to indicate that completion should be retried\
- by returning an e)108 511.2 R .93(xit status of 124.)-.15 F .93(If a)
+ by returning an e)108 283.2 R .93(xit status of 124.)-.15 F .93(If a)
5.93 F .1(shell function returns 124, and changes the compspec associat\
-ed with the command on which completion is)108 523.2 R .666
-(being attempted \(supplied as the \214rst ar)108 535.2 R .665
+ed with the command on which completion is)108 295.2 R .666
+(being attempted \(supplied as the \214rst ar)108 307.2 R .665
(gument when the function is e)-.18 F -.15(xe)-.15 G .665
(cuted\), programmable completion).15 F .083(restarts from the be)108
-547.2 R .084(ginning, with an attempt to \214nd a ne)-.15 F 2.584(wc)
+319.2 R .084(ginning, with an attempt to \214nd a ne)-.15 F 2.584(wc)
-.25 G .084(ompspec for that command.)-2.584 F .084(This allo)5.084 F
-.084(ws a set of)-.25 F(completions to be b)108 559.2 Q(uilt dynamicall\
+.084(ws a set of)-.25 F(completions to be b)108 331.2 Q(uilt dynamicall\
y as completion is attempted, rather than being loaded all at once.)-.2
-E -.15(Fo)108 576 S 2.637(ri).15 G .137
+E -.15(Fo)108 348 S 2.637(ri).15 G .137
(nstance, assuming that there is a library of compspecs, each k)-2.637 F
.137(ept in a \214le corresponding to the name of)-.1 F
-(the command, the follo)108 588 Q(wing def)-.25 E
+(the command, the follo)108 360 Q(wing def)-.25 E
(ault completion function w)-.1 E(ould load completions dynamically:)-.1
-E/F3 10/Courier@0 SF(_completion_loader\(\))108 604.8 Q({)108 616.8 Q 6
-(.")144 628.8 S
+E/F2 10/Courier@0 SF(_completion_loader\(\))108 376.8 Q({)108 388.8 Q 6
+(.")144 400.8 S
(/etc/bash_completion.d/$1.sh" >/dev/null 2>&1 && return 124)-6 E(})108
-640.8 Q(complete -D -F _completion_loader)108 652.8 Q/F4 10.95
-/Times-Bold@0 SF(HIST)72 681.6 Q(OR)-.197 E(Y)-.383 E F0 .371(When the)
-108 693.6 R F1 .371(\255o history)2.871 F F0 .371(option to the)2.871 F
+412.8 Q(complete -D -F _completion_loader)108 424.8 Q/F3 10.95
+/Times-Bold@0 SF(HIST)72 453.6 Q(OR)-.197 E(Y)-.383 E F0 .371(When the)
+108 465.6 R F1 .371(\255o history)2.871 F F0 .371(option to the)2.871 F
F1(set)2.872 E F0 -.2(bu)2.872 G .372(iltin is enabled, the shell pro).2
-F .372(vides access to the)-.15 F/F5 10/Times-Italic@0 SF .372
-(command history)2.872 F F0(,)A .305(the list of commands pre)108 705.6
+F .372(vides access to the)-.15 F/F4 10/Times-Italic@0 SF .372
+(command history)2.872 F F0(,)A .305(the list of commands pre)108 477.6
R .305(viously typed.)-.25 F .305(The v)5.305 F .304(alue of the)-.25 F
-F2(HISTSIZE)2.804 E F0 -.25(va)2.554 G .304
-(riable is used as the number of com-).25 F .429(mands to sa)108 717.6 R
+/F5 9/Times-Bold@0 SF(HISTSIZE)2.804 E F0 -.25(va)2.554 G .304
+(riable is used as the number of com-).25 F .429(mands to sa)108 489.6 R
.729 -.15(ve i)-.2 H 2.929(nah).15 G .429(istory list.)-2.929 F .429
-(The te)5.429 F .429(xt of the last)-.15 F F2(HISTSIZE)2.93 E F0 .43
+(The te)5.429 F .429(xt of the last)-.15 F F5(HISTSIZE)2.93 E F0 .43
(commands \(def)2.68 F .43(ault 500\) is sa)-.1 F -.15(ve)-.2 G 2.93
(d. The).15 F(shell)2.93 E .287
(stores each command in the history list prior to parameter and v)108
-729.6 R .287(ariable e)-.25 F .287(xpansion \(see)-.15 F F2(EXP)2.787 E
-(ANSION)-.666 E F0(abo)2.537 E -.15(ve)-.15 G(\)).15 E(GNU Bash 4.2)72
-768 Q(2012 February 4)141.79 E(47)190.95 E 0 Cg EP
-%%Page: 48 48
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E -.2(bu)108 84 S 4.065(ta).2 G 1.565(fter history e)-4.065 F 1.565
+501.6 R .287(ariable e)-.25 F .287(xpansion \(see)-.15 F F5(EXP)2.787 E
+(ANSION)-.666 E F0(abo)2.537 E -.15(ve)-.15 G(\)).15 E -.2(bu)108 513.6
+S 4.065(ta).2 G 1.565(fter history e)-4.065 F 1.565
(xpansion is performed, subject to the v)-.15 F 1.565
-(alues of the shell v)-.25 F(ariables)-.25 E/F1 9/Times-Bold@0 SF
-(HISTIGNORE)4.065 E F0(and)3.816 E F1(HISTCONTR)108 96 Q(OL)-.27 E/F2 9
-/Times-Roman@0 SF(.)A F0 .082
+(alues of the shell v)-.25 F(ariables)-.25 E F5(HISTIGNORE)4.065 E F0
+(and)3.816 E F5(HISTCONTR)108 525.6 Q(OL)-.27 E/F6 9/Times-Roman@0 SF(.)
+A F0 .082
(On startup, the history is initialized from the \214le named by the v)
-108 112.8 R(ariable)-.25 E F1(HISTFILE)2.582 E F0(\(def)2.332 E(ault)-.1
-E/F3 10/Times-Italic@0 SF(~/.bash_history)2.582 E F0(\).)A .315
-(The \214le named by the v)108 124.8 R .315(alue of)-.25 F F1(HISTFILE)
-2.815 E F0 .315(is truncated, if necessary)2.565 F 2.815(,t)-.65 G 2.815
-(oc)-2.815 G .315(ontain no more than the number of)-2.815 F .659
-(lines speci\214ed by the v)108 136.8 R .659(alue of)-.25 F F1
-(HISTFILESIZE)3.158 E F2(.)A F0(If)5.158 E/F4 10/Times-Bold@0 SF
-(HISTFILESIZE)3.158 E F0 .658(is unset, or set to null, a non-numeric)
-3.158 F -.25(va)108 148.8 S .142(lue, or a numeric v).25 F .142
+108 542.4 R(ariable)-.25 E F5(HISTFILE)2.582 E F0(\(def)2.332 E(ault)-.1
+E F4(~/.bash_history)2.582 E F0(\).)A .315(The \214le named by the v)108
+554.4 R .315(alue of)-.25 F F5(HISTFILE)2.815 E F0 .315
+(is truncated, if necessary)2.565 F 2.815(,t)-.65 G 2.815(oc)-2.815 G
+.315(ontain no more than the number of)-2.815 F .659
+(lines speci\214ed by the v)108 566.4 R .659(alue of)-.25 F F5
+(HISTFILESIZE)3.158 E F6(.)A F0(If)5.158 E F1(HISTFILESIZE)3.158 E F0
+.658(is unset, or set to null, a non-numeric)3.158 F -.25(va)108 578.4 S
+.142(lue, or a numeric v).25 F .142
(alue less than zero, the history \214le is not truncated.)-.25 F .142
-(When the history \214le is read, lines)5.142 F(be)108 160.8 Q 1.605
+(When the history \214le is read, lines)5.142 F(be)108 590.4 Q 1.605
(ginning with the history comment character follo)-.15 F 1.604
(wed immediately by a digit are interpreted as time-)-.25 F .098
-(stamps for the preceding history line.)108 172.8 R .098
+(stamps for the preceding history line.)108 602.4 R .098
(These timestamps are optionally displayed depending on the v)5.098 F
-.098(alue of)-.25 F(the)108 184.8 Q F1(HISTTIMEFORMA)4.079 E(T)-.855 E
-F0 -.25(va)3.828 G 4.078(riable. When).25 F 1.578(an interacti)4.078 F
-1.878 -.15(ve s)-.25 H 1.578(hell e).15 F 1.578(xits, the last)-.15 F F1
-($HISTSIZE)4.078 E F0 1.578(lines are copied)3.828 F .353
-(from the history list to)108 196.8 R F1($HISTFILE)2.854 E F2(.)A F0
-.354(If the)4.854 F F4(histappend)2.854 E F0 .354
-(shell option is enabled \(see the description of)2.854 F F4(shopt)2.854
-E F0(under)108 208.8 Q F1 .638(SHELL B)3.138 F(UIL)-.09 E .638
-(TIN COMMANDS)-.828 F F0(belo)2.888 E .638
-(w\), the lines are appended to the history \214le, otherwise the his-)
--.25 F .187(tory \214le is o)108 220.8 R -.15(ve)-.15 G 2.687
-(rwritten. If).15 F F1(HISTFILE)2.687 E F0 .187(is unset, or if the his\
-tory \214le is unwritable, the history is not sa)2.437 F -.15(ve)-.2 G
-2.688(d. If).15 F(the)108 232.8 Q F1(HISTTIMEFORMA)2.895 E(T)-.855 E F0
--.25(va)2.645 G .394
+.098(alue of)-.25 F(the)108 614.4 Q F5(HISTTIMEFORMA)3.559 E(T)-.855 E
+F0 -.25(va)3.309 G 3.559(riable. When).25 F 3.559(as)3.559 G 1.059
+(hell with history enabled e)-3.559 F 1.059(xits, the last)-.15 F F5
+($HISTSIZE)3.559 E F0 1.058(lines are)3.309 F .158
+(copied from the history list to)108 626.4 R F5($HISTFILE)2.658 E F6(.)A
+F0 .158(If the)4.658 F F1(histappend)2.658 E F0 .159
+(shell option is enabled \(see the description of)2.659 F F1(shopt)108
+638.4 Q F0(under)2.582 E F5 .082(SHELL B)2.582 F(UIL)-.09 E .082
+(TIN COMMANDS)-.828 F F0(belo)2.332 E .082
+(w\), the lines are appended to the history \214le, otherwise the)-.25 F
+.196(history \214le is o)108 650.4 R -.15(ve)-.15 G 2.696(rwritten. If)
+.15 F F5(HISTFILE)2.696 E F0 .197(is unset, or if the history \214le is\
+ unwritable, the history is not sa)2.446 F -.15(ve)-.2 G(d.).15 E .584
+(If the)108 662.4 R F5(HISTTIMEFORMA)3.084 E(T)-.855 E F0 -.25(va)2.834
+G .584
(riable is set, time stamps are written to the history \214le, mark).25
-F .394(ed with the history)-.1 F .26(comment character)108 244.8 R 2.76
-(,s)-.4 G 2.76(ot)-2.76 G(he)-2.76 E 2.76(ym)-.15 G .26(ay be preserv)
--2.76 F .26(ed across shell sessions.)-.15 F .26
-(This uses the history comment charac-)5.26 F .44
-(ter to distinguish timestamps from other history lines.)108 256.8 R
-.439(After sa)5.439 F .439(ving the history)-.2 F 2.939(,t)-.65 G .439
-(he history \214le is truncated)-2.939 F 1.237(to contain no more than)
-108 268.8 R F1(HISTFILESIZE)3.738 E F0 3.738(lines. If)3.488 F F1
-(HISTFILESIZE)3.738 E F0 1.238(is unset, or set to null, a non-numeric)
-3.488 F -.25(va)108 280.8 S(lue, or a numeric v).25 E
+F .583(ed with the his-)-.1 F 1.147(tory comment character)108 674.4 R
+3.647(,s)-.4 G 3.647(ot)-3.647 G(he)-3.647 E 3.647(ym)-.15 G 1.147
+(ay be preserv)-3.647 F 1.147(ed across shell sessions.)-.15 F 1.148
+(This uses the history comment)6.148 F 1.377
+(character to distinguish timestamps from other history lines.)108 686.4
+R 1.377(After sa)6.377 F 1.377(ving the history)-.2 F 3.876(,t)-.65 G
+1.376(he history \214le is)-3.876 F .756
+(truncated to contain no more than)108 698.4 R F5(HISTFILESIZE)3.257 E
+F0 3.257(lines. If)3.007 F F5(HISTFILESIZE)3.257 E F0 .757
+(is unset, or set to null, a non-)3.007 F(numeric v)108 710.4 Q
+(alue, or a numeric v)-.25 E
(alue less than zero, the history \214le is not truncated.)-.25 E 1.294
-(The b)108 297.6 R 1.294(uiltin command)-.2 F F4(fc)3.794 E F0(\(see)
-3.794 E F1 1.293(SHELL B)3.794 F(UIL)-.09 E 1.293(TIN COMMANDS)-.828 F
+(The b)108 727.2 R 1.294(uiltin command)-.2 F F1(fc)3.794 E F0(\(see)
+3.794 E F5 1.293(SHELL B)3.794 F(UIL)-.09 E 1.293(TIN COMMANDS)-.828 F
F0(belo)3.543 E 1.293(w\) may be used to list or edit and re-)-.25 F
--.15(exe)108 309.6 S .673(cute a portion of the history list.).15 F(The)
-5.673 E F4(history)3.173 E F0 -.2(bu)3.173 G .673
-(iltin may be used to display or modify the history list).2 F .28
-(and manipulate the history \214le.)108 321.6 R .279
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(48)200.665 E 0 Cg EP
+%%Page: 49 49
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E -.15(exe)108 84 S .673(cute a portion of the history list.).15 F
+(The)5.673 E/F1 10/Times-Bold@0 SF(history)3.173 E F0 -.2(bu)3.173 G
+.673(iltin may be used to display or modify the history list).2 F .28
+(and manipulate the history \214le.)108 96 R .279
(When using command-line editing, search commands are a)5.279 F -.25(va)
--.2 G .279(ilable in each).25 F(editing mode that pro)108 333.6 Q
-(vide access to the history list.)-.15 E 1.485(The shell allo)108 350.4
+-.2 G .279(ilable in each).25 F(editing mode that pro)108 108 Q
+(vide access to the history list.)-.15 E 1.485(The shell allo)108 124.8
R 1.485(ws control o)-.25 F -.15(ve)-.15 G 3.986(rw).15 G 1.486
(hich commands are sa)-3.986 F -.15(ve)-.2 G 3.986(do).15 G 3.986(nt)
--3.986 G 1.486(he history list.)-3.986 F(The)6.486 E F1(HISTCONTR)3.986
-E(OL)-.27 E F0(and)3.736 E F1(HISTIGNORE)108 362.4 Q F0 -.25(va)2.708 G
-.458(riables may be set to cause the shell to sa).25 F .757 -.15(ve o)
--.2 H .457(nly a subset of the commands entered.).15 F(The)5.457 E F4
-(cmdhist)108 374.4 Q F0 .75
+-3.986 G 1.486(he history list.)-3.986 F(The)6.486 E/F2 9/Times-Bold@0
+SF(HISTCONTR)3.986 E(OL)-.27 E F0(and)3.736 E F2(HISTIGNORE)108 136.8 Q
+F0 -.25(va)2.708 G .458(riables may be set to cause the shell to sa).25
+F .757 -.15(ve o)-.2 H .457(nly a subset of the commands entered.).15 F
+(The)5.457 E F1(cmdhist)108 148.8 Q F0 .75
(shell option, if enabled, causes the shell to attempt to sa)3.25 F 1.05
-.15(ve e)-.2 H .75(ach line of a multi-line command in).15 F 1.077
-(the same history entry)108 386.4 R 3.577(,a)-.65 G 1.077
+(the same history entry)108 160.8 R 3.577(,a)-.65 G 1.077
(dding semicolons where necessary to preserv)-3.577 F 3.577(es)-.15 G
-1.077(yntactic correctness.)-3.577 F(The)6.077 E F4(lithist)3.576 E F0
-.373(shell option causes the shell to sa)108 398.4 R .674 -.15(ve t)-.2
+1.077(yntactic correctness.)-3.577 F(The)6.077 E F1(lithist)3.576 E F0
+.373(shell option causes the shell to sa)108 172.8 R .674 -.15(ve t)-.2
H .374(he command with embedded ne).15 F .374
(wlines instead of semicolons.)-.25 F .374(See the)5.374 F .319
-(description of the)108 410.4 R F4(shopt)2.819 E F0 -.2(bu)2.819 G .318
-(iltin belo).2 F 2.818(wu)-.25 G(nder)-2.818 E F1 .318(SHELL B)2.818 F
+(description of the)108 184.8 R F1(shopt)2.819 E F0 -.2(bu)2.819 G .318
+(iltin belo).2 F 2.818(wu)-.25 G(nder)-2.818 E F2 .318(SHELL B)2.818 F
(UIL)-.09 E .318(TIN COMMANDS)-.828 F F0 .318
(for information on setting and)2.568 F(unsetting shell options.)108
-422.4 Q/F5 10.95/Times-Bold@0 SF(HIST)72 439.2 Q(OR)-.197 E 2.738(YE)
+196.8 Q/F3 10.95/Times-Bold@0 SF(HIST)72 213.6 Q(OR)-.197 E 2.738(YE)
-.383 G(XP)-2.738 E(ANSION)-.81 E F0 .61(The shell supports a history e)
-108 451.2 R .611(xpansion feature that is similar to the history e)-.15
-F .611(xpansion in)-.15 F F4(csh.)3.111 E F0 .611(This section)5.611 F
-.871(describes what syntax features are a)108 463.2 R -.25(va)-.2 G
+108 225.6 R .611(xpansion feature that is similar to the history e)-.15
+F .611(xpansion in)-.15 F F1(csh.)3.111 E F0 .611(This section)5.611 F
+.871(describes what syntax features are a)108 237.6 R -.25(va)-.2 G
3.371(ilable. This).25 F .871(feature is enabled by def)3.371 F .87
(ault for interacti)-.1 F 1.17 -.15(ve s)-.25 H .87(hells, and).15 F
-2.013(can be disabled using the)108 475.2 R F4(+H)4.514 E F0 2.014
-(option to the)4.514 F F4(set)4.514 E F0 -.2(bu)4.514 G 2.014
-(iltin command \(see).2 F F1 2.014(SHELL B)4.514 F(UIL)-.09 E 2.014
-(TIN COMMANDS)-.828 F F0(belo)108 487.2 Q 2.5(w\). Non-interacti)-.25 F
+2.013(can be disabled using the)108 249.6 R F1(+H)4.514 E F0 2.014
+(option to the)4.514 F F1(set)4.514 E F0 -.2(bu)4.514 G 2.014
+(iltin command \(see).2 F F2 2.014(SHELL B)4.514 F(UIL)-.09 E 2.014
+(TIN COMMANDS)-.828 F F0(belo)108 261.6 Q 2.5(w\). Non-interacti)-.25 F
.3 -.15(ve s)-.25 H(hells do not perform history e).15 E
-(xpansion by def)-.15 E(ault.)-.1 E 1.306(History e)108 504 R 1.306
+(xpansion by def)-.15 E(ault.)-.1 E 1.306(History e)108 278.4 R 1.306
(xpansions introduce w)-.15 F 1.306(ords from the history list into the\
input stream, making it easy to repeat)-.1 F .209
-(commands, insert the ar)108 516 R .209(guments to a pre)-.18 F .21
+(commands, insert the ar)108 290.4 R .209(guments to a pre)-.18 F .21
(vious command into the current input line, or \214x errors in pre)-.25
-F(vious)-.25 E(commands quickly)108 528 Q(.)-.65 E 1.164(History e)108
-544.8 R 1.163(xpansion is performed immediately after a complete line i\
-s read, before the shell breaks it into)-.15 F -.1(wo)108 556.8 S 3.2
+F(vious)-.25 E(commands quickly)108 302.4 Q(.)-.65 E 1.164(History e)108
+319.2 R 1.163(xpansion is performed immediately after a complete line i\
+s read, before the shell breaks it into)-.15 F -.1(wo)108 331.2 S 3.2
(rds. It).1 F(tak)3.2 E .7(es place in tw)-.1 F 3.2(op)-.1 G 3.2
(arts. The)-3.2 F .7
(\214rst is to determine which line from the history list to use during)
-3.2 F 4.368(substitution. The)108 568.8 R 1.868(second is to select por\
+3.2 F 4.368(substitution. The)108 343.2 R 1.868(second is to select por\
tions of that line for inclusion into the current one.)4.368 F 1.867
-(The line)6.867 F .662(selected from the history is the)108 580.8 R F3
--.15(ev)3.162 G(ent).15 E F0 3.162(,a)C .663
-(nd the portions of that line that are acted upon are)-3.162 F F3(wor)
-3.163 E(ds)-.37 E F0 5.663(.V)C(arious)-6.773 E F3(modi\214er)108 592.8
+(The line)6.867 F .662(selected from the history is the)108 355.2 R/F4
+10/Times-Italic@0 SF -.15(ev)3.162 G(ent).15 E F0 3.162(,a)C .663
+(nd the portions of that line that are acted upon are)-3.162 F F4(wor)
+3.163 E(ds)-.37 E F0 5.663(.V)C(arious)-6.773 E F4(modi\214er)108 367.2
Q(s)-.1 E F0 .227(are a)2.727 F -.25(va)-.2 G .227
(ilable to manipulate the selected w).25 F 2.727(ords. The)-.1 F .226
(line is brok)2.726 F .226(en into w)-.1 F .226(ords in the same f)-.1 F
-(ashion)-.1 E .351(as when reading input, so that se)108 604.8 R -.15
-(ve)-.25 G(ral).15 E F3(metac)2.852 E(har)-.15 E(acter)-.15 E F0 .352
+(ashion)-.1 E .351(as when reading input, so that se)108 379.2 R -.15
+(ve)-.25 G(ral).15 E F4(metac)2.852 E(har)-.15 E(acter)-.15 E F0 .352
(-separated w)B .352(ords surrounded by quotes are considered)-.1 F .625
-(one w)108 616.8 R 3.125(ord. History)-.1 F -.15(ex)3.125 G .624
+(one w)108 391.2 R 3.125(ord. History)-.1 F -.15(ex)3.125 G .624
(pansions are introduced by the appearance of the history e).15 F .624
-(xpansion character)-.15 F 3.124(,w)-.4 G(hich)-3.124 E(is)108 628.8 Q
-F4(!)3.333 E F0(by def)3.333 E 2.5(ault. Only)-.1 F(backslash \()2.5 E
-F4(\\).833 E F0 2.5(\)a).833 G(nd single quotes can quote the history e)
--2.5 E(xpansion character)-.15 E(.)-.55 E(Se)108 645.6 Q -.15(ve)-.25 G
+(xpansion character)-.15 F 3.124(,w)-.4 G(hich)-3.124 E(is)108 403.2 Q
+F1(!)3.333 E F0(by def)3.333 E 2.5(ault. Only)-.1 F(backslash \()2.5 E
+F1(\\).833 E F0 2.5(\)a).833 G(nd single quotes can quote the history e)
+-2.5 E(xpansion character)-.15 E(.)-.55 E(Se)108 420 Q -.15(ve)-.25 G
.03(ral characters inhibit history e).15 F .03
(xpansion if found immediately follo)-.15 F .03(wing the history e)-.25
-F .03(xpansion character)-.15 F(,)-.4 E -2.15 -.25(ev e)108 657.6 T
-3.163(ni).25 G 3.163(fi)-3.163 G 3.162(ti)-3.163 G 3.162(su)-3.162 G
-.662(nquoted: space, tab, ne)-3.162 F .662(wline, carriage return, and)
--.25 F F4(=)3.162 E F0 5.662(.I)C 3.162(ft)-5.662 G(he)-3.162 E F4
-(extglob)3.162 E F0 .662(shell option is enabled,)3.162 F F4(\()3.162 E
-F0(will also inhibit e)108 669.6 Q(xpansion.)-.15 E(Se)108 686.4 Q -.15
-(ve)-.25 G .109(ral shell options settable with the).15 F F4(shopt)2.609
-E F0 -.2(bu)2.609 G .11(iltin may be used to tailor the beha).2 F .11
-(vior of history e)-.2 F(xpansion.)-.15 E 1.143(If the)108 698.4 R F4
+F .03(xpansion character)-.15 F(,)-.4 E -2.15 -.25(ev e)108 432 T 3.163
+(ni).25 G 3.163(fi)-3.163 G 3.162(ti)-3.163 G 3.162(su)-3.162 G .662
+(nquoted: space, tab, ne)-3.162 F .662(wline, carriage return, and)-.25
+F F1(=)3.162 E F0 5.662(.I)C 3.162(ft)-5.662 G(he)-3.162 E F1(extglob)
+3.162 E F0 .662(shell option is enabled,)3.162 F F1(\()3.162 E F0
+(will also inhibit e)108 444 Q(xpansion.)-.15 E(Se)108 460.8 Q -.15(ve)
+-.25 G .109(ral shell options settable with the).15 F F1(shopt)2.609 E
+F0 -.2(bu)2.609 G .11(iltin may be used to tailor the beha).2 F .11
+(vior of history e)-.2 F(xpansion.)-.15 E 1.143(If the)108 472.8 R F1
(histv)3.643 E(erify)-.1 E F0 1.143
-(shell option is enabled \(see the description of the)3.643 F F4(shopt)
-3.643 E F0 -.2(bu)3.643 G 1.143(iltin belo).2 F 1.143(w\), and)-.25 F F4
+(shell option is enabled \(see the description of the)3.643 F F1(shopt)
+3.643 E F0 -.2(bu)3.643 G 1.143(iltin belo).2 F 1.143(w\), and)-.25 F F1
-.18(re)3.643 G(adline).18 E F0(is)3.642 E .461(being used, history sub\
-stitutions are not immediately passed to the shell parser)108 710.4 R
+stitutions are not immediately passed to the shell parser)108 484.8 R
5.461(.I)-.55 G .461(nstead, the e)-5.461 F .461(xpanded line)-.15 F
-1.516(is reloaded into the)108 722.4 R F4 -.18(re)4.016 G(adline).18 E
+1.516(is reloaded into the)108 496.8 R F1 -.18(re)4.016 G(adline).18 E
F0 1.516(editing b)4.016 F(uf)-.2 E 1.516
-(fer for further modi\214cation.)-.25 F(If)6.516 E F4 -.18(re)4.015 G
-(adline).18 E F0 1.515(is being used, and the)4.015 F(GNU Bash 4.2)72
-768 Q(2012 February 4)141.79 E(48)190.95 E 0 Cg EP
-%%Page: 49 49
-%%BeginPageSetup
-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(histr)108 84 Q(eedit)-.18 E F0 1.202
-(shell option is enabled, a f)3.702 F 1.202
+(fer for further modi\214cation.)-.25 F(If)6.516 E F1 -.18(re)4.015 G
+(adline).18 E F0 1.515(is being used, and the)4.015 F F1(histr)108 508.8
+Q(eedit)-.18 E F0 1.202(shell option is enabled, a f)3.702 F 1.202
(ailed history substitution will be reloaded into the)-.1 F F1 -.18(re)
-3.702 G(adline).18 E F0(editing)3.702 E -.2(bu)108 96 S -.25(ff).2 G
+3.702 G(adline).18 E F0(editing)3.702 E -.2(bu)108 520.8 S -.25(ff).2 G
1.161(er for correction.).25 F(The)6.161 E F1<ad70>3.661 E F0 1.161
(option to the)3.661 F F1(history)3.661 E F0 -.2(bu)3.661 G 1.16
-(iltin command may be used to see what a history).2 F -.15(ex)108 108 S
-.055(pansion will do before using it.).15 F(The)5.055 E F1<ad73>2.555 E
-F0 .055(option to the)2.555 F F1(history)2.556 E F0 -.2(bu)2.556 G .056
-(iltin may be used to add commands to the).2 F
-(end of the history list without actually e)108 120 Q -.15(xe)-.15 G
+(iltin command may be used to see what a history).2 F -.15(ex)108 532.8
+S .055(pansion will do before using it.).15 F(The)5.055 E F1<ad73>2.555
+E F0 .055(option to the)2.555 F F1(history)2.556 E F0 -.2(bu)2.556 G
+.056(iltin may be used to add commands to the).2 F
+(end of the history list without actually e)108 544.8 Q -.15(xe)-.15 G
(cuting them, so that the).15 E 2.5(ya)-.15 G(re a)-2.5 E -.25(va)-.2 G
-(ilable for subsequent recall.).25 E 2.2(The shell allo)108 136.8 R 2.2
+(ilable for subsequent recall.).25 E 2.2(The shell allo)108 561.6 R 2.2
(ws control of the v)-.25 F 2.2(arious characters used by the history e)
-.25 F 2.2(xpansion mechanism \(see the)-.15 F 1.146(description of)108
-148.8 R F1(histchars)3.646 E F0(abo)3.646 E 1.446 -.15(ve u)-.15 H(nder)
+573.6 R F1(histchars)3.646 E F0(abo)3.646 E 1.446 -.15(ve u)-.15 H(nder)
.15 E F1 1.146(Shell V)3.646 F(ariables)-.92 E F0 3.646(\). The)B 1.147
(shell uses the history comment character to)3.646 F
-(mark history timestamps when writing the history \214le.)108 160.8 Q F1
-(Ev)87 177.6 Q(ent Designators)-.1 E F0 .205(An e)108 189.6 R -.15(ve)
+(mark history timestamps when writing the history \214le.)108 585.6 Q F1
+(Ev)87 602.4 Q(ent Designators)-.1 E F0 .205(An e)108 614.4 R -.15(ve)
-.25 G .204(nt designator is a reference to a command line entry in the\
history list.).15 F .204(Unless the reference is abso-)5.204 F(lute, e)
-108 201.6 Q -.15(ve)-.25 G(nts are relati).15 E .3 -.15(ve t)-.25 H 2.5
-(ot).15 G(he current position in the history list.)-2.5 E F1(!)108 218.4
+108 626.4 Q -.15(ve)-.25 G(nts are relati).15 E .3 -.15(ve t)-.25 H 2.5
+(ot).15 G(he current position in the history list.)-2.5 E F1(!)108 643.2
Q F0 1.607(Start a history substitution, e)32.67 F 1.607
(xcept when follo)-.15 F 1.607(wed by a)-.25 F F1(blank)4.107 E F0 4.107
(,n)C -.25(ew)-4.107 G 1.608(line, carriage return, = or \().25 F
-(\(when the)144 230.4 Q F1(extglob)2.5 E F0
+(\(when the)144 655.2 Q F1(extglob)2.5 E F0
(shell option is enabled using the)2.5 E F1(shopt)2.5 E F0 -.2(bu)2.5 G
-(iltin\).).2 E F1(!)108 242.4 Q/F2 10/Times-Italic@0 SF(n)A F0
-(Refer to command line)27.67 E F2(n)2.5 E F0(.).24 E F1<21ad>108 254.4 Q
-F2(n)A F0(Refer to the current command minus)21.97 E F2(n)2.5 E F0(.).24
-E F1(!!)108 266.4 Q F0(Refer to the pre)29.34 E(vious command.)-.25 E
-(This is a synon)5 E(ym for `!\2551'.)-.15 E F1(!)108 278.4 Q F2(string)
+(iltin\).).2 E F1(!)108 667.2 Q F4(n)A F0(Refer to command line)27.67 E
+F4(n)2.5 E F0(.).24 E F1<21ad>108 679.2 Q F4(n)A F0
+(Refer to the current command minus)21.97 E F4(n)2.5 E F0(.).24 E F1(!!)
+108 691.2 Q F0(Refer to the pre)29.34 E(vious command.)-.25 E
+(This is a synon)5 E(ym for `!\2551'.)-.15 E F1(!)108 703.2 Q F4(string)
A F0 .865(Refer to the most recent command preceding the current positi\
-on in the history list starting with)9.33 F F2(string)144 290.4 Q F0(.)
-.22 E F1(!?)108 302.4 Q F2(string)A F1([?])A F0 1.503(Refer to the most\
- recent command preceding the current position in the history list cont\
-aining)144 314.4 R F2(string)144 326.4 Q F0 5(.T).22 G(he trailing)-5 E
-F1(?)2.5 E F0(may be omitted if)2.5 E F2(string)2.84 E F0(is follo)2.72
-E(wed immediately by a ne)-.25 E(wline.)-.25 E/F3 12/Times-Bold@0 SF(^)
-108 343.4 Q F2(string1)-5 I F3(^)5 I F2(string2)-5 I F3(^)5 I F0 .784
-(Quick substitution.)144 350.4 R .784(Repeat the pre)5.784 F .784
-(vious command, replacing)-.25 F F2(string1)3.624 E F0(with)3.283 E F2
-(string2)3.283 E F0 5.783(.E).02 G(qui)-5.783 E -.25(va)-.25 G .783
-(lent to).25 F -.74(``)144 362.4 S(!!:s/).74 E F2(string1)A F0(/)A F2
-(string2)A F0(/')A 2.5('\()-.74 G(see)-2.5 E F1(Modi\214ers)2.5 E F0
-(belo)2.5 E(w\).)-.25 E F1(!#)108 374.4 Q F0
+on in the history list starting with)9.33 F F4(string)144 715.2 Q F0(.)
+.22 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(49)200.665 E 0 Cg EP
+%%Page: 50 50
+%%BeginPageSetup
+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(!?)108 84 Q/F2 10/Times-Italic@0 SF(string)
+A F1([?])A F0 1.503(Refer to the most recent command preceding the curr\
+ent position in the history list containing)144 96 R F2(string)144 108 Q
+F0 5(.T).22 G(he trailing)-5 E F1(?)2.5 E F0(may be omitted if)2.5 E F2
+(string)2.84 E F0(is follo)2.72 E(wed immediately by a ne)-.25 E(wline.)
+-.25 E/F3 12/Times-Bold@0 SF(^)108 125 Q F2(string1)-5 I F3(^)5 I F2
+(string2)-5 I F3(^)5 I F0 .784(Quick substitution.)144 132 R .784
+(Repeat the pre)5.784 F .784(vious command, replacing)-.25 F F2(string1)
+3.624 E F0(with)3.283 E F2(string2)3.283 E F0 5.783(.E).02 G(qui)-5.783
+E -.25(va)-.25 G .783(lent to).25 F -.74(``)144 144 S(!!:s/).74 E F2
+(string1)A F0(/)A F2(string2)A F0(/')A 2.5('\()-.74 G(see)-2.5 E F1
+(Modi\214ers)2.5 E F0(belo)2.5 E(w\).)-.25 E F1(!#)108 156 Q F0
(The entire command line typed so f)27.67 E(ar)-.1 E(.)-.55 E F1 -.75
-(Wo)87 391.2 S(rd Designators).75 E F0 -.8(Wo)108 403.2 S 1.313
+(Wo)87 172.8 S(rd Designators).75 E F0 -.8(Wo)108 184.8 S 1.313
(rd designators are used to select desired w).8 F 1.314(ords from the e)
-.1 F -.15(ve)-.25 G 3.814(nt. A).15 F F1(:)3.814 E F0 1.314
(separates the e)3.814 F -.15(ve)-.25 G 1.314(nt speci\214cation).15 F
-.53(from the w)108 415.2 R .529(ord designator)-.1 F 5.529(.I)-.55 G
+.53(from the w)108 196.8 R .529(ord designator)-.1 F 5.529(.I)-.55 G
3.029(tm)-5.529 G .529(ay be omitted if the w)-3.029 F .529
(ord designator be)-.1 F .529(gins with a)-.15 F F1(^)3.029 E F0(,)A F1
($)3.029 E F0(,)A F1(*)3.029 E F0(,)A F1<ad>3.029 E F0 3.029(,o)C(r)
-3.029 E F1(%)3.029 E F0 5.529(.W)C(ords)-6.329 E 1.3
-(are numbered from the be)108 427.2 R 1.3
+(are numbered from the be)108 208.8 R 1.3
(ginning of the line, with the \214rst w)-.15 F 1.301
(ord being denoted by 0 \(zero\).)-.1 F -.8(Wo)6.301 G 1.301(rds are).8
-F(inserted into the current line separated by single spaces.)108 439.2 Q
-F1 2.5(0\()108 456 S(zer)-2.5 E(o\))-.18 E F0(The zeroth w)144 468 Q 2.5
-(ord. F)-.1 F(or the shell, this is the command w)-.15 E(ord.)-.1 E F2
-(n)108.36 480 Q F0(The)30.64 E F2(n)2.5 E F0(th w)A(ord.)-.1 E F1(^)108
-492 Q F0(The \214rst ar)32.67 E 2.5(gument. That)-.18 F(is, w)2.5 E
-(ord 1.)-.1 E F1($)108 504 Q F0(The last ar)31 E(gument.)-.18 E F1(%)108
-516 Q F0(The w)26 E(ord matched by the most recent `?)-.1 E F2(string)A
-F0(?' search.)A F2(x)108.77 528 Q F1<ad>A F2(y)A F0 2.5(Ar)20.65 G
-(ange of w)-2.5 E(ords; `\255)-.1 E F2(y)A F0 2.5('a)C(bbre)-2.5 E
-(viates `0\255)-.25 E F2(y)A F0('.)A F1(*)108 540 Q F0 .316
+F(inserted into the current line separated by single spaces.)108 220.8 Q
+F1 2.5(0\()108 237.6 S(zer)-2.5 E(o\))-.18 E F0(The zeroth w)144 249.6 Q
+2.5(ord. F)-.1 F(or the shell, this is the command w)-.15 E(ord.)-.1 E
+F2(n)108.36 261.6 Q F0(The)30.64 E F2(n)2.5 E F0(th w)A(ord.)-.1 E F1(^)
+108 273.6 Q F0(The \214rst ar)32.67 E 2.5(gument. That)-.18 F(is, w)2.5
+E(ord 1.)-.1 E F1($)108 285.6 Q F0(The last ar)31 E(gument.)-.18 E F1(%)
+108 297.6 Q F0(The w)26 E(ord matched by the most recent `?)-.1 E F2
+(string)A F0(?' search.)A F2(x)108.77 309.6 Q F1<ad>A F2(y)A F0 2.5(Ar)
+20.65 G(ange of w)-2.5 E(ords; `\255)-.1 E F2(y)A F0 2.5('a)C(bbre)-2.5
+E(viates `0\255)-.25 E F2(y)A F0('.)A F1(*)108 321.6 Q F0 .316
(All of the w)31 F .316(ords b)-.1 F .316(ut the zeroth.)-.2 F .315
(This is a synon)5.315 F .315(ym for `)-.15 F F2(1\255$)A F0 2.815
('. It)B .315(is not an error to use)2.815 F F1(*)2.815 E F0 .315
-(if there is)2.815 F(just one w)144 552 Q(ord in the e)-.1 E -.15(ve)
+(if there is)2.815 F(just one w)144 333.6 Q(ord in the e)-.1 E -.15(ve)
-.25 G(nt; the empty string is returned in that case.).15 E F1(x*)108
-564 Q F0(Abbre)26 E(viates)-.25 E F2(x\255$)2.5 E F0(.)A F1<78ad>108 576
-Q F0(Abbre)25.3 E(viates)-.25 E F2(x\255$)2.5 E F0(lik)2.5 E(e)-.1 E F1
-(x*)2.5 E F0 2.5(,b)C(ut omits the last w)-2.7 E(ord.)-.1 E(If a w)108
-592.8 Q(ord designator is supplied without an e)-.1 E -.15(ve)-.25 G
+345.6 Q F0(Abbre)26 E(viates)-.25 E F2(x\255$)2.5 E F0(.)A F1<78ad>108
+357.6 Q F0(Abbre)25.3 E(viates)-.25 E F2(x\255$)2.5 E F0(lik)2.5 E(e)-.1
+E F1(x*)2.5 E F0 2.5(,b)C(ut omits the last w)-2.7 E(ord.)-.1 E(If a w)
+108 374.4 Q(ord designator is supplied without an e)-.1 E -.15(ve)-.25 G
(nt speci\214cation, the pre).15 E(vious command is used as the e)-.25 E
--.15(ve)-.25 G(nt.).15 E F1(Modi\214ers)87 609.6 Q F0 .183
-(After the optional w)108 621.6 R .183(ord designator)-.1 F 2.683(,t)-.4
+-.15(ve)-.25 G(nt.).15 E F1(Modi\214ers)87 391.2 Q F0 .183
+(After the optional w)108 403.2 R .183(ord designator)-.1 F 2.683(,t)-.4
G .184(here may appear a sequence of one or more of the follo)-2.683 F
-.184(wing modi\214ers,)-.25 F(each preceded by a `:'.)108 633.6 Q F1(h)
-108 650.4 Q F0(Remo)30.44 E .3 -.15(ve a t)-.15 H
+.184(wing modi\214ers,)-.25 F(each preceded by a `:'.)108 415.2 Q F1(h)
+108 432 Q F0(Remo)30.44 E .3 -.15(ve a t)-.15 H
(railing \214lename component, lea).15 E(ving only the head.)-.2 E F1(t)
-108 662.4 Q F0(Remo)32.67 E .3 -.15(ve a)-.15 H
+108 444 Q F0(Remo)32.67 E .3 -.15(ve a)-.15 H
(ll leading \214lename components, lea).15 E(ving the tail.)-.2 E F1(r)
-108 674.4 Q F0(Remo)31.56 E .3 -.15(ve a t)-.15 H(railing suf).15 E
+108 456 Q F0(Remo)31.56 E .3 -.15(ve a t)-.15 H(railing suf).15 E
(\214x of the form)-.25 E F2(.xxx)2.5 E F0 2.5(,l)C(ea)-2.5 E
-(ving the basename.)-.2 E F1(e)108 686.4 Q F0(Remo)31.56 E .3 -.15(ve a)
--.15 H(ll b).15 E(ut the trailing suf)-.2 E(\214x.)-.25 E F1(p)108 698.4
-Q F0(Print the ne)30.44 E 2.5(wc)-.25 G(ommand b)-2.5 E(ut do not e)-.2
-E -.15(xe)-.15 G(cute it.).15 E F1(q)108 710.4 Q F0
-(Quote the substituted w)30.44 E(ords, escaping further substitutions.)
--.1 E(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(49)190.95 E 0 Cg EP
-%%Page: 50 50
-%%BeginPageSetup
-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(x)108 84 Q F0(Quote the substituted w)31 E
-(ords as with)-.1 E F1(q)2.5 E F0 2.5(,b)C(ut break into w)-2.7 E
-(ords at)-.1 E F1(blanks)2.5 E F0(and ne)2.5 E(wlines.)-.25 E F1(s/)108
-96 Q/F2 10/Times-Italic@0 SF(old)A F1(/)A F2(ne)A(w)-.15 E F1(/)A F0
-(Substitute)144 108 Q F2(ne)3.082 E(w)-.15 E F0 .221
+(ving the basename.)-.2 E F1(e)108 468 Q F0(Remo)31.56 E .3 -.15(ve a)
+-.15 H(ll b).15 E(ut the trailing suf)-.2 E(\214x.)-.25 E F1(p)108 480 Q
+F0(Print the ne)30.44 E 2.5(wc)-.25 G(ommand b)-2.5 E(ut do not e)-.2 E
+-.15(xe)-.15 G(cute it.).15 E F1(q)108 492 Q F0(Quote the substituted w)
+30.44 E(ords, escaping further substitutions.)-.1 E F1(x)108 504 Q F0
+(Quote the substituted w)31 E(ords as with)-.1 E F1(q)2.5 E F0 2.5(,b)C
+(ut break into w)-2.7 E(ords at)-.1 E F1(blanks)2.5 E F0(and ne)2.5 E
+(wlines.)-.25 E F1(s/)108 516 Q F2(old)A F1(/)A F2(ne)A(w)-.15 E F1(/)A
+F0(Substitute)144 528 Q F2(ne)3.082 E(w)-.15 E F0 .221
(for the \214rst occurrence of)3.032 F F2(old)2.951 E F0 .221(in the e)
3.491 F -.15(ve)-.25 G .221(nt line.).15 F(An)5.221 E 2.721(yd)-.15 G
-.221(elimiter can be used in place)-2.721 F .616(of /.)144 120 R .617
+.221(elimiter can be used in place)-2.721 F .616(of /.)144 540 R .617
(The \214nal delimiter is optional if it is the last character of the e)
5.616 F -.15(ve)-.25 G .617(nt line.).15 F .617(The delimiter may)5.617
-F .666(be quoted in)144 132 R F2(old)3.396 E F0(and)3.936 E F2(ne)3.526
+F .666(be quoted in)144 552 R F2(old)3.396 E F0(and)3.936 E F2(ne)3.526
E(w)-.15 E F0 .666(with a single backslash.)3.476 F .666
(If & appears in)5.666 F F2(ne)3.166 E(w)-.15 E F0 3.166(,i).31 G 3.166
(ti)-3.166 G 3.166(sr)-3.166 G .666(eplaced by)-3.166 F F2(old)3.166 E
-F0 5.666(.A).77 G .274(single backslash will quote the &.)144 144 R(If)
+F0 5.666(.A).77 G .274(single backslash will quote the &.)144 564 R(If)
5.274 E F2(old)3.004 E F0 .274(is null, it is set to the last)3.544 F F2
(old)3.005 E F0 .275(substituted, or)3.545 F 2.775(,i)-.4 G 2.775(fn)
-2.775 G 2.775(op)-2.775 G(re)-2.775 E(vi-)-.25 E
-(ous history substitutions took place, the last)144 156 Q F2(string)2.84
+(ous history substitutions took place, the last)144 576 Q F2(string)2.84
E F0(in a)2.72 E F1(!?)2.5 E F2(string)A F1([?])A F0(search.)5 E F1(&)
-108 168 Q F0(Repeat the pre)27.67 E(vious substitution.)-.25 E F1(g)108
-180 Q F0 .398(Cause changes to be applied o)31 F -.15(ve)-.15 G 2.898
+108 588 Q F0(Repeat the pre)27.67 E(vious substitution.)-.25 E F1(g)108
+600 Q F0 .398(Cause changes to be applied o)31 F -.15(ve)-.15 G 2.898
(rt).15 G .398(he entire e)-2.898 F -.15(ve)-.25 G .398(nt line.).15 F
.397(This is used in conjunction with `)5.398 F F1(:s)A F0 2.897('\()C
-(e.g.,)-2.897 E(`)144 192 Q F1(:gs/)A F2(old)A F1(/)A F2(ne)A(w)-.15 E
+(e.g.,)-2.897 E(`)144 612 Q F1(:gs/)A F2(old)A F1(/)A F2(ne)A(w)-.15 E
F1(/)A F0 1.218('\) or `)B F1(:&)A F0 3.718('. If)B 1.218(used with `)
3.718 F F1(:s)A F0 1.218(', an)B 3.718(yd)-.15 G 1.219
(elimiter can be used in place of /, and the \214nal)-3.718 F .09
-(delimiter is optional if it is the last character of the e)144 204 R
+(delimiter is optional if it is the last character of the e)144 624 R
-.15(ve)-.25 G .089(nt line.).15 F(An)5.089 E F1(a)2.589 E F0 .089
-(may be used as a synon)2.589 F .089(ym for)-.15 F F1(g)144 216 Q F0(.)A
-F1(G)108 228 Q F0(Apply the follo)28.22 E(wing `)-.25 E F1(s)A F0 2.5
+(may be used as a synon)2.589 F .089(ym for)-.15 F F1(g)144 636 Q F0(.)A
+F1(G)108 648 Q F0(Apply the follo)28.22 E(wing `)-.25 E F1(s)A F0 2.5
('m)C(odi\214er once to each w)-2.5 E(ord in the e)-.1 E -.15(ve)-.25 G
-(nt line.).15 E/F3 10.95/Times-Bold@0 SF(SHELL B)72 244.8 Q(UIL)-.11 E
-(TIN COMMANDS)-1.007 E F0 .062(Unless otherwise noted, each b)108 256.8
+(nt line.).15 E/F4 10.95/Times-Bold@0 SF(SHELL B)72 664.8 Q(UIL)-.11 E
+(TIN COMMANDS)-1.007 E F0 .062(Unless otherwise noted, each b)108 676.8
R .062(uiltin command documented in this section as accepting options p\
-receded by)-.2 F F1<ad>108 268.8 Q F0(accepts)2.534 E F1<adad>2.534 E F0
+receded by)-.2 F F1<ad>108 688.8 Q F0(accepts)2.534 E F1<adad>2.534 E F0
.034(to signify the end of the options.)2.534 F(The)5.034 E F1(:)2.534 E
F0(,)A F1(true)2.534 E F0(,)A F1(false)2.534 E F0 2.534(,a)C(nd)-2.534 E
F1(test)2.534 E F0 -.2(bu)2.534 G .033(iltins do not accept options and)
-.2 F .077(do not treat)108 280.8 R F1<adad>2.577 E F0(specially)2.577 E
+.2 F .077(do not treat)108 700.8 R F1<adad>2.577 E F0(specially)2.577 E
5.077(.T)-.65 G(he)-5.077 E F1(exit)2.577 E F0(,)A F1(logout)2.577 E F0
(,)A F1(br)2.577 E(eak)-.18 E F0(,)A F1(continue)2.577 E F0(,)A F1(let)
2.577 E F0 2.577(,a)C(nd)-2.577 E F1(shift)2.577 E F0 -.2(bu)2.577 G
-.077(iltins accept and process ar).2 F(gu-)-.18 E .32(ments be)108 292.8
+.077(iltins accept and process ar).2 F(gu-)-.18 E .32(ments be)108 712.8
R .32(ginning with)-.15 F F1<ad>2.82 E F0 .32(without requiring)2.82 F
F1<adad>2.82 E F0 5.319(.O)C .319(ther b)-5.319 F .319
(uiltins that accept ar)-.2 F .319(guments b)-.18 F .319
(ut are not speci\214ed as)-.2 F 1.143(accepting options interpret ar)
-108 304.8 R 1.143(guments be)-.18 F 1.143(ginning with)-.15 F F1<ad>
+108 724.8 R 1.143(guments be)-.18 F 1.143(ginning with)-.15 F F1<ad>
3.643 E F0 1.143(as in)3.643 F -.25(va)-.4 G 1.143
(lid options and require).25 F F1<adad>3.644 E F0 1.144(to pre)3.644 F
--.15(ve)-.25 G 1.144(nt this).15 F(interpretation.)108 316.8 Q F1(:)108
-334.8 Q F0([)2.5 E F2(ar)A(guments)-.37 E F0(])A .452(No ef)144 346.8 R
-.452(fect; the command does nothing be)-.25 F .452(yond e)-.15 F
+-.15(ve)-.25 G 1.144(nt this).15 F(GNU Bash 4.2)72 768 Q(2012 July 5)
+151.505 E(50)200.665 E 0 Cg EP
+%%Page: 51 51
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E(interpretation.)108 84 Q/F1 10/Times-Bold@0 SF(:)108 102 Q F0([)
+2.5 E/F2 10/Times-Italic@0 SF(ar)A(guments)-.37 E F0(])A .452(No ef)144
+114 R .452(fect; the command does nothing be)-.25 F .452(yond e)-.15 F
(xpanding)-.15 E F2(ar)3.282 E(guments)-.37 E F0 .451(and performing an)
-3.221 F 2.951(ys)-.15 G(peci\214ed)-2.951 E 2.5(redirections. A)144
-358.8 R(zero e)2.5 E(xit code is returned.)-.15 E F1(.)110.5 375.6 Q F2
+3.221 F 2.951(ys)-.15 G(peci\214ed)-2.951 E 2.5(redirections. A)144 126
+R(zero e)2.5 E(xit code is returned.)-.15 E F1(.)110.5 142.8 Q F2
(\214lename)6.666 E F0([)2.5 E F2(ar)A(guments)-.37 E F0(])A F1(sour)108
-387.6 Q(ce)-.18 E F2(\214lename)2.5 E F0([)2.5 E F2(ar)A(guments)-.37 E
-F0(])A 1.02(Read and e)144 399.6 R -.15(xe)-.15 G 1.02
+154.8 Q(ce)-.18 E F2(\214lename)2.5 E F0([)2.5 E F2(ar)A(guments)-.37 E
+F0(])A 1.02(Read and e)144 166.8 R -.15(xe)-.15 G 1.02
(cute commands from).15 F F2(\214lename)5.43 E F0 1.02
(in the current shell en)3.7 F 1.02(vironment and return the e)-.4 F
-(xit)-.15 E 1.458(status of the last command e)144 411.6 R -.15(xe)-.15
+(xit)-.15 E 1.458(status of the last command e)144 178.8 R -.15(xe)-.15
G 1.458(cuted from).15 F F2(\214lename)3.958 E F0 6.458(.I).18 G(f)
-6.458 E F2(\214lename)5.868 E F0 1.458
-(does not contain a slash, \214le-)4.138 F .608(names in)144 423.6 R/F4
+(does not contain a slash, \214le-)4.138 F .608(names in)144 190.8 R/F3
9/Times-Bold@0 SF -.666(PA)3.108 G(TH)-.189 E F0 .608
(are used to \214nd the directory containing)2.858 F F2(\214lename)3.108
-E F0 5.608(.T).18 G .608(he \214le searched for in)-5.608 F F4 -.666(PA)
-3.108 G(TH)-.189 E F0 .833(need not be e)144 435.6 R -.15(xe)-.15 G
+E F0 5.608(.T).18 G .608(he \214le searched for in)-5.608 F F3 -.666(PA)
+3.108 G(TH)-.189 E F0 .833(need not be e)144 202.8 R -.15(xe)-.15 G
3.333(cutable. When).15 F F1(bash)3.333 E F0 .832(is not in)3.333 F F2
.832(posix mode)3.332 F F0 3.332(,t)C .832
(he current directory is searched if no)-3.332 F .981
-(\214le is found in)144 447.6 R F4 -.666(PA)3.481 G(TH)-.189 E/F5 9
+(\214le is found in)144 214.8 R F3 -.666(PA)3.481 G(TH)-.189 E/F4 9
/Times-Roman@0 SF(.)A F0 .981(If the)5.481 F F1(sour)3.481 E(cepath)-.18
E F0 .981(option to the)3.481 F F1(shopt)3.481 E F0 -.2(bu)3.481 G .981
-(iltin command is turned of).2 F .982(f, the)-.25 F F4 -.666(PA)144
-459.6 S(TH)-.189 E F0 .112(is not searched.)2.363 F .112(If an)5.112 F
+(iltin command is turned of).2 F .982(f, the)-.25 F F3 -.666(PA)144
+226.8 S(TH)-.189 E F0 .112(is not searched.)2.363 F .112(If an)5.112 F
(y)-.15 E F2(ar)2.612 E(guments)-.37 E F0 .112(are supplied, the)2.612 F
2.612(yb)-.15 G .112(ecome the positional parameters when)-2.612 F F2
-(\214lename)144 471.6 Q F0 .341(is e)2.841 F -.15(xe)-.15 G 2.841
+(\214lename)144 238.8 Q F0 .341(is e)2.841 F -.15(xe)-.15 G 2.841
(cuted. Otherwise).15 F .341(the positional parameters are unchanged.)
2.841 F .342(The return status is the)5.342 F .716
-(status of the last command e)144 483.6 R .716
+(status of the last command e)144 250.8 R .716
(xited within the script \(0 if no commands are e)-.15 F -.15(xe)-.15 G
-.716(cuted\), and f).15 F .715(alse if)-.1 F F2(\214lename)145.91 495.6
-Q F0(is not found or cannot be read.)2.68 E F1(alias)108 512.4 Q F0([)
+.716(cuted\), and f).15 F .715(alse if)-.1 F F2(\214lename)145.91 262.8
+Q F0(is not found or cannot be read.)2.68 E F1(alias)108 279.6 Q F0([)
2.5 E F1<ad70>A F0 2.5(][)C F2(name)-2.5 E F0([=)A F2(value)A F0 2.5(].)
-C(..])-2.5 E F1(Alias)144 524.4 Q F0 2.724(with no ar)5.224 F 2.724
+C(..])-2.5 E F1(Alias)144 291.6 Q F0 2.724(with no ar)5.224 F 2.724
(guments or with the)-.18 F F1<ad70>5.224 E F0 2.724
(option prints the list of aliases in the form)5.224 F F1(alias)5.225 E
-F2(name)144 536.4 Q F0(=)A F2(value)A F0 .58(on standard output.)3.08 F
+F2(name)144 303.6 Q F0(=)A F2(value)A F0 .58(on standard output.)3.08 F
.58(When ar)5.58 F .58
(guments are supplied, an alias is de\214ned for each)-.18 F F2(name)
-3.08 E F0(whose)144 548.4 Q F2(value)2.895 E F0 .395(is gi)2.895 F -.15
+3.08 E F0(whose)144 315.6 Q F2(value)2.895 E F0 .395(is gi)2.895 F -.15
(ve)-.25 G 2.895(n. A).15 F .395(trailing space in)2.895 F F2(value)
5.395 E F0 .395(causes the ne)2.895 F .395(xt w)-.15 F .395
(ord to be check)-.1 F .395(ed for alias sub-)-.1 F .054
-(stitution when the alias is e)144 560.4 R 2.554(xpanded. F)-.15 F .054
+(stitution when the alias is e)144 327.6 R 2.554(xpanded. F)-.15 F .054
(or each)-.15 F F2(name)2.554 E F0 .054(in the ar)2.554 F .054
(gument list for which no)-.18 F F2(value)2.554 E F0 .053(is sup-)2.553
-F 1.313(plied, the name and v)144 572.4 R 1.314
+F 1.313(plied, the name and v)144 339.6 R 1.314
(alue of the alias is printed.)-.25 F F1(Alias)6.314 E F0 1.314
(returns true unless a)3.814 F F2(name)3.814 E F0 1.314(is gi)3.814 F
-.15(ve)-.25 G 3.814(nf).15 G(or)-3.814 E
-(which no alias has been de\214ned.)144 584.4 Q F1(bg)108 601.2 Q F0([)
+(which no alias has been de\214ned.)144 351.6 Q F1(bg)108 368.4 Q F0([)
2.5 E F2(jobspec)A F0(...])2.5 E .745(Resume each suspended job)144
-613.2 R F2(jobspec)3.245 E F0 .745
+380.4 R F2(jobspec)3.245 E F0 .745
(in the background, as if it had been started with)3.245 F F1(&)3.244 E
-F0 5.744(.I)C(f)-5.744 E F2(job-)4.984 E(spec)144 625.2 Q F0 .671
+F0 5.744(.I)C(f)-5.744 E F2(job-)4.984 E(spec)144 392.4 Q F0 .671
(is not present, the shell')3.481 F 3.171(sn)-.55 G .672(otion of the)
-3.171 F F2(curr)3.172 E .672(ent job)-.37 F F0 .672(is used.)3.172 F F1
(bg)5.672 E F2(jobspec)4.912 E F0 .672(returns 0 unless run)3.482 F .419
-(when job control is disabled or)144 637.2 R 2.919(,w)-.4 G .419
+(when job control is disabled or)144 404.4 R 2.919(,w)-.4 G .419
(hen run with job control enabled, an)-2.919 F 2.918(ys)-.15 G
(peci\214ed)-2.918 E F2(jobspec)2.918 E F0 -.1(wa)2.918 G 2.918(sn).1 G
-(ot)-2.918 E(found or w)144 649.2 Q(as started without job control.)-.1
-E F1(bind)108 666 Q F0([)2.5 E F1<ad6d>A F2 -.1(ke)2.5 G(ymap)-.2 E F0
-2.5(][)C F1(\255lpsvPSVX)-2.5 E F0(])A F1(bind)108 678 Q F0([)2.5 E F1
+(ot)-2.918 E(found or w)144 416.4 Q(as started without job control.)-.1
+E F1(bind)108 433.2 Q F0([)2.5 E F1<ad6d>A F2 -.1(ke)2.5 G(ymap)-.2 E F0
+2.5(][)C F1(\255lpsvPSVX)-2.5 E F0(])A F1(bind)108 445.2 Q F0([)2.5 E F1
<ad6d>A F2 -.1(ke)2.5 G(ymap)-.2 E F0 2.5(][)C F1<ad71>-2.5 E F2
(function)2.5 E F0 2.5(][)C F1<ad75>-2.5 E F2(function)2.5 E F0 2.5(][)C
-F1<ad72>-2.5 E F2 -.1(ke)2.5 G(yseq)-.2 E F0(])A F1(bind)108 690 Q F0([)
-2.5 E F1<ad6d>A F2 -.1(ke)2.5 G(ymap)-.2 E F0(])A F1<ad66>2.5 E F2
-(\214lename)2.5 E F1(bind)108 702 Q F0([)2.5 E F1<ad6d>A F2 -.1(ke)2.5 G
-(ymap)-.2 E F0(])A F1<ad78>2.5 E F2 -.1(ke)2.5 G(yseq)-.2 E F0(:)A F2
-(shell\255command)A F0(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E
-(50)190.95 E 0 Cg EP
-%%Page: 51 51
-%%BeginPageSetup
-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(bind)108 84 Q F0([)2.5 E F1<ad6d>A/F2 10
-/Times-Italic@0 SF -.1(ke)2.5 G(ymap)-.2 E F0(])A F2 -.1(ke)2.5 G(yseq)
--.2 E F0(:)A F2(function\255name)A F1(bind)108 96 Q F2 -.37(re)2.5 G
-(adline\255command).37 E F0 .238(Display current)144 108 R F1 -.18(re)
+F1<ad72>-2.5 E F2 -.1(ke)2.5 G(yseq)-.2 E F0(])A F1(bind)108 457.2 Q F0
+([)2.5 E F1<ad6d>A F2 -.1(ke)2.5 G(ymap)-.2 E F0(])A F1<ad66>2.5 E F2
+(\214lename)2.5 E F1(bind)108 469.2 Q F0([)2.5 E F1<ad6d>A F2 -.1(ke)2.5
+G(ymap)-.2 E F0(])A F1<ad78>2.5 E F2 -.1(ke)2.5 G(yseq)-.2 E F0(:)A F2
+(shell\255command)A F1(bind)108 481.2 Q F0([)2.5 E F1<ad6d>A F2 -.1(ke)
+2.5 G(ymap)-.2 E F0(])A F2 -.1(ke)2.5 G(yseq)-.2 E F0(:)A F2
+(function\255name)A F1(bind)108 493.2 Q F2 -.37(re)2.5 G
+(adline\255command).37 E F0 .238(Display current)144 505.2 R F1 -.18(re)
2.738 G(adline).18 E F0 -.1(ke)2.738 G 2.738(ya)-.05 G .239
(nd function bindings, bind a k)-2.738 F .539 -.15(ey s)-.1 H .239
(equence to a).15 F F1 -.18(re)2.739 G(adline).18 E F0 .239(function or)
-2.739 F .476(macro, or set a)144 120 R F1 -.18(re)2.976 G(adline).18 E
+2.739 F .476(macro, or set a)144 517.2 R F1 -.18(re)2.976 G(adline).18 E
F0 -.25(va)2.976 G 2.976(riable. Each).25 F .476(non-option ar)2.976 F
.475(gument is a command as it w)-.18 F .475(ould appear in)-.1 F F2
-(.inputr)144 132 Q(c)-.37 E F0 2.983(,b).31 G .484
+(.inputr)144 529.2 Q(c)-.37 E F0 2.983(,b).31 G .484
(ut each binding or command must be passed as a separate ar)-3.183 F
.484(gument; e.g., '"\\C\255x\\C\255r":)-.18 F 2.5
-(re\255read\255init\255\214le'. Options,)144 144 R(if supplied, ha)2.5 E
-.3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1<ad6d>144 156
-Q F2 -.1(ke)2.5 G(ymap)-.2 E F0(Use)180 168 Q F2 -.1(ke)5.159 G(ymap)-.2
-E F0 2.659(as the k)5.349 F -.15(ey)-.1 G 2.658(map to be af).15 F 2.658
-(fected by the subsequent bindings.)-.25 F(Acceptable)7.658 E F2 -.1(ke)
-180 180 S(ymap)-.2 E F0 3.192(names are)5.882 F F2 3.192
+(re\255read\255init\255\214le'. Options,)144 541.2 R(if supplied, ha)2.5
+E .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1<ad6d>144
+553.2 Q F2 -.1(ke)2.5 G(ymap)-.2 E F0(Use)180 565.2 Q F2 -.1(ke)5.159 G
+(ymap)-.2 E F0 2.659(as the k)5.349 F -.15(ey)-.1 G 2.658(map to be af)
+.15 F 2.658(fected by the subsequent bindings.)-.25 F(Acceptable)7.658 E
+F2 -.1(ke)180 577.2 S(ymap)-.2 E F0 3.192(names are)5.882 F F2 3.192
(emacs, emacs\255standar)5.692 F 3.193
(d, emacs\255meta, emacs\255ctlx, vi, vi\255mo)-.37 F(ve)-.1 E(,)-.1 E
-(vi\255command)180 192 Q F0 4.43(,a)C(nd)-4.43 E F2(vi\255insert)4.429 E
-F0(.).68 E F2(vi)6.929 E F0 1.929(is equi)4.429 F -.25(va)-.25 G 1.929
+(vi\255command)180 589.2 Q F0 4.43(,a)C(nd)-4.43 E F2(vi\255insert)4.429
+E F0(.).68 E F2(vi)6.929 E F0 1.929(is equi)4.429 F -.25(va)-.25 G 1.929
(lent to).25 F F2(vi\255command)4.429 E F0(;)A F2(emacs)4.429 E F0 1.929
(is equi)4.429 F -.25(va)-.25 G 1.929(lent to).25 F F2(emacs\255standar)
-180 204 Q(d)-.37 E F0(.)A F1<ad6c>144 216 Q F0(List the names of all)
-27.52 E F1 -.18(re)2.5 G(adline).18 E F0(functions.)2.5 E F1<ad70>144
-228 Q F0(Display)24.74 E F1 -.18(re)2.5 G(adline).18 E F0
-(function names and bindings in such a w)2.5 E(ay that the)-.1 E 2.5(yc)
--.15 G(an be re-read.)-2.5 E F1<ad50>144 240 Q F0(List current)24.19 E
-F1 -.18(re)2.5 G(adline).18 E F0(function names and bindings.)2.5 E F1
-<ad73>144 252 Q F0(Display)26.41 E F1 -.18(re)3.655 G(adline).18 E F0
--.1(ke)3.655 G 3.655(ys)-.05 G 1.155
-(equences bound to macros and the strings the)-3.655 F 3.655(yo)-.15 G
-1.155(utput in such a)-3.655 F -.1(wa)180 264 S 2.5(yt).1 G(hat the)-2.5
-E 2.5(yc)-.15 G(an be re-read.)-2.5 E F1<ad53>144 276 Q F0(Display)24.74
-E F1 -.18(re)2.5 G(adline).18 E F0 -.1(ke)2.5 G 2.5(ys)-.05 G
-(equences bound to macros and the strings the)-2.5 E 2.5(yo)-.15 G
-(utput.)-2.5 E F1<ad76>144 288 Q F0(Display)25.3 E F1 -.18(re)2.5 G
+180 601.2 Q(d)-.37 E F0(.)A F1<ad6c>144 613.2 Q F0
+(List the names of all)27.52 E F1 -.18(re)2.5 G(adline).18 E F0
+(functions.)2.5 E F1<ad70>144 625.2 Q F0(Display)24.74 E F1 -.18(re)2.5
+G(adline).18 E F0(function names and bindings in such a w)2.5 E
+(ay that the)-.1 E 2.5(yc)-.15 G(an be re-read.)-2.5 E F1<ad50>144 637.2
+Q F0(List current)24.19 E F1 -.18(re)2.5 G(adline).18 E F0
+(function names and bindings.)2.5 E F1<ad73>144 649.2 Q F0(Display)26.41
+E F1 -.18(re)3.655 G(adline).18 E F0 -.1(ke)3.655 G 3.655(ys)-.05 G
+1.155(equences bound to macros and the strings the)-3.655 F 3.655(yo)
+-.15 G 1.155(utput in such a)-3.655 F -.1(wa)180 661.2 S 2.5(yt).1 G
+(hat the)-2.5 E 2.5(yc)-.15 G(an be re-read.)-2.5 E F1<ad53>144 673.2 Q
+F0(Display)24.74 E F1 -.18(re)2.5 G(adline).18 E F0 -.1(ke)2.5 G 2.5(ys)
+-.05 G(equences bound to macros and the strings the)-2.5 E 2.5(yo)-.15 G
+(utput.)-2.5 E F1<ad76>144 685.2 Q F0(Display)25.3 E F1 -.18(re)2.5 G
(adline).18 E F0 -.25(va)2.5 G(riable names and v).25 E
(alues in such a w)-.25 E(ay that the)-.1 E 2.5(yc)-.15 G
-(an be re-read.)-2.5 E F1<ad56>144 300 Q F0(List current)23.08 E F1 -.18
-(re)2.5 G(adline).18 E F0 -.25(va)2.5 G(riable names and v).25 E(alues.)
--.25 E F1<ad66>144 312 Q F2(\214lename)2.5 E F0(Read k)180 324 Q .3 -.15
-(ey b)-.1 H(indings from).15 E F2(\214lename)2.5 E F0(.)A F1<ad71>144
-336 Q F2(function)2.5 E F0(Query about which k)180 348 Q -.15(ey)-.1 G
-2.5(si).15 G -1.9 -.4(nv o)-2.5 H .2 -.1(ke t).4 H(he named).1 E F2
-(function)2.5 E F0(.)A F1<ad75>144 360 Q F2(function)2.5 E F0
-(Unbind all k)180 372 Q -.15(ey)-.1 G 2.5(sb).15 G(ound to the named)
--2.5 E F2(function)2.5 E F0(.)A F1<ad72>144 384 Q F2 -.1(ke)2.5 G(yseq)
--.2 E F0(Remo)180 396 Q .3 -.15(ve a)-.15 H .3 -.15(ny c).15 H
-(urrent binding for).15 E F2 -.1(ke)2.5 G(yseq)-.2 E F0(.)A F1<ad78>144
-408 Q F2 -.1(ke)2.5 G(yseq)-.2 E F1(:)A F2(shell\255command)A F0(Cause)
-180 420 Q F2(shell\255command)4.325 E F0 1.825(to be e)4.325 F -.15(xe)
--.15 G 1.825(cuted whene).15 F -.15(ve)-.25 G(r).15 E F2 -.1(ke)4.325 G
-(yseq)-.2 E F0 1.825(is entered.)4.325 F(When)6.825 E F2(shell\255com-)
-4.325 E(mand)180 432 Q F0 1.764(is e)4.264 F -.15(xe)-.15 G 1.765
-(cuted, the shell sets the).15 F/F3 9/Times-Bold@0 SF(READLINE_LINE)
-4.265 E F0 -.25(va)4.015 G 1.765(riable to the contents of the).25 F F1
--.18(re)180 444 S(adline).18 E F0 1.353(line b)3.853 F(uf)-.2 E 1.353
-(fer and the)-.25 F F3(READLINE_POINT)3.853 E F0 -.25(va)3.603 G 1.353
+(an be re-read.)-2.5 E F1<ad56>144 697.2 Q F0(List current)23.08 E F1
+-.18(re)2.5 G(adline).18 E F0 -.25(va)2.5 G(riable names and v).25 E
+(alues.)-.25 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(51)200.665 E
+0 Cg EP
+%%Page: 52 52
+%%BeginPageSetup
+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<ad66>144 84 Q/F2 10/Times-Italic@0 SF
+(\214lename)2.5 E F0(Read k)180 96 Q .3 -.15(ey b)-.1 H(indings from).15
+E F2(\214lename)2.5 E F0(.)A F1<ad71>144 108 Q F2(function)2.5 E F0
+(Query about which k)180 120 Q -.15(ey)-.1 G 2.5(si).15 G -1.9 -.4(nv o)
+-2.5 H .2 -.1(ke t).4 H(he named).1 E F2(function)2.5 E F0(.)A F1<ad75>
+144 132 Q F2(function)2.5 E F0(Unbind all k)180 144 Q -.15(ey)-.1 G 2.5
+(sb).15 G(ound to the named)-2.5 E F2(function)2.5 E F0(.)A F1<ad72>144
+156 Q F2 -.1(ke)2.5 G(yseq)-.2 E F0(Remo)180 168 Q .3 -.15(ve a)-.15 H
+.3 -.15(ny c).15 H(urrent binding for).15 E F2 -.1(ke)2.5 G(yseq)-.2 E
+F0(.)A F1<ad78>144 180 Q F2 -.1(ke)2.5 G(yseq)-.2 E F1(:)A F2
+(shell\255command)A F0(Cause)180 192 Q F2(shell\255command)4.325 E F0
+1.825(to be e)4.325 F -.15(xe)-.15 G 1.825(cuted whene).15 F -.15(ve)
+-.25 G(r).15 E F2 -.1(ke)4.325 G(yseq)-.2 E F0 1.825(is entered.)4.325 F
+(When)6.825 E F2(shell\255com-)4.325 E(mand)180 204 Q F0 1.764(is e)
+4.264 F -.15(xe)-.15 G 1.765(cuted, the shell sets the).15 F/F3 9
+/Times-Bold@0 SF(READLINE_LINE)4.265 E F0 -.25(va)4.015 G 1.765
+(riable to the contents of the).25 F F1 -.18(re)180 216 S(adline).18 E
+F0 1.353(line b)3.853 F(uf)-.2 E 1.353(fer and the)-.25 F F3
+(READLINE_POINT)3.853 E F0 -.25(va)3.603 G 1.353
(riable to the current location of the).25 F 2.011(insertion point.)180
-456 R 2.011(If the e)7.011 F -.15(xe)-.15 G 2.011
+228 R 2.011(If the e)7.011 F -.15(xe)-.15 G 2.011
(cuted command changes the v).15 F 2.011(alue of)-.25 F F3
-(READLINE_LINE)4.512 E F0(or)4.262 E F3(READLINE_POINT)180 468 Q/F4 9
+(READLINE_LINE)4.512 E F0(or)4.262 E F3(READLINE_POINT)180 240 Q/F4 9
/Times-Roman@0 SF(,)A F0(those ne)2.25 E 2.5(wv)-.25 G
-(alues will be re\215ected in the editing state.)-2.75 E F1<ad58>144 480
+(alues will be re\215ected in the editing state.)-2.75 E F1<ad58>144 252
Q F0 .83(List all k)23.08 F 1.13 -.15(ey s)-.1 H .829
(equences bound to shell commands and the associated commands in a for)
-.15 F(-)-.2 E(mat that can be reused as input.)180 492 Q(The return v)
-144 508.8 Q(alue is 0 unless an unrecognized option is gi)-.25 E -.15
+.15 F(-)-.2 E(mat that can be reused as input.)180 264 Q(The return v)
+144 280.8 Q(alue is 0 unless an unrecognized option is gi)-.25 E -.15
(ve)-.25 G 2.5(no).15 G 2.5(ra)-2.5 G 2.5(ne)-2.5 G(rror occurred.)-2.5
-E F1(br)108 525.6 Q(eak)-.18 E F0([)2.5 E F2(n)A F0(])A .054
-(Exit from within a)144 537.6 R F1 -.25(fo)2.554 G(r).25 E F0(,)A F1
+E F1(br)108 297.6 Q(eak)-.18 E F0([)2.5 E F2(n)A F0(])A .054
+(Exit from within a)144 309.6 R F1 -.25(fo)2.554 G(r).25 E F0(,)A F1
(while)2.554 E F0(,)A F1(until)2.555 E F0 2.555(,o)C(r)-2.555 E F1
(select)2.555 E F0 2.555(loop. If)2.555 F F2(n)2.555 E F0 .055
(is speci\214ed, break)2.555 F F2(n)2.555 E F0(le)2.555 E -.15(ve)-.25 G
(ls.).15 E F2(n)5.415 E F0 .055(must be)2.795 F/F5 10/Symbol SF<b3>2.555
-E F0(1.)2.555 E(If)144 549.6 Q F2(n)3.075 E F0 .215(is greater than the\
+E F0(1.)2.555 E(If)144 321.6 Q F2(n)3.075 E F0 .215(is greater than the\
number of enclosing loops, all enclosing loops are e)2.955 F 2.714
(xited. The)-.15 F .214(return v)2.714 F(alue)-.25 E(is 0 unless)144
-561.6 Q F2(n)2.5 E F0(is not greater than or equal to 1.)2.5 E F1 -.2
-(bu)108 578.4 S(iltin).2 E F2(shell\255b)2.5 E(uiltin)-.2 E F0([)2.5 E
-F2(ar)A(guments)-.37 E F0(])A(Ex)144 590.4 Q .792
+333.6 Q F2(n)2.5 E F0(is not greater than or equal to 1.)2.5 E F1 -.2
+(bu)108 350.4 S(iltin).2 E F2(shell\255b)2.5 E(uiltin)-.2 E F0([)2.5 E
+F2(ar)A(guments)-.37 E F0(])A(Ex)144 362.4 Q .792
(ecute the speci\214ed shell b)-.15 F .792(uiltin, passing it)-.2 F F2
(ar)3.293 E(guments)-.37 E F0 3.293(,a).27 G .793(nd return its e)-3.293
F .793(xit status.)-.15 F .793(This is useful)5.793 F .616
(when de\214ning a function whose name is the same as a shell b)144
-602.4 R .615(uiltin, retaining the functionality of)-.2 F .57(the b)144
-614.4 R .57(uiltin within the function.)-.2 F(The)5.57 E F1(cd)3.07 E F0
+374.4 R .615(uiltin, retaining the functionality of)-.2 F .57(the b)144
+386.4 R .57(uiltin within the function.)-.2 F(The)5.57 E F1(cd)3.07 E F0
-.2(bu)3.07 G .57(iltin is commonly rede\214ned this w).2 F(ay)-.1 E
-5.57(.T)-.65 G .57(he return status)-5.57 F(is f)144 626.4 Q(alse if)-.1
+5.57(.T)-.65 G .57(he return status)-5.57 F(is f)144 398.4 Q(alse if)-.1
E F2(shell\255b)2.84 E(uiltin)-.2 E F0(is not a shell b)2.74 E
-(uiltin command.)-.2 E F1(caller)108 643.2 Q F0([)2.5 E F2 -.2(ex)C(pr)
-.2 E F0(])A .254(Returns the conte)144 655.2 R .254(xt of an)-.15 F
+(uiltin command.)-.2 E F1(caller)108 415.2 Q F0([)2.5 E F2 -.2(ex)C(pr)
+.2 E F0(])A .254(Returns the conte)144 427.2 R .254(xt of an)-.15 F
2.754(ya)-.15 G(cti)-2.754 E .554 -.15(ve s)-.25 H .254
(ubroutine call \(a shell function or a script e).15 F -.15(xe)-.15 G
-.254(cuted with the).15 F F1(.)2.753 E F0(or)2.753 E F1(sour)144 667.2 Q
+.254(cuted with the).15 F F1(.)2.753 E F0(or)2.753 E F1(sour)144 439.2 Q
(ce)-.18 E F0 -.2(bu)2.824 G 2.824(iltins\). W).2 F(ithout)-.4 E F2 -.2
(ex)2.824 G(pr).2 E F0(,)A F1(caller)2.824 E F0 .324
(displays the line number and source \214lename of the current)2.824 F
-.254(subroutine call.)144 679.2 R .254(If a non-ne)5.254 F -.05(ga)-.15
+.254(subroutine call.)144 451.2 R .254(If a non-ne)5.254 F -.05(ga)-.15
G(ti).05 E .554 -.15(ve i)-.25 H(nte).15 E .253(ger is supplied as)-.15
F F2 -.2(ex)2.753 G(pr).2 E F0(,)A F1(caller)2.753 E F0 .253
(displays the line number)2.753 F 2.753(,s)-.4 G(ub-)-2.753 E 1.327(rou\
tine name, and source \214le corresponding to that position in the curr\
-ent e)144 691.2 R -.15(xe)-.15 G 1.328(cution call stack.).15 F .001
-(This e)144 703.2 R .001(xtra information may be used, for e)-.15 F .001
+ent e)144 463.2 R -.15(xe)-.15 G 1.328(cution call stack.).15 F .001
+(This e)144 475.2 R .001(xtra information may be used, for e)-.15 F .001
(xample, to print a stack trace.)-.15 F(The current frame is frame)5 E
-3.019(0. The)144 715.2 R .519(return v)3.019 F .519
+3.019(0. The)144 487.2 R .519(return v)3.019 F .519
(alue is 0 unless the shell is not e)-.25 F -.15(xe)-.15 G .52
(cuting a subroutine call or).15 F F2 -.2(ex)3.02 G(pr).2 E F0 .52
-(does not corre-)3.02 F(spond to a v)144 727.2 Q
-(alid position in the call stack.)-.25 E(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(51)190.95 E 0 Cg EP
-%%Page: 52 52
-%%BeginPageSetup
-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<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 .322(Change the current directory to)144 96 R F2(dir)2.822 E F0
-5.322(.i)C(f)-5.322 E F2(dir)2.822 E F0 .321(is not supplied, the v)
-2.822 F .321(alue of the)-.25 F/F3 9/Times-Bold@0 SF(HOME)2.821 E F0
-.321(shell v)2.571 F .321(ariable is)-.25 F 1.035(the def)144 108 R
-3.535(ault. An)-.1 F 3.535(ya)-.15 G 1.035(dditional ar)-3.535 F 1.035
-(guments follo)-.18 F(wing)-.25 E F2(dir)3.535 E F0 1.035(are ignored.)
-3.535 F 1.036(The v)6.035 F(ariable)-.25 E F3(CDP)3.536 E -.855(AT)-.666
-G(H).855 E F0(de\214nes)3.286 E .85
-(the search path for the directory containing)144 120 R F2(dir)3.35 E F0
-3.35(:e).73 G .849(ach directory name in)-3.35 F F3(CDP)3.349 E -.855
-(AT)-.666 G(H).855 E F0 .849(is searched for)3.099 F F2(dir)144 132 Q F0
-5.664(.A)C(lternati)-5.664 E .964 -.15(ve d)-.25 H .665
-(irectory names in).15 F F3(CDP)3.165 E -.855(AT)-.666 G(H).855 E F0
+(does not corre-)3.02 F(spond to a v)144 499.2 Q
+(alid position in the call stack.)-.25 E F1(cd)108 516 Q F0([)2.5 E F1
+<ad4c>A F0(|[)A F1<ad50>A F0([)2.5 E F1<ad65>A F0(]]] [)A F2(dir)A F0(])
+A .322(Change the current directory to)144 528 R F2(dir)2.822 E F0 5.322
+(.i)C(f)-5.322 E F2(dir)2.822 E F0 .321(is not supplied, the v)2.822 F
+.321(alue of the)-.25 F F3(HOME)2.821 E F0 .321(shell v)2.571 F .321
+(ariable is)-.25 F 1.035(the def)144 540 R 3.535(ault. An)-.1 F 3.535
+(ya)-.15 G 1.035(dditional ar)-3.535 F 1.035(guments follo)-.18 F(wing)
+-.25 E F2(dir)3.535 E F0 1.035(are ignored.)3.535 F 1.036(The v)6.035 F
+(ariable)-.25 E F3(CDP)3.536 E -.855(AT)-.666 G(H).855 E F0(de\214nes)
+3.286 E .85(the search path for the directory containing)144 552 R F2
+(dir)3.35 E F0 3.35(:e).73 G .849(ach directory name in)-3.35 F F3(CDP)
+3.349 E -.855(AT)-.666 G(H).855 E F0 .849(is searched for)3.099 F F2
+(dir)144 564 Q F0 5.664(.A)C(lternati)-5.664 E .964 -.15(ve d)-.25 H
+.665(irectory names in).15 F F3(CDP)3.165 E -.855(AT)-.666 G(H).855 E F0
.665(are separated by a colon \(:\).)2.915 F 3.165(An)5.665 G .665
-(ull directory name)-3.165 F(in)144 144 Q F3(CDP)4.163 E -.855(AT)-.666
+(ull directory name)-3.165 F(in)144 576 Q F3(CDP)4.163 E -.855(AT)-.666
G(H).855 E F0 1.663(is the same as the current directory)3.913 F 4.162
(,i)-.65 G 1.662(.e., `)-4.162 F(`)-.74 E F1(.)A F0 -.74('')C 6.662(.I)
.74 G(f)-6.662 E F2(dir)4.512 E F0(be)4.892 E 1.662
-(gins with a slash \(/\), then)-.15 F F3(CDP)144 156 Q -.855(AT)-.666 G
+(gins with a slash \(/\), then)-.15 F F3(CDP)144 588 Q -.855(AT)-.666 G
(H).855 E F0 .347(is not used. The)2.597 F F1<ad50>2.847 E F0 .347
(option causes)2.847 F F1(cd)2.847 E F0 .347(to use the ph)2.847 F .347
(ysical directory structure by resolving)-.05 F 1.12
-(symbolic links while tra)144 168 R -.15(ve)-.2 G(rsing).15 E F2(dir)
+(symbolic links while tra)144 600 R -.15(ve)-.2 G(rsing).15 E F2(dir)
3.62 E F0 1.12(and before processing instances of)3.62 F F2(..)3.62 E F0
(in)3.62 E F2(dir)3.62 E F0 1.12(\(see also the)3.62 F F1<ad50>3.62 E F0
-.395(option to the)144 180 R F1(set)2.895 E F0 -.2(bu)2.895 G .395
+.395(option to the)144 612 R F1(set)2.895 E F0 -.2(bu)2.895 G .395
(iltin command\); the).2 F F1<ad4c>2.895 E F0 .395
(option forces symbolic links to be follo)2.895 F .395(wed by resolv-)
--.25 F .444(ing the link after processing instances of)144 192 R F2(..)
+-.25 F .444(ing the link after processing instances of)144 624 R F2(..)
2.943 E F0(in)2.943 E F2(dir)2.943 E F0 5.443(.I)C(f)-5.443 E F2(..)
2.943 E F0 .443(appears in)2.943 F F2(dir)2.943 E F0 2.943(,i)C 2.943
(ti)-2.943 G 2.943(sp)-2.943 G .443(rocessed by remo)-2.943 F(ving)-.15
-E .744(the immediately pre)144 204 R .744(vious pathname component from)
+E .744(the immediately pre)144 636 R .744(vious pathname component from)
-.25 F F2(dir)3.244 E F0 3.244(,b)C .744(ack to a slash or the be)-3.244
-F .744(ginning of)-.15 F F2(dir)3.244 E F0(.)A 1.466(If the)144 216 R F1
+F .744(ginning of)-.15 F F2(dir)3.244 E F0(.)A 1.466(If the)144 648 R F1
<ad65>3.966 E F0 1.466(option is supplied with)3.966 F F1<ad50>3.965 E
F0 3.965(,a)C 1.465(nd the current w)-3.965 F 1.465
(orking directory cannot be successfully)-.1 F .012
-(determined after a successful directory change,)144 228 R F1(cd)2.512 E
+(determined after a successful directory change,)144 660 R F1(cd)2.512 E
F0 .012(will return an unsuccessful status.)2.512 F .013(An ar)5.013 F
-(gument)-.18 E(of)144 240 Q F1<ad>2.672 E F0 .172(is con)2.672 F -.15
+(gument)-.18 E(of)144 672 Q F1<ad>2.672 E F0 .172(is con)2.672 F -.15
(ve)-.4 G .172(rted to).15 F F3($OLDPWD)2.672 E F0 .171
(before the directory change is attempted.)2.421 F .171
-(If a non-empty directory)5.171 F .743(name from)144 252 R F3(CDP)3.243
+(If a non-empty directory)5.171 F .743(name from)144 684 R F3(CDP)3.243
E -.855(AT)-.666 G(H).855 E F0 .743(is used, or if)2.993 F F1<ad>3.244 E
F0 .744(is the \214rst ar)3.244 F .744
(gument, and the directory change is successful,)-.18 F .594
-(the absolute pathname of the ne)144 264 R 3.094(ww)-.25 G .594
+(the absolute pathname of the ne)144 696 R 3.094(ww)-.25 G .594
(orking directory is written to the standard output.)-3.194 F .594
-(The return)5.594 F -.25(va)144 276 S(lue is true if the directory w).25
-E(as successfully changed; f)-.1 E(alse otherwise.)-.1 E F1(command)108
-292.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 304.8 Q F2(command)2.956 E F0(with)
-3.527 E F2(ar)3.087 E(gs)-.37 E F0 .257
+(The return)5.594 F -.25(va)144 708 S(lue is true if the directory w).25
+E(as successfully changed; f)-.1 E(alse otherwise.)-.1 E(GNU Bash 4.2)72
+768 Q(2012 July 5)151.505 E(52)200.665 E 0 Cg EP
+%%Page: 53 53
+%%BeginPageSetup
+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(command)108 84 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 96 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 316.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 328.8 R .399(ault v)-.1 F .399
-(alue for)-.25 F F3 -.666(PA)2.899 G(TH)-.189 E F0 .4
+(uiltin commands or)-.2 F .502(commands found in the)144 108 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 120 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 340.8 R F1<ad56>2.675 E F0(or)2.675 E F1<ad76>
+5.4 E .175(either the)144 132 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.317(as)144 352.8 S .817(ingle w)-3.317 F .817
+(option causes)2.674 F 3.317(as)144 144 S .817(ingle w)-3.317 F .817
(ord indicating the command or \214lename used to in)-.1 F -.2(vo)-.4 G
-.1(ke).2 G F2(command)3.618 E F0 .818(to be displayed; the)4.088 F F1
-<ad56>144 364.8 Q F0 .25(option produces a more v)2.75 F .25
+<ad56>144 156 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 376.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
+(xit status)-.15 F 1.004(is 0 if)144 168 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 388.8 Q F0 1.599(cannot be found, the e)4.869 F 1.599
+(command)144.2 180 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 400.8 S
+(xit status of the)-.15 F F1(command)4.098 E F0 -.2(bu)144 192 S
(iltin is the e).2 E(xit status of)-.15 E F2(command)2.5 E F0(.).77 E F1
-(compgen)108 417.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 429.6 R
+(compgen)108 208.8 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 220.8 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 441.6 R F1(complete)3.482 E F0 -.2(bu)3.481 G .981
+(accepted by the)144 232.8 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 453.6 R 1.415(When using the)6.415 F
+-3.481 F 1.415(standard output.)144 244.8 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 465.6 Q(acilities, while a)-.1 E -.25(va)
+F(grammable completion f)144 256.8 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 489.6 R .352
+-.25 E .352(The matches will be generated in the same w)144 280.8 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
-501.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 513.6 Q F2(wor)2.5 E(d)-.37 E F0
-(will be displayed.)2.5 E(The return v)144 537.6 Q
+292.8 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 304.8 Q F2(wor)2.5 E(d)-.37 E F0
+(will be displayed.)2.5 E(The return v)144 328.8 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 554.4 Q F0([)3.729 E F1(\255abcdefgjksuv)A F0 3.729(][)C
+(complete)108 345.6 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
-566.4 Q F0 2.5(][)C F1<ad43>-2.5 E F2(command)2.5 E F0(])A([)144 578.4 Q
+357.6 Q F0 2.5(][)C F1<ad43>-2.5 E F2(command)2.5 E F0(])A([)144 369.6 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
-590.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 602.4 R 3.134(wa)-.25 G -.18(rg)-3.134 G .634
+381.6 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 393.6 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
-614.4 R .139(xisting completion speci\214cations are printed in a w)-.15
+405.6 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 626.4 R(The)5.31 E F1<ad72>2.81 E F0 .31(option remo)2.81 F -.15(ve)
+144 417.6 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 638.4 R(The)6.347 E
+(are supplied, all completion speci\214cations.)144 429.6 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 650.4 R(`def)-.74 E
+3.847 F .5(and actions should apply to the `)144 441.6 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
-662.4 S .955(ommand for which no completion has pre)-3.455 F .955
+453.6 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 674.4 R
+(the remaining options and actions should apply to `)144 465.6 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 686.4 Q 1.437
+(tion attempted on a blank line.)144 477.6 Q 1.437
(The process of applying these completion speci\214cations when w)144
-710.4 R 1.438(ord completion is attempted is)-.1 F(described abo)144
-722.4 Q .3 -.15(ve u)-.15 H(nder).15 E F1(Pr)2.5 E
-(ogrammable Completion)-.18 E F0(.)A(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(52)190.95 E 0 Cg EP
-%%Page: 53 53
+501.6 R 1.438(ord completion is attempted is)-.1 F(described abo)144
+513.6 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 537.6 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 549.6 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 561.6 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 573.6 Q
+F2(comp-option)2.5 E F0(The)184 585.6 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 597.6 Q F2
+(comp-option)5 E F0(may be one of:)2.5 E F1(bashdefault)184 609.6 Q F0
+.281(Perform the rest of the def)224 621.6 R(ault)-.1 E F1(bash)2.781 E
+F0 .281(completions if the compspec generates no)2.781 F(matches.)224
+633.6 Q F1(default)184 645.6 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 657.6 Q F1(dir)184 669.6 Q(names)-.15 E F0(Perform directory name c\
+ompletion if the compspec generates no matches.)224 681.6 Q F1
+(\214lenames)184 693.6 Q F0 -.7(Te)224 705.6 S .137(ll readline that th\
+e 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 717.6 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
+729.6 R .45(Intended to be used with shell)5.45 F(GNU Bash 4.2)72 768 Q
+(2012 July 5)151.505 E(53)200.665 E 0 Cg EP
+%%Page: 54 54
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E .556(Other options, if speci\214ed, ha)144 84 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 10/Times-Bold@0 SF<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 96 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 108 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 120 Q/F2
-10/Times-Italic@0 SF(comp-option)2.5 E F0(The)184 132 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 144 Q F2(comp-option)5 E F0(may be one of:)2.5 E F1(bashdefault)184
-156 Q F0 .281(Perform the rest of the def)224 168 R(ault)-.1 E F1(bash)
-2.781 E F0 .281(completions if the compspec generates no)2.781 F
-(matches.)224 180 Q F1(default)184 192 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 204 Q F1(dir)184 216 Q(names)-.15 E F0(Perform directory name compl\
-etion if the compspec generates no matches.)224 228 Q F1(\214lenames)184
-240 Q F0 -.7(Te)224 252 S .137(ll readline 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 264 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 276 R .45
-(Intended to be used with shell)5.45 F(functions.)224 288 Q F1(noquote)
-184 300 Q F0 -.7(Te)5.55 G .814
-(ll readline not to quote the completed w).7 F .814(ords if the)-.1 F
-3.314(ya)-.15 G .814(re \214lenames \(quoting)-3.314 F
-(\214lenames is the def)224 312 Q(ault\).)-.1 E F1(nospace)184 324 Q F0
+-.35 E(functions.)224 84 Q/F1 10/Times-Bold@0 SF(noquote)184 96 Q F0 -.7
+(Te)5.55 G .814(ll readline not to quote the completed w).7 F .814
+(ords if the)-.1 F 3.314(ya)-.15 G .814(re \214lenames \(quoting)-3.314
+F(\214lenames is the def)224 108 Q(ault\).)-.1 E F1(nospace)184 120 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
-336 Q F1(plusdirs)184 348 Q F0 1.985(After an)5.54 F 4.485(ym)-.15 G
+132 Q F1(plusdirs)184 144 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 .583(completion is attempted and an)224 360 R 3.084(ym)-.15 G
+-4.485 F .583(completion is attempted and an)224 156 R 3.084(ym)-.15 G
.584(atches are added to the results of the other)-3.084 F(actions.)224
-372 Q F1<ad41>144 384 Q F2(action)2.5 E F0(The)184 396 Q F2(action)2.5 E
-F0(may be one of the follo)2.5 E
+168 Q F1<ad41>144 180 Q/F2 10/Times-Italic@0 SF(action)2.5 E F0(The)184
+192 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
-408 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 420 Q(ar)-.1 E F0(Array v)224 432 Q
-(ariable names.)-.25 E F1 4.7(binding Readline)184 444 R F0 -.1(ke)2.5 G
-2.5(yb)-.05 G(inding names.)-2.5 E F1 -.2(bu)184 456 S(iltin).2 E F0
+204 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 216 Q(ar)-.1 E F0(Array v)224 228 Q
+(ariable names.)-.25 E F1 4.7(binding Readline)184 240 R F0 -.1(ke)2.5 G
+2.5(yb)-.05 G(inding names.)-2.5 E F1 -.2(bu)184 252 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 468
-Q F0(Command names.)224 480 Q(May also be speci\214ed as)5 E F1<ad63>2.5
-E F0(.)A F1(dir)184 492 Q(ectory)-.18 E F0(Directory names.)224 504 Q
-(May also be speci\214ed as)5 E F1<ad64>2.5 E F0(.)A F1(disabled)184 516
-Q F0(Names of disabled shell b)224 528 Q(uiltins.)-.2 E F1(enabled)184
-540 Q F0(Names of enabled shell b)6.66 E(uiltins.)-.2 E F1(export)184
-552 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 264
+Q F0(Command names.)224 276 Q(May also be speci\214ed as)5 E F1<ad63>2.5
+E F0(.)A F1(dir)184 288 Q(ectory)-.18 E F0(Directory names.)224 300 Q
+(May also be speci\214ed as)5 E F1<ad64>2.5 E F0(.)A F1(disabled)184 312
+Q F0(Names of disabled shell b)224 324 Q(uiltins.)-.2 E F1(enabled)184
+336 Q F0(Names of enabled shell b)6.66 E(uiltins.)-.2 E F1(export)184
+348 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
-564 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 576 Q F0(Names of shell functions.)224 588 Q F1
-(gr)184 600 Q(oup)-.18 E F0(Group names.)14.62 E
+360 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 372 Q F0(Names of shell functions.)224 384 Q F1
+(gr)184 396 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
-612 Q F0(Help topics as accepted by the)224 624 Q F1(help)2.5 E F0 -.2
-(bu)2.5 G(iltin.).2 E F1(hostname)184 636 Q F0(Hostnames, as tak)224 648
+408 Q F0(Help topics as accepted by the)224 420 Q F1(help)2.5 E F0 -.2
+(bu)2.5 G(iltin.).2 E F1(hostname)184 432 Q F0(Hostnames, as tak)224 444
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 660 Q F0
+(HOSTFILE)2.5 E F0(shell v)2.25 E(ariable.)-.25 E F1(job)184 456 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 672 S
-(yw).1 E(ord)-.1 E F0(Shell reserv)224 684 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 468 S
+(yw).1 E(ord)-.1 E F0(Shell reserv)224 480 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
-696 Q F0(Names of running jobs, if job control is acti)5.54 E -.15(ve)
--.25 G(.).15 E F1(ser)184 708 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(GNU Bash 4.2)72 768
-Q(2012 February 4)141.79 E(53)190.95 E 0 Cg EP
-%%Page: 54 54
-%%BeginPageSetup
-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(setopt)184 84 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 96 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 108 Q F0(Signal names.)14.99 E F1
-(stopped)184 120 Q F0(Names of stopped jobs, if job control is acti)6.66
-E -.15(ve)-.25 G(.).15 E F1(user)184 132 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 144 S
+492 Q F0(Names of running jobs, if job control is acti)5.54 E -.15(ve)
+-.25 G(.).15 E F1(ser)184 504 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 516 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 528 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 540 Q F0
+(Signal names.)14.99 E F1(stopped)184 552 Q F0
+(Names of stopped jobs, if job control is acti)6.66 E -.15(ve)-.25 G(.)
+.15 E F1(user)184 564 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 576 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 156 Q/F2
-10/Times-Italic@0 SF(command)2.5 E(command)184 168 Q F0 1.056(is e)3.556
-F -.15(xe)-.15 G 1.056(cuted in a subshell en).15 F 1.056
+(also be speci\214ed as)2.5 E F1<ad76>2.5 E F0(.)A F1<ad43>144 588 Q F2
+(command)2.5 E(command)184 600 Q F0 1.056(is e)3.556 F -.15(xe)-.15 G
+1.056(cuted in a subshell en).15 F 1.056
(vironment, and its output is used as the possible)-.4 F(completions.)
-184 180 Q F1<ad46>144 192 Q F2(function)2.5 E F0 .113
-(The shell function)184 204 R F2(function)2.614 E F0 .114(is e)2.614 F
+184 612 Q F1<ad46>144 624 Q F2(function)2.5 E F0 .113
+(The shell function)184 636 R F2(function)2.614 E F0 .114(is e)2.614 F
-.15(xe)-.15 G .114(cuted in the current shell en).15 F 2.614
-(vironment. When)-.4 F .114(the func-)2.614 F .817(tion is e)184 216 R
+(vironment. When)-.4 F .114(the func-)2.614 F .817(tion is e)184 648 R
-.15(xe)-.15 G .817(cuted, the \214rst ar).15 F .817(gument \()-.18 F F1
($1)A F0 3.316(\)i)C 3.316(st)-3.316 G .816
(he name of the command whose ar)-3.316 F(guments)-.18 E 1.407
-(are being completed, the second ar)184 228 R 1.407(gument \()-.18 F F1
+(are being completed, the second ar)184 660 R 1.407(gument \()-.18 F F1
($2)A F0 3.907(\)i)C 3.907(st)-3.907 G 1.407(he w)-3.907 F 1.407
-(ord being completed, and the)-.1 F .104(third ar)184 240 R .104
+(ord being completed, and the)-.1 F .104(third ar)184 672 R .104
(gument \()-.18 F F1($3)A F0 2.604(\)i)C 2.604(st)-2.604 G .104(he w)
-2.604 F .104(ord preceding the w)-.1 F .103
-(ord being completed on the current com-)-.1 F .101(mand line.)184 252 R
+(ord being completed on the current com-)-.1 F .101(mand line.)184 684 R
.101(When it \214nishes, the possible completions are retrie)5.101 F
-.15(ve)-.25 G 2.602(df).15 G .102(rom the v)-2.602 F .102(alue of the)
--.25 F/F3 9/Times-Bold@0 SF(COMPREPL)184 264 Q(Y)-.828 E F0(array v)2.25
-E(ariable.)-.25 E F1<ad47>144 276 Q F2(globpat)2.5 E F0 1.008
-(The pathname e)184 288 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 300 Q F1<ad50>144 312 Q F2(pr)2.5 E(e\214x)-.37 E(pr)
-184 324 Q(e\214x)-.37 E F0 .534(is added at the be)3.034 F .534
+-.25 F F3(COMPREPL)184 696 Q(Y)-.828 E F0(array v)2.25 E(ariable.)-.25 E
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(54)200.665 E 0 Cg EP
+%%Page: 55 55
+%%BeginPageSetup
+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<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 336 Q F1<ad53>144 348 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 360 Q F2(wor)2.5 E
-(dlist)-.37 E F0(The)184 372 Q F2(wor)3.64 E(dlist)-.37 E F0 1.14
-(is split using the characters in the)3.64 F F3(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 384 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 396 Q(ord being completed.)-.1 E
-F1<ad58>144 408 Q F2(\214lterpat)2.5 E(\214lterpat)184 420 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 432 R 1.596
-(guments, and each completion)-.18 F(matching)184 444 Q F2(\214lterpat)
+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 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 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 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 456 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 472.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 484.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 496.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 513.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 525.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 537.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 549.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 561.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 573.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 585.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 597.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 621.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 633.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 650.4 Q F0([)
-2.5 E F2(n)A F0(])A 1.754(Resume the ne)144 662.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 674.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 686.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 698.4 Q(GNU Bash 4.2)72 768
-Q(2012 February 4)141.79 E(54)190.95 E 0 Cg EP
-%%Page: 55 55
-%%BeginPageSetup
-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(declar)108 84 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 10
-/Times-Italic@0 SF(name)-2.5 E F0([=)A F2(value)A F0 2.5(].)C(..])-2.5 E
-F1(typeset)108 96 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 108 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 120 S 3.483(riables. The).25 F F1<ad70>3.483 E F0 .983
+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(\255aAfFgilnrtux)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 535.2 Q F0([)2.5 E F1(\255aAfFgilnrtux)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 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 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 132 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 144 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 156 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 168 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 function de\
-\214nitions; only the function name and attrib)144 180 R 2.423(utes are)
--.2 F 2.664(printed. If)144 192 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 204 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 216 R .491
+<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 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
+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 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 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 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 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 228 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
-240 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 252 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 264 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
-276 Q F0(Use function names only)26.97 E(.)-.65 E F1<ad69>144 288 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 9
-/Times-Bold@0 SF .557(ARITHMETIC EV)3.058 F(ALU)-1.215 E(A-)-.54 E(TION)
-180 300 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 312 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 324 R(upper)2.5 E(-case attrib)-.2 E
-(ute is disabled.)-.2 E F1<ad72>144 336 Q F0(Mak)25.86 E(e)-.1 E F2
-(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 348 Q F1
-<ad74>144 360 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
-(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 372 Q(The trace attrib)5 E(ute has no special meaning for v)-.2 E
-(ariables.)-.25 E F1<ad75>144 384 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 396 R(lo)2.5 E(wer)-.25 E(-case attrib)-.2 E
-(ute is disabled.)-.2 E F1<ad78>144 408 Q F0(Mark)25.3 E F2(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 424.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 436.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(tion,)144 448.8 Q F1
+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 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 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 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 715.2 Q F0(Use function names only)
+26.97 E(.)-.65 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(55)200.665
+E 0 Cg EP
+%%Page: 56 56
+%%BeginPageSetup
+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<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<ad6e>144 132 Q F0(Gi)
+24.74 E 1.62 -.15(ve e)-.25 H(ach).15 E/F3 10/Times-Italic@0 SF(name)
+3.82 E F0(the)3.82 E F3(namer)3.819 E(ef)-.37 E F0(attrib)3.819 E 1.319
+(ute, making it a name reference to another v)-.2 F(ariable.)-.25 E
+1.032(That other v)180 144 R 1.033(ariable is de\214ned by the v)-.25 F
+1.033(alue of)-.25 F F3(name)3.533 E F0 6.033(.A)C 1.033
+(ll references and assignments to)-6.033 F F3(name)180 156 Q F0 4.033
+(,e)C 1.533(xcept for changing the)-4.183 F F1<ad6e>4.032 E F0(attrib)
+4.032 E 1.532(ute itself, are performed on the v)-.2 F 1.532
+(ariable refer)-.25 F(-)-.2 E(enced by)180 168 Q F3(name)2.5 E F0 1.1
+-.55('s v)D 2.5(alue. The).3 F F1<ad6e>2.5 E F0(attrib)2.5 E
+(ute cannot be applied to array v)-.2 E(ariables.)-.25 E F1<ad72>144 180
+Q F0(Mak)25.86 E(e)-.1 E F3(name)5.046 E F0 5.046(sr)C(eadonly)-5.046 E
+7.546(.T)-.65 G 2.546(hese names cannot then be assigned v)-7.546 F
+2.547(alues by subsequent)-.25 F(assignment statements or unset.)180 192
+Q F1<ad74>144 204 Q F0(Gi)26.97 E .73 -.15(ve e)-.25 H(ach).15 E F3
+(name)2.93 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.929 E F1(RETURN)2.929 E F0
+(traps from the calling shell.)180 216 Q(The trace attrib)5 E
+(ute has no special meaning for v)-.2 E(ariables.)-.25 E F1<ad75>144 228
+Q F0 .909(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 .91(rted to upper).15 F(-)-.2 E 2.5(case. The)180 240 R(lo)2.5
+E(wer)-.25 E(-case attrib)-.2 E(ute is disabled.)-.2 E F1<ad78>144 252 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 .121
+(Using `+' instead of `\255' turns of)144 268.8 R 2.621(ft)-.25 G .121
+(he attrib)-2.621 F .121(ute instead, with the e)-.2 F .12
+(xceptions that)-.15 F F1(+a)2.62 E F0 .12(may not be used)2.62 F .644
+(to destro)144 280.8 R 3.144(ya)-.1 G 3.144(na)-3.144 G .644(rray v)
+-3.144 F .644(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.145
+(ute. When)-.2 F .645(used in a func-)3.145 F(tion,)144 292.8 Q F1
(declar)2.835 E(e)-.18 E F0(and)2.835 E F1(typeset)2.835 E F0(mak)2.835
-E 2.835(ee)-.1 G(ach)-2.835 E F2(name)2.835 E F0 .335
+E 2.835(ee)-.1 G(ach)-2.835 E F3(name)2.835 E F0 .335
(local, as with the)2.835 F F1(local)2.835 E F0 .335
-(command, unless the)2.835 F F1<ad67>2.835 E F0(option)2.835 E .134
-(is supplied.)144 460.8 R .134(If a v)5.134 F .134
-(ariable name is follo)-.25 F .134(wed by =)-.25 F F2(value)A F0 2.634
-(,t)C .134(he v)-2.634 F .134(alue of the v)-.25 F .133
-(ariable is set to)-.25 F F2(value)2.633 E F0 5.133(.T)C(he)-5.133 E .8
-(return v)144 472.8 R .8(alue is 0 unless an in)-.25 F -.25(va)-.4 G
-.801
+(command, unless the)2.835 F F1<ad67>2.835 E F0(option)2.835 E .133
+(is supplied.)144 304.8 R .133(If a v)5.133 F .133
+(ariable name is follo)-.25 F .134(wed by =)-.25 F F3(value)A F0 2.634
+(,t)C .134(he v)-2.634 F .134(alue of the v)-.25 F .134
+(ariable is set to)-.25 F F3(value)2.634 E F0 5.134(.T)C(he)-5.134 E
+.801(return v)144 316.8 R .801(alue is 0 unless an in)-.25 F -.25(va)-.4
+G .8
(lid option is encountered, an attempt is made to de\214ne a function)
-.25 F(using)144 484.8 Q/F4 10/Courier@0 SF 1.039(\255f foo=bar)3.539 F
-F0 3.539(,a)C 3.539(na)-3.539 G 1.038(ttempt is made to assign a v)
--3.539 F 1.038(alue to a readonly v)-.25 F 1.038(ariable, an attempt is)
--.25 F .974(made to assign a v)144 496.8 R .974(alue to an array v)-.25
+.25 F(using)144 328.8 Q/F4 10/Courier@0 SF 1.038(\255f foo=bar)3.538 F
+F0 3.538(,a)C 3.538(na)-3.538 G 1.038(ttempt is made to assign a v)
+-3.538 F 1.038(alue to a readonly v)-.25 F 1.039(ariable, an attempt is)
+-.25 F .974(made to assign a v)144 340.8 R .974(alue to an array v)-.25
F .974(ariable without using the compound assignment syntax \(see)-.25 F
-F1(Arrays)144 508.8 Q F0(abo)2.86 E -.15(ve)-.15 G .36(\), one of the)
-.15 F F2(names)2.86 E F0 .36(is not a v)2.86 F .36(alid shell v)-.25 F
-.36(ariable name, an attempt is made to turn of)-.25 F(f)-.25 E .056
-(readonly status for a readonly v)144 520.8 R .057
-(ariable, an attempt is made to turn of)-.25 F 2.557(fa)-.25 G .057
-(rray status for an array v)-2.557 F(ari-)-.25 E
-(able, or an attempt is made to display a non-e)144 532.8 Q
+F1(Arrays)144 352.8 Q F0(abo)2.86 E -.15(ve)-.15 G .36(\), one of the)
+.15 F F3(names)2.86 E F0 .36(is not a v)2.86 F .36(alid shell v)-.25 F
+.36(ariable name, an attempt is made to turn of)-.25 F(f)-.25 E .057
+(readonly status for a readonly v)144 364.8 R .057
+(ariable, an attempt is made to turn of)-.25 F 2.556(fa)-.25 G .056
+(rray status for an array v)-2.556 F(ari-)-.25 E
+(able, or an attempt is made to display a non-e)144 376.8 Q
(xistent function with)-.15 E F1<ad66>2.5 E F0(.)A F1
-(dirs [\255clpv] [+)108 549.6 Q F2(n)A F1 2.5(][)C<ad>-2.5 E F2(n)A F1
-(])A F0 -.4(Wi)144 561.6 S .329
+(dirs [\255clpv] [+)108 393.6 Q F3(n)A F1 2.5(][)C<ad>-2.5 E F3(n)A F1
+(])A F0 -.4(Wi)144 405.6 S .328
(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 573.6 R 1.238
-(Directories are added to the list with the)6.238 F F1(pushd)144 585.6 Q
+.4 F .329(The def)5.329 F .329(ault display is on a)-.1 F 1.238
+(single line with directory names separated by spaces.)144 417.6 R 1.238
+(Directories are added to the list with the)6.238 F F1(pushd)144 429.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<ad63>144 597.6 Q F0
+2.5(se).15 G(ntries from the list.)-2.5 E F1<ad63>144 441.6 Q F0
(Clears the directory stack by deleting all of the entries.)25.86 E F1
-<ad6c>144 609.6 Q F0 .882
-(Produces a listing using full pathnames; the def)27.52 F .881
+<ad6c>144 453.6 Q F0 .881
+(Produces a listing using full pathnames; the def)27.52 F .882
(ault listing format uses a tilde to denote)-.1 F(the home directory)180
-621.6 Q(.)-.65 E F1<ad70>144 633.6 Q F0
+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
-645.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 657.6 Q F1(+)144 669.6 Q F2(n)A F0 1.565
-(Displays the)25.3 F F2(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 681.6 Q F1<ad>144 693.6 Q F2
-(n)A F0 1.194(Displays the)25.3 F F2(n)3.694 E F0 1.194
+489.6 Q F0 .273(Print the directory stack with one entry per line, pre\
+\214xing each entry with its inde)25.3 F 2.772(xi)-.15 G 2.772(nt)-2.772
+G(he)-2.772 E(stack.)180 501.6 Q F1(+)144 513.6 Q F3(n)A F0 1.564
+(Displays the)25.3 F F3(n)4.064 E F0 1.565
+(th entry counting from the left of the list sho)B 1.565(wn by)-.25 F F1
+(dirs)4.065 E F0 1.565(when in)4.065 F -.2(vo)-.4 G -.1(ke).2 G(d).1 E
+(without options, starting with zero.)180 525.6 Q F1<ad>144 537.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 705.6 Q 1.707(The return v)144
-722.4 R 1.707(alue is 0 unless an in)-.25 F -.25(va)-.4 G 1.707
-(lid option is supplied or).25 F F2(n)4.207 E F0(inde)4.206 E -.15(xe)
--.15 G 4.206(sb).15 G -.15(ey)-4.206 G 1.706(ond the end of the).15 F
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(55)190.95 E 0 Cg EP
-%%Page: 56 56
+(without options, starting with zero.)180 549.6 Q .257(The return v)144
+566.4 R .258(alue is 0 unless an in)-.25 F -.25(va)-.4 G .258
+(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 578.4 Q F1(diso)108 595.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 607.2 S .122(thout options, remo).4 F .422 -.15
+(ve e)-.15 H(ach).15 E F3(jobspec)4.362 E F0 .122
+(from the table of acti)2.932 F .422 -.15(ve j)-.25 H 2.622(obs. If).15
+F F3(jobspec)4.362 E F0 .121(is not present, and)2.932 F(neither)144
+619.2 Q F1<ad61>3.836 E F0(nor)3.836 E F1<ad72>3.836 E F0 1.336
+(is supplied, the shell')3.836 F 3.836(sn)-.55 G 1.336(otion of the)
+-3.836 F F3(curr)3.836 E 1.336(ent job)-.37 F F0 1.337(is used.)3.836 F
+1.337(If the)6.337 F F1<ad68>3.837 E F0 1.337(option is)3.837 F(gi)144
+631.2 Q -.15(ve)-.25 G .141(n, each).15 F F3(jobspec)4.381 E F0 .141
+(is not remo)2.951 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
+F2(SIGHUP)2.641 E F0 .14(is not sent to the)2.39 F .004
+(job if the shell recei)144 643.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
+.005(nor the)2.504 F F1<ad72>2.505 E F0 .005(option is)2.505 F 1.229
+(supplied, the)144 655.2 R F3(curr)3.729 E 1.229(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.228(option means to remo)
+3.729 F 1.528 -.15(ve o)-.15 H(r).15 E .656(mark all jobs; the)144 667.2
+R F1<ad72>3.156 E F0 .657(option without a)3.156 F F3(jobspec)4.897 E F0
+(ar)3.467 E .657(gument restricts operation to running jobs.)-.18 F(The)
+5.657 E(return v)144 679.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 696 Q
+F0([)2.5 E F1(\255neE)A F0 2.5(][)C F3(ar)-2.5 E(g)-.37 E F0(...])2.5 E
+.425(Output the)144 708 R F3(ar)2.925 E(g)-.37 E F0 .424
+(s, separated by spaces, follo)B .424(wed by a ne)-.25 F 2.924
+(wline. The)-.25 F .424(return status is 0 unless a write)2.924 F 1.824
+(error occurs.)144 720 R(If)6.824 E F1<ad6e>4.324 E F0 1.824
+(is speci\214ed, the trailing ne)4.324 F 1.824(wline is suppressed.)-.25
+F 1.825(If the)6.825 F F1<ad65>4.325 E F0 1.825(option is gi)4.325 F
+-.15(ve)-.25 G(n,).15 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(56)
+200.665 E 0 Cg EP
+%%Page: 57 57
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(directory stack.)144 84 Q/F1 10/Times-Bold@0 SF(diso)108 100.8 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 10/Times-Italic@0 SF(jobspec)-2.5 E F0(...])2.5 E -.4(Wi)144 112.8 S
-.121(thout options, remo).4 F .422 -.15(ve e)-.15 H(ach).15 E F2
-(jobspec)4.362 E F0 .122(from the table of acti)2.932 F .422 -.15(ve j)
--.25 H 2.622(obs. If).15 F F2(jobspec)4.362 E F0 .122
-(is not present, and)2.932 F(neither)144 124.8 Q F1<ad61>3.837 E F0(nor)
-3.837 E F1<ad72>3.837 E F0 1.337(is supplied, the shell')3.837 F 3.836
-(sn)-.55 G 1.336(otion of the)-3.836 F F2(curr)3.836 E 1.336(ent job)
--.37 F F0 1.336(is used.)3.836 F 1.336(If the)6.336 F F1<ad68>3.836 E F0
-1.336(option is)3.836 F(gi)144 136.8 Q -.15(ve)-.25 G .14(n, each).15 F
-F2(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/F3 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 148.8 R -.15(ve)-.25 G 2.504(sa)
-.15 G F3(SIGHUP)A/F4 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 160.8 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 172.8 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 184.8 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 201.6 Q
-F0([)2.5 E F1(\255neE)A F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E
-.424(Output the)144 213.6 R F2(ar)2.924 E(g)-.37 E F0 .424
-(s, separated by spaces, follo)B .424(wed by a ne)-.25 F 2.924
-(wline. The)-.25 F .424(return status is 0 unless a write)2.924 F .308
-(error occurs.)144 225.6 R(If)5.308 E F1<ad6e>2.808 E F0 .308
-(is speci\214ed, the trailing ne)2.808 F .308(wline is suppressed.)-.25
-F .307(If the)5.308 F F1<ad65>2.807 E F0 .307(option is gi)2.807 F -.15
-(ve)-.25 G .307(n, inter).15 F(-)-.2 E 1.348(pretation of the follo)144
-237.6 R 1.348(wing backslash-escaped characters is enabled.)-.25 F(The)
-6.348 E F1<ad45>3.849 E F0 1.349(option disables the)3.849 F 1.055
-(interpretation of these escape characters, e)144 249.6 R -.15(ve)-.25 G
-3.555(no).15 G 3.555(ns)-3.555 G 1.055(ystems where the)-3.555 F 3.554
-(ya)-.15 G 1.054(re interpreted by def)-3.554 F(ault.)-.1 E(The)144
-261.6 Q F1(xpg_echo)3.458 E F0 .959
-(shell option may be used to dynamically determine whether or not)3.458
-F F1(echo)3.459 E F0 -.15(ex)3.459 G(pands).15 E .716
-(these escape characters by def)144 273.6 R(ault.)-.1 E F1(echo)5.716 E
-F0 .716(does not interpret)3.216 F F1<adad>3.216 E F0 .715
-(to mean the end of options.)3.216 F F1(echo)5.715 E F0
-(interprets the follo)144 285.6 Q(wing escape sequences:)-.25 E F1(\\a)
-144 297.6 Q F0(alert \(bell\))28.22 E F1(\\b)144 309.6 Q F0(backspace)
-27.66 E F1(\\c)144 321.6 Q F0(suppress further output)28.78 E F1(\\e)144
-333.6 Q(\\E)144 345.6 Q F0(an escape character)26.55 E F1(\\f)144 357.6
-Q F0(form feed)29.89 E F1(\\n)144 369.6 Q F0(ne)27.66 E 2.5(wl)-.25 G
-(ine)-2.5 E F1(\\r)144 381.6 Q F0(carriage return)28.78 E F1(\\t)144
-393.6 Q F0(horizontal tab)29.89 E F1(\\v)144 405.6 Q F0 -.15(ve)28.22 G
-(rtical tab).15 E F1(\\\\)144 417.6 Q F0(backslash)30.44 E F1(\\0)144
-429.6 Q F2(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 441.6 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 453.6 Q F2(HHHH)A F0
-1.506(the Unicode \(ISO/IEC 10646\) character whose v)180 465.6 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 477.6 Q 2.5(xd)-.15 G(igits\))-2.5 E F1
-(\\U)144 489.6 Q F2(HHHHHHHH)A F0 .548
-(the Unicode \(ISO/IEC 10646\) character whose v)180 501.6 R .547
-(alue is the he)-.25 F .547(xadecimal v)-.15 F(alue)-.25 E F2(HHHHH-)
-3.047 E(HHH)180 513.6 Q F0(\(one to eight he)2.5 E 2.5(xd)-.15 G
-(igits\))-2.5 E F1(enable)108 530.4 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 542.4 R
+-.35 E 1.143(interpretation of the follo)144 84 R 1.143
+(wing backslash-escaped characters is enabled.)-.25 F(The)6.143 E/F1 10
+/Times-Bold@0 SF<ad45>3.642 E F0 1.142(option disables)3.642 F 2.435
+(the interpretation of these escape characters, e)144 96 R -.15(ve)-.25
+G 4.935(no).15 G 4.935(ns)-4.935 G 2.436(ystems where the)-4.935 F 4.936
+(ya)-.15 G 2.436(re interpreted by)-4.936 F(def)144 108 Q 3.455
+(ault. The)-.1 F F1(xpg_echo)3.455 E F0 .955
+(shell option may be used to dynamically determine whether or not)3.455
+F F1(echo)3.455 E F0 -.15(ex)144 120 S .048
+(pands these escape characters by def).15 F(ault.)-.1 E F1(echo)5.048 E
+F0 .048(does not interpret)2.548 F F1<adad>2.548 E F0 .048
+(to mean the end of options.)2.548 F F1(echo)144 132 Q F0
+(interprets the follo)2.5 E(wing escape sequences:)-.25 E F1(\\a)144 144
+Q F0(alert \(bell\))28.22 E F1(\\b)144 156 Q F0(backspace)27.66 E F1
+(\\c)144 168 Q F0(suppress further output)28.78 E F1(\\e)144 180 Q(\\E)
+144 192 Q F0(an escape character)26.55 E F1(\\f)144 204 Q F0(form feed)
+29.89 E F1(\\n)144 216 Q F0(ne)27.66 E 2.5(wl)-.25 G(ine)-2.5 E F1(\\r)
+144 228 Q F0(carriage return)28.78 E F1(\\t)144 240 Q F0(horizontal tab)
+29.89 E F1(\\v)144 252 Q F0 -.15(ve)28.22 G(rtical tab).15 E F1(\\\\)144
+264 Q F0(backslash)30.44 E F1(\\0)144 276 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 288 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 300 Q F2(HHHH)A F0 1.507
+(the Unicode \(ISO/IEC 10646\) character whose v)180 312 R 1.506
+(alue is the he)-.25 F 1.506(xadecimal v)-.15 F(alue)-.25 E F2(HHHH)
+4.006 E F0(\(one to four he)180 324 Q 2.5(xd)-.15 G(igits\))-2.5 E F1
+(\\U)144 336 Q F2(HHHHHHHH)A F0 .547
+(the Unicode \(ISO/IEC 10646\) character whose v)180 348 R .547
+(alue is the he)-.25 F .548(xadecimal v)-.15 F(alue)-.25 E F2(HHHHH-)
+3.048 E(HHH)180 360 Q F0(\(one to eight he)2.5 E 2.5(xd)-.15 G(igits\))
+-2.5 E F1(enable)108 376.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 .278(Enable and disable b)144 388.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 554.4 R .834(uiltin to be e)-.2 F -.15
+(uiltin allo)-.2 F .278(ws a disk command which has)-.25 F .833
+(the same name as a shell b)144 400.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 566.4 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 578.4 R F2(names)4.082 E F0 1.582(are enabled.)
+(ve)-.25 G 3.334(nt).15 G(hough)-3.334 E .99
+(the shell normally searches for b)144 412.8 R .989
+(uiltins before disk commands.)-.2 F(If)5.989 E F1<ad6e>3.489 E F0 .989
+(is used, each)3.489 F F2(name)3.489 E F0 .989(is dis-)3.489 F 1.581
+(abled; otherwise,)144 424.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 -.666(PA)4.081
-G(TH)-.189 E F0 .08(instead of the shell b)144 590.4 R .08(uiltin v)-.2
-F .08(ersion, run)-.15 F/F5 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 602.4 S 1.525
-(iltin command).2 F F2(name)4.385 E F0 1.524(from shared object)4.204 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.082 G(TH)-.189 E F0 .081(instead of the shell b)144 436.8
+R .081(uiltin v)-.2 F .081(ersion, run)-.15 F/F4 10/Courier@0 SF .081
+(enable -n test)2.581 F F0 5.081(.T)C(he)-5.081 E F1<ad66>2.58 E F0 .08
+(option means to load the ne)2.58 F(w)-.25 E -.2(bu)144 448.8 S 1.524
+(iltin command).2 F F2(name)4.384 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 614.4 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 626.4 R F1<ad70>
-2.899 E F0 .399(option is supplied, a list of shell b)2.899 F .399
+(ystems that support dynamic loading.)-4.024 F(The)144 460.8 Q F1<ad64>
+2.867 E F0 .367(option will delete a b)2.867 F .367(uiltin pre)-.2 F
+.367(viously loaded with)-.25 F F1<ad66>2.866 E F0 5.366(.I)C 2.866(fn)
+-5.366 G(o)-2.866 E F2(name)2.866 E F0(ar)2.866 E .366(guments are gi)
+-.18 F -.15(ve)-.25 G .366(n, or).15 F .398(if the)144 472.8 R F1<ad70>
+2.898 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
-638.4 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 650.4 R 1.916
-(uiltins, with an indication of whether or not each is)-.2 F 2.878
-(enabled. If)144 662.4 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 674.4 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
-686.4 Q F1 -2.3 -.15(ev a)108 703.2 T(l).15 E F0([)2.5 E F2(ar)A(g)-.37
-E F0(...])2.5 E(The)144 715.2 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 727.2 R -.15(xe)-.15 G
-.495(cuted by the shell, and its e).15 F .495
+F .399(guments, the)-.18 F .099(list consists of all enabled shell b)144
+484.8 R 2.598(uiltins. If)-.2 F F1<ad6e>2.598 E F0 .098
+(is supplied, only disabled b)2.598 F .098(uiltins are printed.)-.2 F
+(If)5.098 E F1<ad61>2.598 E F0 1.916
+(is supplied, the list printed includes all b)144 496.8 R 1.916
+(uiltins, with an indication of whether or not each is)-.2 F 2.879
+(enabled. If)144 508.8 R F1<ad73>2.879 E F0 .379
+(is supplied, the output is restricted to the POSIX)2.879 F F2(special)
+2.879 E F0 -.2(bu)2.878 G 2.878(iltins. The).2 F .378(return v)2.878 F
+(alue)-.25 E .994(is 0 unless a)144 520.8 R F2(name)3.854 E F0 .994
+(is not a shell b)3.674 F .994(uiltin or there is an error loading a ne)
+-.2 F 3.495(wb)-.25 G .995(uiltin from a shared)-3.695 F(object.)144
+532.8 Q F1 -2.3 -.15(ev a)108 549.6 T(l).15 E F0([)2.5 E F2(ar)A(g)-.37
+E F0(...])2.5 E(The)144 561.6 Q F2(ar)3.171 E(g)-.37 E F0 3.171(sa)C
+.671(re read and concatenated together into a single command.)-3.171 F
+.67(This command is then read)5.67 F .495(and e)144 573.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(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(56)190.95 E 0 Cg EP
-%%Page: 57 57
-%%BeginPageSetup
-BP
-%%EndPageSetup
-/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(or only null ar)144 84 Q(guments,)-.18 E/F1 10/Times-Bold@0 SF
--2.3 -.15(ev a)2.5 H(l).15 E F0(returns 0.)2.5 E F1(exec)108 100.8 Q F0
-([)2.5 E F1(\255cl)A F0 2.5(][)C F1<ad61>-2.5 E/F2 10/Times-Italic@0 SF
+-2.995 F F2(ar)2.995 E(gs)-.37 E F0(,).27 E(or only null ar)144 585.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 602.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 112.8 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 124.8 R .177
+-.37 E F0(]])A(If)144 614.4 Q F2(command)3.006 E F0 .306
+(is speci\214ed, it replaces the shell.)3.576 F .305(No ne)5.305 F 2.805
+(wp)-.25 G .305(rocess is created.)-2.805 F(The)5.305 E F2(ar)3.135 E
+(guments)-.37 E F0(become)3.075 E .176(the ar)144 626.4 R .176
(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 136.8 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 148.8 Q F0 .639(to be e)
-3.909 F -.15(xe)-.15 G .638(cuted with an empty en).15 F 3.138
+(option is supplied, the shell places a dash at the be)2.676 F .177
+(ginning of)-.15 F .5(the zeroth ar)144 638.4 R .5(gument passed to)-.18
+F F2(command)3 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.499 E F1<ad63>2.999 E F0
+.499(option causes)2.999 F F2(com-)3.199 E(mand)144 650.4 Q F0 .638
+(to be e)3.908 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 160.8 R 1.077(gument to the e)-.18 F -.15
+(is supplied, the shell passes)3.138 F F2(name)3.499 E F0 .639(as the)
+3.319 F 1.078(zeroth ar)144 662.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 172.8 Q .877 -.15(ve s)-.25 H .577(hell e).15 F
-.577(xits, unless the)-.15 F F1(execfail)3.077 E F0 .577
-(shell option is enabled.)3.077 F .576(In that case, it returns f)5.577
-F(ail-)-.1 E 2.505(ure. An)144 184.8 R(interacti)2.505 E .305 -.15(ve s)
+.15 F(non-interacti)144 674.4 Q .876 -.15(ve s)-.25 H .576(hell e).15 F
+.576(xits, unless the)-.15 F F1(execfail)3.076 E F0 .577
+(shell option is enabled.)3.077 F .577(In that case, it returns f)5.577
+F(ail-)-.1 E 2.505(ure. An)144 686.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 196.8 Q 3.037(yr)-.15 G .537
-(edirections tak)-3.037 F 3.036(ee)-.1 G -.25(ff)-3.036 G .536
+(is not speci\214ed,)3.275 F(an)144 698.4 Q 3.036(yr)-.15 G .536
+(edirections tak)-3.036 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 208.8 Q 2.5(,t)-.4 G
-(he return status is 1.)-2.5 E F1(exit)108 225.6 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 237.6 S 2.5(cuted. A).15 F(trap on)2.5 E/F3 9
-/Times-Bold@0 SF(EXIT)2.5 E F0(is e)2.25 E -.15(xe)-.15 G
-(cuted before the shell terminates.).15 E F1(export)108 254.4 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 266.4 Q F0 .257(The supplied)144 278.4 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(vironment of subsequently e)-.4 F -.15
-(xe)-.15 G(cuted).15 E 2.626(commands. If)144 290.4 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 302.4 Q F0 .048
-(option is supplied, a list of names of all e)2.548 F .048(xported v)
--.15 F .048(ariables is printed.)-.25 F(The)5.048 E F1<ad6e>2.547 E F0
-.047(option causes the)2.547 F -.15(ex)144 314.4 S 1.446
-(port property to be remo).15 F -.15(ve)-.15 G 3.947(df).15 G 1.447
+(If there is a redirection)5.536 F(error)144 710.4 Q 2.5(,t)-.4 G
+(he return status is 1.)-2.5 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505
+E(57)200.665 E 0 Cg EP
+%%Page: 58 58
+%%BeginPageSetup
+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(exit)108 84 Q F0([)2.5 E/F2 10
+/Times-Italic@0 SF(n)A F0 6.29(]C)C .096(ause the shell to e)-6.29 F
+.096(xit with a status of)-.15 F F2(n)2.596 E F0 5.096(.I)C(f)-5.096 E
+F2(n)2.955 E F0 .095(is omitted, the e)2.835 F .095
+(xit status is that of the last command)-.15 F -.15(exe)144 96 S 2.5
+(cuted. A).15 F(trap on)2.5 E/F3 9/Times-Bold@0 SF(EXIT)2.5 E F0(is e)
+2.25 E -.15(xe)-.15 G(cuted before the shell terminates.).15 E F1
+(export)108 112.8 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 124.8 Q F0
+.256(The supplied)144 136.8 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
+(vironment of subsequently e)-.4 F -.15(xe)-.15 G(cuted).15 E 2.627
+(commands. If)144 148.8 R(the)2.627 E F1<ad66>2.627 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 .126(n, or if the).15 F F1<ad70>
+144 160.8 Q F0 .048(option is supplied, a list of names of all e)2.547 F
+.048(xported v)-.15 F .048(ariables is printed.)-.25 F(The)5.048 E F1
+<ad6e>2.548 E F0 .048(option causes the)2.548 F -.15(ex)144 172.8 S
+1.447(port property to be remo).15 F -.15(ve)-.15 G 3.947(df).15 G 1.447
(rom each)-3.947 F F2(name)3.947 E F0 6.447(.I)C 3.947(fav)-6.447 G
1.447(ariable name is follo)-4.197 F 1.447(wed by =)-.25 F F2(wor)A(d)
--.37 E F0 3.947(,t)C(he)-3.947 E -.25(va)144 326.4 S .742(lue of the v)
-.25 F .742(ariable is set to)-.25 F F2(wor)3.242 E(d)-.37 E F0(.)A F1
-(export)5.742 E F0 .742(returns an e)3.242 F .741
-(xit status of 0 unless an in)-.15 F -.25(va)-.4 G .741(lid option is)
-.25 F .031(encountered, one of the)144 338.4 R F2(names)2.531 E F0 .031
-(is not a v)2.531 F .032(alid shell v)-.25 F .032(ariable name, or)-.25
-F F1<ad66>2.532 E F0 .032(is supplied with a)2.532 F F2(name)2.892 E F0
-(that)2.712 E(is not a function.)144 350.4 Q F1(fc)108 367.2 Q F0([)2.5
+-.37 E F0 3.946(,t)C(he)-3.946 E -.25(va)144 184.8 S .741(lue of the v)
+.25 F .741(ariable is set to)-.25 F F2(wor)3.241 E(d)-.37 E F0(.)A F1
+(export)5.741 E F0 .742(returns an e)3.242 F .742
+(xit status of 0 unless an in)-.15 F -.25(va)-.4 G .742(lid option is)
+.25 F .032(encountered, one of the)144 196.8 R F2(names)2.532 E F0 .032
+(is not a v)2.532 F .032(alid shell v)-.25 F .032(ariable name, or)-.25
+F F1<ad66>2.531 E F0 .031(is supplied with a)2.531 F F2(name)2.891 E F0
+(that)2.711 E(is not a function.)144 208.8 Q F1(fc)108 225.6 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
-379.2 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 .432
-(The \214rst form selects a range of commands from)144 391.2 R F2<8c72>
-4.842 E(st)-.1 E F0(to)3.612 E F2(last)3.022 E F0 .431
-(from the history list and displays or)3.612 F .141(edits and re-e)144
-403.2 R -.15(xe)-.15 G .141(cutes them.).15 F F2 -.45(Fi)5.141 G -.1(rs)
+237.6 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 .431
+(The \214rst form selects a range of commands from)144 249.6 R F2<8c72>
+4.842 E(st)-.1 E F0(to)3.612 E F2(last)3.022 E F0 .432
+(from the history list and displays or)3.612 F .142(edits and re-e)144
+261.6 R -.15(xe)-.15 G .142(cutes them.).15 F F2 -.45(Fi)5.141 G -.1(rs)
.45 G(t).1 E F0(and)3.321 E F2(last)2.731 E F0 .141
(may be speci\214ed as a string \(to locate the last command)3.321 F(be)
-144 415.2 Q .311(ginning with that string\) or as a number \(an inde)
--.15 F 2.811(xi)-.15 G .31(nto the history list, where a ne)-2.811 F
--.05(ga)-.15 G(ti).05 E .61 -.15(ve n)-.25 H(umber).15 E .314
-(is used as an of)144 427.2 R .314
-(fset from the current command number\).)-.25 F(If)5.314 E F2(last)2.905
-E F0 .315(is not speci\214ed it is set to the cur)3.495 F(-)-.2 E .949
-(rent command for listing \(so that)144 439.2 R/F4 10/Courier@0 SF .948
+144 273.6 Q .31(ginning with that string\) or as a number \(an inde)-.15
+F 2.811(xi)-.15 G .311(nto the history list, where a ne)-2.811 F -.05
+(ga)-.15 G(ti).05 E .611 -.15(ve n)-.25 H(umber).15 E .315
+(is used as an of)144 285.6 R .315
+(fset from the current command number\).)-.25 F(If)5.315 E F2(last)2.904
+E F0 .314(is not speci\214ed it is set to the cur)3.494 F(-)-.2 E .948
+(rent command for listing \(so that)144 297.6 R/F4 10/Courier@0 SF .948
(fc \255l \25510)3.448 F F0 .948(prints the last 10 commands\) and to)
-3.448 F F2<8c72>5.358 E(st)-.1 E F0(other)4.128 E(-)-.2 E 2.5(wise. If)
-144 451.2 R F2<8c72>4.41 E(st)-.1 E F0
+3.448 F F2<8c72>5.359 E(st)-.1 E F0(other)4.129 E(-)-.2 E 2.5(wise. If)
+144 309.6 R F2<8c72>4.41 E(st)-.1 E F0
(is not speci\214ed it is set to the pre)3.18 E
-(vious command for editing and \25516 for listing.)-.25 E(The)144 475.2
+(vious command for editing and \25516 for listing.)-.25 E(The)144 333.6
Q F1<ad6e>2.522 E F0 .022
(option suppresses the command numbers when listing.)2.522 F(The)5.022 E
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 487.2 R .438(If the)
+(rses the order of).15 F .438(the commands.)144 345.6 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 499.2 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
+.335(the editor gi)144 357.6 R -.15(ve)-.25 G 2.835(nb).15 G(y)-2.835 E
+F2(ename)3.025 E F0 .335(is in)3.015 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 F2(ename)3.025 E F0 .335(is not gi)3.015 F -.15(ve)-.25 G
-(n,).15 E .631(the v)144 511.2 R .631(alue of the)-.25 F F3(FCEDIT)3.131
-E F0 -.25(va)2.881 G .631(riable is used, and the v).25 F .631(alue of)
--.25 F F3(EDIT)3.131 E(OR)-.162 E F0(if)2.881 E F3(FCEDIT)3.13 E F0 .63
-(is not set.)2.88 F .63(If nei-)5.63 F .95(ther v)144 523.2 R .95
-(ariable is set,)-.25 F F2(vi)5.116 E F0 .95(is used.)5.116 F .951
-(When editing is complete, the edited commands are echoed and)5.95 F
--.15(exe)144 535.2 S(cuted.).15 E .789(In the second form,)144 559.2 R
+F(If)5.334 E F2(ename)3.024 E F0 .334(is not gi)3.014 F -.15(ve)-.25 G
+(n,).15 E .63(the v)144 369.6 R .63(alue of the)-.25 F F3(FCEDIT)3.13 E
+F0 -.25(va)2.88 G .631(riable is used, and the v).25 F .631(alue of)-.25
+F F3(EDIT)3.131 E(OR)-.162 E F0(if)2.881 E F3(FCEDIT)3.131 E F0 .631
+(is not set.)2.881 F .631(If nei-)5.631 F .951(ther v)144 381.6 R .951
+(ariable is set,)-.25 F F2(vi)5.117 E F0 .951(is used.)5.117 F .95
+(When editing is complete, the edited commands are echoed and)5.951 F
+-.15(exe)144 393.6 S(cuted.).15 E .788(In the second form,)144 417.6 R
F2(command)3.288 E F0 .788(is re-e)3.288 F -.15(xe)-.15 G .788
(cuted after each instance of).15 F F2(pat)3.288 E F0 .788
-(is replaced by)3.288 F F2 -.37(re)3.288 G(p).37 E F0(.)A F2(Com-)5.788
-E(mand)144 571.2 Q F0 .346(is intepreted the same as)2.846 F F2<8c72>
+(is replaced by)3.288 F F2 -.37(re)3.289 G(p).37 E F0(.)A F2(Com-)5.789
+E(mand)144 429.6 Q F0 .347(is intepreted the same as)2.847 F F2<8c72>
2.847 E(st)-.1 E F0(abo)2.847 E -.15(ve)-.15 G 5.347(.A).15 G .347
-(useful alias to use with this is)-2.5 F F4 .347(r='fc \255s')2.847 F F0
-2.847(,s)C 2.847(ot)-2.847 G(hat)-2.847 E(typing)144 583.2 Q F4 7.166
-(rc)3.666 G(c)-7.166 E F0 1.166(runs the last command be)3.666 F 1.166
-(ginning with)-.15 F F4(cc)3.666 E F0 1.165(and typing)3.666 F F4(r)
-3.665 E F0(re-e)3.665 E -.15(xe)-.15 G 1.165(cutes the last com-).15 F
-(mand.)144 595.2 Q .142(If the \214rst form is used, the return v)144
-619.2 R .142(alue is 0 unless an in)-.25 F -.25(va)-.4 G .142
+(useful alias to use with this is)-2.5 F F4 .346(r='fc \255s')2.847 F F0
+2.846(,s)C 2.846(ot)-2.846 G(hat)-2.846 E(typing)144 441.6 Q F4 7.165
+(rc)3.665 G(c)-7.165 E F0 1.165(runs the last command be)3.665 F 1.166
+(ginning with)-.15 F F4(cc)3.666 E F0 1.166(and typing)3.666 F F4(r)
+3.666 E F0(re-e)3.666 E -.15(xe)-.15 G 1.166(cutes the last com-).15 F
+(mand.)144 453.6 Q .142(If the \214rst form is used, the return v)144
+477.6 R .142(alue is 0 unless an in)-.25 F -.25(va)-.4 G .142
(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 .455(specify history lines out of range.)144 631.2
+E F2(last)2.732 E F0 .454(specify history lines out of range.)144 489.6
R .454(If the)5.454 F F1<ad65>2.954 E F0 .454
-(option is supplied, the return v)2.954 F .454(alue is the v)-.25 F .454
-(alue of the)-.25 F .787(last command e)144 643.2 R -.15(xe)-.15 G .787
-(cuted or f).15 F .788
+(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 501.6 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
-.788(If the)5.788 F 1.136
+.787(If the)5.787 F 1.135
(second form is used, the return status is that of the command re-e)144
-655.2 R -.15(xe)-.15 G 1.135(cuted, unless).15 F F2(cmd)3.835 E F0 1.135
-(does not)4.405 F(specify a v)144 667.2 Q
+513.6 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 525.6 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 684 Q F0([)2.5 E F2(jobspec)A F0(])A(Resume)144
-696 Q F2(jobspec)5.653 E F0 1.413(in the fore)4.223 F 1.413
+(ailure.)-.1 E F1(fg)108 542.4 Q F0([)2.5 E F2(jobspec)A F0(])A(Resume)
+144 554.4 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 F2(jobspec)5.653 E F0
-1.414(is not present, the)4.223 F(shell')144 708 Q 3.117(sn)-.55 G .617
-(otion of the)-3.117 F F2(curr)3.117 E .617(ent job)-.37 F F0 .617
-(is used.)3.117 F .617(The return v)5.617 F .616
-(alue is that of the command placed into the)-.25 F(fore)144 720 Q .362
-(ground, or f)-.15 F .362(ailure if run when job control is disabled or)
--.1 F 2.862(,w)-.4 G .363(hen run with job control enabled, if)-2.862 F
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(57)190.95 E 0 Cg EP
-%%Page: 58 58
+1.413(is not present, the)4.223 F(shell')144 566.4 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 578.4 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 F2(jobspec)145.74 590.4 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 F1(getopts)108 607.2 Q F2
+(optstring name)2.5 E F0([)2.5 E F2(ar)A(gs)-.37 E F0(])A F1(getopts)144
+619.2 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 631.2 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 643.2 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 655.2 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 667.2 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 679.2 Q .085
+(gument to be processed into the v)-.18 F(ariable)-.25 E F3(OPTIND)2.585
+E/F5 9/Times-Roman@0 SF(.)A F3(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 691.2 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 703.2 R(ariable)-.25 E F3(OPT)3.303 E(ARG)-.81 E F5(.)A
+F0 .803(The shell does not reset)5.303 F F3(OPTIND)3.303 E F0 .804
+(automatically; it must be manually)3.054 F .294
+(reset between multiple calls to)144 715.2 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 727.2
+Q(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(58)200.665 E 0 Cg EP
+%%Page: 59 59
%%BeginPageSetup
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-Italic@0 SF(jobspec)145.74 84 Q F0 .004
-(does not specify a v)2.815 F .004(alid job or)-.25 F F1(jobspec)4.244 E
-F0 .004(speci\214es a job that w)2.814 F .004
-(as started without job control.)-.1 F/F2 10/Times-Bold@0 SF(getopts)108
-100.8 Q F1(optstring name)2.5 E F0([)2.5 E F1(ar)A(gs)-.37 E F0(])A F2
-(getopts)144 112.8 Q F0 .793
-(is used by shell procedures to parse positional parameters.)3.293 F F1
-(optstring)6.023 E F0 .793(contains the option)3.513 F .15
-(characters to be recognized; if a character is follo)144 124.8 R .149
-(wed by a colon, the option is e)-.25 F .149(xpected to ha)-.15 F .449
--.15(ve a)-.2 H(n).15 E(ar)144 136.8 Q .578
-(gument, which should be separated from it by white space.)-.18 F .579
-(The colon and question mark char)5.579 F(-)-.2 E 1.665
-(acters may not be used as option characters.)144 148.8 R 1.665
-(Each time it is in)6.665 F -.2(vo)-.4 G -.1(ke).2 G(d,).1 E F2(getopts)
-4.165 E F0 1.665(places the ne)4.165 F(xt)-.15 E .796
-(option in the shell v)144 160.8 R(ariable)-.25 E F1(name)3.296 E F0
-3.296(,i).18 G(nitializing)-3.296 E F1(name)3.657 E F0 .797
-(if it does not e)3.477 F .797(xist, and the inde)-.15 F 3.297(xo)-.15 G
-3.297(ft)-3.297 G .797(he ne)-3.297 F(xt)-.15 E(ar)144 172.8 Q .085
-(gument to be processed into the v)-.18 F(ariable)-.25 E/F3 9
-/Times-Bold@0 SF(OPTIND)2.585 E/F4 9/Times-Roman@0 SF(.)A F3(OPTIND)
-4.585 E F0 .085(is initialized to 1 each time the shell)2.335 F .845
-(or a shell script is in)144 184.8 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
-(getopts)3.346 E F0 .846(places that ar)3.346 F(gument)-.18 E .804
-(into the v)144 196.8 R(ariable)-.25 E F3(OPT)3.304 E(ARG)-.81 E F4(.)A
-F0 .803(The shell does not reset)5.304 F F3(OPTIND)3.303 E F0 .803
-(automatically; it must be manually)3.053 F .293
-(reset between multiple calls to)144 208.8 R F2(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 .294(et of parameters)-2.793 F(is to be used.)144 220.8
-Q 2.044(When the end of options is encountered,)144 244.8 R F2(getopts)
-4.543 E F0 -.15(ex)4.543 G 2.043(its with a return v).15 F 2.043
-(alue greater than zero.)-.25 F F3(OPTIND)144 256.8 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 F1(name)2.5 E F0
-(is set to ?.)2.5 E F2(getopts)144 280.8 Q F0 2.392
-(normally parses the positional parameters, b)4.892 F 2.392
-(ut if more ar)-.2 F 2.393(guments are gi)-.18 F -.15(ve)-.25 G 4.893
-(ni).15 G(n)-4.893 E F1(ar)4.893 E(gs)-.37 E F0(,).27 E F2(getopts)144
-292.8 Q F0(parses those instead.)2.5 E F2(getopts)144 316.8 Q F0 1.166
-(can report errors in tw)3.666 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.165
-(is a colon,)3.885 F F1(silent)4.005 E F0(error)4.345 E 1.07
-(reporting is used.)144 328.8 R 1.071
-(In normal operation, diagnostic messages are printed when in)6.07 F
--.25(va)-.4 G 1.071(lid options or).25 F .394(missing option ar)144
-340.8 R .394(guments are encountered.)-.18 F .394(If the v)5.394 F
-(ariable)-.25 E F3(OPTERR)2.894 E F0 .394
-(is set to 0, no error messages)2.644 F(will be displayed, e)144 352.8 Q
--.15(ve)-.25 G 2.5(ni).15 G 2.5(ft)-2.5 G(he \214rst character of)-2.5 E
-F1(optstring)2.73 E F0(is not a colon.)2.72 E .666(If an in)144 376.8 R
--.25(va)-.4 G .666(lid option is seen,).25 F F2(getopts)3.166 E F0 .667
-(places ? into)3.167 F F1(name)3.527 E F0 .667
-(and, if not silent, prints an error message)3.347 F .4(and unsets)144
-388.8 R F3(OPT)2.9 E(ARG)-.81 E F4(.)A F0(If)4.899 E F2(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 .399(and no)2.649 F
-(diagnostic message is printed.)144 400.8 Q 1.241(If a required ar)144
-424.8 R 1.241(gument is not found, and)-.18 F F2(getopts)3.741 E F0
-1.241(is not silent, a question mark \()3.741 F F2(?).833 E F0 3.742
-(\)i).833 G 3.742(sp)-3.742 G 1.242(laced in)-3.742 F F1(name)144 436.8
-Q F0(,).18 E F3(OPT)2.735 E(ARG)-.81 E F0 .234
-(is unset, and a diagnostic message is printed.)2.485 F(If)5.234 E F2
-(getopts)2.734 E F0 .234(is silent, then a colon \()2.734 F F2(:).833 E
-F0(\)).833 E(is placed in)144 448.8 Q F1(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 F2
-(getopts)144 472.8 Q F0 .902
+-.35 E 2.043(When the end of options is encountered,)144 84 R/F1 10
+/Times-Bold@0 SF(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/F2 9
+/Times-Bold@0 SF(OPTIND)144 96 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
+/F3 10/Times-Italic@0 SF(name)2.5 E F0(is set to ?.)2.5 E F1(getopts)144
+120 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 F3(ar)4.892 E(gs)-.37 E F0(,).27 E F1(getopts)
+144 132 Q F0(parses those instead.)2.5 E F1(getopts)144 156 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 F3(optstring)3.895 E F0 1.166
+(is a colon,)3.886 F F3(silent)4.006 E F0(error)4.346 E 1.071
+(reporting is used.)144 168 R 1.071
+(In normal operation, diagnostic messages are printed when in)6.071 F
+-.25(va)-.4 G 1.07(lid options or).25 F .393(missing option ar)144 180 R
+.393(guments are encountered.)-.18 F .394(If the v)5.394 F(ariable)-.25
+E F2(OPTERR)2.894 E F0 .394(is set to 0, no error messages)2.644 F
+(will be displayed, e)144 192 Q -.15(ve)-.25 G 2.5(ni).15 G 2.5(ft)-2.5
+G(he \214rst character of)-2.5 E F3(optstring)2.73 E F0(is not a colon.)
+2.72 E .667(If an in)144 216 R -.25(va)-.4 G .667(lid option is seen,)
+.25 F F1(getopts)3.167 E F0 .667(places ? into)3.167 F F3(name)3.527 E
+F0 .666(and, if not silent, prints an error message)3.347 F .399
+(and unsets)144 228 R F2(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 F2(OPT)2.899
+E(ARG)-.81 E F0 .4(and no)2.65 F(diagnostic message is printed.)144 240
+Q 1.242(If a required ar)144 264 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
+F3(name)144 276 Q F0(,).18 E F2(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 288 Q F3(name)2.86 E F0(and)2.68 E F2(OPT)
+2.5 E(ARG)-.81 E F0(is set to the option character found.)2.25 E F1
+(getopts)144 312 Q F0 .902
(returns true if an option, speci\214ed or unspeci\214ed, is found.)
-3.401 F .902(It returns f)5.902 F .902(alse if the end of)-.1 F
-(options is encountered or an error occurs.)144 484.8 Q F2(hash)108
-501.6 Q F0([)2.5 E F2(\255lr)A F0 2.5(][)C F2<ad70>-2.5 E F1(\214lename)
-2.5 E F0 2.5(][)C F2(\255dt)-2.5 E F0 2.5(][)C F1(name)-2.5 E F0(])A
-.858(Each time)144 513.6 R F2(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 F1(name)
+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 324 Q F1(hash)108 340.8
+Q F0([)2.5 E F1(\255lr)A F0 2.5(][)C F1<ad70>-2.5 E F3(\214lename)2.5 E
+F0 2.5(][)C F1(\255dt)-2.5 E F0 2.5(][)C F3(name)-2.5 E F0(])A .858
+(Each time)144 352.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 F3(name)
3.718 E F0 .858(is determined by searching)3.538 F .956
-(the directories in)144 525.6 R F2($P)3.456 E -.95(AT)-.74 G(H).95 E F0
+(the directories in)144 364.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 .243(If the)144 537.6
-R F2<ad70>2.743 E F0 .243
-(option is supplied, no path search is performed, and)2.743 F F1
-(\214lename)4.653 E F0 .242(is used as the full \214lename)2.923 F 1.711
-(of the command.)144 549.6 R(The)6.711 E F2<ad72>4.211 E F0 1.711
-(option causes the shell to for)4.211 F 1.712
-(get all remembered locations.)-.18 F(The)6.712 E F2<ad64>4.212 E F0
-.833(option causes the shell to for)144 561.6 R .833
-(get the remembered location of each)-.18 F F1(name)3.333 E F0 5.833(.I)
-C 3.333(ft)-5.833 G(he)-3.333 E F2<ad74>3.333 E F0 .833(option is sup-)
-3.333 F .703(plied, the full pathname to which each)144 573.6 R F1(name)
-3.204 E F0 .704(corresponds is printed.)3.204 F .704(If multiple)5.704 F
-F1(name)3.204 E F0(ar)3.204 E(guments)-.18 E .795(are supplied with)144
-585.6 R F2<ad74>3.295 E F0 3.295(,t)C(he)-3.295 E F1(name)3.295 E F0
-.795(is printed before the hashed full pathname.)3.295 F(The)5.795 E F2
+(viously-remembered pathname is discarded.)-.25 F .242(If the)144 376.8
+R F1<ad70>2.742 E F0 .243
+(option is supplied, no path search is performed, and)2.742 F F3
+(\214lename)4.653 E F0 .243(is used as the full \214lename)2.923 F 1.712
+(of the command.)144 388.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 F1<ad64>4.211 E F0
+.833(option causes the shell to for)144 400.8 R .833
+(get the remembered location of each)-.18 F F3(name)3.333 E F0 5.833(.I)
+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 412.8 R F3(name)
+3.204 E F0 .703(corresponds is printed.)3.204 F .703(If multiple)5.703 F
+F3(name)3.203 E F0(ar)3.203 E(guments)-.18 E .795(are supplied with)144
+424.8 R F1<ad74>3.295 E F0 3.295(,t)C(he)-3.295 E F3(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
-597.6 R .934(If no ar)5.934 F .935(guments are gi)-.18 F -.15(ve)-.25 G
-.935(n, or if).15 F(only)144 609.6 Q F2<ad6c>2.822 E F0 .322
-(is supplied, information about remembered commands is printed.)2.822 F
-.321(The return status is true)5.321 F(unless a)144 621.6 Q F1(name)2.86
+436.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 448.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 460.8 Q F3(name)2.86
E F0(is not found or an in)2.68 E -.25(va)-.4 G(lid option is supplied.)
-.25 E F2(help)108 638.4 Q F0([)2.5 E F2(\255dms)A F0 2.5(][)C F1
-(pattern)-2.5 E F0(])A .866(Display helpful information about b)144
-650.4 R .867(uiltin commands.)-.2 F(If)5.867 E F1(pattern)4.617 E F0
-.867(is speci\214ed,)3.607 F F2(help)3.367 E F0(gi)3.367 E -.15(ve)-.25
-G 3.367(sd).15 G(etailed)-3.367 E .307(help on all commands matching)144
-662.4 R F1(pattern)2.807 E F0 2.807(;o).24 G .307
-(therwise help for all the b)-2.807 F .306
-(uiltins and shell control struc-)-.2 F(tures is printed.)144 674.4 Q F2
-<ad64>144 686.4 Q F0(Display a short description of each)24.74 E F1
-(pattern)2.5 E F2<ad6d>144 698.4 Q F0(Display the description of each)
-21.97 E F1(pattern)2.5 E F0(in a manpage-lik)2.5 E 2.5(ef)-.1 G(ormat)
--2.5 E F2<ad73>144 710.4 Q F0
-(Display only a short usage synopsis for each)26.41 E F1(pattern)2.5 E
-F0(The return status is 0 unless no command matches)144 727.2 Q F1
-(pattern)2.5 E F0(.).24 E(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E
-(58)190.95 E 0 Cg EP
-%%Page: 59 59
-%%BeginPageSetup
-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(history [)108 84 Q/F2 10/Times-Italic@0 SF
-(n)A F1(])A(history \255c)108 96 Q(history \255d)108 108 Q F2(of)2.5 E
-(fset)-.18 E F1(history \255anrw)108 120 Q F0([)2.5 E F2(\214lename)A F0
-(])A F1(history \255p)108 132 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 144 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 156
-S .752
+.25 E F1(help)108 477.6 Q F0([)2.5 E F1(\255dms)A F0 2.5(][)C F3
+(pattern)-2.5 E F0(])A .867(Display helpful information about b)144
+489.6 R .867(uiltin commands.)-.2 F(If)5.867 E F3(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
+501.6 R F3(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 513.6 Q F1
+<ad64>144 525.6 Q F0(Display a short description of each)24.74 E F3
+(pattern)2.5 E F1<ad6d>144 537.6 Q F0(Display the description of each)
+21.97 E F3(pattern)2.5 E F0(in a manpage-lik)2.5 E 2.5(ef)-.1 G(ormat)
+-2.5 E F1<ad73>144 549.6 Q F0
+(Display only a short usage synopsis for each)26.41 E F3(pattern)2.5 E
+F0(The return status is 0 unless no command matches)144 566.4 Q F3
+(pattern)2.5 E F0(.).24 E F1(history [)108 583.2 Q F3(n)A F1(])A
+(history \255c)108 595.2 Q(history \255d)108 607.2 Q F3(of)2.5 E(fset)
+-.18 E F1(history \255anrw)108 619.2 Q F0([)2.5 E F3(\214lename)A F0(])A
+F1(history \255p)108 631.2 Q F3(ar)2.5 E(g)-.37 E F0([)2.5 E F3(ar)A 2.5
+(g.)-.37 G(..)-2.5 E F0(])A F1(history \255s)108 643.2 Q F3(ar)2.5 E(g)
+-.37 E F0([)2.5 E F3(ar)A 2.5(g.)-.37 G(..)-2.5 E F0(])A -.4(Wi)144
+655.2 S .752
(th no options, display the command history list with line numbers.).4 F
-.752(Lines listed with a)5.752 F F1(*)3.252 E F0(ha)3.252 E -.15(ve)-.2
-G .381(been modi\214ed.)144 168 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/F3 9
-/Times-Bold@0 SF(HISTTIMEFOR-)2.88 E(MA)144 180 Q(T)-.855 E F0 .264
-(is set and not null, it is used as a format string for)2.514 F F2
-(strftime)2.765 E F0 .265(\(3\) to display the time stamp asso-)B 1.02
-(ciated with each displayed history entry)144 192 R 6.019(.N)-.65 G
+.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 667.2 R .38(An ar)5.38 F .38(gument of)-.18 F
+F3(n)3.24 E F0 .38(lists only the last)3.12 F F3(n)3.24 E F0 2.88
+(lines. If)3.12 F .38(the shell v)2.88 F(ariable)-.25 E F2(HISTTIMEFOR-)
+2.881 E(MA)144 679.2 Q(T)-.855 E F0 .265
+(is set and not null, it is used as a format string for)2.515 F F3
+(strftime)2.764 E F0 .264(\(3\) to display the time stamp asso-)B 1.019
+(ciated with each displayed history entry)144 691.2 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 204 R(If)5.176 E F2(\214lename)
+(time stamp and the history line.)144 703.2 R(If)5.176 E F3(\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 216 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 F1<ad63>144 228 Q F0
+(not, the v)144 715.2 Q(alue of)-.25 E F2(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(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(59)
+200.665 E 0 Cg EP
+%%Page: 60 60
+%%BeginPageSetup
+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<ad63>144 84 Q F0
(Clear the history list by deleting all the entries.)25.86 E F1<ad64>144
-240 Q F2(of)2.5 E(fset)-.18 E F0(Delete the history entry at position)
-180 252 Q F2(of)2.5 E(fset)-.18 E F0(.)A F1<ad61>144 264 Q F0 .599
-(Append the `)25.3 F(`ne)-.74 E(w')-.25 E 3.099('h)-.74 G .598
-(istory lines \(history lines entered since the be)-3.099 F .598
-(ginning of the current)-.15 F F1(bash)180 276 Q F0
-(session\) to the history \214le.)2.5 E F1<ad6e>144 288 Q F0 .854(Read \
+96 Q/F2 10/Times-Italic@0 SF(of)2.5 E(fset)-.18 E F0
+(Delete the history entry at position)180 108 Q F2(of)2.5 E(fset)-.18 E
+F0(.)A F1<ad61>144 120 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 132 Q F0
+(session\) to the history \214le.)2.5 E F1<ad6e>144 144 Q F0 .854(Read \
the history lines not already read from the history \214le into the cur\
-rent history list.)24.74 F .773
-(These are lines appended to the history \214le since the be)180 300 R
-.772(ginning of the current)-.15 F F1(bash)3.272 E F0(ses-)3.272 E
-(sion.)180 312 Q F1<ad72>144 324 Q F0(Read the contents of the history \
+rent history list.)24.74 F .772
+(These are lines appended to the history \214le since the be)180 156 R
+.773(ginning of the current)-.15 F F1(bash)3.273 E F0(ses-)3.273 E
+(sion.)180 168 Q F1<ad72>144 180 Q F0(Read the contents of the history \
\214le and append them to the current history list.)25.86 E F1<ad77>144
-336 Q F0(Write the current history list to the history \214le, o)23.08 E
+192 Q F0(Write the current history list 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 348 Q F0 .625
+(ontents.)-2.5 E F1<ad70>144 204 Q F0 .626
(Perform history substitution on the follo)24.74 F(wing)-.25 E F2(ar)
-3.125 E(gs)-.37 E F0 .626(and display the result on the standard)3.125 F
-2.975(output. Does)180 360 R .475
+3.125 E(gs)-.37 E F0 .625(and display the result on the standard)3.125 F
+2.975(output. Does)180 216 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 372 Q(xpansion.)-.15 E F1<ad73>144 384 Q F0 .362
-(Store the)26.41 F F2(ar)3.192 E(gs)-.37 E F0 .363
-(in the history list as a single entry)3.132 F 5.363(.T)-.65 G .363
-(he last command in the history list is)-5.363 F(remo)180 396 Q -.15(ve)
+(normal history e)180 228 Q(xpansion.)-.15 E F1<ad73>144 240 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 252 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 .146(If the)144 412.8 R F3(HISTTIMEFORMA)2.645 E(T)
--.855 E F0 -.25(va)2.395 G .145
+(are added.)2.77 E .145(If the)144 268.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 .668(entry is written to the history \214le, mark)144 424.8 R .669
-(ed with the history comment character)-.1 F 5.669(.W)-.55 G .669
-(hen the history)-5.669 F .956(\214le is read, lines be)144 436.8 R .956
-(ginning with the history comment character follo)-.15 F .955
-(wed immediately by a digit)-.25 F .415
-(are interpreted as timestamps for the pre)144 448.8 R .416
-(vious history line.)-.25 F .416(The return v)5.416 F .416
+.25 F .669(entry is written to the history \214le, mark)144 280.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 292.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 304.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 460.8 R -.25(va)-.4 G(lid).25 E F2(of)2.999 E(fset)-.18 E F0
-(is)2.999 E(supplied as an ar)144 472.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 489.6 Q F0([)2.5 E F1(\255lnprs)A F0 2.5
-(][)C F2(jobspec)A F0(... ])2.5 E F1(jobs \255x)108 501.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 513.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 525.6 Q F0
+, an in)144 316.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 328.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
+345.6 Q F0([)2.5 E F1(\255lnprs)A F0 2.5(][)C F2(jobspec)A F0(... ])2.5
+E F1(jobs \255x)108 357.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 369.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 381.6 Q F0
(List process IDs in addition to the normal information.)27.52 E F1
-<ad6e>144 537.6 Q F0 .193(Display information only about jobs that ha)
-24.74 F .494 -.15(ve c)-.2 H .194(hanged status since the user w).15 F
-.194(as last noti-)-.1 F(\214ed of their status.)180 549.6 Q F1<ad70>144
-561.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 573.6 Q F0
-(Display only running jobs.)25.86 E F1<ad73>144 585.6 Q F0
-(Display only stopped jobs.)26.41 E(If)144 602.4 Q F2(jobspec)4.554 E F0
-.314(is gi)3.124 F -.15(ve)-.25 G .314
-(n, output is restricted to information about that job).15 F 5.313(.T)
--.4 G .313(he return status is 0 unless)-5.313 F(an in)144 614.4 Q -.25
+<ad6e>144 393.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 405.6 Q F1<ad70>144
+417.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 429.6 Q F0
+(Display only running jobs.)25.86 E F1<ad73>144 441.6 Q F0
+(Display only stopped jobs.)26.41 E(If)144 458.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 470.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 .394(If the)144 631.2 R F1
-<ad78>2.894 E F0 .394(option is supplied,)2.894 F F1(jobs)2.894 E F0
+E F2(jobspec)4.24 E F0(is supplied.)2.81 E .395(If the)144 487.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 .395
-(with the corre-)3.164 F(sponding process group ID, and e)144 643.2 Q
+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 499.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 660 Q F0([)2.5 E F1<ad73>A F2(sigspec)2.5 E F0(|)2.5 E F1
+F1(kill)108 516 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 672 Q F0([)2.5 E F2(sigspec)A F0(|)2.5 E F2 -.2(ex)2.5 G
-(it_status).2 E F0(])A .12(Send the signal named by)144 684 R F2
-(sigspec)2.96 E F0(or)2.93 E F2(signum)2.96 E F0 .119
-(to the processes named by)2.939 F F2(pid)3.869 E F0(or)3.389 E F2
-(jobspec)2.619 E F0(.).31 E F2(sigspec)5.459 E F0(is)2.929 E .318
-(either a case-insensiti)144 696 R .618 -.15(ve s)-.25 H .318
-(ignal name such as).15 F F3(SIGKILL)2.818 E F0 .319
-(\(with or without the)2.569 F F3(SIG)2.819 E F0 .319
-(pre\214x\) or a signal)2.569 F(number;)144 708 Q F2(signum)4.189 E F0
-1.349(is a signal number)4.169 F 6.349(.I)-.55 G(f)-6.349 E F2(sigspec)
+(kill \255l)108 528 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 540 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 552 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 564 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.348(is assumed.)3.599 F(An)6.348 E(ar)144 720 Q .522(gument of)-.18 F
+1.349(is assumed.)3.599 F(An)6.349 E(ar)144 576 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(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(59)190.95 E 0 Cg EP
-%%Page: 60 60
+.15 F .28(of the signals corresponding to the ar)144 588 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 600 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 612 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 624 Q -.25(va)-.4 G(lid option is encountered.).25
+E F1(let)108 640.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 652.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 664.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 681.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 693.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 705.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
+717.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 729.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(GNU Bash 4.2)72 768 Q
+(2012 July 5)151.505 E(60)200.665 E 0 Cg EP
+%%Page: 61 61
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E .28(of the signals corresponding to the ar)144 84 R .28
-(guments are listed, and the return status is 0.)-.18 F(The)5.28 E/F1 10
-/Times-Italic@0 SF -.2(ex)2.78 G(it_status).2 E F0(ar)144 96 Q .377
-(gument to)-.18 F/F2 10/Times-Bold@0 SF<ad6c>2.877 E F0 .378
-(is a number specifying either a signal number or the e)2.877 F .378
-(xit status of a process termi-)-.15 F .594(nated by a signal.)144 108 R
-F2(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 .593(alse if an error)-.1 F
-(occurs or an in)144 120 Q -.25(va)-.4 G(lid option is encountered.).25
-E F2(let)108 136.8 Q F1(ar)2.5 E(g)-.37 E F0([)2.5 E F1(ar)A(g)-.37 E F0
-(...])2.5 E(Each)144 148.8 Q F1(ar)3.026 E(g)-.37 E F0 .196
-(is an arithmetic e)2.916 F .197(xpression to be e)-.15 F -.25(va)-.25 G
-.197(luated \(see).25 F/F3 9/Times-Bold@0 SF .197(ARITHMETIC EV)2.697 F
-(ALU)-1.215 E -.855(AT)-.54 G(ION).855 E F0(abo)2.447 E -.15(ve)-.15 G
-2.697(\). If).15 F(the last)144 160.8 Q F1(ar)2.83 E(g)-.37 E F0 -.25
-(eva)2.72 G(luates to 0,).25 E F2(let)2.5 E F0
-(returns 1; 0 is returned otherwise.)2.5 E F2(local)108 177.6 Q F0([)2.5
-E F1(option)A F0 2.5(][)C F1(name)-2.5 E F0([=)A F1(value)A F0 2.5(].)C
-(..])-2.5 E -.15(Fo)144 189.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 F1(name)2.92 E F0 .06
-(is created, and assigned)2.74 F F1(value)2.56 E F0 5.06(.T).18 G(he)
--5.06 E F1(option)2.56 E F0 .06(can be)2.56 F(an)144 201.6 Q 3.152(yo)
--.15 G 3.152(ft)-3.152 G .652(he options accepted by)-3.152 F F2(declar)
-3.152 E(e)-.18 E F0 5.652(.W)C(hen)-5.652 E F2(local)3.152 E F0 .653
-(is used within a function, it causes the v)3.152 F(ari-)-.25 E(able)144
-213.6 Q F1(name)3.721 E F0 .861(to ha)3.541 F 1.161 -.15(ve a v)-.2 H
-.861(isible scope restricted to that function and its children.).15 F
--.4(Wi)5.86 G .86(th no operands,).4 F F2(local)144 225.6 Q F0 1.164
-(writes a list of local v)3.664 F 1.165
-(ariables to the standard output.)-.25 F 1.165(It is an error to use)
-6.165 F F2(local)3.665 E F0 1.165(when not)3.665 F .233
-(within a function.)144 237.6 R .233(The return status is 0 unless)5.233
-F F2(local)2.733 E F0 .233(is used outside a function, an in)2.733 F
--.25(va)-.4 G(lid).25 E F1(name)3.092 E F0(is)2.912 E(supplied, or)144
-249.6 Q F1(name)2.5 E F0(is a readonly v)2.5 E(ariable.)-.25 E F2
-(logout)108 266.4 Q F0(Exit a login shell.)9.33 E F2(map\214le)108 283.2
-Q F0([)2.5 E F2<ad6e>A F1(count)2.5 E F0 2.5(][)C F2<ad4f>-2.5 E F1
-(origin)2.5 E F0 2.5(][)C F2<ad73>-2.5 E F1(count)2.5 E F0 2.5(][)C F2
-<ad74>-2.5 E F0 2.5(][)C F2<ad75>-2.5 E F1(fd)2.5 E F0 2.5(][)C F2<ad43>
--2.5 E F1(callbac)2.5 E(k)-.2 E F0 2.5(][)C F2<ad63>-2.5 E F1(quantum)
-2.5 E F0 2.5(][)C F1(arr)-2.5 E(ay)-.15 E F0(])A F2 -.18(re)108 295.2 S
-(adarray).18 E F0([)2.5 E F2<ad6e>A F1(count)2.5 E F0 2.5(][)C F2<ad4f>
--2.5 E F1(origin)2.5 E F0 2.5(][)C F2<ad73>-2.5 E F1(count)2.5 E F0 2.5
-(][)C F2<ad74>-2.5 E F0 2.5(][)C F2<ad75>-2.5 E F1(fd)2.5 E F0 2.5(][)C
-F2<ad43>-2.5 E F1(callbac)2.5 E(k)-.2 E F0 2.5(][)C F2<ad63>-2.5 E F1
-(quantum)2.5 E F0 2.5(][)C F1(arr)-2.5 E(ay)-.15 E F0(])A .35
-(Read lines from the standard input into the inde)144 307.2 R -.15(xe)
--.15 G 2.851(da).15 G .351(rray v)-2.851 F(ariable)-.25 E F1(arr)2.851 E
-(ay)-.15 E F0 2.851(,o).32 G 2.851(rf)-2.851 G .351
-(rom \214le descriptor)-2.851 F F1(fd)2.851 E F0 1.249(if the)144 319.2
-R F2<ad75>3.749 E F0 1.249(option is supplied.)3.749 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 F1(arr)3.748 E(ay)-.15 E F0 6.248(.O)C 1.248(ptions, if supplied,)
--6.248 F(ha)144 331.2 Q .3 -.15(ve t)-.2 H(he follo).15 E
-(wing meanings:)-.25 E F2<ad6e>144 343.2 Q F0(Cop)24.74 E 2.5(ya)-.1 G
-2.5(tm)-2.5 G(ost)-2.5 E F1(count)2.7 E F0 2.5(lines. If)3.18 F F1
-(count)2.5 E F0(is 0, all lines are copied.)2.5 E F2<ad4f>144 355.2 Q F0
-(Be)22.52 E(gin assigning to)-.15 E F1(arr)2.83 E(ay)-.15 E F0(at inde)
-2.82 E(x)-.15 E F1(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 F2<ad73>144 367.2 Q F0
-(Discard the \214rst)26.41 E F1(count)2.5 E F0(lines read.)2.5 E F2
-<ad74>144 379.2 Q F0(Remo)26.97 E .3 -.15(ve a t)-.15 H(railing ne).15 E
-(wline from each line read.)-.25 E F2<ad75>144 391.2 Q F0
-(Read lines from \214le descriptor)24.74 E F1(fd)2.5 E F0
-(instead of the standard input.)2.5 E F2<ad43>144 403.2 Q F0(Ev)23.08 E
-(aluate)-.25 E F1(callbac)2.7 E(k)-.2 E F0(each time)3.17 E F1(quantum)
-2.5 E F0(lines are read.)2.5 E(The)5 E F2<ad63>2.5 E F0
-(option speci\214es)2.5 E F1(quantum)2.5 E F0(.).32 E F2<ad63>144 415.2
-Q F0(Specify the number of lines read between each call to)25.86 E F1
-(callbac)2.5 E(k)-.2 E F0(.).67 E(If)144 432 Q F2<ad43>2.967 E F0 .467
-(is speci\214ed without)2.967 F F2<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 F1
+-.35 E .232(within a function.)144 84 R .233
+(The return status is 0 unless)5.232 F/F1 10/Times-Bold@0 SF(local)2.733
+E F0 .233(is used outside a function, an in)2.733 F -.25(va)-.4 G(lid)
+.25 E/F2 10/Times-Italic@0 SF(name)3.093 E F0(is)2.913 E(supplied, or)
+144 96 Q F2(name)2.5 E F0(is a readonly v)2.5 E(ariable.)-.25 E F1
+(logout)108 112.8 Q F0(Exit a login shell.)9.33 E F1(map\214le)108 129.6
+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 141.6 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 153.6 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 165.6 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 177.6 Q .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E
+F1<ad6e>144 189.6 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 201.6 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 213.6 Q F0
+(Discard the \214rst)26.41 E F2(count)2.5 E F0(lines read.)2.5 E F1
+<ad74>144 225.6 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 237.6 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 249.6 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 261.6
+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 278.4 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 .262(plied the inde)144 444 R 2.762(xo)-.15 G
-2.762(ft)-2.762 G .262(he ne)-2.762 F .261(xt array element to be assig\
-ned and the line to be assigned to that element)-.15 F .274
-(as additional ar)144 456 R(guments.)-.18 E F1(callbac)5.274 E(k)-.2 E
-F0 .274(is e)2.774 F -.25(va)-.25 G .274
-(luated after the line is read b).25 F .275
-(ut before the array element is)-.2 F(assigned.)144 468 Q
-(If not supplied with an e)144 484.8 Q(xplicit origin,)-.15 E F2
-(map\214le)2.5 E F0(will clear)2.5 E F1(arr)2.5 E(ay)-.15 E F0
-(before assigning to it.)2.5 E F2(map\214le)144 501.6 Q F0 1.906
-(returns successfully unless an in)4.406 F -.25(va)-.4 G 1.905
-(lid option or option ar).25 F 1.905(gument is supplied,)-.18 F F1(arr)
-4.405 E(ay)-.15 E F0(is)4.405 E(in)144 513.6 Q -.25(va)-.4 G
-(lid or unassignable, or if).25 E F1(arr)2.5 E(ay)-.15 E F0
+(luated, it is sup-).25 F .261(plied the inde)144 290.4 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 302.4 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 314.4 Q
+(If not supplied with an e)144 331.2 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 348 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 360 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
-F2(popd)108 530.4 Q F0<5bad>2.5 E F2(n)A F0 2.5(][)C(+)-2.5 E F1(n)A F0
-2.5(][)C<ad>-2.5 E F1(n)A F0(])A(Remo)144 542.4 Q -.15(ve)-.15 G 2.799
-(se).15 G .299(ntries from the directory stack.)-2.799 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 .3(he top directory from the)-2.799 F 1.479(stack, and performs a)144
-554.4 R F2(cd)3.979 E F0 1.479(to the ne)3.979 F 3.979(wt)-.25 G 1.479
-(op directory)-3.979 F 6.479(.A)-.65 G -.18(rg)-6.479 G 1.478
-(uments, if supplied, ha).18 F 1.778 -.15(ve t)-.2 H 1.478(he follo).15
-F(wing)-.25 E(meanings:)144 566.4 Q F2<ad6e>144 578.4 Q F0 .551
+F1(popd)108 376.8 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 388.8 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
+400.8 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 412.8 Q F1<ad6e>144 424.8 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 590.4 Q F2(+)144 602.4 Q F1(n)A
-F0(Remo)25.3 E -.15(ve)-.15 G 2.64(st).15 G(he)-2.64 E F1(n)2.64 E F0
+(that only the stack is manipulated.)180 436.8 Q F1(+)144 448.8 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
-F2(dirs)2.64 E F0 2.64(,s)C .14(tarting with zero.)-2.64 F -.15(Fo)180
-614.4 S 2.5(re).15 G(xample:)-2.65 E/F4 10/Courier@0 SF(popd +0)2.5 E F0
+F1(dirs)2.64 E F0 2.64(,s)C .14(tarting with zero.)-2.64 F -.15(Fo)180
+460.8 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 F2<ad>144 626.4 Q F1(n)A F0
-(Remo)25.3 E -.15(ve)-.15 G 3.759(st).15 G(he)-3.759 E F1(n)3.759 E F0
-1.259(th entry counting from the right of the list sho)B 1.26(wn by)-.25
-F F2(dirs)3.76 E F0 3.76(,s)C 1.26(tarting with)-3.76 F 2.5(zero. F)180
-638.4 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 .644(If the)144 655.2 R F2(popd)
-3.144 E F0 .644(command is successful, a)3.144 F F2(dirs)3.143 E F0 .643
-(is performed as well, and the return status is 0.)3.143 F F2(popd)5.643
-E F0 .415(returns f)144 667.2 R .415(alse if an in)-.1 F -.25(va)-.4 G
-.415(lid option is encountered, the directory stack is empty).25 F 2.916
-(,an)-.65 G(on-e)-2.916 E .416(xistent direc-)-.15 F
-(tory stack entry is speci\214ed, or the directory change f)144 679.2 Q
-(ails.)-.1 E F2(printf)108 696 Q F0([)2.5 E F2<ad76>A F1(var)2.5 E F0(])
-A F1(format)2.5 E F0([)2.5 E F1(ar)A(guments)-.37 E F0(])A 1.437
-(Write the formatted)144 708 R F1(ar)3.937 E(guments)-.37 E F0 1.437
-(to the standard output under the control of the)3.937 F F1(format)3.936
-E F0 6.436(.T)C(he)-6.436 E F2<ad76>3.936 E F0 .126
-(option causes the output to be assigned to the v)144 720 R(ariable)-.25
-E F1(var)2.626 E F0 .126(rather than being printed to the standard)2.626
-F(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(60)190.95 E 0 Cg EP
-%%Page: 61 61
+-.65 E F4(popd +1)2.5 E F0(the second.)2.5 E F1<ad>144 472.8 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 484.8 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
+501.6 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 513.6 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 525.6 Q
+(ails.)-.1 E F1(printf)108 542.4 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 554.4 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 566.4 R(ariable)
+-.25 E F2(var)2.626 E F0 .126(rather than being printed to the standard)
+2.626 F(output.)144 578.4 Q(The)144 602.4 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 614.4 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 626.4 R .037
+(xt successi)-.15 F -.15(ve)-.25 G F2(ar)144 638.4 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 650.4 Q
+(xtensions:)-.15 E F1(%b)144 662.4 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 674.4 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 686.4 Q(ginning with)-.15 E F1(\\0)2.5 E F0
+(may contain up to four digits\).)2.5 E F1(%q)144 698.4 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 710.4 Q(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E
+(61)200.665 E 0 Cg EP
+%%Page: 62 62
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(output.)144 84 Q(The)144 108 Q/F1 10/Times-Italic@0 SF(format)
-3.018 E F0 .517(is a character string which contains three types of obj\
-ects: plain characters, which are)3.018 F .704(simply copied to standar\
-d output, character escape sequences, which are con)144 120 R -.15(ve)
--.4 G .704(rted and copied to).15 F .036(the standard output, and forma\
-t speci\214cations, each of which causes printing of the ne)144 132 R
-.036(xt successi)-.15 F -.15(ve)-.25 G F1(ar)144 144 Q(gument)-.37 E F0
-5.531(.I)C 3.031(na)-5.531 G .531(ddition to the standard)-3.031 F F1
-(printf)3.032 E F0 .532(\(1\) format speci\214cations,)B/F2 10
-/Times-Bold@0 SF(printf)3.032 E F0 .532(interprets the follo)3.032 F(w-)
--.25 E(ing e)144 156 Q(xtensions:)-.15 E F2(%b)144 168 Q F0(causes)20.44
-E F2(printf)5.115 E F0 2.615(to e)5.115 F 2.615
-(xpand backslash escape sequences in the corresponding)-.15 F F1(ar)
-5.115 E(gument)-.37 E F0(\(e)180 180 Q .608(xcept that)-.15 F F2(\\c)
-3.108 E F0 .608(terminates output, backslashes in)3.108 F F2<5c08>3.108
-E F0(,)A F2(\\")3.108 E F0 3.108(,a)C(nd)-3.108 E F2(\\?)3.108 E F0 .608
-(are not remo)3.108 F -.15(ve)-.15 G .608(d, and octal).15 F(escapes be)
-180 192 Q(ginning with)-.15 E F2(\\0)2.5 E F0
-(may contain up to four digits\).)2.5 E F2(%q)144 204 Q F0(causes)20.44
-E F2(printf)2.51 E F0 .01(to output the corresponding)2.51 F F1(ar)2.51
-E(gument)-.37 E F0 .01(in a format that can be reused as shell)2.51 F
-(input.)180 216 Q F2(%\()144 228 Q F1(datefmt)A F2(\)T)A F0(causes)180
-240 Q F2(printf)4.403 E F0 1.904
-(to output the date-time string resulting from using)4.403 F F1(datefmt)
-4.404 E F0 1.904(as a format)4.404 F .381(string for)180 252 R F1
-(strftime)2.881 E F0 2.881(\(3\). The)B(corresponding)2.881 E F1(ar)
+-.35 E/F1 10/Times-Bold@0 SF(%\()144 84 Q/F2 10/Times-Italic@0 SF
+(datefmt)A F1(\)T)A F0(causes)180 96 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 108 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 .457(of seconds since the epoch.)180
-264 R -1 -.8(Tw o)5.458 H .458(special ar)3.758 F .458(gument v)-.18 F
+(ger representing the number)-.15 F .458(of seconds since the epoch.)180
+120 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 276 Q(as in)
--.1 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E(Ar)144 292.8 Q .464(guments to n\
-on-string format speci\214ers are treated as C constants, e)-.18 F .463
-(xcept that a leading plus or)-.15 F 1.258(minus sign is allo)144 304.8
+(current time, and -2 represents the time the shell w)180 132 Q(as in)
+-.1 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E(Ar)144 148.8 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 160.8
R 1.259
(wed, and if the leading character is a single or double quote, the v)
--.25 F 1.259(alue is the)-.25 F(ASCII v)144 316.8 Q(alue of the follo)
--.25 E(wing character)-.25 E(.)-.55 E(The)144 333.6 Q F1(format)3.424 E
-F0 .923(is reused as necessary to consume all of the)3.424 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 .923(requires more)3.423 F F1(ar)144 345.6 Q(guments)-.37 E
-F0 .033(than are supplied, the e)2.533 F .033
+-.25 F 1.258(alue is the)-.25 F(ASCII v)144 172.8 Q(alue of the follo)
+-.25 E(wing character)-.25 E(.)-.55 E(The)144 189.6 Q F2(format)3.423 E
+F0 .923(is reused as necessary to consume all of the)3.423 F F2(ar)3.423
+E(guments)-.37 E F0 5.923(.I)C 3.423(ft)-5.923 G(he)-3.423 E F2(format)
+3.423 E F0 .924(requires more)3.424 F F2(ar)144 201.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 .034(alue or null string,)
--.25 F(as appropriate, had been supplied.)144 357.6 Q(The return v)5 E
-(alue is zero on success, non-zero on f)-.25 E(ailure.)-.1 E F2(pushd)
-108 374.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 386.4 Q F0([)2.5 E F2<ad6e>A F0
-2.5(][)C F1(dir)-2.5 E F0(])A .64(Adds a directory to the top of the di\
-rectory stack, or rotates the stack, making the ne)144 398.4 R 3.139(wt)
--.25 G .639(op of the)-3.139 F 1.315(stack the current w)144 410.4 R
-1.315(orking directory)-.1 F 6.315(.W)-.65 G 1.315(ith no ar)-6.715 F
-1.315(guments, e)-.18 F 1.316(xchanges the top tw)-.15 F 3.816(od)-.1 G
-1.316(irectories and)-3.816 F .872
-(returns 0, unless the directory stack is empty)144 422.4 R 5.871(.A)
--.65 G -.18(rg)-5.871 G .871(uments, if supplied, ha).18 F 1.171 -.15
-(ve t)-.2 H .871(he follo).15 F .871(wing mean-)-.25 F(ings:)144 434.4 Q
-F2<ad6e>144 446.4 Q F0 .902(Suppresses the normal change of directory w\
+.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 213.6 Q(The return v)5 E
+(alue is zero on success, non-zero on f)-.25 E(ailure.)-.1 E F1(pushd)
+108 230.4 Q F0([)2.5 E F1<ad6e>A F0 2.5(][)C(+)-2.5 E F2(n)A F0 2.5(][)C
+<ad>-2.5 E F2(n)A F0(])A F1(pushd)108 242.4 Q F0([)2.5 E F1<ad6e>A F0
+2.5(][)C F2(dir)-2.5 E F0(])A .639(Adds a directory to the top of the d\
+irectory stack, or rotates the stack, making the ne)144 254.4 R 3.14(wt)
+-.25 G .64(op of the)-3.14 F 1.316(stack the current w)144 266.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 278.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 290.4 Q
+F1<ad6e>144 302.4 Q F0 .902(Suppresses the normal change of directory w\
hen adding directories to the stack, so that)24.74 F
-(only the stack is manipulated.)180 458.4 Q F2(+)144 470.4 Q F1(n)A F0
-1.268(Rotates the stack so that the)25.3 F F1(n)3.768 E F0 1.267
-(th directory \(counting from the left of the list sho)B 1.267(wn by)
--.25 F F2(dirs)180 482.4 Q F0 2.5(,s)C
-(tarting with zero\) is at the top.)-2.5 E F2<ad>144 494.4 Q F1(n)A F0
-.92(Rotates the stack so that the)25.3 F F1(n)3.42 E F0 .92
+(only the stack is manipulated.)180 314.4 Q F1(+)144 326.4 Q F2(n)A F0
+1.267(Rotates the stack so that the)25.3 F F2(n)3.767 E F0 1.268
+(th directory \(counting from the left of the list sho)B 1.268(wn by)
+-.25 F F1(dirs)180 338.4 Q F0 2.5(,s)C
+(tarting with zero\) is at the top.)-2.5 E F1<ad>144 350.4 Q F2(n)A F0
+.92(Rotates the stack so that the)25.3 F F2(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 506.4 Q F0 2.5(,s)C(tarting with zero\) is at the top.)
--2.5 E F1(dir)144.35 518.4 Q F0(Adds)23.98 E F1(dir)3.138 E F0 .288
-(to the directory stack at the top, making it the ne)3.518 F 2.787(wc)
--.25 G .287(urrent w)-2.787 F .287(orking directory as)-.1 F
-(if it had been supplied as the ar)180 530.4 Q(gument to the)-.18 E F2
-(cd)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E .488(If the)144 547.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 559.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 571.2 R 3.346(,an)-.65 G(on-e)-3.346 E .847(xistent\
+F F1(dirs)180 362.4 Q F0 2.5(,s)C(tarting with zero\) is at the top.)
+-2.5 E F2(dir)144.35 374.4 Q F0(Adds)23.98 E F2(dir)3.137 E F0 .287
+(to the directory stack at the top, making it the ne)3.517 F 2.788(wc)
+-.25 G .288(urrent w)-2.788 F .288(orking directory as)-.1 F
+(if it had been supplied as the ar)180 386.4 Q(gument to the)-.18 E F1
+(cd)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E .489(If the)144 403.2 R F1(pushd)
+2.989 E F0 .489(command is successful, a)2.989 F F1(dirs)2.988 E F0 .488
+(is performed as well.)2.988 F .488(If the \214rst form is used,)5.488 F
+F1(pushd)2.988 E F0 1.039(returns 0 unless the cd to)144 415.2 R F2(dir)
+3.889 E F0 -.1(fa)4.269 G 3.539(ils. W).1 F 1.039(ith the second form,)
+-.4 F F1(pushd)3.54 E F0 1.04(returns 0 unless the directory)3.54 F .847
+(stack is empty)144 427.2 R 3.347(,an)-.65 G(on-e)-3.347 E .847(xistent\
directory stack element is speci\214ed, or the directory change to the)
--.15 F(speci\214ed ne)144 583.2 Q 2.5(wc)-.25 G(urrent directory f)-2.5
-E(ails.)-.1 E F2(pwd)108 600 Q F0([)2.5 E F2(\255LP)A F0(])A .845
-(Print the absolute pathname of the current w)144 612 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
-624 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 636 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 648 R -.25(va)
--.4 G(lid).25 E(option is supplied.)144 660 Q F2 -.18(re)108 676.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 688.8 Q F1(name)A F0
+-.15 F(speci\214ed ne)144 439.2 Q 2.5(wc)-.25 G(urrent directory f)-2.5
+E(ails.)-.1 E F1(pwd)108 456 Q F0([)2.5 E F1(\255LP)A F0(])A .844
+(Print the absolute pathname of the current w)144 468 R .845
+(orking directory)-.1 F 5.845(.T)-.65 G .845
+(he pathname printed contains no)-5.845 F .182(symbolic links if the)144
+480 R F1<ad50>2.681 E F0 .181(option is supplied or the)2.681 F F1 .181
+(\255o ph)2.681 F(ysical)-.15 E F0 .181(option to the)2.681 F F1(set)
+2.681 E F0 -.2(bu)2.681 G .181(iltin command is).2 F 3.263(enabled. If)
+144 492 R(the)3.263 E F1<ad4c>3.263 E F0 .763
+(option is used, the pathname printed may contain symbolic links.)3.263
+F .764(The return)5.764 F 1.36(status is 0 unless an error occurs while\
+ reading the name of the current directory or an in)144 504 R -.25(va)
+-.4 G(lid).25 E(option is supplied.)144 516 Q F1 -.18(re)108 532.8 S(ad)
+.18 E F0([)3.816 E F1(\255ers)A F0 3.816(][)C F1<ad61>-3.816 E F2(aname)
+3.816 E F0 3.816(][)C F1<ad64>-3.816 E F2(delim)3.816 E F0 3.816(][)C F1
+<ad69>-3.816 E F2(te)3.816 E(xt)-.2 E F0 3.816(][)C F1<ad6e>-3.816 E F2
+(nc)3.816 E(har)-.15 E(s)-.1 E F0 3.817(][)C F1<ad4e>-3.817 E F2(nc)
+3.817 E(har)-.15 E(s)-.1 E F0 3.817(][)C F1<ad70>-3.817 E F2(pr)3.817 E
+(ompt)-.45 E F0 3.817(][)C F1<ad74>-3.817 E F2(timeout)3.817 E F0 3.817
+(][)C F1<ad75>-3.817 E F2(fd)3.817 E F0(])A([)108 544.8 Q F2(name)A F0
(...])2.5 E .516(One line is read from the standard input, or from the \
-\214le descriptor)144 700.8 R F1(fd)3.016 E F0 .516(supplied as an ar)
-3.016 F .516(gument to)-.18 F(the)144 712.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 724.8 R -.15(ve)-.15 G 2.92(rw).15 G .42
+\214le descriptor)144 556.8 R F2(fd)3.016 E F0 .516(supplied as an ar)
+3.016 F .517(gument to)-.18 F(the)144 568.8 Q F1<ad75>2.539 E F0 .039
+(option, and the \214rst w)2.539 F .038(ord is assigned to the \214rst)
+-.1 F F2(name)2.538 E F0 2.538(,t).18 G .038(he second w)-2.538 F .038
+(ord to the second)-.1 F F2(name)2.538 E F0(,).18 E .42
+(and so on, with lefto)144 580.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(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(61)190.95 E 0 Cg EP
-%%Page: 62 62
+(ening separators assigned to the last)-.15 F F2(name)2.92 E F0 5.42(.I)
+.18 G 2.92(ft)-5.42 G(here)-2.92 E .541(are fe)144 592.8 R .541(wer w)
+-.25 F .541(ords read from the input stream than names, the remaining n\
+ames are assigned empty)-.1 F -.25(va)144 604.8 S 2.51(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 F1(\\)A F0 2.511(\)m)C(ay)-2.511 E 1.891
+(be used to remo)144 616.8 R 2.191 -.15(ve a)-.15 H 2.191 -.15(ny s).15
+H 1.891(pecial meaning for the ne).15 F 1.89
+(xt character read and for line continuation.)-.15 F
+(Options, if supplied, ha)144 628.8 Q .3 -.15(ve t)-.2 H(he follo).15 E
+(wing meanings:)-.25 E F1<ad61>144 640.8 Q F2(aname)2.5 E F0 1.049
+(The w)180 652.8 R 1.049
+(ords are assigned to sequential indices of the array v)-.1 F(ariable)
+-.25 E F2(aname)3.55 E F0 3.55(,s).18 G 1.05(tarting at 0.)-3.55 F F2
+(aname)180.33 664.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 F2(name)2.5 E F0(ar)2.5
+E(guments are ignored.)-.18 E F1<ad64>144 676.8 Q F2(delim)2.5 E F0
+(The \214rst character of)180 688.8 Q F2(delim)2.5 E F0
+(is used to terminate the input line, rather than ne)2.5 E(wline.)-.25 E
+F1<ad65>144 700.8 Q F0 .373
+(If the standard input is coming from a terminal,)25.86 F F1 -.18(re)
+2.873 G(adline).18 E F0(\(see)2.873 E F3(READLINE)2.872 E F0(abo)2.622 E
+-.15(ve)-.15 G 2.872(\)i).15 G 2.872(su)-2.872 G(sed)-2.872 E .218
+(to obtain the line.)180 712.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 724.8 Q -.15(ve)-.25 G 2.5(\)e).15 G(diting settings.)-2.5 E
+(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(62)200.665 E 0 Cg EP
+%%Page: 63 63
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E .54(are fe)144 84 R .54(wer w)-.25 F .541(ords read from the inp\
-ut stream than names, the remaining names are assigned empty)-.1 F -.25
-(va)144 96 S 2.511(lues. The).25 F .011(characters in)2.511 F/F1 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 10
-/Times-Bold@0 SF(\\)A F0 2.51(\)m)C(ay)-2.51 E 1.89(be used to remo)144
-108 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 120 Q .3 -.15(ve t)-.2 H(he follo).15 E
-(wing meanings:)-.25 E F2<ad61>144 132 Q/F3 10/Times-Italic@0 SF(aname)
-2.5 E F0 1.05(The w)180 144 R 1.049
-(ords are assigned to sequential indices of the array v)-.1 F(ariable)
--.25 E F3(aname)3.549 E F0 3.549(,s).18 G 1.049(tarting at 0.)-3.549 F
-F3(aname)180.33 156 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 F3(name)2.5 E F0(ar)2.5
-E(guments are ignored.)-.18 E F2<ad64>144 168 Q F3(delim)2.5 E F0
-(The \214rst character of)180 180 Q F3(delim)2.5 E F0
-(is used to terminate the input line, rather than ne)2.5 E(wline.)-.25 E
-F2<ad65>144 192 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 F1(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 204 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 216 Q -.15(ve)-.25 G 2.5(\)e).15 G
-(diting settings.)-2.5 E F2<ad69>144 228 Q F3(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 F3(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 240 Q(gins.)-.15 E F2<ad6e>144 252 Q F3(nc)2.5 E(har)
--.15 E(s)-.1 E F2 -.18(re)180 264 S(ad).18 E F0 1.395
-(returns after reading)3.895 F F3(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 276 Q(ut honor a delimiter if fe)-.2 E(wer than)-.25
-E F3(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 288
-Q F3(nc)2.5 E(har)-.15 E(s)-.1 E F2 -.18(re)180 300 S(ad).18 E F0 1.269
-(returns after reading e)3.769 F(xactly)-.15 E F3(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 312 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 324 R
-F2 -.18(re)3.503 G(ad).18 E F0 1.003(to return until)3.503 F F3(nc)3.503
-E(har)-.15 E(s)-.1 E F0(characters are read.)180 336 Q F2<ad70>144 348 Q
-F3(pr)2.5 E(ompt)-.45 E F0(Display)180 360 Q F3(pr)3.661 E(ompt)-.45 E
-F0 1.161(on standard error)3.661 F 3.661(,w)-.4 G 1.161
+-.35 E/F1 10/Times-Bold@0 SF<ad69>144 84 Q/F2 10/Times-Italic@0 SF(te)
+2.5 E(xt)-.2 E F0(If)10.78 E F1 -.18(re)2.716 G(adline).18 E F0 .216
+(is being used to read the line,)2.716 F F2(te)2.716 E(xt)-.2 E F0 .216
+(is placed into the editing b)2.716 F(uf)-.2 E .215(fer before edit-)
+-.25 F(ing be)180 96 Q(gins.)-.15 E F1<ad6e>144 108 Q F2(nc)2.5 E(har)
+-.15 E(s)-.1 E F1 -.18(re)180 120 S(ad).18 E F0 1.394
+(returns after reading)3.894 F F2(nc)3.894 E(har)-.15 E(s)-.1 E F0 1.395
+(characters rather than w)3.894 F 1.395(aiting for a complete line of)
+-.1 F(input, b)180 132 Q(ut honor a delimiter if fe)-.2 E(wer than)-.25
+E F2(nc)2.5 E(har)-.15 E(s)-.1 E F0
+(characters are read before the delimiter)2.5 E(.)-.55 E F1<ad4e>144 144
+Q F2(nc)2.5 E(har)-.15 E(s)-.1 E F1 -.18(re)180 156 S(ad).18 E F0 1.269
+(returns after reading e)3.77 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.269
+(aiting for a complete)-.1 F .274
+(line of input, unless EOF is encountered or)180 168 R F1 -.18(re)2.775
+G(ad).18 E F0 .275(times out.)2.775 F .275(Delimiter characters encoun-)
+5.275 F 1.003
+(tered in the input are not treated specially and do not cause)180 180 R
+F1 -.18(re)3.502 G(ad).18 E F0 1.002(to return until)3.502 F F2(nc)3.502
+E(har)-.15 E(s)-.1 E F0(characters are read.)180 192 Q F1<ad70>144 204 Q
+F2(pr)2.5 E(ompt)-.45 E F0(Display)180 216 Q F2(pr)3.66 E(ompt)-.45 E F0
+1.161(on standard error)3.66 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 372 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 F2
-<ad72>144 384 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 396 Q(In particular)5 E 2.5(,ab)-.4 G
+-.25 F(an)180 228 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 240 Q F0 .544(Backslash does not act as an escape character)
+25.86 F 5.543(.T)-.55 G .543(he backslash is considered to be part of)
+-5.543 F(the line.)180 252 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 F2<ad73>144 408 Q F0(Silent mode.)26.41 E
-(If input is coming from a terminal, characters are not echoed.)5 E F2
-<ad74>144 420 Q F3(timeout)2.5 E F0(Cause)180 432 Q F2 -.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 F3(timeout)
-180 444 Q F0(seconds.)3.496 E F3(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 456 R .576(This option is only ef)
-5.576 F(fecti)-.25 E .876 -.15(ve i)-.25 H(f).15 E F2 -.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 468 R .142
-(fect when reading from re)-.25 F .142(gular \214les.)-.15 F(If)5.142 E
-F3(timeout)2.642 E F0 .142(is 0,)2.642 F F2 -.18(re)180 480 S(ad).18 E
+-.25 E F1<ad73>144 264 Q F0(Silent mode.)26.41 E
+(If input is coming from a terminal, characters are not echoed.)5 E F1
+<ad74>144 276 Q F2(timeout)2.5 E F0(Cause)180 288 Q F1 -.18(re)3.548 G
+(ad).18 E F0 1.048(to time out and return f)3.548 F 1.048
+(ailure if a complete line of input is not read within)-.1 F F2(timeout)
+180 300 Q F0(seconds.)3.497 E F2(timeout)5.997 E F0 .997
+(may be a decimal number with a fractional portion follo)3.497 F(wing)
+-.25 E .576(the decimal point.)180 312 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 .142
+(pipe, or other special \214le; it has no ef)180 324 R .142
+(fect when reading from re)-.25 F .142(gular \214les.)-.15 F(If)5.141 E
+F2(timeout)2.641 E F0 .141(is 0,)2.641 F F1 -.18(re)180 336 S(ad).18 E
F0 .61(returns immediately)3.11 F 3.11(,w)-.65 G .61
(ithout trying to read an)-3.11 F 3.11(yd)-.15 G 3.11(ata. The)-3.11 F
--.15(ex)3.11 G .61(it statis is 0 if input is).15 F -.2(av)180 492 S
-1.223(ailable on the speci\214ed \214le descriptor)-.05 F 3.723(,n)-.4 G
-1.223(on-zero otherwise.)-3.723 F 1.224(The e)6.223 F 1.224
-(xit status is greater)-.15 F(than 128 if the timeout is e)180 504 Q
-(xceeded.)-.15 E F2<ad75>144 516 Q F3(fd)2.5 E F0
-(Read input from \214le descriptor)14.46 E F3(fd)2.5 E F0(.)A .192
-(If no)144 532.8 R F3(names)3.052 E F0 .192
-(are supplied, the line read is assigned to the v)2.962 F(ariable)-.25 E
-F1(REPL)2.691 E(Y)-.828 E/F4 9/Times-Roman@0 SF(.)A F0 .191
-(The return code is zero,)4.691 F 1.343
-(unless end-of-\214le is encountered,)144 544.8 R F2 -.18(re)3.843 G(ad)
+-.15(ex)3.11 G .61(it statis is 0 if input is).15 F -.2(av)180 348 S
+1.224(ailable on the speci\214ed \214le descriptor)-.05 F 3.723(,n)-.4 G
+1.223(on-zero otherwise.)-3.723 F 1.223(The e)6.223 F 1.223
+(xit status is greater)-.15 F(than 128 if the timeout is e)180 360 Q
+(xceeded.)-.15 E F1<ad75>144 372 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 388.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 400.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.843 F .872
-(128\), a v)144 556.8 R .871
+(times out \(in which case the return code is greater than)3.844 F .871
+(128\), a v)144 412.8 R .871
(ariable assignment error \(such as assigning to a readonly v)-.25 F
-.871(ariable\) occurs, or an in)-.25 F -.25(va)-.4 G(lid).25 E
-(\214le descriptor is supplied as the ar)144 568.8 Q(gument to)-.18 E F2
-<ad75>2.5 E F0(.)A F2 -.18(re)108 585.6 S(adonly).18 E F0([)2.5 E F2
-(\255aAf)A F0 2.5(][)C F2<ad70>-2.5 E F0 2.5(][)C F3(name)-2.5 E F0([=)A
-F3(wor)A(d)-.37 E F0 2.5(].)C(..])-2.5 E .77(The gi)144 597.6 R -.15(ve)
--.25 G(n).15 E F3(names)3.27 E F0 .77(are mark)3.27 F .77
-(ed readonly; the v)-.1 F .77(alues of these)-.25 F F3(names)3.63 E F0
-.77(may not be changed by subse-)3.54 F 1.097(quent assignment.)144
-609.6 R 1.097(If the)6.097 F F2<ad66>3.597 E F0 1.097
-(option is supplied, the functions corresponding to the)3.597 F F3
-(names)3.596 E F0 1.096(are so)3.596 F(mark)144 621.6 Q 3.334(ed. The)
--.1 F F2<ad61>3.334 E F0 .834(option restricts the v)3.334 F .834
+.872(ariable\) occurs, or an in)-.25 F -.25(va)-.4 G(lid).25 E
+(\214le descriptor is supplied as the ar)144 424.8 Q(gument to)-.18 E F1
+<ad75>2.5 E F0(.)A F1 -.18(re)108 441.6 S(adonly).18 E F0([)2.5 E F1
+(\255aAf)A F0 2.5(][)C F1<ad70>-2.5 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 453.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.096(quent assignment.)144
+465.6 R 1.096(If the)6.096 F F1<ad66>3.596 E F0 1.097
+(option is supplied, the functions corresponding to the)3.596 F F2
+(names)3.597 E F0 1.097(are so)3.597 F(mark)144 477.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 F2<ad41>3.334 E F0 .834(option restricts the v)3.334 F(ari-)
--.25 E .777(ables to associati)144 633.6 R 1.077 -.15(ve a)-.25 H 3.277
-(rrays. If).15 F .777(both options are supplied,)3.277 F F2<ad41>3.277 E
-F0(tak)3.277 E .776(es precedence.)-.1 F .776(If no)5.776 F F3(name)
-3.636 E F0(ar)3.456 E(gu-)-.18 E .521(ments are gi)144 645.6 R -.15(ve)
--.25 G .521(n, or if the).15 F F2<ad70>3.021 E F0 .521
+-3.334 F F1<ad41>3.334 E F0 .834(option restricts the v)3.334 F(ari-)
+-.25 E .776(ables to associati)144 489.6 R 1.076 -.15(ve a)-.25 H 3.276
+(rrays. If).15 F .777(both options are supplied,)3.276 F F1<ad41>3.277 E
+F0(tak)3.277 E .777(es precedence.)-.1 F .777(If no)5.777 F F2(name)
+3.637 E F0(ar)3.457 E(gu-)-.18 E .522(ments are gi)144 501.6 R -.15(ve)
+-.25 G .521(n, or if the).15 F F1<ad70>3.021 E F0 .521
(option is supplied, a list of all readonly names is printed.)3.021 F
-.522(The other)5.521 F .295(options may be used to restrict the output \
-to a subset of the set of readonly names.)144 657.6 R(The)5.295 E F2
-<ad70>2.795 E F0(option)2.795 E .786
+.521(The other)5.521 F .295(options may be used to restrict the output \
+to a subset of the set of readonly names.)144 513.6 R(The)5.296 E F1
+<ad70>2.796 E F0(option)2.796 E .786
(causes output to be displayed in a format that may be reused as input.)
-144 669.6 R .786(If a v)5.786 F .786(ariable name is fol-)-.25 F(lo)144
-681.6 Q .718(wed by =)-.25 F F3(wor)A(d)-.37 E F0 3.218(,t)C .718(he v)
--3.218 F .718(alue of the v)-.25 F .718(ariable is set to)-.25 F F3(wor)
+144 525.6 R .786(If a v)5.786 F .785(ariable name is fol-)-.25 F(lo)144
+537.6 Q .717(wed by =)-.25 F F2(wor)A(d)-.37 E F0 3.218(,t)C .718(he v)
+-3.218 F .718(alue of the v)-.25 F .718(ariable is set to)-.25 F F2(wor)
3.218 E(d)-.37 E F0 5.718(.T)C .718(he return status is 0 unless an in)
-5.718 F -.25(va)-.4 G(lid).25 E .26(option is encountered, one of the)
-144 693.6 R F3(names)3.12 E F0 .26(is not a v)3.03 F .26(alid shell v)
--.25 F .26(ariable name, or)-.25 F F2<ad66>2.76 E F0 .26
-(is supplied with a)2.76 F F3(name)144.36 705.6 Q F0
-(that is not a function.)2.68 E(GNU Bash 4.2)72 768 Q(2012 February 4)
-141.79 E(62)190.95 E 0 Cg EP
-%%Page: 63 63
-%%BeginPageSetup
-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 -.18(re)108 84 S(tur).18 E(n)-.15 E F0([)
-2.5 E/F2 10/Times-Italic@0 SF(n)A F0(])A .021
-(Causes a function to stop e)144 96 R -.15(xe)-.15 G .021
-(cuting and return the v).15 F .021(alue speci\214ed by)-.25 F F2(n)2.88
-E F0 .02(to its caller)2.76 F 5.02(.I)-.55 G(f)-5.02 E F2(n)2.88 E F0
-.02(is omitted,)2.76 F .469
-(the return status is that of the last command e)144 108 R -.15(xe)-.15
-G .469(cuted in the function body).15 F 5.469(.I)-.65 G(f)-5.469 E F1
--.18(re)2.969 G(tur).18 E(n)-.15 E F0 .469(is used out-)2.969 F .467
-(side a function, b)144 120 R .467(ut during e)-.2 F -.15(xe)-.15 G .467
-(cution of a script by the).15 F F1(.)2.967 E F0(\()5.467 E F1(sour)A
-(ce)-.18 E F0 2.966(\)c)C .466(ommand, it causes the shell to)-2.966 F
-.087(stop e)144 132 R -.15(xe)-.15 G .087
+144 549.6 R F2(names)3.12 E F0 .26(is not a v)3.03 F .26(alid shell v)
+-.25 F .26(ariable name, or)-.25 F F1<ad66>2.76 E F0 .26
+(is supplied with a)2.76 F F2(name)144.36 561.6 Q F0
+(that is not a function.)2.68 E F1 -.18(re)108 578.4 S(tur).18 E(n)-.15
+E F0([)2.5 E F2(n)A F0(])A .02(Causes a function to stop e)144 590.4 R
+-.15(xe)-.15 G .02(cuting and return the v).15 F .021
+(alue speci\214ed by)-.25 F F2(n)2.881 E F0 .021(to its caller)2.761 F
+5.021(.I)-.55 G(f)-5.021 E F2(n)2.881 E F0 .021(is omitted,)2.761 F .469
+(the return status is that of the last command e)144 602.4 R -.15(xe)
+-.15 G .469(cuted in the function body).15 F 5.469(.I)-.65 G(f)-5.469 E
+F1 -.18(re)2.969 G(tur).18 E(n)-.15 E F0 .468(is used out-)2.969 F .466
+(side a function, b)144 614.4 R .466(ut during e)-.2 F -.15(xe)-.15 G
+.467(cution of a script by the).15 F F1(.)2.967 E F0(\()5.467 E F1(sour)
+A(ce)-.18 E F0 2.967(\)c)C .467(ommand, it causes the shell to)-2.967 F
+.088(stop e)144 626.4 R -.15(xe)-.15 G .087
(cuting that script and return either).15 F F2(n)2.947 E F0 .087
(or the e)2.827 F .087(xit status of the last command e)-.15 F -.15(xe)
--.15 G .088(cuted within).15 F .613(the script as the e)144 144 R .613
+-.15 G .087(cuted within).15 F .613(the script as the e)144 638.4 R .613
(xit status of the script.)-.15 F(If)5.613 E F2(n)3.113 E F0 .613
(is supplied, the return v)3.113 F .613
-(alue is its least signi\214cant 8)-.25 F 2.51(bits. The)144 156 R .01
-(return status is non-zero if)2.51 F F1 -.18(re)2.511 G(tur).18 E(n)-.15
-E F0 .011(is supplied a non-numeric ar)2.511 F .011
-(gument, or is used outside)-.18 F 2.91(af)144 168 S .41
-(unction and not during e)-2.91 F -.15(xe)-.15 G .41
+(alue is its least signi\214cant 8)-.25 F 2.511(bits. The)144 650.4 R
+.011(return status is non-zero if)2.511 F F1 -.18(re)2.511 G(tur).18 E
+(n)-.15 E F0 .011(is supplied a non-numeric ar)2.511 F .01
+(gument, or is used outside)-.18 F 2.909(af)144 662.4 S .409
+(unction and not during e)-2.909 F -.15(xe)-.15 G .41
(cution of a script by).15 F F1(.)2.91 E F0(or)3.743 E F1(sour)2.91 E
-(ce)-.18 E F0 5.41(.A)C .71 -.15(ny c)-5.41 H .409
-(ommand associated with the).15 F F1(RETURN)144 180 Q F0(trap is e)2.5 E
--.15(xe)-.15 G(cuted before e).15 E -.15(xe)-.15 G
-(cution resumes after the function or script.).15 E F1(set)108 196.8 Q
+(ce)-.18 E F0 5.41(.A)C .71 -.15(ny c)-5.41 H .41
+(ommand associated with the).15 F F1(RETURN)144 674.4 Q F0(trap is e)2.5
+E -.15(xe)-.15 G(cuted before e).15 E -.15(xe)-.15 G
+(cution resumes after the function or script.).15 E F1(set)108 691.2 Q
F0([)2.5 E F1(\255\255abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1<ad6f>-2.5 E
F2(option\255name)2.5 E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E
-F1(set)108 208.8 Q F0([)2.5 E F1(+abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1
+F1(set)108 703.2 Q F0([)2.5 E F1(+abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1
(+o)-2.5 E F2(option\255name)2.5 E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0
-(...])2.5 E -.4(Wi)144 220.8 S .835(thout options, the name and v).4 F
-.835(alue of each shell v)-.25 F .836
+(...])2.5 E -.4(Wi)144 715.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 232.8
-R 3.284(ariables. Read-only)-.25 F -.25(va)3.284 G .783
-(riables cannot be).25 F 2.946(reset. In)144 244.8 R F2 .447(posix mode)
-2.946 F F0 2.947(,o)C .447(nly shell v)-2.947 F .447
+(reused as input for setting or resetting the currently-set v)144 727.2
+R 3.284(ariables. Read-only)-.25 F -.25(va)3.284 G .784
+(riables cannot be).25 F(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(63)
+200.665 E 0 Cg EP
+%%Page: 64 64
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E 2.947(reset. In)144 84 R/F1 10/Times-Italic@0 SF .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.531
-(locale. When)144 256.8 R 1.031(options are speci\214ed, the)3.531 F
-3.531(ys)-.15 G 1.031(et or unset shell attrib)-3.531 F 3.53(utes. An)
--.2 F 3.53(ya)-.15 G -.18(rg)-3.53 G 1.03(uments remaining).18 F 1.623
-(after option processing are treated as v)144 268.8 R 1.624
+(The output is sorted according to the current)5.447 F 3.53
+(locale. When)144 96 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 108 R 1.623
(alues for the positional parameters and are assigned, in)-.25 F(order)
-144 280.8 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 292.8 Q
-F0 .54(Automatically mark v)29.3 F .539
-(ariables and functions which are modi\214ed or created for e)-.25 F
-.539(xport to)-.15 F(the en)184 304.8 Q
-(vironment of subsequent commands.)-.4 E F1<ad62>144 316.8 Q F0 .131
+144 120 Q 2.5(,t)-.4 G(o)-2.5 E/F2 10/Times-Bold@0 SF($1)2.5 E F0(,)A F2
+($2)2.5 E F0(,)A F2 2.5(... $)2.5 F F1(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 F2<ad61>144 132 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 144 Q(vironment of subsequent commands.)-.4
+E F2<ad62>144 156 Q F0 .132
(Report the status of terminated background jobs immediately)28.74 F
-2.632(,r)-.65 G .132(ather than before the ne)-2.632 F(xt)-.15 E
-(primary prompt.)184 328.8 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 340.8 Q F0
-.088(Exit immediately if a)29.86 F F2(pipeline)2.588 E F0 .087
-(\(which may consist of a single)2.588 F F2 .087(simple command)2.587 F
-F0 .087(\), a)B F2(list)2.587 E F0 2.587(,o)C(r)-2.587 E(a)184 352.8 Q
-F2 1.293(compound command)3.793 F F0(\(see)3.793 E/F3 9/Times-Bold@0 SF
-1.293(SHELL GRAMMAR)3.793 F F0(abo)3.544 E -.15(ve)-.15 G 3.794(\), e)
-.15 F 1.294(xits with a non-zero status.)-.15 F .08
-(The shell does not e)184 364.8 R .079(xit if the command that f)-.15 F
-.079(ails is part of the command list immediately)-.1 F(follo)184 376.8
-Q 1.654(wing a)-.25 F F1(while)4.154 E F0(or)4.154 E F1(until)4.154 E F0
--.1(ke)4.154 G(yw)-.05 E 1.655(ord, part of the test follo)-.1 F 1.655
-(wing the)-.25 F F1(if)4.155 E F0(or)4.155 E F1(elif)4.155 E F0(reserv)
-4.155 E(ed)-.15 E -.1(wo)184 388.8 S .582(rds, part of an).1 F 3.082(yc)
--.15 G .582(ommand e)-3.082 F -.15(xe)-.15 G .581(cuted in a).15 F F1
-(&&)3.081 E F0(or)3.081 E F1(||)3.081 E F0 .581(list e)3.081 F .581
-(xcept the command follo)-.15 F(wing)-.25 E .917(the \214nal)184 400.8 R
-F1(&&)3.417 E F0(or)3.417 E F1(||)3.417 E F0 3.417(,a)C 1.217 -.15(ny c)
--3.417 H .918(ommand in a pipeline b).15 F .918
-(ut the last, or if the command')-.2 F 3.418(sr)-.55 G(eturn)-3.418 E
--.25(va)184 412.8 S .661(lue is being in).25 F -.15(ve)-.4 G .661
-(rted with).15 F F1(!)3.161 E F0 5.661(.I)C 3.161(fac)-5.661 G .66
-(ompound command other than a subshell returns a)-3.161 F 1.112
-(non-zero status because a command f)184 424.8 R 1.112(ailed while)-.1 F
-F1<ad65>3.612 E F0 -.1(wa)3.612 G 3.612(sb).1 G 1.113
-(eing ignored, the shell does)-3.612 F .178(not e)184 436.8 R 2.678
-(xit. A)-.15 F .178(trap on)2.678 F F1(ERR)2.678 E F0 2.678(,i)C 2.678
-(fs)-2.678 G .178(et, is e)-2.678 F -.15(xe)-.15 G .178
-(cuted before the shell e).15 F 2.677(xits. This)-.15 F .177
-(option applies to)2.677 F .617(the shell en)184 448.8 R .617
+2.632(,r)-.65 G .131(ather than before the ne)-2.632 F(xt)-.15 E
+(primary prompt.)184 168 Q(This is ef)5 E(fecti)-.25 E .3 -.15(ve o)-.25
+H(nly when job control is enabled.).15 E F2<ad65>144 180 Q F0 .087
+(Exit immediately if a)29.86 F F1(pipeline)2.587 E F0 .087
+(\(which may consist of a single)2.587 F F1 .088(simple command)2.588 F
+F0 .088(\), a)B F1(list)2.588 E F0 2.588(,o)C(r)-2.588 E(a)184 192 Q F1
+1.294(compound command)3.794 F F0(\(see)3.794 E/F3 9/Times-Bold@0 SF
+1.294(SHELL GRAMMAR)3.794 F F0(abo)3.544 E -.15(ve)-.15 G 3.793(\), e)
+.15 F 1.293(xits with a non-zero status.)-.15 F .079
+(The shell does not e)184 204 R .079(xit if the command that f)-.15 F
+.08(ails is part of the command list immediately)-.1 F(follo)184 216 Q
+1.655(wing a)-.25 F F2(while)4.155 E F0(or)4.155 E F2(until)4.155 E F0
+-.1(ke)4.155 G(yw)-.05 E 1.655(ord, part of the test follo)-.1 F 1.654
+(wing the)-.25 F F2(if)4.154 E F0(or)4.154 E F2(elif)4.154 E F0(reserv)
+4.154 E(ed)-.15 E -.1(wo)184 228 S .581(rds, part of an).1 F 3.081(yc)
+-.15 G .581(ommand e)-3.081 F -.15(xe)-.15 G .581(cuted in a).15 F F2
+(&&)3.081 E F0(or)3.081 E F2(||)3.081 E F0 .582(list e)3.082 F .582
+(xcept the command follo)-.15 F(wing)-.25 E .918(the \214nal)184 240 R
+F2(&&)3.418 E F0(or)3.418 E F2(||)3.418 E F0 3.418(,a)C 1.218 -.15(ny c)
+-3.418 H .918(ommand in a pipeline b).15 F .917
+(ut the last, or if the command')-.2 F 3.417(sr)-.55 G(eturn)-3.417 E
+-.25(va)184 252 S .66(lue is being in).25 F -.15(ve)-.4 G .66(rted with)
+.15 F F2(!)3.16 E F0 5.661(.I)C 3.161(fac)-5.661 G .661
+(ompound command other than a subshell returns a)-3.161 F 1.113
+(non-zero status because a command f)184 264 R 1.112(ailed while)-.1 F
+F2<ad65>3.612 E F0 -.1(wa)3.612 G 3.612(sb).1 G 1.112
+(eing ignored, the shell does)-3.612 F .177(not e)184 276 R 2.677
+(xit. A)-.15 F .177(trap on)2.677 F F2(ERR)2.677 E F0 2.677(,i)C 2.678
+(fs)-2.677 G .178(et, is e)-2.678 F -.15(xe)-.15 G .178
+(cuted before the shell e).15 F 2.678(xits. This)-.15 F .178
+(option applies to)2.678 F .618(the shell en)184 288 R .617
(vironment and each subshell en)-.4 F .617(vironment separately \(see)
--.4 F F3 .618(COMMAND EXE-)3.118 F .643(CUTION ENVIR)184 460.8 R(ONMENT)
+-.4 F F3 .617(COMMAND EXE-)3.117 F .642(CUTION ENVIR)184 300 R(ONMENT)
-.27 E F0(abo)2.893 E -.15(ve)-.15 G .643
(\), and may cause subshells to e).15 F .643(xit before e)-.15 F -.15
-(xe)-.15 G .642(cuting all).15 F(the commands in the subshell.)184 472.8
-Q F1<ad66>144 484.8 Q F0(Disable pathname e)30.97 E(xpansion.)-.15 E F1
-<ad68>144 496.8 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
-508.8 Q(ault.)-.1 E F1<ad6b>144 520.8 Q F0 .514(All ar)28.74 F .514
+(xe)-.15 G .643(cuting all).15 F(the commands in the subshell.)184 312 Q
+F2<ad66>144 324 Q F0(Disable pathname e)30.97 E(xpansion.)-.15 E F2
+<ad68>144 336 Q F0 2.239(Remember the location of commands as the)28.74
+F 4.738(ya)-.15 G 2.238(re look)-4.738 F 2.238(ed up for e)-.1 F -.15
+(xe)-.15 G 4.738(cution. This).15 F(is)4.738 E(enabled by def)184 348 Q
+(ault.)-.1 E F2<ad6b>144 360 Q F0 .513(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 532.8 Q F1
-<ad6d>144 544.8 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 .651
-(on systems that support it \(see)184 556.8 R F3 .651(JOB CONTR)3.151 F
-(OL)-.27 E F0(abo)2.901 E -.15(ve)-.15 G 3.151(\). All).15 F .65
-(processes run in a separate)3.151 F .678(process group.)184 568.8 R
-.679(When a background job completes, the shell prints a line containin\
-g its)5.678 F -.15(ex)184 580.8 S(it status.).15 E F1<ad6e>144 592.8 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 604.8 Q(This is ignored by interacti)5 E .3
--.15(ve s)-.25 H(hells.).15 E F1<ad6f>144 616.8 Q F2(option\255name)2.5
-E F0(The)184 628.8 Q F2(option\255name)2.5 E F0(can be one of the follo)
-2.5 E(wing:)-.25 E F1(allexport)184 640.8 Q F0(Same as)224 652.8 Q F1
-<ad61>2.5 E F0(.)A F1(braceexpand)184 664.8 Q F0(Same as)224 676.8 Q F1
-<ad42>2.5 E F0(.)A F1(emacs)184 688.8 Q F0 .089
+F .514(vironment for a)-.4 F
+(command, not just those that precede the command name.)184 372 Q F2
+<ad6d>144 384 Q F0 .149(Monitor mode.)25.97 F .149
+(Job control is enabled.)5.149 F .148(This option is on by def)5.149 F
+.148(ault for interacti)-.1 F .448 -.15(ve s)-.25 H(hells).15 E .65
+(on systems that support it \(see)184 396 R F3 .651(JOB CONTR)3.151 F
+(OL)-.27 E F0(abo)2.901 E -.15(ve)-.15 G 3.151(\). All).15 F .651
+(processes run in a separate)3.151 F .679(process group.)184 408 R .678
+(When a background job completes, the shell prints a line containing it\
+s)5.679 F -.15(ex)184 420 S(it status.).15 E F2<ad6e>144 432 Q F0 .652
+(Read commands b)28.74 F .652(ut do not e)-.2 F -.15(xe)-.15 G .652
+(cute them.).15 F .653(This may be used to check a shell script for)
+5.652 F(syntax errors.)184 444 Q(This is ignored by interacti)5 E .3
+-.15(ve s)-.25 H(hells.).15 E F2<ad6f>144 456 Q F1(option\255name)2.5 E
+F0(The)184 468 Q F1(option\255name)2.5 E F0(can be one of the follo)2.5
+E(wing:)-.25 E F2(allexport)184 480 Q F0(Same as)224 492 Q F2<ad61>2.5 E
+F0(.)A F2(braceexpand)184 504 Q F0(Same as)224 516 Q F2<ad42>2.5 E F0(.)
+A F2(emacs)184 528 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 700.8 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 712.8 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(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E
-(63)190.95 E 0 Cg EP
-%%Page: 64 64
+(when the shell is interacti)224 540 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 552 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 564 Q(exit)-.18 E F0(Same as)11.31 E F2<ad65>2.5 E F0(.)A F2
+(errtrace)184 576 Q F0(Same as)5.03 E F2<ad45>2.5 E F0(.)A F2(functrace)
+184 588 Q F0(Same as)224 600 Q F2<ad54>2.5 E F0(.)A F2(hashall)184 612 Q
+F0(Same as)9.43 E F2<ad68>2.5 E F0(.)A F2(histexpand)184 624 Q F0
+(Same as)224 636 Q F2<ad48>2.5 E F0(.)A F2(history)184 648 Q F0 .587
+(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 F3(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 660 Q(ault in interacti)-.1 E .3 -.15(ve s)-.25 H
+(hells.).15 E F2(ignor)184 672 Q(eeof)-.18 E F0 1.656(The ef)224 684 R
+1.656(fect is as if the shell command)-.25 F/F5 10/Courier@0 SF
+(IGNOREEOF=10)4.157 E F0 1.657(had been e)4.157 F -.15(xe)-.15 G(cuted)
+.15 E(\(see)224 696 Q F2(Shell V)2.5 E(ariables)-.92 E F0(abo)2.5 E -.15
+(ve)-.15 G(\).).15 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(64)
+200.665 E 0 Cg EP
+%%Page: 65 65
%%BeginPageSetup
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(err)184 84 Q(exit)-.18 E F0(Same as)11.31 E
-F1<ad65>2.5 E F0(.)A F1(errtrace)184 96 Q F0(Same as)5.03 E F1<ad45>2.5
-E F0(.)A F1(functrace)184 108 Q F0(Same as)224 120 Q F1<ad54>2.5 E F0(.)
-A F1(hashall)184 132 Q F0(Same as)9.43 E F1<ad68>2.5 E F0(.)A F1
-(histexpand)184 144 Q F0(Same as)224 156 Q F1<ad48>2.5 E F0(.)A F1
-(history)184 168 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 9/Times-Bold@0 SF(HIST)3.087 E(OR)-.162 E(Y)-.315 E/F3 9
-/Times-Roman@0 SF(.)A F0 .587(This option is)5.087 F(on by def)224 180 Q
-(ault in interacti)-.1 E .3 -.15(ve s)-.25 H(hells.).15 E F1(ignor)184
-192 Q(eeof)-.18 E F0 1.657(The ef)224 204 R 1.657
-(fect is as if the shell command)-.25 F/F4 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
-216 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 228 S(yw).1 E(ord)-.1 E F0(Same as)224 240 Q F1
-<ad6b>2.5 E F0(.)A F1(monitor)184 252 Q F0(Same as)5.56 E F1<ad6d>2.5 E
-F0(.)A F1(noclob)184 264 Q(ber)-.1 E F0(Same as)224 276 Q F1<ad43>2.5 E
-F0(.)A F1(noexec)184 288 Q F0(Same as)11.12 E F1<ad6e>2.5 E F0(.)A F1
-(noglob)184 300 Q F0(Same as)11.1 E F1<ad66>2.5 E F0(.)A F1(nolog)184
-312 Q F0(Currently ignored.)16.66 E F1(notify)184 324 Q F0(Same as)15 E
-F1<ad62>2.5 E F0(.)A F1(nounset)184 336 Q F0(Same as)6.66 E F1<ad75>2.5
-E F0(.)A F1(onecmd)184 348 Q F0(Same as)6.67 E F1<ad74>2.5 E F0(.)A F1
-(ph)184 360 Q(ysical)-.15 E F0(Same as)5.14 E F1<ad50>2.5 E F0(.)A F1
-(pipefail)184 372 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 384 R
+-.35 E/F1 10/Times-Bold@0 SF -.1(ke)184 84 S(yw).1 E(ord)-.1 E F0
+(Same as)224 96 Q F1<ad6b>2.5 E F0(.)A F1(monitor)184 108 Q F0(Same as)
+5.56 E F1<ad6d>2.5 E F0(.)A F1(noclob)184 120 Q(ber)-.1 E F0(Same as)224
+132 Q F1<ad43>2.5 E F0(.)A F1(noexec)184 144 Q F0(Same as)11.12 E F1
+<ad6e>2.5 E F0(.)A F1(noglob)184 156 Q F0(Same as)11.1 E F1<ad66>2.5 E
+F0(.)A F1(nolog)184 168 Q F0(Currently ignored.)16.66 E F1(notify)184
+180 Q F0(Same as)15 E F1<ad62>2.5 E F0(.)A F1(nounset)184 192 Q F0
+(Same as)6.66 E F1<ad75>2.5 E F0(.)A F1(onecmd)184 204 Q F0(Same as)6.67
+E F1<ad74>2.5 E F0(.)A F1(ph)184 216 Q(ysical)-.15 E F0(Same as)5.14 E
+F1<ad50>2.5 E F0(.)A F1(pipefail)184 228 Q F0 1.03(If set, the return v)
+7.77 F 1.029(alue of a pipeline is the v)-.25 F 1.029
+(alue of the last \(rightmost\) com-)-.25 F 1.136(mand to e)224 240 R
1.136
(xit with a non-zero status, or zero if all commands in the pipeline)
--.15 F -.15(ex)224 396 S(it successfully).15 E 5(.T)-.65 G
-(his option is disabled by def)-5 E(ault.)-.1 E F1(posix)184 408 Q F0
-2.09(Change the beha)17.77 F 2.091(vior of)-.2 F F1(bash)4.591 E F0
+-.15 F -.15(ex)224 252 S(it successfully).15 E 5(.T)-.65 G
+(his option is disabled by def)-5 E(ault.)-.1 E F1(posix)184 264 Q F0
+2.091(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 420 Q
-/F5 10/Times-Italic@0 SF(posix mode)A F0(\).)A F1(pri)184 432 Q(vileged)
--.1 E F0(Same as)224 444 Q F1<ad70>2.5 E F0(.)A F1 -.1(ve)184 456 S
-(rbose).1 E F0(Same as)7.33 E F1<ad76>2.5 E F0(.)A F1(vi)184 468 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 480 Q(ace used for)-.1 E F1 -.18(re)2.5 G(ad \255e).18 E F0
-(.)A F1(xtrace)184 492 Q F0(Same as)13.35 E F1<ad78>2.5 E F0(.)A(If)184
-510 Q F1<ad6f>3.052 E F0 .552(is supplied with no)3.052 F F5
-(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
-522 Q F0 1.072(is supplied with no)3.572 F F5(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 534 Q F1<ad70>
-144 546 Q F0 -.45(Tu)28.74 G 1.071(rn on).45 F F5(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
-F2($ENV)3.572 E F0(and)3.322 E F2($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 558 R 1.5
-(vironment, and the)-.4 F F2(SHELLOPTS)4 E F3(,)A F2 -.27(BA)184 570 S
-(SHOPTS).27 E F3(,)A F2(CDP)2.774 E -.855(AT)-.666 G(H).855 E F3(,)A F0
-(and)2.774 E F2(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 582 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 594 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 606 Q .695 -.15(ve u)-.25 H .395
+(fers from the)-.25 F(POSIX standard to match the standard \()224 276 Q
+/F2 10/Times-Italic@0 SF(posix mode)A F0(\).)A F1(pri)184 288 Q(vileged)
+-.1 E F0(Same as)224 300 Q F1<ad70>2.5 E F0(.)A F1 -.1(ve)184 312 S
+(rbose).1 E F0(Same as)7.33 E F1<ad76>2.5 E F0(.)A F1(vi)184 324 Q F0
+1.465(Use a vi-style command line editing interf)32.22 F 3.966
+(ace. This)-.1 F 1.466(also af)3.966 F 1.466(fects the editing)-.25 F
+(interf)224 336 Q(ace used for)-.1 E F1 -.18(re)2.5 G(ad \255e).18 E F0
+(.)A F1(xtrace)184 348 Q F0(Same as)13.35 E F1<ad78>2.5 E F0(.)A(If)184
+366 Q F1<ad6f>3.053 E F0 .553(is supplied with no)3.053 F F2
+(option\255name)3.053 E F0 3.053(,t)C .553(he v)-3.053 F .552
+(alues of the current options are printed.)-.25 F(If)5.552 E F1(+o)184
+378 Q F0 1.071(is supplied with no)3.571 F F2(option\255name)3.571 E F0
+3.571(,as)C 1.071(eries of)-3.571 F F1(set)3.572 E F0 1.072
+(commands to recreate the current)3.572 F
+(option settings is displayed on the standard output.)184 390 Q F1<ad70>
+144 402 Q F0 -.45(Tu)28.74 G 1.072(rn on).45 F F2(privile)4.822 E -.1
+(ge)-.4 G(d).1 E F0 3.572(mode. In)4.342 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.071(\214les are not pro-)3.322 F 1.5
+(cessed, shell functions are not inherited from the en)184 414 R 1.501
+(vironment, and the)-.4 F F3(SHELLOPTS)4.001 E/F4 9/Times-Roman@0 SF(,)A
+F3 -.27(BA)184 426 S(SHOPTS).27 E F4(,)A F3(CDP)2.775 E -.855(AT)-.666 G
+(H).855 E F4(,)A F0(and)2.775 E F3(GLOBIGNORE)3.025 E F0 -.25(va)2.775 G
+.524(riables, if the).25 F 3.024(ya)-.15 G .524(ppear in the en)-3.024 F
+(vironment,)-.4 E .379(are ignored.)184 438 R .379
+(If the shell is started with the ef)5.379 F(fecti)-.25 E .679 -.15
+(ve u)-.25 H .38(ser \(group\) id not equal to the real).15 F .462
+(user \(group\) id, and the)184 450 R F1<ad70>2.961 E F0 .461
+(option is not supplied, these actions are tak)2.961 F .461
+(en and the ef)-.1 F(fec-)-.25 E(ti)184 462 Q .694 -.15(ve u)-.25 H .394
(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 618 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 630 Q F1<ad74>144 642 Q F0
+2.895 E F0 .395(option is supplied at startup, the ef)2.895 F(fecti)-.25
+E -.15(ve)-.25 G .387(user id is not reset.)184 474 R -.45(Tu)5.387 G
+.387(rning this option of).45 F 2.886(fc)-.25 G .386(auses the ef)-2.886
+F(fecti)-.25 E .686 -.15(ve u)-.25 H .386(ser and group ids to be).15 F
+(set to the real user and group ids.)184 486 Q F1<ad74>144 498 Q F0
(Exit after reading and e)30.97 E -.15(xe)-.15 G(cuting one command.).15
-E F1<ad75>144 654 Q F0 -.35(Tr)28.74 G .044(eat unset v).35 F .044(aria\
+E F1<ad75>144 510 Q F0 -.35(Tr)28.74 G .043(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 666 R 2.682
-(xpansion. If)-.15 F -.15(ex)2.682 G .183
+-.25 F .183(error when performing parameter e)184 522 R 2.683
+(xpansion. If)-.15 F -.15(ex)2.683 G .182
(pansion is attempted on an unset v).15 F(ari-)-.25 E .746
-(able or parameter)184 678 R 3.246(,t)-.4 G .746
+(able or parameter)184 534 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
-690 Q F1<ad76>144 702 Q F0(Print shell input lines as the)29.3 E 2.5(ya)
--.15 G(re read.)-2.5 E F1<ad78>144 714 Q F0 .315(After e)29.3 F .315
-(xpanding each)-.15 F F5 .315(simple command)2.815 F F0(,)A F1 -.25(fo)
+546 Q F1<ad76>144 558 Q F0(Print shell input lines as the)29.3 E 2.5(ya)
+-.15 G(re read.)-2.5 E F1<ad78>144 570 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 3.26(or arithmetic)184 726 R F1
--.25(fo)5.76 G(r).25 E F0 3.26(command, display the e)5.76 F 3.26
-(xpanded v)-.15 F 3.26(alue of)-.25 F F2(PS4)5.76 E F3(,)A F0(follo)
-5.509 E 3.259(wed by the)-.25 F(GNU Bash 4.2)72 768 Q(2012 February 4)
-141.79 E(64)190.95 E 0 Cg EP
-%%Page: 65 65
+F1(select)2.815 E F0(command,)2.815 E 1.235(or arithmetic)184 582 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 594 Q
+(xpanded ar)-.15 E(guments or associated w)-.18 E(ord list.)-.1 E F1
+<ad42>144 606 Q F0 2.579(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.078(\). This).15 F 2.578(is on by)5.078 F(def)184 618 Q
+(ault.)-.1 E F1<ad43>144 630 Q F0 .213(If set,)27.08 F F1(bash)2.713 E
+F0 .213(does not o)2.713 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.714(,a)C(nd)-2.714 E F1(<>)2.714 E F0 .214(redirection opera-)2.714 F
+3.054(tors. This)184 642 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 654 Q F1(>|)2.5 E F0(instead of)2.5 E F1(>)2.5 E F0(.)A F1
+<ad45>144 666 Q F0 .103(If set, an)27.63 F 2.603(yt)-.15 G .103(rap on)
+-2.603 F F1(ERR)2.603 E F0 .104
+(is inherited by shell functions, command substitutions, and com-)2.603
+F .839(mands e)184 678 R -.15(xe)-.15 G .839(cuted in a subshell en).15
+F 3.339(vironment. The)-.4 F F1(ERR)3.338 E F0 .838
+(trap is normally not inherited in)3.338 F(such cases.)184 690 Q F1
+<ad48>144 702 Q F0(Enable)26.52 E F1(!)3.031 E F0 .531
+(style history substitution.)5.531 F .531(This option is on by def)5.531
+F .532(ault when the shell is inter)-.1 F(-)-.2 E(acti)184 714 Q -.15
+(ve)-.25 G(.).15 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(65)
+200.665 E 0 Cg EP
+%%Page: 66 66
%%BeginPageSetup
BP
%%EndPageSetup
/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
--.35 E(command and its e)184 84 Q(xpanded ar)-.15 E
-(guments or associated w)-.18 E(ord list.)-.1 E/F1 10/Times-Bold@0 SF
-<ad42>144 96 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 108 Q
-(ault.)-.1 E F1<ad43>144 120 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 132 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 144 Q F1(>|)2.5 E F0(instead of)2.5 E F1(>)2.5 E F0(.)A F1
-<ad45>144 156 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 168 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 180 Q F1
-<ad48>144 192 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 204 Q -.15
-(ve)-.25 G(.).15 E F1<ad50>144 216 Q F0 .959
+-.35 E/F1 10/Times-Bold@0 SF<ad50>144 84 Q F0 .96
(If set, the shell does not resolv)28.19 F 3.459(es)-.15 G .959
-(ymbolic links when e)-3.459 F -.15(xe)-.15 G .96
-(cuting commands such as).15 F F1(cd)3.46 E F0 2.822
-(that change the current w)184 228 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 240 R(def)2.685
+(ymbolic links when e)-3.459 F -.15(xe)-.15 G .959
+(cuting commands such as).15 F F1(cd)3.459 E F0 2.821
+(that change the current w)184 96 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.822
+(ysical directory structure)-.05 F 2.686(instead. By)184 108 R(def)2.686
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 252 Q(.)-.65 E F1<ad54>144
-264 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 120 Q(.)-.65 E F1<ad54>144
+132 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 276 R -.15(xe)-.15 G 1.932
+(substitutions, and commands e)184 144 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 288 Q F0
-(traps are normally not inherited in such cases.)2.5 E F1<adad>144 300 Q
-F0 .401(If no ar)28.6 F .401(guments follo)-.18 F 2.901(wt)-.25 G .401
+(UG)-.1 E F0(and)4.432 E F1(RETURN)184 156 Q F0
+(traps are normally not inherited in such cases.)2.5 E F1<adad>144 168 Q
+F0 .4(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 312 Q/F2
-10/Times-Italic@0 SF(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 324 Q F0 1.944
+(Otherwise,)5.401 E(the positional parameters are set to the)184 180 Q
+/F2 10/Times-Italic@0 SF(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 192 Q F0 1.945
(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 336 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 348 Q .425(The options are of)144
-364.8 R 2.925(fb)-.25 G 2.925(yd)-2.925 G(ef)-2.925 E .425
+-.37 E F0 4.444(st)C 4.444(ob)-4.444 G 4.444(ea)-4.444 G 1.944
+(ssigned to the positional)-4.444 F 3.445(parameters. The)184 204 R F1
+<ad78>3.445 E F0(and)3.445 E F1<ad76>3.445 E F0 .945
+(options are turned of)3.445 F 3.445(f. If)-.25 F .946(there are no)
+3.445 F F2(ar)3.446 E(g)-.37 E F0 .946(s, the positional)B
+(parameters remain unchanged.)184 216 Q .425(The options are of)144
+232.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 376.8 R 2.678(f. The)-.25 F .178
+(Using + rather than \255 causes these options)5.425 F .177
+(to be turned of)144 244.8 R 2.677(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 388.8 R F1<24ad>2.566 E F0
+-.18 F -.2(vo)-.4 G .178(cation of the shell.).2 F(The)5.178 E .066
+(current set of options may be found in)144 256.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 400.8 Q F1(shift)108 417.6 Q F0([)2.5 E F2(n)A F0
-(])A .429(The positional parameters from)144 429.6 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 441.6 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 453.6 R(If)5.06 E F2(n)2.92 E F0
+(ys true unless an in).1 F -.25(va)-.4 G .066(lid option).25 F
+(is encountered.)144 268.8 Q F1(shift)108 285.6 Q F0([)2.5 E F2(n)A F0
+(])A .428(The positional parameters from)144 297.6 R F2(n)2.928 E F0
+.429(+1 ... are renamed to)B F1 .429($1 ....)2.929 F F0 -.15(Pa)5.429 G
+.429(rameters represented by the num-).15 F(bers)144 309.6 Q F1($#)2.583
+E F0(do)2.583 E .083(wn to)-.25 F F1($#)2.583 E F0<ad>A F2(n)A F0 .083
+(+1 are unset.)B F2(n)5.443 E F0 .083(must be a non-ne)2.823 F -.05(ga)
+-.15 G(ti).05 E .382 -.15(ve n)-.25 H .082(umber less than or equal to)
+.15 F F1($#)2.582 E F0 5.082(.I)C(f)-5.082 E F2(n)2.942 E F0 .06
+(is 0, no parameters are changed.)144 321.6 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 465.6 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 477.6 Q F1(shopt)108 494.4 Q F0([)
+(,t)C(he)-2.56 E .144(positional parameters are not changed.)144 333.6 R
+.144(The return status is greater than zero if)5.144 F F2(n)3.003 E F0
+.143(is greater than)2.883 F F1($#)2.643 E F0
+(or less than zero; otherwise 0.)144 345.6 Q F1(shopt)108 362.4 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 506.4 S .222(ggle the v).8 F .222
+-2.5 E F0(...])2.5 E -.8(To)144 374.4 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 518.4 R(The)
-144 530.4 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 542.4 Q .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)
--.25 E F1<ad73>144 554.4 Q F0(Enable \(set\) each)26.41 E F2(optname)2.5
-E F0(.)A F1<ad75>144 566.4 Q F0(Disable \(unset\) each)24.74 E F2
-(optname)2.5 E F0(.)A F1<ad71>144 578.4 Q F0 .003(Suppresses normal out\
+ed, with an indication of whether or not each is set.)144 386.4 R(The)
+144 398.4 Q F1<ad70>2.827 E F0 .327(option causes output to be displaye\
+d in a form that may be reused as input.)2.827 F .328(Other options)
+5.328 F(ha)144 410.4 Q .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)
+-.25 E F1<ad73>144 422.4 Q F0(Enable \(set\) each)26.41 E F2(optname)2.5
+E F0(.)A F1<ad75>144 434.4 Q F0(Disable \(unset\) each)24.74 E F2
+(optname)2.5 E F0(.)A F1<ad71>144 446.4 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 590.4 R .256
-(If multiple)5.256 F F2(optname)2.756 E F0(ar)2.756 E .256
+(optname)2.503 E F0(is)2.503 E .255(set or unset.)180 458.4 R .255
+(If multiple)5.255 F F2(optname)2.755 E F0(ar)2.755 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 602.4 Q F2(optnames)2.5 E F0(are enabled; non-zero otherwise.)
-2.5 E F1<ad6f>144 614.4 Q F0(Restricts the v)25.3 E(alues of)-.25 E F2
+<ad71>2.756 E F0 2.756(,t)C .256(he return status is zero if)-2.756 F
+(all)180 470.4 Q F2(optnames)2.5 E F0(are enabled; non-zero otherwise.)
+2.5 E F1<ad6f>144 482.4 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 .624
-(If either)144 631.2 R F1<ad73>3.124 E F0(or)3.124 E F1<ad75>3.124 E F0
+(option to the)2.5 E F1(set)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E .625
+(If either)144 499.2 R F1<ad73>3.125 E F0(or)3.124 E F1<ad75>3.124 E F0
.624(is used with no)3.124 F F2(optname)3.124 E F0(ar)3.124 E(guments,)
-.18 E F1(shopt)3.124 E F0(sho)3.124 E .624
-(ws only those options which are)-.25 F 2.234(set or unset, respecti)144
-643.2 R -.15(ve)-.25 G(ly).15 E 7.234(.U)-.65 G 2.234
+(ws only those options which are)-.25 F 2.233(set or unset, respecti)144
+511.2 R -.15(ve)-.25 G(ly).15 E 7.234(.U)-.65 G 2.234
(nless otherwise noted, the)-7.234 F F1(shopt)4.734 E F0 2.234
-(options are disabled \(unset\) by)4.734 F(def)144 655.2 Q(ault.)-.1 E
-1.544(The return status when listing options is zero if all)144 672 R F2
-(optnames)4.044 E F0 1.545(are enabled, non-zero otherwise.)4.045 F .696
+(options are disabled \(unset\) by)4.734 F(def)144 523.2 Q(ault.)-.1 E
+1.544(The return status when listing options is zero if all)144 540 R F2
+(optnames)4.044 E F0 1.544(are enabled, non-zero otherwise.)4.044 F .696
(When setting or unsetting options, the return status is zero unless an)
-144 684 R F2(optname)3.196 E F0 .696(is not a v)3.196 F .695(alid shell)
--.25 F(option.)144 696 Q(The list of)144 712.8 Q F1(shopt)2.5 E F0
-(options is:)2.5 E(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(65)
-190.95 E 0 Cg EP
-%%Page: 66 66
-%%BeginPageSetup
-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(autocd)144 84 Q F0 .199
+144 552 R F2(optname)3.196 E F0 .696(is not a v)3.196 F .696(alid shell)
+-.25 F(option.)144 564 Q(The list of)144 580.8 Q F1(shopt)2.5 E F0
+(options is:)2.5 E F1(autocd)144 598.8 Q F0 .2
(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 96 Q F1(cd)2.5 E F0 2.5(command. This)2.5 F
+-.15(xe)-.15 G .199(cuted as if it were the ar).15 F(gu-)-.18 E
+(ment to the)184 610.8 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 108 Q(ars)-.1 E F0 .156(If set, an ar)184 120 R .156
-(gument to the)-.18 F F1(cd)2.656 E F0 -.2(bu)2.656 G .155
+F1(cdable_v)144 622.8 Q(ars)-.1 E F0 .155(If set, an ar)184 634.8 R .155
+(gument to the)-.18 F F1(cd)2.655 E F0 -.2(bu)2.655 G .156
(iltin command that is not a directory is assumed to be the).2 F
-(name of a v)184 132 Q(ariable whose v)-.25 E
-(alue is the directory to change to.)-.25 E F1(cdspell)144 144 Q F0
+(name of a v)184 646.8 Q(ariable whose v)-.25 E
+(alue is the directory to change to.)-.25 E F1(cdspell)144 658.8 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 156 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 .77(one character too man)184 168 R 4.57 -.65(y. I)
+10.55 F F1(cd)3.555 E F0 1.055(command will be)3.555 F 3.987
+(corrected. The)184 670.8 R 1.487(errors check)3.987 F 1.487
+(ed for are transposed characters, a missing character)-.1 F 3.988(,a)
+-.4 G(nd)-3.988 E .77(one character too man)184 682.8 R 4.57 -.65(y. I)
-.15 H 3.27(fac).65 G .77
(orrection is found, the corrected \214lename is printed, and)-3.27 F
-(the command proceeds.)184 180 Q(This option is only used by interacti)5
-E .3 -.15(ve s)-.25 H(hells.).15 E F1(checkhash)144 192 Q F0 2.08
-(If set,)184 204 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 216 S(cute it.).15 E
+(the command proceeds.)184 694.8 Q
+(This option is only used by interacti)5 E .3 -.15(ve s)-.25 H(hells.)
+.15 E F1(checkhash)144 706.8 Q F0 2.079(If set,)184 718.8 R F1(bash)
+4.579 E F0 2.079(checks that a command found in the hash table e)4.579 F
+2.08(xists before trying to)-.15 F -.15(exe)184 730.8 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 228 Q
-F0 .448(If set,)184 240 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 252 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 264 R 2.203(ening command \(see)-.15 F
+(xists, a normal path search is performed.)-.15 E(GNU Bash 4.2)72 768 Q
+(2012 July 5)151.505 E(66)200.665 E 0 Cg EP
+%%Page: 67 67
+%%BeginPageSetup
+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(checkjobs)144 84 Q F0 .449(If set,)184 96 R
+F1(bash)2.949 E F0 .449(lists the status of an)2.949 F 2.949(ys)-.15 G
+.448(topped and running jobs before e)-2.949 F .448(xiting an interacti)
+-.15 F -.15(ve)-.25 G 3.438(shell. If)184 108 R(an)3.438 E 3.438(yj)-.15
+G .938(obs are running, this causes the e)-3.438 F .938
+(xit to be deferred until a second e)-.15 F .939(xit is)-.15 F 2.203
+(attempted without an interv)184 120 R 2.203(ening command \(see)-.15 F
/F2 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 276 Q -.1(wa)-.1
+-.15(ve)-.15 G 4.703(\). The).15 F(shell)4.703 E(al)184 132 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 288 Q F0 .797(If set,)184
-300 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 312 S(lues of).25 E F2(LINES)2.5 E
+(obs are stopped.)-2.5 E F1(checkwinsize)144 144 Q F0 .796(If set,)184
+156 R F1(bash)3.296 E F0 .796(checks the windo)3.296 F 3.296(ws)-.25 G
+.797(ize after each command and, if necessary)-3.296 F 3.297(,u)-.65 G
+.797(pdates the)-3.297 F -.25(va)184 168 S(lues of).25 E F2(LINES)2.5 E
F0(and)2.25 E F2(COLUMNS)2.5 E/F3 9/Times-Roman@0 SF(.)A F1(cmdhist)144
-324 Q F0 1.202(If set,)6.11 F F1(bash)3.702 E F0 1.202(attempts to sa)
+180 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
-336 Q 5(.T)-.65 G(his allo)-5 E
-(ws easy re-editing of multi-line commands.)-.25 E F1(compat31)144 348 Q
-F0 .42(If set,)184 360 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 .461(to the)184 372 R F1([[)2.961 E F0 .462
+192 Q 5(.T)-.65 G(his allo)-5 E
+(ws easy re-editing of multi-line commands.)-.25 E F1(compat31)144 204 Q
+F0 .419(If set,)184 216 R F1(bash)2.919 E F0 .419(changes its beha)2.919
+F .419(vior to that of v)-.2 F .42(ersion 3.1 with respect to quoted ar)
+-.15 F(guments)-.18 E .462(to the)184 228 R F1([[)2.962 E F0 .462
(conditional command')2.962 F(s)-.55 E F1(=~)2.962 E F0 .462
(operator and locale-speci\214c string comparison when)2.962 F .71
-(using the)184 384 R F1([[)3.21 E F0 .71(conditional command')3.21 F(s)
+(using the)184 240 R F1([[)3.21 E F0 .71(conditional command')3.21 F(s)
-.55 E F1(<)3.21 E F0(and)3.21 E F1(>)3.21 E F0 3.21(operators. Bash)
-3.21 F -.15(ve)3.21 G .71(rsions prior to bash-4.1).15 F .82
-(use ASCII collation and)184 396 R/F4 10/Times-Italic@0 SF(str)3.321 E
+3.21 F -.15(ve)3.21 G .71(rsions prior to bash-4.1).15 F .821
+(use ASCII collation and)184 252 R/F4 10/Times-Italic@0 SF(str)3.321 E
(cmp)-.37 E F0 .821(\(3\); bash-4.1 and later use the current locale')
-.19 F 3.321(sc)-.55 G(ollation)-3.321 E(sequence and)184 408 Q F4(str)
-2.5 E(coll)-.37 E F0(\(3\).).51 E F1(compat32)144 420 Q F0 1.41(If set,)
-184 432 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 3.2 with respect to locale-speci\214c)-.15 F .422
-(string comparison when using the)184 444 R F1([[)2.922 E F0 .422
+.19 F 3.32(sc)-.55 G(ollation)-3.32 E(sequence and)184 264 Q F4(str)2.5
+E(coll)-.37 E F0(\(3\).).51 E F1(compat32)144 276 Q F0 1.409(If set,)184
+288 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 .423
+(string comparison when using the)184 300 R F1([[)2.922 E F0 .422
(conditional command')2.922 F(s)-.55 E F1(<)2.922 E F0(and)2.922 E F1(>)
-2.923 E F0 .423(operators \(see pre-)2.923 F(vious item\).)184 456 Q F1
-(compat40)144 468 Q F0 1.41(If set,)184 480 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 2.007
-(string comparison when using the)184 492 R F1([[)4.507 E F0 2.008
-(conditional command')4.507 F(s)-.55 E F1(<)4.508 E F0(and)4.508 E F1(>)
-4.508 E F0 2.008(operators \(see)4.508 F .77(description of)184 504 R F1
-(compat31)3.27 E F0 3.269(\)a)C .769(nd the ef)-3.269 F .769
-(fect of interrupting a command list.)-.25 F .769(Bash v)5.769 F
-(ersions)-.15 E .086
-(4.0 and later interrupt the list as if the shell recei)184 516 R -.15
-(ve)-.25 G 2.587(dt).15 G .087(he interrupt; pre)-2.587 F .087(vious v)
--.25 F .087(ersions con-)-.15 F(tinue with the ne)184 528 Q
-(xt command in the list.)-.15 E F1(compat41)144 540 Q F0 1.444(If set,)
-184 552 R F1(bash)3.944 E F0 3.944(,w)C 1.443
+2.922 E F0 .422(operators \(see pre-)2.922 F(vious item\).)184 312 Q F1
+(compat40)144 324 Q F0 1.409(If set,)184 336 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 4.0 with respect to locale-speci\214c)-.15 F 2.008
+(string comparison when using the)184 348 R F1([[)4.508 E F0 2.007
+(conditional command')4.508 F(s)-.55 E F1(<)4.507 E F0(and)4.507 E F1(>)
+4.507 E F0 2.007(operators \(see)4.507 F .769(description of)184 360 R
+F1(compat31)3.269 E F0 3.269(\)a)C .769(nd the ef)-3.269 F .769
+(fect of interrupting a command list.)-.25 F .77(Bash v)5.77 F(ersions)
+-.15 E .087(4.0 and later interrupt the list as if the shell recei)184
+372 R -.15(ve)-.25 G 2.586(dt).15 G .086(he interrupt; pre)-2.586 F .086
+(vious v)-.25 F .086(ersions con-)-.15 F(tinue with the ne)184 384 Q
+(xt command in the list.)-.15 E F1(compat41)144 396 Q F0 1.443(If set,)
+184 408 R F1(bash)3.943 E F0 3.943(,w)C 1.444
(hen in posix mode, treats a single quote in a double-quoted parameter)
--3.944 F -.15(ex)184 564 S .958(pansion as a special character).15 F
-5.958(.T)-.55 G .959(he single quotes must match \(an e)-5.958 F -.15
-(ve)-.25 G 3.459(nn).15 G .959(umber\) and)-3.459 F .59
-(the characters between the single quotes are considered quoted.)184 576
-R .59(This is the beha)5.59 F .59(vior of)-.2 F .589
-(posix mode through v)184 588 R .589(ersion 4.1.)-.15 F .589(The def)
-5.589 F .589(ault bash beha)-.1 F .589(vior remains as in pre)-.2 F .59
-(vious v)-.25 F(er)-.15 E(-)-.2 E(sions.)184 600 Q F1
-(complete_fullquote)144 612 Q F0 .654(If set,)184 624 R F1(bash)3.153 E
+-3.943 F -.15(ex)184 420 S .959(pansion as a special character).15 F
+5.959(.T)-.55 G .958(he single quotes must match \(an e)-5.959 F -.15
+(ve)-.25 G 3.458(nn).15 G .958(umber\) and)-3.458 F .59
+(the characters between the single quotes are considered quoted.)184 432
+R .59(This is the beha)5.59 F .59(vior of)-.2 F .59
+(posix mode through v)184 444 R .589(ersion 4.1.)-.15 F .589(The def)
+5.589 F .589(ault bash beha)-.1 F .589(vior remains as in pre)-.2 F .589
+(vious v)-.25 F(er)-.15 E(-)-.2 E(sions.)184 456 Q F1
+(complete_fullquote)144 468 Q F0 .653(If set,)184 480 R F1(bash)3.153 E
F0 .653(quotes all shell metacharacters in \214lenames and directory na\
-mes when per)3.153 F(-)-.2 E 1.524(forming completion.)184 636 R 1.524
-(If not set,)6.524 F F1(bash)4.024 E F0(remo)4.024 E -.15(ve)-.15 G
+mes when per)3.153 F(-)-.2 E 1.525(forming completion.)184 492 R 1.524
+(If not set,)6.525 F F1(bash)4.024 E F0(remo)4.024 E -.15(ve)-.15 G
4.024(sm).15 G 1.524(etacharacters such as the dollar sign)-4.024 F
2.667(from the set of characters that will be quoted in completed \214l\
-enames when these)184 648 R .028(metacharacters appear in shell v)184
-660 R .028(ariable references in w)-.25 F .029(ords to be completed.)-.1
-F .029(This means)5.029 F 1.073(that dollar signs in v)184 672 R 1.073
+enames when these)184 504 R .029(metacharacters appear in shell v)184
+516 R .028(ariable references in w)-.25 F .028(ords to be completed.)-.1
+F .028(This means)5.028 F 1.072(that dollar signs in v)184 528 R 1.073
(ariable names that e)-.25 F 1.073
(xpand to directories will not be quoted; ho)-.15 F(w-)-.25 E -2.15 -.25
-(ev e)184 684 T 1.922 -.4(r, a).25 H 1.422 -.15(ny d).4 H 1.123
+(ev e)184 540 T 1.923 -.4(r, a).25 H 1.423 -.15(ny d).4 H 1.123
(ollar signs appearing in \214lenames will not be quoted, either).15 F
-6.123(.T)-.55 G 1.123(his is acti)-6.123 F -.15(ve)-.25 G .59
+6.123(.T)-.55 G 1.122(his is acti)-6.123 F -.15(ve)-.25 G .59
(only when bash is using backslashes to quote completed \214lenames.)184
-696 R .59(This v)5.59 F .59(ariable is set)-.25 F(by def)184 708 Q
+552 R .59(This v)5.59 F .59(ariable is set)-.25 F(by def)184 564 Q
(ault, which is the def)-.1 E(ault bash beha)-.1 E(vior in v)-.2 E
-(ersions through 4.2.)-.15 E(GNU Bash 4.2)72 768 Q(2012 February 4)
-141.79 E(66)190.95 E 0 Cg EP
-%%Page: 67 67
-%%BeginPageSetup
-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(dir)144 84 Q(expand)-.18 E F0 .486(If set,)
-184 96 R F1(bash)2.986 E F0 .486
+(ersions through 4.2.)-.15 E F1(dir)144 576 Q(expand)-.18 E F0 .487
+(If set,)184 588 R F1(bash)2.987 E F0 .486
(replaces directory names with the results of w)2.986 F .486(ord e)-.1 F
-.487(xpansion when perform-)-.15 F .18(ing \214lename completion.)184
-108 R .179(This changes the contents of the readline editing b)5.18 F
-(uf)-.2 E(fer)-.25 E 5.179(.I)-.55 G 2.679(fn)-5.179 G(ot)-2.679 E(set,)
-184 120 Q F1(bash)2.5 E F0(attempts to preserv)2.5 E 2.5(ew)-.15 G
-(hat the user typed.)-2.5 E F1(dirspell)144 132 Q F0 .858(If set,)7.77 F
-F1(bash)3.358 E F0 .858
-(attempts spelling correction on directory names during w)3.358 F .859
+.486(xpansion when perform-)-.15 F .179(ing \214lename completion.)184
+600 R .179(This changes the contents of the readline editing b)5.179 F
+(uf)-.2 E(fer)-.25 E 5.18(.I)-.55 G 2.68(fn)-5.18 G(ot)-2.68 E(set,)184
+612 Q F1(bash)2.5 E F0(attempts to preserv)2.5 E 2.5(ew)-.15 G
+(hat the user typed.)-2.5 E F1(dirspell)144 624 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 636 Q(xist.)-.15 E
+F1(dotglob)144 648 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.386
-(If set, a non-interacti)7.79 F 1.686 -.15(ve s)-.25 H 1.386
+(xpansion.)-.15 E F1(execfail)144 660 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.387(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 672 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
-.717(If set, aliases are e)184 204 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 .716(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
-(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.25 E F0 1.75(option to the)4.25 F F1
-(declar)4.251 E(e)-.18 E F0 -.2(bu)4.251 G 1.751
+E F1(exec)2.5 E F0 -.1(fa)2.5 G(ils.).1 E F1(expand_aliases)144 684 Q F0
+.716(If set, aliases are e)184 696 R .717(xpanded as described abo)-.15
+F 1.017 -.15(ve u)-.15 H(nder).15 E F2(ALIASES)3.217 E F3(.)A F0 .717
+(This option is enabled)5.217 F(by def)184 708 Q(ault for interacti)-.1
+E .3 -.15(ve s)-.25 H(hells.).15 E(GNU Bash 4.2)72 768 Q(2012 July 5)
+151.505 E(67)200.665 E 0 Cg EP
+%%Page: 68 68
+%%BeginPageSetup
+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(extdeb)144 84 Q(ug)-.2 E F0(If set, beha)
+184 96 Q(vior intended for use by deb)-.2 E(uggers is enabled:)-.2 E F1
+(1.)184 108 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 120 Q
+(gument.)-.18 E F1(2.)184 132 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 .84
-(If the command run by the)28.5 F F1(DEB)3.34 E(UG)-.1 E F0 .841
-(trap returns a v)3.341 F .841(alue of 2, and the shell is)-.25 F -.15
-(exe)220 312 S .488
+1.667(alue, the ne)-.25 F(xt)-.15 E(command is skipped and not e)220 144
+Q -.15(xe)-.15 G(cuted.).15 E F1(3.)184 156 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 168 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
-F2 -.27(BA)28.5 G(SH_ARGC).27 E F0(and)3.153 E F2 -.27(BA)3.403 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
+(sour)220 180 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 192 Q
+/F2 9/Times-Bold@0 SF -.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 204 Q
+-.15(ve)-.15 G(.).15 E F1(5.)184 216 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
+228 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(dw).1 G(ith)-2.5 E F1(\()2.5 E/F3 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 .804(Error tracing is enabled:)28.5 F .805
-(command substitution, shell functions, and subshells)5.804 F(in)220 396
-Q -.2(vo)-.4 G -.1(ke).2 G 2.5(dw).1 G(ith)-2.5 E F1(\()2.5 E F4
+184 240 Q F0 .805(Error tracing is enabled:)28.5 F .804
+(command substitution, shell functions, and subshells)5.805 F(in)220 252
+Q -.2(vo)-.4 G -.1(ke).2 G 2.5(dw).1 G(ith)-2.5 E F1(\()2.5 E F3
(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 264 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
-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
-1.425(If set, patterns which f)7.77 F 1.425
-(ail to match \214lenames during pathname e)-.1 F 1.424
-(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
-.936(If set, the suf)184 504 R<8c78>-.25 E .936(es speci\214ed by the)
+-.15 H(nder).15 E F1 -.1(Pa)2.9 G .4(thname Expan-).1 F(sion)184 276 Q
+F0(are enabled.)2.5 E F1(extquote)144 288 Q F0 2.473(If set,)184 300 R
+F1($)4.973 E F0<08>A F3(string)A F0 4.973<0861>C(nd)-4.973 E F1($)4.973
+E F0(")A F3(string)A F0 4.973("q)C 2.473(uoting is performed within)
+-4.973 F F1(${)4.973 E F3(par)A(ameter)-.15 E F1(})A F0 -.15(ex)4.973 G
+(pansions).15 E(enclosed in double quotes.)184 312 Q
+(This option is enabled by def)5 E(ault.)-.1 E F1(failglob)144 324 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 336 S(pansion error).15 E(.)
+-.55 E F1 -.25(fo)144 348 S -.18(rc).25 G(e_\214gnor).18 E(e)-.18 E F0
+.937(If set, the suf)184 360 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 .937(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 372 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.947
-(pletions. See)184 528 R F2 .447(SHELL V)2.947 F(ARIABLES)-1.215 E F0
-(abo)2.697 E .747 -.15(ve f)-.15 H .448(or a description of).15 F F2
-(FIGNORE)2.948 E F3(.)A F0 .448(This option is)4.948 F(enabled by def)
-184 540 Q(ault.)-.1 E F1(globasciiranges)144 552 Q F0 .806
-(If set, range e)184 564 R .806
-(xpressions used in pattern matching \(see)-.15 F F2 -.09(Pa)3.305 G
-(tter).09 E 3.055(nM)-.135 G(atching)-3.055 E F0(abo)3.055 E -.15(ve)
--.15 G 3.305(\)b).15 G(eha)-3.305 E -.15(ve)-.2 G 2.089
-(as if in the traditional C locale when performing comparisons.)184 576
-R 2.09(That is, the current)7.089 F(locale')184 588 Q 2.614(sc)-.55 G
-.114(ollating sequence is not tak)-2.614 F .113(en into account, so)-.1
-F F1(b)2.613 E F0 .113(will not collate between)2.613 F F1(A)2.613 E F0
-(and)2.613 E F1(B)184 600 Q F0 2.5(,a)C(nd upper)-2.5 E(-case and lo)-.2
+(he ignored w)-2.82 F .32(ords are the only possible com-)-.1 F 2.948
+(pletions. See)184 384 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/F4 9/Times-Roman@0 SF(.)A F0 .447(This option is)4.947
+F(enabled by def)184 396 Q(ault.)-.1 E F1(globasciiranges)144 408 Q F0
+.805(If set, range e)184 420 R .806
+(xpressions used in pattern matching \(see)-.15 F F2 -.09(Pa)3.306 G
+(tter).09 E 3.056(nM)-.135 G(atching)-3.056 E F0(abo)3.056 E -.15(ve)
+-.15 G 3.306(\)b).15 G(eha)-3.306 E -.15(ve)-.2 G 2.089
+(as if in the traditional C locale when performing comparisons.)184 432
+R 2.089(That is, the current)7.089 F(locale')184 444 Q 2.613(sc)-.55 G
+.113(ollating sequence is not tak)-2.613 F .113(en into account, so)-.1
+F F1(b)2.613 E F0 .114(will not collate between)2.613 F F1(A)2.614 E F0
+(and)2.614 E F1(B)184 456 Q F0 2.5(,a)C(nd upper)-2.5 E(-case and lo)-.2
E(wer)-.25 E(-case ASCII characters will collate together)-.2 E(.)-.55 E
-F1(globstar)144 612 Q F0 .518(If set, the pattern)5 F F1(**)3.018 E F0
-.519(used in a pathname e)3.019 F .519(xpansion conte)-.15 F .519
-(xt will match all \214les and zero)-.15 F .432
-(or more directories and subdirectories.)184 624 R .431
-(If the pattern is follo)5.432 F .431(wed by a)-.25 F F1(/)2.931 E F0
-2.931(,o)C .431(nly directories)-2.931 F(and subdirectories match.)184
-636 Q F1(gnu_errfmt)144 648 Q F0(If set, shell error messages are writt\
-en in the standard GNU error message format.)184 660 Q F1(histappend)144
-672 Q F0 .676
+F1(globstar)144 468 Q F0 .519(If set, the pattern)5 F F1(**)3.019 E F0
+.519(used in a pathname e)3.019 F .519(xpansion conte)-.15 F .518
+(xt will match all \214les and zero)-.15 F .431
+(or more directories and subdirectories.)184 480 R .431
+(If the pattern is follo)5.431 F .432(wed by a)-.25 F F1(/)2.932 E F0
+2.932(,o)C .432(nly directories)-2.932 F(and subdirectories match.)184
+492 Q F1(gnu_errfmt)144 504 Q F0(If set, shell error messages are writt\
+en in the standard GNU error message format.)184 516 Q F1(histappend)144
+528 Q F0 .676
(If set, the history list is appended to the \214le named by the v)184
-684 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 696 Q(xits, rather than o)-.15 E
--.15(ve)-.15 G(rwriting the \214le.).15 E(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(67)190.95 E 0 Cg EP
-%%Page: 68 68
+540 R .676(alue of the)-.25 F F2(HISTFILE)3.176 E F0 -.25(va)2.926 G
+(ri-).25 E(able when the shell e)184 552 Q(xits, rather than o)-.15 E
+-.15(ve)-.15 G(rwriting the \214le.).15 E F1(histr)144 564 Q(eedit)-.18
+E F0 .575(If set, and)184 576 R F1 -.18(re)3.075 G(adline).18 E F0 .575
+(is being used, a user is gi)3.075 F -.15(ve)-.25 G 3.075(nt).15 G .576
+(he opportunity to re-edit a f)-3.075 F .576(ailed his-)-.1 F
+(tory substitution.)184 588 Q F1(histv)144 600 Q(erify)-.1 E F0 .403
+(If set, and)184 612 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 .661(passed to the shell parser)184 624 R 5.661(.I)-.55 G .662
+(nstead, the resulting line is loaded into the)-5.661 F F1 -.18(re)3.162
+G(adline).18 E F0(editing)3.162 E -.2(bu)184 636 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 648 Q F0 1.182(If set, and)184 660 R F1 -.18(re)3.682
+G(adline).18 E F0 1.182(is being used,)3.682 F F1(bash)3.682 E F0 1.181
+(will attempt to perform hostname completion)3.681 F 1.38(when a w)184
+672 R 1.38(ord containing a)-.1 F F1(@)3.881 E F0 1.381
+(is being completed \(see)3.881 F F1(Completing)3.881 E F0(under)3.881 E
+F2(READLINE)3.881 E F0(abo)184 684 Q -.15(ve)-.15 G 2.5(\). This).15 F
+(is enabled by def)2.5 E(ault.)-.1 E F1(huponexit)144 696 Q F0(If set,)
+184 708 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(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(68)
+200.665 E 0 Cg EP
+%%Page: 69 69
%%BeginPageSetup
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(histr)144 84 Q(eedit)-.18 E F0 .576
-(If set, and)184 96 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 108 Q F1(histv)144 120 Q(erify)-.1 E F0 .402
-(If set, and)184 132 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 144 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 156 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 168 Q F0 1.181(If set, and)184 180 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
-192 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 204 Q -.15(ve)-.15 G
-2.5(\). This).15 F(is enabled by def)2.5 E(ault.)-.1 E F1(huponexit)144
-216 Q F0(If set,)184 228 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 240 Q -.1(ve)-.1 G
-(_comments).1 E F0 .33(If set, allo)184 252 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 264 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
-276 Q(ault.)-.1 E F1(lastpipe)144 288 Q F0 1.211
+-.35 E/F1 10/Times-Bold@0 SF(interacti)144 84 Q -.1(ve)-.1 G(_comments)
+.1 E F0 .33(If set, allo)184 96 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 108 R 1.267 -.15(ve s)-.25
+H .967(hell \(see).15 F/F2 9/Times-Bold@0 SF(COMMENTS)3.467 E F0(abo)
+3.217 E -.15(ve)-.15 G 3.467(\). This).15 F .968(option is)3.468 F
+(enabled by def)184 120 Q(ault.)-.1 E F1(lastpipe)144 132 Q F0 1.212
(If set, and job control is not acti)6.66 F -.15(ve)-.25 G 3.712(,t).15
G 1.212(he shell runs the last command of a pipeline not)-3.712 F -.15
-(exe)184 300 S(cuted in the background in the current shell en).15 E
-(vironment.)-.4 E F1(lithist)144 312 Q F0 .655(If set, and the)15.55 F
-F1(cmdhist)3.155 E F0 .654
+(exe)184 144 S(cuted in the background in the current shell en).15 E
+(vironment.)-.4 E F1(lithist)144 156 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.154(dt).15 G 3.154(ot)-3.154 G .654(he history)-3.154 F
-(with embedded ne)184 324 Q
+3.155(dt).15 G 3.155(ot)-3.155 G .655(he history)-3.155 F
+(with embedded ne)184 168 Q
(wlines rather than using semicolon separators where possible.)-.25 E F1
-(login_shell)144 336 Q F0 .486
+(login_shell)144 180 Q F0 .486
(The shell sets this option if it is started as a login shell \(see)184
-348 R F2(INV)2.987 E(OCA)-.405 E(TION)-.855 E F0(abo)2.737 E -.15(ve)
--.15 G 2.987(\). The).15 F -.25(va)184 360 S(lue may not be changed.).25
-E F1(mailwar)144 372 Q(n)-.15 E F0 .815(If set, and a \214le that)184
-384 R F1(bash)3.315 E F0 .814
-(is checking for mail has been accessed since the last time it)3.315 F
--.1(wa)184 396 S 2.5(sc).1 G(heck)-2.5 E(ed, the message `)-.1 E
+192 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 204 S(lue may not be changed.).25
+E F1(mailwar)144 216 Q(n)-.15 E F0 .814(If set, and a \214le that)184
+228 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 240 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 408 Q F0 .324(If set, and)184 420 R F1 -.18
-(re)2.824 G(adline).18 E F0 .324(is being used,)2.824 F F1(bash)2.824 E
-F0 .324(will not attempt to search the)2.824 F F2 -.666(PA)2.825 G(TH)
--.189 E F0 .325(for possible)2.575 F
-(completions when completion is attempted on an empty line.)184 432 Q F1
-(nocaseglob)144 444 Q F0 .437(If set,)184 456 R F1(bash)2.937 E F0 .436
-(matches \214lenames in a case\255insensiti)2.937 F .736 -.15(ve f)-.25
-H .436(ashion when performing pathname).05 F -.15(ex)184 468 S
+(no_empty_cmd_completion)144 252 Q F0 .325(If set, and)184 264 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 276 Q F1
+(nocaseglob)144 288 Q F0 .436(If set,)184 300 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 312 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 480 Q F0 1.193(If set,)184
-492 R F1(bash)3.693 E F0 1.194(matches patterns in a case\255insensiti)
-3.693 F 1.494 -.15(ve f)-.25 H 1.194(ashion when performing matching).05
-F(while e)184 504 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 516 Q F0
-.855(If set,)184 528 R F1(bash)3.355 E F0(allo)3.355 E .855
-(ws patterns which match no \214les \(see)-.25 F F1 -.1(Pa)3.354 G .854
-(thname Expansion).1 F F0(abo)3.354 E -.15(ve)-.15 G 3.354(\)t).15 G(o)
--3.354 E -.15(ex)184 540 S(pand to a null string, rather than themselv)
-.15 E(es.)-.15 E F1(pr)144 552 Q(ogcomp)-.18 E F0 .676
-(If set, the programmable completion f)184 564 R .677(acilities \(see)
--.1 F F1(Pr)3.177 E .677(ogrammable Completion)-.18 F F0(abo)3.177 E
--.15(ve)-.15 G(\)).15 E(are enabled.)184 576 Q
-(This option is enabled by def)5 E(ault.)-.1 E F1(pr)144 588 Q(omptv)
--.18 E(ars)-.1 E F0 1.448(If set, prompt strings under)184 600 R 1.448
-(go parameter e)-.18 F 1.447(xpansion, command substitution, arithmetic)
--.15 F -.15(ex)184 612 S .17(pansion, and quote remo).15 F -.25(va)-.15
+-.15(ve)-.15 G(\).).15 E F1(nocasematch)144 324 Q F0 1.194(If set,)184
+336 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 348 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 360 Q F0
+.854(If set,)184 372 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 384 S(pand to a null string, rather than themselv)
+.15 E(es.)-.15 E F1(pr)144 396 Q(ogcomp)-.18 E F0 .677
+(If set, the programmable completion f)184 408 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 420 Q
+(This option is enabled by def)5 E(ault.)-.1 E F1(pr)144 432 Q(omptv)
+-.18 E(ars)-.1 E F0 1.447(If set, prompt strings under)184 444 R 1.448
+(go parameter e)-.18 F 1.448(xpansion, command substitution, arithmetic)
+-.15 F -.15(ex)184 456 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.671 E(OMPTING)-.27 E F0(abo)2.421 E -.15(ve)-.15 G(.).15
-E(This option is enabled by def)184 624 Q(ault.)-.1 E F1 -.18(re)144 636
+-.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 468 Q(ault.)-.1 E F1 -.18(re)144 480
S(stricted_shell).18 E F0 1.069
(The shell sets this option if it is started in restricted mode \(see)
-184 648 R F2 1.069(RESTRICTED SHELL)3.569 F F0(belo)184 660 Q 4.178
+184 492 R F2 1.069(RESTRICTED SHELL)3.569 F F0(belo)184 504 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 672 S(cuted, allo).15 E(wing the startup \214les to disco)-.25 E
+184 516 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 684 Q(erbose)-.1 E F0 .502(If set, the)184 696 R F1
-(shift)3.002 E F0 -.2(bu)3.002 G .501
-(iltin prints an error message when the shift count e).2 F .501
-(xceeds the number)-.15 F(of positional parameters.)184 708 Q
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(68)190.95 E 0 Cg EP
-%%Page: 69 69
+F1(shift_v)144 528 Q(erbose)-.1 E F0 .501(If set, the)184 540 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 552 Q F1(sour)
+144 564 Q(cepath)-.18 E F0 .771(If set, the)184 576 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 588 Q 2.5(gument. This)-.18 F(option is enabled by def)2.5 E(ault.)
+-.1 E F1(xpg_echo)144 600 Q F0(If set, the)184 612 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 628.8 Q F0([)2.5 E F1<ad66>A F0(])A 1.001
+(Suspend the e)144 640.8 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 652.8 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 664.8 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 681.6 Q F3 -.2(ex)2.5 G(pr).2 E F1([)108 693.6 Q F3 -.2
+(ex)2.5 G(pr).2 E F1(])2.5 E F0 .877
+(Return a status of 0 \(true\) or 1 \(f)6.77 F .878
+(alse\) depending on the e)-.1 F -.25(va)-.25 G .878
+(luation of the conditional e).25 F(xpression)-.15 E F3 -.2(ex)144 705.6
+S(pr).2 E F0 5.53(.E).73 G .53
+(ach operator and operand must be a separate ar)-5.53 F 3.03
+(gument. Expressions)-.18 F .53(are composed of the)3.03 F 3.079
+(primaries described abo)144 717.6 R 3.379 -.15(ve u)-.15 H(nder).15 E
+F2(CONDITION)5.579 E 3.079(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF
+(.)A F1(test)7.579 E F0 3.08(does not accept an)5.58 F(y)-.15 E
+(options, nor does it accept and ignore an ar)144 729.6 Q(gument of)-.18
+E F1<adad>2.5 E F0(as signifying the end of options.)2.5 E(GNU Bash 4.2)
+72 768 Q(2012 July 5)151.505 E(69)200.665 E 0 Cg EP
+%%Page: 70 70
%%BeginPageSetup
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(sour)144 84 Q(cepath)-.18 E F0 .77
-(If set, the)184 96 R F1(sour)3.27 E(ce)-.18 E F0(\()3.27 E F1(.)A F0
-3.27(\)b)C .77(uiltin uses the v)-3.47 F .771(alue of)-.25 F/F2 9
-/Times-Bold@0 SF -.666(PA)3.271 G(TH)-.189 E F0 .771
-(to \214nd the directory containing the)3.021 F
-(\214le supplied as an ar)184 108 Q 2.5(gument. This)-.18 F
-(option is enabled by def)2.5 E(ault.)-.1 E F1(xpg_echo)144 120 Q F0
-(If set, the)184 132 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 148.8 Q F0([)2.5 E F1<ad66>A F0(])A 1.002(Suspend the e)144 160.8 R
--.15(xe)-.15 G 1.002(cution of this shell until it recei).15 F -.15(ve)
--.25 G 3.501(sa).15 G F2(SIGCONT)A F0 3.501(signal. A)3.251 F 1.001
-(login shell cannot be)3.501 F .022(suspended; the)144 172.8 R F1<ad66>
-2.522 E F0 .022(option can be used to o)2.522 F -.15(ve)-.15 G .022
-(rride this and force the suspension.).15 F .023(The return status is)
-5.023 F 2.5(0u)144 184.8 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 201.6 Q/F3 10/Times-Italic@0 SF -.2(ex)2.5 G(pr).2 E F1([)
-108 213.6 Q F3 -.2(ex)2.5 G(pr).2 E F1(])2.5 E F0 .878
-(Return a status of 0 \(true\) or 1 \(f)6.77 F .877
-(alse\) depending on the e)-.1 F -.25(va)-.25 G .877
-(luation of the conditional e).25 F(xpression)-.15 E F3 -.2(ex)144 225.6
-S(pr).2 E F0 5.53(.E).73 G .53
-(ach operator and operand must be a separate ar)-5.53 F 3.03
-(gument. Expressions)-.18 F .53(are composed of the)3.03 F 3.08
-(primaries described abo)144 237.6 R 3.38 -.15(ve u)-.15 H(nder).15 E F2
-(CONDITION)5.58 E 3.079(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF(.)A
-F1(test)7.579 E F0 3.079(does not accept an)5.579 F(y)-.15 E
-(options, nor does it accept and ignore an ar)144 249.6 Q(gument of)-.18
-E F1<adad>2.5 E F0(as signifying the end of options.)2.5 E .785
-(Expressions may be combined using the follo)144 267.6 R .786
-(wing operators, listed in decreasing order of prece-)-.25 F 3.412
-(dence. The)144 279.6 R -.25(eva)3.412 G .912
-(luation depends on the number of ar).25 F .911(guments; see belo)-.18 F
-4.711 -.65(w. O)-.25 H .911(perator precedence is).65 F
-(used when there are \214v)144 291.6 Q 2.5(eo)-.15 G 2.5(rm)-2.5 G
-(ore ar)-2.5 E(guments.)-.18 E F1(!)144 303.6 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 315.6 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 327.6 Q F3 -.2
-(ex)144 339.6 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 351.6 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 363.6 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
-375.6 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 392.4 Q F0(and)2.5 E
-F1([)2.5 E F0 -.25(eva)2.5 G(luate conditional e).25 E
+-.35 E .786(Expressions may be combined using the follo)144 84 R .785
+(wing operators, listed in decreasing order of prece-)-.25 F 3.411
+(dence. The)144 96 R -.25(eva)3.411 G .911
+(luation depends on the number of ar).25 F .912(guments; see belo)-.18 F
+4.712 -.65(w. O)-.25 H .912(perator precedence is).65 F
+(used when there are \214v)144 108 Q 2.5(eo)-.15 G 2.5(rm)-2.5 G(ore ar)
+-2.5 E(guments.)-.18 E/F1 10/Times-Bold@0 SF(!)144 120 Q/F2 10
+/Times-Italic@0 SF -.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 132 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(his may be used to o)
+-5.26 F -.15(ve)-.15 G .26(rride the normal precedence of opera-).15 F
+(tors.)180 144 Q F2 -.2(ex)144 156 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 168 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 180 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 192 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 208.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 410.4 S -.18(rg)-2.5 G(uments).18 E(The e)
-180 422.4 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 434.4 S -.18
-(rg)-2.5 G(ument).18 E(The e)180 446.4 Q
+(guments.)-.18 E 2.5(0a)144 226.8 S -.18(rg)-2.5 G(uments).18 E(The e)
+180 238.8 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 250.8 S -.18
+(rg)-2.5 G(ument).18 E(The e)180 262.8 Q
(xpression is true if and only if the ar)-.15 E(gument is not null.)-.18
-E 2.5(2a)144 458.4 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar)
-180 470.4 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 274.8 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar)
+180 286.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 482.4 R .38
-(gument is one of the unary conditional operators listed abo)-.18 F .68
--.15(ve u)-.15 H(nder).15 E F2(CONDI-)2.88 E(TION)180 494.4 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 506.4 Q
+(gument is null.)-.18 F .38(If the \214rst ar)180 298.8 R .38
+(gument is one of the unary conditional operators listed abo)-.18 F .679
+-.15(ve u)-.15 H(nder).15 E/F3 9/Times-Bold@0 SF(CONDI-)2.879 E(TION)180
+310.8 Q .552(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF(,)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 322.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 518.4 S -.18(rg)-2.5 G
-(uments).18 E .236(The follo)180 530.4 R .236
+(xpression is f)-.15 E(alse.)-.1 E 2.5(3a)144 334.8 S -.18(rg)-2.5 G
+(uments).18 E .236(The follo)180 346.8 R .236
(wing conditions are applied in the order listed.)-.25 F .236
(If the second ar)5.236 F .236(gument is one of)-.18 F .855
-(the binary conditional operators listed abo)180 542.4 R 1.155 -.15
-(ve u)-.15 H(nder).15 E F2(CONDITION)3.355 E .855(AL EXPRESSIONS)-.18 F
-F4(,)A F0(the)3.104 E .578(result of the e)180 554.4 R .578(xpression i\
+(the binary conditional operators listed abo)180 358.8 R 1.155 -.15
+(ve u)-.15 H(nder).15 E F3(CONDITION)3.355 E .855(AL EXPRESSIONS)-.18 F
+F4(,)A F0(the)3.105 E .579(result of the e)180 370.8 R .578(xpression i\
s the result of the binary test using the \214rst and third ar)-.15 F
-(guments)-.18 E 1.333(as operands.)180 566.4 R(The)6.333 E F1<ad61>3.833
-E F0(and)3.833 E F1<ad6f>3.832 E F0 1.332
+(guments)-.18 E 1.332(as operands.)180 382.8 R(The)6.332 E F1<ad61>3.832
+E F0(and)3.832 E F1<ad6f>3.832 E F0 1.333
(operators are considered binary operators when there are)3.832 F .558
-(three ar)180 578.4 R 3.058(guments. If)-.18 F .558(the \214rst ar)3.058
+(three ar)180 394.8 R 3.058(guments. If)-.18 F .558(the \214rst ar)3.058
F .558(gument is)-.18 F F1(!)3.058 E F0 3.058(,t)C .558(he v)-3.058 F
.558(alue is the ne)-.25 F -.05(ga)-.15 G .558(tion of the tw).05 F
-(o-ar)-.1 E(gument)-.18 E .521(test using the second and third ar)180
-590.4 R 3.021(guments. If)-.18 F .521(the \214rst ar)3.021 F .52
-(gument is e)-.18 F(xactly)-.15 E F1(\()3.02 E F0 .52(and the third)3.02
-F(ar)180 602.4 Q .485(gument is e)-.18 F(xactly)-.15 E F1(\))2.985 E F0
-2.985(,t)C .485(he result is the one-ar)-2.985 F .485
+(o-ar)-.1 E(gument)-.18 E .52(test using the second and third ar)180
+406.8 R 3.021(guments. If)-.18 F .521(the \214rst ar)3.021 F .521
+(gument is e)-.18 F(xactly)-.15 E F1(\()3.021 E F0 .521(and the third)
+3.021 F(ar)180 418.8 Q .485(gument is e)-.18 F(xactly)-.15 E F1(\))2.985
+E F0 2.985(,t)C .485(he result is the one-ar)-2.985 F .485
(gument test of the second ar)-.18 F 2.985(gument. Other)-.18 F(-)-.2 E
-(wise, the e)180 614.4 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(4a)144
-626.4 S -.18(rg)-2.5 G(uments).18 E .385(If the \214rst ar)180 638.4 R
-.385(gument is)-.18 F F1(!)2.885 E F0 2.885(,t)C .385
-(he result is the ne)-2.885 F -.05(ga)-.15 G .384(tion of the three-ar)
-.05 F .384(gument e)-.18 F .384(xpression com-)-.15 F 1.647
-(posed of the remaining ar)180 650.4 R 4.147(guments. Otherwise,)-.18 F
-1.647(the e)4.147 F 1.648(xpression is parsed and e)-.15 F -.25(va)-.25
+(wise, the e)180 430.8 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(4a)144
+442.8 S -.18(rg)-2.5 G(uments).18 E .384(If the \214rst ar)180 454.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 466.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
-662.4 Q -.15(ve)-.15 G(.).15 E 2.5(5o)144 674.4 S 2.5(rm)-2.5 G(ore ar)
--2.5 E(guments)-.18 E 1.635(The e)180 686.4 R 1.635
+478.8 Q -.15(ve)-.15 G(.).15 E 2.5(5o)144 490.8 S 2.5(rm)-2.5 G(ore ar)
+-2.5 E(guments)-.18 E 1.635(The e)180 502.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
-698.4 Q -.15(ve)-.15 G(.).15 E(When used with)144 716.4 Q F1(test)2.5 E
+514.8 Q -.15(ve)-.15 G(.).15 E(When used with)144 532.8 Q F1(test)2.5 E
F0(or)2.5 E F1([)2.5 E F0 2.5(,t)C(he)-2.5 E F1(<)2.5 E F0(and)2.5 E F1
(>)2.5 E F0(operators sort le)2.5 E
-(xicographically using ASCII ordering.)-.15 E(GNU Bash 4.2)72 768 Q
-(2012 February 4)141.79 E(69)190.95 E 0 Cg EP
-%%Page: 70 70
-%%BeginPageSetup
-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(times)108 84 Q F0 1.229(Print the accumula\
-ted user and system times for the shell and for processes run from the \
-shell.)13.23 F(The return status is 0.)144 96 Q F1(trap)108 112.8 Q F0
-([)2.5 E F1(\255lp)A F0 2.5(][)C([)-2.5 E/F2 10/Times-Italic@0 SF(ar)A
-(g)-.37 E F0(])A F2(sigspec)2.5 E F0(...])2.5 E .703(The command)144
-124.8 R F2(ar)3.533 E(g)-.37 E F0 .703(is to be read and e)3.423 F -.15
-(xe)-.15 G .702(cuted when the shell recei).15 F -.15(ve)-.25 G 3.202
-(ss).15 G(ignal\(s\))-3.202 E F2(sigspec)3.202 E F0 5.702(.I).31 G(f)
--5.702 E F2(ar)3.532 E(g)-.37 E F0(is)3.422 E .608
-(absent \(and there is a single)144 136.8 R F2(sigspec)3.108 E F0 3.108
+(xicographically using ASCII ordering.)-.15 E F1(times)108 549.6 Q F0
+1.229(Print the accumulated user and system times for the shell and for\
+ processes run from the shell.)13.23 F(The return status is 0.)144 561.6
+Q F1(trap)108 578.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
+590.4 R F2(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(ar)3.533 E(g)-.37 E F0(is)3.423 E .609
+(absent \(and there is a single)144 602.4 R F2(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
-.659(\(the v)144 148.8 R .659(alue it had upon entrance to the shell\).)
--.25 F(If)5.658 E F2(ar)3.488 E(g)-.37 E F0 .658
+.658(\(the v)144 614.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 160.8 Q F0 .58(is ignored by the shell and by the commands it in)
-3.39 F -.2(vo)-.4 G -.1(ke).2 G 3.081(s. If).1 F F2(ar)3.411 E(g)-.37 E
-F0 .581(is not present and)3.301 F F1<ad70>3.081 E F0(has)3.081 E 1.215
-(been supplied, then the trap commands associated with each)144 172.8 R
-F2(sigspec)4.054 E F0 1.214(are displayed.)4.024 F 1.214(If no ar)6.214
-F(gu-)-.18 E .86(ments are supplied or if only)144 184.8 R F1<ad70>3.36
+144.34 626.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
+(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 638.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 650.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 196.8 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.31
-(bers. Each)144 208.8 R F2(sigspec)4.65 E F0 1.811
-(is either a signal name de\214ned in <)4.62 F F2(signal.h)A F0 1.811
-(>, or a signal number)B 6.811(.S)-.55 G(ignal)-6.811 E
-(names are case insensiti)144 220.8 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.649
-(If a)144 238.8 R F2(sigspec)4.489 E F0(is)4.459 E F3(EXIT)4.149 E F0
-1.649(\(0\) the command)3.899 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.648(xit from the shell.)
--.15 F 1.648(If a)6.648 F F2(sigspec)4.488 E F0(is)4.458 E F3(DEB)144
-250.8 Q(UG)-.09 E/F4 9/Times-Roman@0 SF(,)A F0 1.167(the command)3.417 F
-F2(ar)3.997 E(g)-.37 E F0 1.167(is e)3.887 F -.15(xe)-.15 G 1.167
-(cuted before e).15 F -.15(ve)-.25 G(ry).15 E F2 1.168(simple command)
-3.667 F F0(,)A F2(for)3.668 E F0(command,)3.668 E F2(case)3.668 E F0
-(com-)3.668 E(mand,)144 262.8 Q F2(select)2.647 E F0 .147(command, e)
-2.647 F -.15(ve)-.25 G .147(ry arithmetic).15 F F2(for)2.647 E F0 .146
-(command, and before the \214rst command e)2.647 F -.15(xe)-.15 G .146
-(cutes in a).15 F .145(shell function \(see)144 274.8 R F3 .145
-(SHELL GRAMMAR)2.645 F F0(abo)2.395 E -.15(ve)-.15 G 2.646(\). Refer).15
-F .146(to the description of the)2.646 F F1(extdeb)2.646 E(ug)-.2 E F0
-.146(option to)2.646 F(the)144 286.8 Q F1(shopt)3.201 E F0 -.2(bu)3.201
-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 .7(the com-)2.95 F(mand)144 298.8 Q F2(ar)
-3.473 E(g)-.37 E F0 .643(is e)3.363 F -.15(xe)-.15 G .643
+(signal. The)144 662.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 674.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 686.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 704.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 F3(DEB)144 716.4 Q
+(UG)-.09 E F4(,)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 728.4 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(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E(70)200.665
+E 0 Cg EP
+%%Page: 71 71
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E .146(shell function \(see)144 84 R/F1 9/Times-Bold@0 SF .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/F2 10/Times-Bold@0 SF(extdeb)
+2.645 E(ug)-.2 E F0 .145(option to)2.645 F(the)144 96 Q F2(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 F2(DEB)3.2 E(UG)-.1 E F0 3.2(trap. If)3.2 F(a)3.2 E/F3 10
+/Times-Italic@0 SF(sigspec)3.54 E F0(is)3.51 E F1(RETURN)3.2 E/F4 9
+/Times-Roman@0 SF(,)A F0 .701(the com-)2.951 F(mand)144 108 Q F3(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
-.644(cuted with the).15 F F1(.)3.144 E F0(or)3.144 E F1(sour)3.144 E(ce)
--.18 E F0 -.2(bu)3.144 G(iltins).2 E(\214nishes e)144 310.8 Q -.15(xe)
--.15 G(cuting.).15 E .929(If a)144 328.8 R F2(sigspec)3.769 E F0(is)
-3.739 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 .928(imple command has a non\255zero)
--3.429 F -.15(ex)144 340.8 S 1.008(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.009(cuted if the f).15 F 1.009
+.643(cuted with the).15 F F2(.)3.143 E F0(or)3.143 E F2(sour)3.143 E(ce)
+-.18 E F0 -.2(bu)3.143 G(iltins).2 E(\214nishes e)144 120 Q -.15(xe)-.15
+G(cuting.).15 E .928(If a)144 138 R F3(sigspec)3.768 E F0(is)3.738 E F1
+(ERR)3.429 E F4(,)A F0 .929(the command)3.179 F F3(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 150 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
+(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 352.8 R .324
-(wing a)-.25 F F1(while)2.824 E F0(or)2.824 E F1(until)2.824 E F0 -.1
+(mand is part of the command list immediately follo)144 162 R .324
+(wing a)-.25 F F2(while)2.824 E F0(or)2.824 E F2(until)2.824 E F0 -.1
(ke)2.824 G(yw)-.05 E .324(ord, part of the test)-.1 F .151(in an)144
-364.8 R F2(if)2.661 E F0 .151(statement, part of a command e)4.611 F
--.15(xe)-.15 G .151(cuted in a).15 F F1(&&)2.651 E F0(or)2.651 E F1(||)
-2.651 E F0 .151(list, or if the command')2.651 F 2.651(sr)-.55 G .151
-(eturn v)-2.651 F(alue)-.25 E(is being in)144 376.8 Q -.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
+174 R F3(if)2.661 E F0 .151(statement, part of a command e)4.611 F -.15
+(xe)-.15 G .151(cuted in a).15 F F2(&&)2.651 E F0(or)2.651 E F2(||)2.651
+E F0 .151(list, or if the command')2.651 F 2.651(sr)-.55 G .151(eturn v)
+-2.651 F(alue)-.25 E(is being in)144 186 Q -.15(ve)-.4 G(rted via).15 E
+F2(!)2.5 E F0 5(.T)C(hese are the same conditions obe)-5 E(yed by the)
+-.15 E F2(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
-394.8 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 406.8 R .662
-(alues in a subshell or subshell en)-.25 F .662(vironment when one is)
--.4 F 2.5(created. The)144 418.8 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
-435.6 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 447.6 S .174
-(th no options, indicate ho).4 F 2.674(we)-.25 G(ach)-2.674 E F2(name)
-3.034 E F0 -.1(wo)2.854 G .173
-(uld be interpreted if used as a command name.).1 F .173(If the)5.173 F
-F1<ad74>144 459.6 Q F0 .842(option is used,)3.342 F F1(type)3.342 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.343 G(iltin).2 E F0 3.343(,o).24 G(r)-3.343 E F2
-(\214le)5.253 E F0(if)3.523 E F2(name)144.36 471.6 Q F0 .087
-(is an alias, shell reserv)2.767 F .087(ed w)-.15 F .087
-(ord, function, b)-.1 F .086(uiltin, or disk \214le, respecti)-.2 F -.15
-(ve)-.25 G(ly).15 E 5.086(.I)-.65 G 2.586(ft)-5.086 G(he)-2.586 E F2
-(name)2.946 E F0 .086(is not)2.766 F .118
-(found, then nothing is printed, and an e)144 483.6 R .118
-(xit status of f)-.15 F .118(alse is returned.)-.1 F .119(If the)5.119 F
-F1<ad70>2.619 E F0 .119(option is used,)2.619 F F1(type)2.619 E F0 .855
-(either returns the name of the disk \214le that w)144 495.6 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 .64(mand name, or nothing if)144
-507.6 R/F5 10/Courier@0 SF .64(type -t name)3.14 F F0 -.1(wo)3.14 G .641
-(uld not return).1 F F2(\214le)3.141 E F0 5.641(.T).18 G(he)-5.641 E F1
-<ad50>3.141 E F0 .641(option forces a)3.141 F F3 -.666(PA)3.141 G(TH)
--.189 E F0 .113(search for each)144 519.6 R F2(name)2.613 E F0 2.613(,e)
-C -.15(ve)-2.863 G 2.613(ni).15 G(f)-2.613 E F5 .113(type -t name)2.613
-F F0 -.1(wo)2.613 G .113(uld not return).1 F F2(\214le)2.613 E F0 5.113
-(.I).18 G 2.613(fa)-5.113 G .112(command is hashed,)-.001 F F1<ad70>
-2.612 E F0(and)144 531.6 Q F1<ad50>3.23 E F0 .73(print the hashed v)3.23
-F .731
-(alue, which is not necessarily the \214le that appears \214rst in)-.25
-F F3 -.666(PA)3.231 G(TH)-.189 E F4(.)A F0 .731(If the)5.231 F F1<ad61>
-144 543.6 Q F0 1.749(option is used,)4.249 F F1(type)4.248 E F0 1.748
-(prints all of the places that contain an e)4.248 F -.15(xe)-.15 G 1.748
-(cutable named).15 F F2(name)4.248 E F0 6.748(.T).18 G(his)-6.748 E .744
-(includes aliases and functions, if and only if the)144 555.6 R F1<ad70>
-3.244 E F0 .744(option is not also used.)3.244 F .744
+204 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 216 R .662
+(alues in a subshell or subshell en)-.25 F .661(vironment when one is)
+-.4 F 2.5(created. The)144 228 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 F2(trap)2.5 E F0(returns true.)2.5 E F2(type)108
+244.8 Q F0([)2.5 E F2(\255aftpP)A F0(])A F3(name)2.5 E F0([)2.5 E F3
+(name)A F0(...])2.5 E -.4(Wi)144 256.8 S .173
+(th no options, indicate ho).4 F 2.673(we)-.25 G(ach)-2.673 E F3(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
+F2<ad74>144 268.8 Q F0 .843(option is used,)3.343 F F2(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 280.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
+(name)2.947 E F0 .087(is not)2.767 F .119
+(found, then nothing is printed, and an e)144 292.8 R .118
+(xit status of f)-.15 F .118(alse is returned.)-.1 F .118(If the)5.118 F
+F2<ad70>2.618 E F0 .118(option is used,)2.618 F F2(type)2.618 E F0 .855
+(either returns the name of the disk \214le that w)144 304.8 R .855
+(ould be e)-.1 F -.15(xe)-.15 G .855(cuted if).15 F F3(name)3.715 E F0
+.855(were speci\214ed as a com-)3.535 F .641(mand name, or nothing if)
+144 316.8 R/F5 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
+F2<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 328.8 R F3(name)2.612 E F0 2.612(,e)C -.15
+(ve)-2.862 G 2.613(ni).15 G(f)-2.613 E F5 .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 F2<ad70>2.613 E
+F0(and)144 340.8 Q F2<ad50>3.231 E F0 .731(print the hashed v)3.231 F
+.73(alue, which is not necessarily the \214le that appears \214rst in)
+-.25 F F1 -.666(PA)3.23 G(TH)-.189 E F4(.)A F0 .73(If the)5.23 F F2
+<ad61>144 352.8 Q F0 1.748(option is used,)4.248 F F2(type)4.248 E F0
+1.748(prints all of the places that contain an e)4.248 F -.15(xe)-.15 G
+1.748(cutable named).15 F F3(name)4.249 E F0 6.749(.T).18 G(his)-6.749 E
+.744(includes aliases and functions, if and only if the)144 364.8 R F2
+<ad70>3.244 E F0 .744(option is not also used.)3.244 F .743
(The table of hashed)5.744 F 1.223(commands is not consulted when using)
-144 567.6 R F1<ad61>3.723 E F0 6.223(.T)C(he)-6.223 E F1<ad66>3.723 E F0
-1.223(option suppresses shell function lookup, as)3.723 F .325(with the)
-144 579.6 R F1(command)2.825 E F0 -.2(bu)2.825 G(iltin.).2 E F1(type)
-5.325 E F0 .325(returns true if all of the ar)2.825 F .326
-(guments are found, f)-.18 F .326(alse if an)-.1 F 2.826(ya)-.15 G .326
-(re not)-2.826 F(found.)144 591.6 Q F1(ulimit)108 608.4 Q F0([)2.5 E F1
-(\255HST)A(abcde\214lmnpqrstuvx)-.92 E F0([)2.5 E F2(limit)A F0(]])A
-(Pro)144 620.4 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
+144 376.8 R F2<ad61>3.723 E F0 6.223(.T)C(he)-6.223 E F2<ad66>3.723 E F0
+1.223(option suppresses shell function lookup, as)3.723 F .326(with the)
+144 388.8 R F2(command)2.826 E F0 -.2(bu)2.826 G(iltin.).2 E F2(type)
+5.326 E F0 .326(returns true if all of the ar)2.826 F .325
+(guments are found, f)-.18 F .325(alse if an)-.1 F 2.825(ya)-.15 G .325
+(re not)-2.825 F(found.)144 400.8 Q F2(ulimit)108 417.6 Q F0([)2.5 E F2
+(\255HST)A(abcde\214lmnpqrstuvx)-.92 E F0([)2.5 E F3(limit)A F0(]])A
+(Pro)144 429.6 Q .243(vides control o)-.15 F -.15(ve)-.15 G 2.743(rt).15
+G .243(he resources a)-2.743 F -.25(va)-.2 G .244
(ilable to the shell and to processes started by it, on systems).25 F
-.943(that allo)144 632.4 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
+.944(that allo)144 441.6 R 3.444(ws)-.25 G .944(uch control.)-3.444 F
+(The)5.944 E F2<ad48>3.444 E F0(and)3.444 E F2<ad53>3.444 E F0 .943
(options specify that the hard or soft limit is set for the)3.444 F(gi)
-144 644.4 Q -.15(ve)-.25 G 2.709(nr).15 G 2.709(esource. A)-2.709 F .208
+144 453.6 Q -.15(ve)-.25 G 2.708(nr).15 G 2.708(esource. A)-2.708 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 656.4 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
-668.4 R .139(The v)5.139 F .139(alue of)-.25 F F2(limit)2.729 E F0 .139
+ft limit may)2.708 F .426(be increased up to the v)144 465.6 R .426
+(alue of the hard limit.)-.25 F .425(If neither)5.426 F F2<ad48>2.925 E
+F0(nor)2.925 E F2<ad53>2.925 E F0 .425
+(is speci\214ed, both the soft and)2.925 F .139(hard limits are set.)144
+477.6 R .139(The v)5.139 F .139(alue of)-.25 F F3(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 680.4 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)
+.742(of the special v)144 489.6 R(alues)-.25 E F2(hard)3.242 E F0(,)A F2
+(soft)3.241 E F0 3.241(,o)C(r)-3.241 E F2(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 692.4 R -.15(ve)-.25 G(ly).15 E
-5.78(.I)-.65 G(f)-5.78 E F2(limit)3.37 E F0 .78
+(soft limit, and no limit, respecti)144 501.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
(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 704.4 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
+F .499(resource is printed, unless the)144 513.6 R F2<ad48>2.999 E F0
+.499(option is gi)2.999 F -.15(ve)-.25 G 2.999(n. When).15 F .498
(more than one resource is speci\214ed, the)2.999 F
-(limit name and unit are printed before the v)144 716.4 Q 2.5
-(alue. Other)-.25 F(options are interpreted as follo)2.5 E(ws:)-.25 E
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(70)190.95 E 0 Cg EP
-%%Page: 71 71
+(limit name and unit are printed before the v)144 525.6 Q 2.5
+(alue. Other)-.25 F(options are interpreted as follo)2.5 E(ws:)-.25 E F2
+<ad61>144 537.6 Q F0(All current limits are reported)25.3 E F2<ad62>144
+549.6 Q F0(The maximum sock)24.74 E(et b)-.1 E(uf)-.2 E(fer size)-.25 E
+F2<ad63>144 561.6 Q F0(The maximum size of core \214les created)25.86 E
+F2<ad64>144 573.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 F2<ad65>144 585.6 Q F0
+(The maximum scheduling priority \("nice"\))25.86 E F2<ad66>144 597.6 Q
+F0(The maximum size of \214les written by the shell and its children)
+26.97 E F2<ad69>144 609.6 Q F0(The maximum number of pending signals)
+27.52 E F2<ad6c>144 621.6 Q F0(The maximum size that may be lock)27.52 E
+(ed into memory)-.1 E F2<ad6d>144 633.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 F2<ad6e>144 645.6 Q F0 .791(Th\
+e maximum number of open \214le descriptors \(most systems do not allo)
+24.74 F 3.291(wt)-.25 G .791(his v)-3.291 F .791(alue to)-.25 F
+(be set\))180 657.6 Q F2<ad70>144 669.6 Q F0
+(The pipe size in 512-byte blocks \(this may not be set\))24.74 E F2
+<ad71>144 681.6 Q F0
+(The maximum number of bytes in POSIX message queues)24.74 E F2<ad72>144
+693.6 Q F0(The maximum real-time scheduling priority)25.86 E F2<ad73>144
+705.6 Q F0(The maximum stack size)26.41 E F2<ad74>144 717.6 Q F0
+(The maximum amount of cpu time in seconds)26.97 E(GNU Bash 4.2)72 768 Q
+(2012 July 5)151.505 E(71)200.665 E 0 Cg EP
+%%Page: 72 72
%%BeginPageSetup
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<ad61>144 84 Q F0
-(All current limits are reported)25.3 E F1<ad62>144 96 Q F0
-(The maximum sock)24.74 E(et b)-.1 E(uf)-.2 E(fer size)-.25 E F1<ad63>
-144 108 Q F0(The maximum size of core \214les created)25.86 E F1<ad64>
-144 120 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 132 Q F0
-(The maximum scheduling priority \("nice"\))25.86 E F1<ad66>144 144 Q F0
-(The maximum size of \214les written by the shell and its children)26.97
-E F1<ad69>144 156 Q F0(The maximum number of pending signals)27.52 E F1
-<ad6c>144 168 Q F0(The maximum size that may be lock)27.52 E
-(ed into memory)-.1 E F1<ad6d>144 180 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 F1<ad6e>144 192 Q F0 .791(The \
-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
-204 Q F1<ad70>144 216 Q F0
-(The pipe size in 512-byte blocks \(this may not be set\))24.74 E F1
-<ad71>144 228 Q F0(The maximum number of bytes in POSIX message queues)
-24.74 E F1<ad72>144 240 Q F0(The maximum real-time scheduling priority)
-25.86 E F1<ad73>144 252 Q F0(The maximum stack size)26.41 E F1<ad74>144
-264 Q F0(The maximum amount of cpu time in seconds)26.97 E F1<ad75>144
-276 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 288 Q F0 .47
+-.35 E/F1 10/Times-Bold@0 SF<ad75>144 84 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 96 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 300
-Q F1<ad78>144 312 Q F0(The maximum number of \214le locks)25.3 E F1
-<ad54>144 324 Q F0(The maximum number of threads)23.63 E(If)144 340.8 Q
+(ilable to the shell and, on some systems, to).25 F(its children)180 108
+Q F1<ad78>144 120 Q F0(The maximum number of \214le locks)25.3 E F1
+<ad54>144 132 Q F0(The maximum number of threads)23.63 E(If)144 148.8 Q
/F2 10/Times-Italic@0 SF(limit)3.058 E F0 .468(is gi)3.648 F -.15(ve)
-.25 G .468(n, and the).15 F F1<ad61>2.968 E F0 .468
(option is not used,)2.968 F F2(limit)2.968 E F0 .468(is the ne)2.968 F
2.968(wv)-.25 G .468(alue of the speci\214ed resource.)-3.218 F(If)5.468
-E .044(no option is gi)144 352.8 R -.15(ve)-.25 G .044(n, then).15 F F1
-<ad66>2.544 E F0 .045(is assumed.)2.545 F -1.11(Va)5.045 G .045
-(lues are in 1024-byte increments, e)1.11 F .045(xcept for)-.15 F F1
-<ad74>2.545 E F0 2.545(,w)C .045(hich is)-2.545 F .403(in seconds;)144
-364.8 R F1<ad70>2.903 E F0 2.903(,w)C .402
-(hich is in units of 512-byte blocks; and)-2.903 F F1<ad54>2.902 E F0(,)
+E .045(no option is gi)144 160.8 R -.15(ve)-.25 G .045(n, then).15 F F1
+<ad66>2.545 E F0 .045(is assumed.)2.545 F -1.11(Va)5.045 G .045
+(lues are in 1024-byte increments, e)1.11 F .044(xcept for)-.15 F F1
+<ad74>2.544 E F0 2.544(,w)C .044(hich is)-2.544 F .402(in seconds;)144
+172.8 R F1<ad70>2.902 E F0 2.902(,w)C .402
+(hich is in units of 512-byte blocks; and)-2.902 F F1<ad54>2.902 E F0(,)
A F1<ad62>2.902 E F0(,)A F1<ad6e>2.902 E F0 2.902(,a)C(nd)-2.902 E F1
-<ad75>2.902 E F0 2.902(,w)C .402(hich are unscaled)-2.902 F -.25(va)144
-376.8 S 3.082(lues. The).25 F .583(return status is 0 unless an in)3.083
+<ad75>2.903 E F0 2.903(,w)C .403(hich are unscaled)-2.903 F -.25(va)144
+184.8 S 3.083(lues. The).25 F .583(return status is 0 unless an in)3.083
F -.25(va)-.4 G .583(lid option or ar).25 F .583
(gument is supplied, or an error occurs)-.18 F(while setting a ne)144
-388.8 Q 2.5(wl)-.25 G(imit.)-2.5 E F1(umask)108 405.6 Q F0([)2.5 E F1
+196.8 Q 2.5(wl)-.25 G(imit.)-2.5 E F1(umask)108 213.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 417.6 R F2(mode)2.7 E F0
+(The user \214le-creation mask is set to)144 225.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 429.6 R F2 -.15(ch)2.566 G(mod).15 E F0(\(1\).).77 E(If)144
-441.6 Q F2(mode)3.263 E F0 .382(is omitted, the current v)3.063 F .382
+pted by)144 237.6 R F2 -.15(ch)2.566 G(mod).15 E F0(\(1\).).77 E(If)144
+249.6 Q F2(mode)3.262 E F0 .382(is omitted, the current v)3.062 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 453.6 R .547
+(printed in symbolic form; the def)144 261.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 465.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 477.6 Q
+(mode)144.38 273.6 Q F0 .551
+(is omitted, the output is in a form that may be reused as input.)3.231
+F .552(The return status is 0 if the)5.552 F(mode w)144 285.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 494.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 506.4 Q 1.955 -.15(ve e)-.15 H(ach).15 E F2(name)
+(unalias)108 302.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 314.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 518.4 Q -.15(ve)-.15 G 2.5(d. The).15 F(return v)2.5 E
+F(remo)144 326.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 535.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 547.2 S 3.828
-(re).15 G(ach)-3.828 E F2(name)3.828 E F0 3.828(,r).18 G(emo)-3.828 E
-1.628 -.15(ve t)-.15 H 1.328(he corresponding v).15 F 1.327
-(ariable or function.)-.25 F 1.327(If the)6.327 F F1<ad76>3.827 E F0
-1.327(option is gi)3.827 F -.15(ve)-.25 G 1.327(n, each).15 F F2(name)
-144.36 559.2 Q F0 1.55(refers to a shell v)4.23 F 1.551
-(ariable, and that v)-.25 F 1.551(ariable is remo)-.25 F -.15(ve)-.15 G
-4.051(d. Read-only).15 F -.25(va)4.051 G 1.551(riables may not be).25 F
-4.642(unset. If)144 571.2 R F1<ad66>4.642 E F0 2.142
-(is speci\214ed, each)4.642 F F2(name)5.001 E F0 2.141
-(refers to a shell function, and the function de\214nition is)4.821 F
-(remo)144 583.2 Q -.15(ve)-.15 G 2.898(d. If).15 F .398
-(no options are supplied, each)2.898 F F2(name)2.898 E F0 .398
-(refers to a v)2.898 F .399(ariable; if there is no v)-.25 F .399
-(ariable by that)-.25 F .579(name, an)144 595.2 R 3.079(yf)-.15 G .579
-(unction with that name is unset.)-3.079 F .579(Each unset v)5.579 F
-.579(ariable or function is remo)-.25 F -.15(ve)-.15 G 3.078(df).15 G
-.578(rom the)-3.078 F(en)144 607.2 Q .045
-(vironment passed to subsequent commands.)-.4 F .046(If an)5.046 F 2.546
-(yo)-.15 G(f)-2.546 E/F3 9/Times-Bold@0 SF(COMP_W)2.546 E(ORDBREAKS)-.09
-E/F4 9/Times-Roman@0 SF(,)A F3(RANDOM)2.296 E F4(,)A F3(SEC-)2.296 E
-(ONDS)144 619.2 Q F4(,)A F3(LINENO)2.641 E F4(,)A F3(HISTCMD)2.641 E F4
-(,)A F3(FUNCN)2.641 E(AME)-.18 E F4(,)A F3(GR)2.64 E(OUPS)-.27 E F4(,)A
-F0(or)2.64 E F3(DIRST)2.89 E -.495(AC)-.81 G(K).495 E F0 .39
-(are unset, the)2.64 F 2.89(yl)-.15 G .39(ose their spe-)-2.89 F .726
-(cial properties, e)144 631.2 R -.15(ve)-.25 G 3.226(ni).15 G 3.226(ft)
--3.226 G(he)-3.226 E 3.226(ya)-.15 G .726(re subsequently reset.)-3.226
-F .726(The e)5.726 F .727(xit status is true unless a)-.15 F F2(name)
-3.587 E F0 .727(is read-)3.407 F(only)144 643.2 Q(.)-.65 E F1(wait)108
-660 Q F0([)2.5 E F2 2.5(n.)C(..)-2.5 E F0(])A -.8(Wa)144 672 S .288
+(is not a de\214ned alias.)2.68 E F1(unset)108 343.2 Q F0<5bad>2.5 E F1
+(fv)A F0 2.5(][)C<ad>-2.5 E F1(n)A F0 2.5(][)C F2(name)-2.5 E F0(...])
+2.5 E -.15(Fo)144 355.2 S 3.827(re).15 G(ach)-3.827 E F2(name)3.827 E F0
+3.827(,r).18 G(emo)-3.827 E 1.627 -.15(ve t)-.15 H 1.327
+(he corresponding v).15 F 1.327(ariable or function.)-.25 F 1.327
+(If the)6.327 F F1<ad76>3.828 E F0 1.328(option is gi)3.828 F -.15(ve)
+-.25 G 1.328(n, each).15 F F2(name)144.36 367.2 Q F0 1.551
+(refers to a shell v)4.231 F 1.551(ariable, and that v)-.25 F 1.551
+(ariable is remo)-.25 F -.15(ve)-.15 G 4.05(d. Read-only).15 F -.25(va)
+4.05 G 1.55(riables may not be).25 F 4.641(unset. If)144 379.2 R F1
+<ad66>4.641 E F0 2.141(is speci\214ed, each)4.641 F F2(name)5.001 E F0
+2.141(refers to a shell function, and the function de\214nition is)4.821
+F(remo)144 391.2 Q -.15(ve)-.15 G 2.538(d. If).15 F(the)2.537 E F1<ad6e>
+2.537 E F0 .037(option is supplied, and)2.537 F F2(name)2.537 E F0 .037
+(is a v)2.537 F .037(ariable with the)-.25 F F2(namer)2.537 E(ef)-.37 E
+F0(attrib)2.537 E(ute,)-.2 E F2(name)2.537 E F0(will)2.537 E .492
+(be unset rather than the v)144 403.2 R .492(ariable it references.)-.25
+F F1<ad6e>5.492 E F0 .492(has no ef)2.992 F .492(fect if the)-.25 F F1
+<ad66>2.992 E F0 .492(option is supplied.)2.992 F .493(If no)5.493 F
+.221(options are supplied, each)144 415.2 R F2(name)2.721 E F0 .221
+(refers to a v)2.721 F .22(ariable; if there is no v)-.25 F .22
+(ariable by that name, an)-.25 F 2.72(yf)-.15 G(unc-)-2.72 E 1.188
+(tion with that name is unset.)144 427.2 R 1.189(Each unset v)6.189 F
+1.189(ariable or function is remo)-.25 F -.15(ve)-.15 G 3.689(df).15 G
+1.189(rom the en)-3.689 F(vironment)-.4 E 3.206
+(passed to subsequent commands.)144 439.2 R 3.206(If an)8.206 F 5.706
+(yo)-.15 G(f)-5.706 E/F3 9/Times-Bold@0 SF(COMP_W)5.706 E(ORDBREAKS)-.09
+E/F4 9/Times-Roman@0 SF(,)A F3(RANDOM)5.455 E F4(,)A F3(SECONDS)5.455 E
+F4(,)A F3(LINENO)144 451.2 Q F4(,)A F3(HISTCMD)4.347 E F4(,)A F3(FUNCN)
+4.347 E(AME)-.18 E F4(,)A F3(GR)4.347 E(OUPS)-.27 E F4(,)A F0(or)4.348 E
+F3(DIRST)4.598 E -.495(AC)-.81 G(K).495 E F0 2.098(are unset, the)4.348
+F 4.598(yl)-.15 G 2.098(ose their special)-4.598 F(properties, e)144
+463.2 Q -.15(ve)-.25 G 2.5(ni).15 G 2.5(ft)-2.5 G(he)-2.5 E 2.5(ya)-.15
+G(re subsequently reset.)-2.5 E(The e)5 E(xit status is true unless a)
+-.15 E F2(name)2.86 E F0(is readonly)2.68 E(.)-.65 E F1(wait)108 480 Q
+F0([)2.5 E F2 2.5(n.)C(..)-2.5 E F0(])A -.8(Wa)144 492 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 684 R -.15(ve)-.25 G .722
+(job speci\214cation; if a job spec is gi)144 504 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 696 R -.15(ve)-.25 G 1.266
+(is)3.463 E 1.266(not gi)144 516 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 708 R .457
+(speci\214es a non-e)144 528 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 720 S
+(Otherwise, the return status is the)5.457 F -.15(ex)144 540 S
(it status of the last process or job w).15 E(aited for)-.1 E(.)-.55 E
-(GNU Bash 4.2)72 768 Q(2012 February 4)141.79 E(71)190.95 E 0 Cg EP
-%%Page: 72 72
-%%BeginPageSetup
-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.95/Times-Bold@0 SF(RESTRICTED SHELL)72 84 Q F0(If)108 96 Q
-/F2 10/Times-Bold@0 SF(bash)4.397 E F0 1.897(is started with the name)
-4.397 F F2(rbash)4.397 E F0 4.397(,o)C 4.397(rt)-4.397 G(he)-4.397 E F2
-<ad72>4.397 E F0 1.896(option is supplied at in)4.397 F -.2(vo)-.4 G
-1.896(cation, the shell becomes).2 F 3.445(restricted. A)108 108 R .945
+/F5 10.95/Times-Bold@0 SF(RESTRICTED SHELL)72 556.8 Q F0(If)108 568.8 Q
+F1(bash)4.397 E F0 1.897(is started with the name)4.397 F F1(rbash)4.397
+E F0 4.397(,o)C 4.397(rt)-4.397 G(he)-4.397 E F1<ad72>4.397 E F0 1.896
+(option is supplied at in)4.397 F -.2(vo)-.4 G 1.896
+(cation, the shell becomes).2 F 3.445(restricted. A)108 580.8 R .945
(restricted shell is used to set up an en)3.445 F .946
(vironment more controlled than the standard shell.)-.4 F(It)5.946 E
-(beha)108 120 Q -.15(ve)-.2 G 2.5(si).15 G(dentically to)-2.5 E F2(bash)
-2.5 E F0(with the e)2.5 E(xception that the follo)-.15 E
+(beha)108 592.8 Q -.15(ve)-.2 G 2.5(si).15 G(dentically to)-2.5 E F1
+(bash)2.5 E F0(with the e)2.5 E(xception that the follo)-.15 E
(wing are disallo)-.25 E(wed or not performed:)-.25 E 32.5<8363>108
-136.8 S(hanging directories with)-32.5 E F2(cd)2.5 E F0 32.5<8373>108
-153.6 S(etting or unsetting the v)-32.5 E(alues of)-.25 E/F3 9
-/Times-Bold@0 SF(SHELL)2.5 E/F4 9/Times-Roman@0 SF(,)A F3 -.666(PA)2.25
-G(TH)-.189 E F4(,)A F3(ENV)2.25 E F4(,)A F0(or)2.25 E F3 -.27(BA)2.5 G
-(SH_ENV).27 E F0 32.5<8373>108 170.4 S
-(pecifying command names containing)-32.5 E F2(/)2.5 E F0 32.5<8373>108
-187.2 S(pecifying a \214lename containing a)-32.5 E F2(/)2.5 E F0
-(as an ar)2.5 E(gument to the)-.18 E F2(.)2.5 E F0 -.2(bu)5 G
-(iltin command).2 E 32.5<8373>108 204 S .45
+609.6 S(hanging directories with)-32.5 E F1(cd)2.5 E F0 32.5<8373>108
+626.4 S(etting or unsetting the v)-32.5 E(alues of)-.25 E F3(SHELL)2.5 E
+F4(,)A F3 -.666(PA)2.25 G(TH)-.189 E F4(,)A F3(ENV)2.25 E F4(,)A F0(or)
+2.25 E F3 -.27(BA)2.5 G(SH_ENV).27 E F0 32.5<8373>108 643.2 S
+(pecifying command names containing)-32.5 E F1(/)2.5 E F0 32.5<8373>108
+660 S(pecifying a \214lename containing a)-32.5 E F1(/)2.5 E F0
+(as an ar)2.5 E(gument to the)-.18 E F1(.)2.5 E F0 -.2(bu)5 G
+(iltin command).2 E 32.5<8373>108 676.8 S .45
(pecifying a \214lename containing a slash as an ar)-32.5 F .449
-(gument to the)-.18 F F2<ad70>2.949 E F0 .449(option to the)2.949 F F2
-(hash)2.949 E F0 -.2(bu)2.949 G .449(iltin com-).2 F(mand)144 216 Q 32.5
-<8369>108 232.8 S(mporting function de\214nitions from the shell en)
--32.5 E(vironment at startup)-.4 E 32.5<8370>108 249.6 S(arsing the v)
--32.5 E(alue of)-.25 E F3(SHELLOPTS)2.5 E F0(from the shell en)2.25 E
-(vironment at startup)-.4 E 32.5<8372>108 266.4 S(edirecting output usi\
+(gument to the)-.18 F F1<ad70>2.949 E F0 .449(option to the)2.949 F F1
+(hash)2.949 E F0 -.2(bu)2.949 G .449(iltin com-).2 F(mand)144 688.8 Q
+32.5<8369>108 705.6 S(mporting function de\214nitions from the shell en)
+-32.5 E(vironment at startup)-.4 E(GNU Bash 4.2)72 768 Q(2012 July 5)
+151.505 E(72)200.665 E 0 Cg EP
+%%Page: 73 73
+%%BeginPageSetup
+BP
+%%EndPageSetup
+/F0 10/Times-Roman@0 SF -.35(BA)72 48 S 389.54(SH\(1\) B).35 F(ASH\(1\))
+-.35 E 32.5<8370>108 84 S(arsing the v)-32.5 E(alue of)-.25 E/F1 9
+/Times-Bold@0 SF(SHELLOPTS)2.5 E F0(from the shell en)2.25 E
+(vironment at startup)-.4 E 32.5<8372>108 100.8 S(edirecting output usi\
ng the >, >|, <>, >&, &>, and >> redirection operators)-32.5 E 32.5
-<8375>108 283.2 S(sing the)-32.5 E F2(exec)2.5 E F0 -.2(bu)2.5 G
-(iltin command to replace the shell with another command).2 E 32.5<8361>
-108 300 S(dding or deleting b)-32.5 E(uiltin commands with the)-.2 E F2
-<ad66>2.5 E F0(and)2.5 E F2<ad64>2.5 E F0(options to the)2.5 E F2
-(enable)2.5 E F0 -.2(bu)2.5 G(iltin command).2 E 32.5<8375>108 316.8 S
-(sing the)-32.5 E F2(enable)2.5 E F0 -.2(bu)2.5 G
+<8375>108 117.6 S(sing the)-32.5 E/F2 10/Times-Bold@0 SF(exec)2.5 E F0
+-.2(bu)2.5 G(iltin command to replace the shell with another command).2
+E 32.5<8361>108 134.4 S(dding or deleting b)-32.5 E
+(uiltin commands with the)-.2 E F2<ad66>2.5 E F0(and)2.5 E F2<ad64>2.5 E
+F0(options to the)2.5 E F2(enable)2.5 E F0 -.2(bu)2.5 G(iltin command).2
+E 32.5<8375>108 151.2 S(sing the)-32.5 E F2(enable)2.5 E F0 -.2(bu)2.5 G
(iltin command to enable disabled shell b).2 E(uiltins)-.2 E 32.5<8373>
-108 333.6 S(pecifying the)-32.5 E F2<ad70>2.5 E F0(option to the)2.5 E
-F2(command)2.5 E F0 -.2(bu)2.5 G(iltin command).2 E 32.5<8374>108 350.4
-S(urning of)-32.5 E 2.5(fr)-.25 G(estricted mode with)-2.5 E F2(set +r)
+108 168 S(pecifying the)-32.5 E F2<ad70>2.5 E F0(option to the)2.5 E F2
+(command)2.5 E F0 -.2(bu)2.5 G(iltin command).2 E 32.5<8374>108 184.8 S
+(urning of)-32.5 E 2.5(fr)-.25 G(estricted mode with)-2.5 E F2(set +r)
2.5 E F0(or)2.5 E F2(set +o r)2.5 E(estricted)-.18 E F0(.)A
-(These restrictions are enforced after an)108 367.2 Q 2.5(ys)-.15 G
+(These restrictions are enforced after an)108 201.6 Q 2.5(ys)-.15 G
(tartup \214les are read.)-2.5 E 1.566
-(When a command that is found to be a shell script is e)108 384 R -.15
-(xe)-.15 G 1.567(cuted \(see).15 F F3 1.567(COMMAND EXECUTION)4.067 F F0
-(abo)3.817 E -.15(ve)-.15 G(\),).15 E F2(rbash)108 396 Q F0(turns of)2.5
-E 2.5(fa)-.25 G .3 -.15(ny r)-2.5 H(estrictions in the shell spa).15 E
-(wned to e)-.15 E -.15(xe)-.15 G(cute the script.).15 E F1(SEE ALSO)72
-412.8 Q/F5 10/Times-Italic@0 SF(Bash Refer)108 424.8 Q(ence Manual)-.37
-E F0 2.5(,B)C(rian F)-2.5 E(ox and Chet Rame)-.15 E(y)-.15 E F5
-(The Gnu Readline Libr)108 436.8 Q(ary)-.15 E F0 2.5(,B)C(rian F)-2.5 E
-(ox and Chet Rame)-.15 E(y)-.15 E F5(The Gnu History Libr)108 448.8 Q
+(When a command that is found to be a shell script is e)108 218.4 R -.15
+(xe)-.15 G 1.567(cuted \(see).15 F F1 1.567(COMMAND EXECUTION)4.067 F F0
+(abo)3.817 E -.15(ve)-.15 G(\),).15 E F2(rbash)108 230.4 Q F0(turns of)
+2.5 E 2.5(fa)-.25 G .3 -.15(ny r)-2.5 H(estrictions in the shell spa).15
+E(wned to e)-.15 E -.15(xe)-.15 G(cute the script.).15 E/F3 10.95
+/Times-Bold@0 SF(SEE ALSO)72 247.2 Q/F4 10/Times-Italic@0 SF(Bash Refer)
+108 259.2 Q(ence Manual)-.37 E F0 2.5(,B)C(rian F)-2.5 E
+(ox and Chet Rame)-.15 E(y)-.15 E F4(The Gnu Readline Libr)108 271.2 Q
(ary)-.15 E F0 2.5(,B)C(rian F)-2.5 E(ox and Chet Rame)-.15 E(y)-.15 E
-F5 -.8(Po)108 460.8 S(rtable Oper).8 E
+F4(The Gnu History Libr)108 283.2 Q(ary)-.15 E F0 2.5(,B)C(rian F)-2.5 E
+(ox and Chet Rame)-.15 E(y)-.15 E F4 -.8(Po)108 295.2 S(rtable Oper).8 E
(ating System Interface \(POSIX\) P)-.15 E(art 2: Shell and Utilities)
--.8 E F0 2.5(,I)C(EEE)-2.5 E F5(sh)108 472.8 Q F0(\(1\),)A F5(ksh)2.5 E
-F0(\(1\),)A F5(csh)2.5 E F0(\(1\))A F5(emacs)108 484.8 Q F0(\(1\),)A F5
-(vi)2.5 E F0(\(1\))A F5 -.37(re)108 496.8 S(adline).37 E F0(\(3\))A F1
-(FILES)72 513.6 Q F5(/bin/bash)109.666 525.6 Q F0(The)144 537.6 Q F2
-(bash)2.5 E F0 -.15(exe)2.5 G(cutable).15 E F5(/etc/pr)109.666 549.6 Q
-(o\214le)-.45 E F0(The systemwide initialization \214le, e)144 561.6 Q
--.15(xe)-.15 G(cuted for login shells).15 E F5(~/.bash_pr)109.666 573.6
-Q(o\214le)-.45 E F0(The personal initialization \214le, e)144 585.6 Q
--.15(xe)-.15 G(cuted for login shells).15 E F5(~/.bashr)109.666 597.6 Q
-(c)-.37 E F0(The indi)144 609.6 Q(vidual per)-.25 E(-interacti)-.2 E
--.15(ve)-.25 G(-shell startup \214le).15 E F5(~/.bash_lo)109.666 621.6 Q
-(gout)-.1 E F0(The indi)144 633.6 Q
-(vidual login shell cleanup \214le, e)-.25 E -.15(xe)-.15 G
-(cuted when a login shell e).15 E(xits)-.15 E F5(~/.inputr)109.666 645.6
-Q(c)-.37 E F0(Indi)144 657.6 Q(vidual)-.25 E F5 -.37(re)2.5 G(adline).37
-E F0(initialization \214le)2.5 E F1 -.548(AU)72 674.4 S(THORS).548 E F0
-(Brian F)108 686.4 Q(ox, Free Softw)-.15 E(are F)-.1 E(oundation)-.15 E
-(bfox@gnu.or)108 698.4 Q(g)-.18 E(Chet Rame)108 715.2 Q 1.3 -.65(y, C)
+-.8 E F0 2.5(,I)C(EEE)-2.5 E F4(sh)108 307.2 Q F0(\(1\),)A F4(ksh)2.5 E
+F0(\(1\),)A F4(csh)2.5 E F0(\(1\))A F4(emacs)108 319.2 Q F0(\(1\),)A F4
+(vi)2.5 E F0(\(1\))A F4 -.37(re)108 331.2 S(adline).37 E F0(\(3\))A F3
+(FILES)72 348 Q F4(/bin/bash)109.666 360 Q F0(The)144 372 Q F2(bash)2.5
+E F0 -.15(exe)2.5 G(cutable).15 E F4(/etc/pr)109.666 384 Q(o\214le)-.45
+E F0(The systemwide initialization \214le, e)144 396 Q -.15(xe)-.15 G
+(cuted for login shells).15 E F4(~/.bash_pr)109.666 408 Q(o\214le)-.45 E
+F0(The personal initialization \214le, e)144 420 Q -.15(xe)-.15 G
+(cuted for login shells).15 E F4(~/.bashr)109.666 432 Q(c)-.37 E F0
+(The indi)144 444 Q(vidual per)-.25 E(-interacti)-.2 E -.15(ve)-.25 G
+(-shell startup \214le).15 E F4(~/.bash_lo)109.666 456 Q(gout)-.1 E F0
+(The indi)144 468 Q(vidual login shell cleanup \214le, e)-.25 E -.15(xe)
+-.15 G(cuted when a login shell e).15 E(xits)-.15 E F4(~/.inputr)109.666
+480 Q(c)-.37 E F0(Indi)144 492 Q(vidual)-.25 E F4 -.37(re)2.5 G(adline)
+.37 E F0(initialization \214le)2.5 E F3 -.548(AU)72 508.8 S(THORS).548 E
+F0(Brian F)108 520.8 Q(ox, Free Softw)-.15 E(are F)-.1 E(oundation)-.15
+E(bfox@gnu.or)108 532.8 Q(g)-.18 E(Chet Rame)108 549.6 Q 1.3 -.65(y, C)
-.15 H(ase W).65 E(estern Reserv)-.8 E 2.5(eU)-.15 G(ni)-2.5 E -.15(ve)
--.25 G(rsity).15 E(chet.rame)108 727.2 Q(y@case.edu)-.15 E(GNU Bash 4.2)
-72 768 Q(2012 February 4)141.79 E(72)190.95 E 0 Cg EP
-%%Page: 73 73
+-.25 G(rsity).15 E(chet.rame)108 561.6 Q(y@case.edu)-.15 E F3 -.11(BU)72
+578.4 S 2.738(GR).11 G(EPOR)-2.738 E(TS)-.438 E F0 .568
+(If you \214nd a b)108 590.4 R .568(ug in)-.2 F F2(bash,)3.068 E F0 .568
+(you should report it.)3.068 F .568(But \214rst, you should mak)5.568 F
+3.068(es)-.1 G .568(ure that it really is a b)-3.068 F .567(ug, and)-.2
+F 5.625(that it appears in the latest v)108 602.4 R 5.625(ersion of)-.15
+F F2(bash)8.125 E F0 10.625(.T)C 5.625(he latest v)-10.625 F 5.626
+(ersion is al)-.15 F -.1(wa)-.1 G 5.626(ys a).1 F -.25(va)-.2 G 5.626
+(ilable from).25 F F4(ftp://ftp.gnu.or)108 614.4 Q(g/pub/gnu/bash/)-.37
+E F0(.)A .411(Once you ha)108 631.2 R .711 -.15(ve d)-.2 H .411
+(etermined that a b).15 F .411(ug actually e)-.2 F .411(xists, use the)
+-.15 F F4(bashb)3.18 E(ug)-.2 E F0 .41(command to submit a b)3.13 F .41
+(ug report.)-.2 F(If)5.41 E .594(you ha)108 643.2 R .894 -.15(ve a \214)
+-.2 H .595(x, you are encouraged to mail that as well!).15 F .595
+(Suggestions and `philosophical' b)5.595 F .595(ug reports may)-.2 F
+(be mailed to)108 655.2 Q F4 -.2(bu)2.5 G(g-bash@gnu.or).2 E(g)-.37 E F0
+(or posted to the Usenet ne)2.5 E(wsgroup)-.25 E F2(gnu.bash.b)2.5 E(ug)
+-.2 E F0(.)A(ALL b)108 672 Q(ug reports should include:)-.2 E(The v)108
+688.8 Q(ersion number of)-.15 E F2(bash)2.5 E F0(The hardw)108 700.8 Q
+(are and operating system)-.1 E(GNU Bash 4.2)72 768 Q(2012 July 5)
+151.505 E(73)200.665 E 0 Cg EP
+%%Page: 74 74
%%BeginPageSetup
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.95/Times-Bold@0 SF -.11(BU)72 84 S 2.738(GR).11 G(EPOR)
--2.738 E(TS)-.438 E F0 .568(If you \214nd a b)108 96 R .568(ug in)-.2 F
-/F2 10/Times-Bold@0 SF(bash,)3.068 E F0 .568(you should report it.)3.068
-F .568(But \214rst, you should mak)5.568 F 3.068(es)-.1 G .568
-(ure that it really is a b)-3.068 F .567(ug, and)-.2 F 5.625
-(that it appears in the latest v)108 108 R 5.625(ersion of)-.15 F F2
-(bash)8.125 E F0 10.625(.T)C 5.625(he latest v)-10.625 F 5.626
-(ersion is al)-.15 F -.1(wa)-.1 G 5.626(ys a).1 F -.25(va)-.2 G 5.626
-(ilable from).25 F/F3 10/Times-Italic@0 SF(ftp://ftp.gnu.or)108 120 Q
-(g/pub/gnu/bash/)-.37 E F0(.)A .411(Once you ha)108 136.8 R .711 -.15
-(ve d)-.2 H .411(etermined that a b).15 F .411(ug actually e)-.2 F .411
-(xists, use the)-.15 F F3(bashb)3.18 E(ug)-.2 E F0 .41
-(command to submit a b)3.13 F .41(ug report.)-.2 F(If)5.41 E .594
-(you ha)108 148.8 R .894 -.15(ve a \214)-.2 H .595
-(x, you are encouraged to mail that as well!).15 F .595
-(Suggestions and `philosophical' b)5.595 F .595(ug reports may)-.2 F
-(be mailed to)108 160.8 Q F3 -.2(bu)2.5 G(g-bash@gnu.or).2 E(g)-.37 E F0
-(or posted to the Usenet ne)2.5 E(wsgroup)-.25 E F2(gnu.bash.b)2.5 E(ug)
--.2 E F0(.)A(ALL b)108 177.6 Q(ug reports should include:)-.2 E(The v)
-108 194.4 Q(ersion number of)-.15 E F2(bash)2.5 E F0(The hardw)108 206.4
-Q(are and operating system)-.1 E(The compiler used to compile)108 218.4
-Q 2.5(Ad)108 230.4 S(escription of the b)-2.5 E(ug beha)-.2 E(viour)-.2
-E 2.5(As)108 242.4 S(hort script or `recipe' which e)-2.5 E -.15(xe)-.15
-G(rcises the b).15 E(ug)-.2 E F3(bashb)108.27 259.2 Q(ug)-.2 E F0
+-.35 E(The compiler used to compile)108 84 Q 2.5(Ad)108 96 S
+(escription of the b)-2.5 E(ug beha)-.2 E(viour)-.2 E 2.5(As)108 108 S
+(hort script or `recipe' which e)-2.5 E -.15(xe)-.15 G(rcises the b).15
+E(ug)-.2 E/F1 10/Times-Italic@0 SF(bashb)108.27 124.8 Q(ug)-.2 E F0
(inserts the \214rst three items automatically into the template it pro)
2.72 E(vides for \214ling a b)-.15 E(ug report.)-.2 E(Comments and b)108
-276 Q(ug reports concerning this manual page should be directed to)-.2 E
-F3 -.15(ch)2.5 G(et.r).15 E(ame)-.15 E(y@case)-.3 E(.edu)-.15 E F0(.).25
-E F1 -.11(BU)72 292.8 S(GS).11 E F0(It')108 304.8 Q 2.5(st)-.55 G
-(oo big and too slo)-2.5 E -.65(w.)-.25 G 1.869
-(There are some subtle dif)108 321.6 R 1.869(ferences between)-.25 F F2
-(bash)4.369 E F0 1.869(and traditional v)4.369 F 1.869(ersions of)-.15 F
-F2(sh)4.368 E F0 4.368(,m)C 1.868(ostly because of the)-4.368 F/F4 9
-/Times-Bold@0 SF(POSIX)108 333.6 Q F0(speci\214cation.)2.25 E
-(Aliases are confusing in some uses.)108 350.4 Q(Shell b)108 367.2 Q
+141.6 Q(ug reports concerning this manual page should be directed to)-.2
+E F1 -.15(ch)2.5 G(et.r).15 E(ame)-.15 E(y@case)-.3 E(.edu)-.15 E F0(.)
+.25 E/F2 10.95/Times-Bold@0 SF -.11(BU)72 158.4 S(GS).11 E F0(It')108
+170.4 Q 2.5(st)-.55 G(oo big and too slo)-2.5 E -.65(w.)-.25 G 1.869
+(There are some subtle dif)108 187.2 R 1.869(ferences between)-.25 F/F3
+10/Times-Bold@0 SF(bash)4.369 E F0 1.869(and traditional v)4.369 F 1.869
+(ersions of)-.15 F F3(sh)4.368 E F0 4.368(,m)C 1.868
+(ostly because of the)-4.368 F/F4 9/Times-Bold@0 SF(POSIX)108 199.2 Q F0
+(speci\214cation.)2.25 E(Aliases are confusing in some uses.)108 216 Q
+(Shell b)108 232.8 Q
(uiltin commands and functions are not stoppable/restartable.)-.2 E
1.315(Compound commands and command sequences of the form `a ; b ; c' a\
-re not handled gracefully when)108 384 R .39
-(process suspension is attempted.)108 396 R .389
+re not handled gracefully when)108 249.6 R .39
+(process suspension is attempted.)108 261.6 R .389
(When a process is stopped, the shell immediately e)5.39 F -.15(xe)-.15
G .389(cutes the ne).15 F .389(xt com-)-.15 F .192
-(mand in the sequence.)108 408 R .192(It suf)5.192 F .192(\214ces to pl\
-ace the sequence of commands between parentheses to force it into a)-.25
-F(subshell, which may be stopped as a unit.)108 420 Q(Array v)108 436.8
-Q(ariables may not \(yet\) be e)-.25 E(xported.)-.15 E
-(There may be only one acti)108 453.6 Q .3 -.15(ve c)-.25 H
-(oprocess at a time.).15 E(GNU Bash 4.2)72 768 Q(2012 February 4)141.79
-E(73)190.95 E 0 Cg EP
+(mand in the sequence.)108 273.6 R .192(It suf)5.192 F .192(\214ces to \
+place the sequence of commands between parentheses to force it into a)
+-.25 F(subshell, which may be stopped as a unit.)108 285.6 Q(Array v)108
+302.4 Q(ariables may not \(yet\) be e)-.25 E(xported.)-.15 E
+(There may be only one acti)108 319.2 Q .3 -.15(ve c)-.25 H
+(oprocess at a time.).15 E(GNU Bash 4.2)72 768 Q(2012 July 5)151.505 E
+(74)200.665 E 0 Cg EP
%%Trailer
end
%%EOF
@xrdef{Shell Functions-pg}{16}
@xrdef{Shell Parameters-title}{Shell Parameters}
@xrdef{Shell Parameters-snt}{Section@tie 3.4}
+@xrdef{Shell Parameters-pg}{18}
@xrdef{Positional Parameters-title}{Positional Parameters}
@xrdef{Positional Parameters-snt}{Section@tie 3.4.1}
-@xrdef{Shell Parameters-pg}{18}
-@xrdef{Positional Parameters-pg}{18}
@xrdef{Special Parameters-title}{Special Parameters}
@xrdef{Special Parameters-snt}{Section@tie 3.4.2}
+@xrdef{Positional Parameters-pg}{19}
+@xrdef{Special Parameters-pg}{19}
@xrdef{Shell Expansions-title}{Shell Expansions}
@xrdef{Shell Expansions-snt}{Section@tie 3.5}
-@xrdef{Special Parameters-pg}{19}
@xrdef{Brace Expansion-title}{Brace Expansion}
@xrdef{Brace Expansion-snt}{Section@tie 3.5.1}
@xrdef{Shell Expansions-pg}{20}
-@xrdef{Brace Expansion-pg}{20}
@xrdef{Tilde Expansion-title}{Tilde Expansion}
@xrdef{Tilde Expansion-snt}{Section@tie 3.5.2}
+@xrdef{Brace Expansion-pg}{21}
@xrdef{Tilde Expansion-pg}{21}
@xrdef{Shell Parameter Expansion-title}{Shell Parameter Expansion}
@xrdef{Shell Parameter Expansion-snt}{Section@tie 3.5.3}
@xrdef{Shell Parameter Expansion-pg}{22}
@xrdef{Command Substitution-title}{Command Substitution}
@xrdef{Command Substitution-snt}{Section@tie 3.5.4}
+@xrdef{Command Substitution-pg}{27}
@xrdef{Arithmetic Expansion-title}{Arithmetic Expansion}
@xrdef{Arithmetic Expansion-snt}{Section@tie 3.5.5}
@xrdef{Process Substitution-title}{Process Substitution}
@xrdef{Process Substitution-snt}{Section@tie 3.5.6}
-@xrdef{Command Substitution-pg}{25}
-@xrdef{Arithmetic Expansion-pg}{25}
-@xrdef{Process Substitution-pg}{25}
@xrdef{Word Splitting-title}{Word Splitting}
@xrdef{Word Splitting-snt}{Section@tie 3.5.7}
+@xrdef{Arithmetic Expansion-pg}{28}
+@xrdef{Process Substitution-pg}{28}
+@xrdef{Word Splitting-pg}{28}
@xrdef{Filename Expansion-title}{Filename Expansion}
@xrdef{Filename Expansion-snt}{Section@tie 3.5.8}
-@xrdef{Word Splitting-pg}{26}
-@xrdef{Filename Expansion-pg}{26}
@xrdef{Pattern Matching-title}{Pattern Matching}
@xrdef{Pattern Matching-snt}{Section@tie 3.5.8.1}
-@xrdef{Pattern Matching-pg}{27}
+@xrdef{Filename Expansion-pg}{29}
+@xrdef{Pattern Matching-pg}{29}
@xrdef{Quote Removal-title}{Quote Removal}
@xrdef{Quote Removal-snt}{Section@tie 3.5.9}
@xrdef{Redirections-title}{Redirections}
@xrdef{Redirections-snt}{Section@tie 3.6}
-@xrdef{Quote Removal-pg}{28}
-@xrdef{Redirections-pg}{28}
+@xrdef{Quote Removal-pg}{30}
+@xrdef{Redirections-pg}{31}
@xrdef{Executing Commands-title}{Executing Commands}
@xrdef{Executing Commands-snt}{Section@tie 3.7}
@xrdef{Simple Command Expansion-title}{Simple Command Expansion}
@xrdef{Simple Command Expansion-snt}{Section@tie 3.7.1}
+@xrdef{Executing Commands-pg}{34}
+@xrdef{Simple Command Expansion-pg}{34}
@xrdef{Command Search and Execution-title}{Command Search and Execution}
@xrdef{Command Search and Execution-snt}{Section@tie 3.7.2}
-@xrdef{Executing Commands-pg}{32}
-@xrdef{Simple Command Expansion-pg}{32}
@xrdef{Command Execution Environment-title}{Command Execution Environment}
@xrdef{Command Execution Environment-snt}{Section@tie 3.7.3}
-@xrdef{Command Search and Execution-pg}{33}
-@xrdef{Command Execution Environment-pg}{33}
+@xrdef{Command Search and Execution-pg}{35}
@xrdef{Environment-title}{Environment}
@xrdef{Environment-snt}{Section@tie 3.7.4}
-@xrdef{Environment-pg}{34}
+@xrdef{Command Execution Environment-pg}{36}
@xrdef{Exit Status-title}{Exit Status}
@xrdef{Exit Status-snt}{Section@tie 3.7.5}
@xrdef{Signals-title}{Signals}
@xrdef{Signals-snt}{Section@tie 3.7.6}
-@xrdef{Exit Status-pg}{35}
-@xrdef{Signals-pg}{35}
+@xrdef{Environment-pg}{37}
+@xrdef{Exit Status-pg}{37}
@xrdef{Shell Scripts-title}{Shell Scripts}
@xrdef{Shell Scripts-snt}{Section@tie 3.8}
-@xrdef{Shell Scripts-pg}{36}
+@xrdef{Signals-pg}{38}
+@xrdef{Shell Scripts-pg}{38}
@xrdef{Shell Builtin Commands-title}{Shell Builtin Commands}
@xrdef{Shell Builtin Commands-snt}{Chapter@tie 4}
@xrdef{Bourne Shell Builtins-title}{Bourne Shell Builtins}
@xrdef{Bourne Shell Builtins-snt}{Section@tie 4.1}
-@xrdef{Shell Builtin Commands-pg}{37}
-@xrdef{Bourne Shell Builtins-pg}{37}
+@xrdef{Shell Builtin Commands-pg}{41}
+@xrdef{Bourne Shell Builtins-pg}{41}
@xrdef{Bash Builtins-title}{Bash Builtin Commands}
@xrdef{Bash Builtins-snt}{Section@tie 4.2}
-@xrdef{Bash Builtins-pg}{44}
+@xrdef{Bash Builtins-pg}{48}
@xrdef{Modifying Shell Behavior-title}{Modifying Shell Behavior}
@xrdef{Modifying Shell Behavior-snt}{Section@tie 4.3}
@xrdef{The Set Builtin-title}{The Set Builtin}
@xrdef{The Set Builtin-snt}{Section@tie 4.3.1}
-@xrdef{Modifying Shell Behavior-pg}{54}
-@xrdef{The Set Builtin-pg}{54}
+@xrdef{Modifying Shell Behavior-pg}{58}
+@xrdef{The Set Builtin-pg}{58}
@xrdef{The Shopt Builtin-title}{The Shopt Builtin}
@xrdef{The Shopt Builtin-snt}{Section@tie 4.3.2}
-@xrdef{The Shopt Builtin-pg}{58}
+@xrdef{The Shopt Builtin-pg}{62}
@xrdef{Special Builtins-title}{Special Builtins}
@xrdef{Special Builtins-snt}{Section@tie 4.4}
-@xrdef{Special Builtins-pg}{63}
+@xrdef{Special Builtins-pg}{67}
@xrdef{Shell Variables-title}{Shell Variables}
@xrdef{Shell Variables-snt}{Chapter@tie 5}
@xrdef{Bourne Shell Variables-title}{Bourne Shell Variables}
@xrdef{Bourne Shell Variables-snt}{Section@tie 5.1}
@xrdef{Bash Variables-title}{Bash Variables}
@xrdef{Bash Variables-snt}{Section@tie 5.2}
-@xrdef{Shell Variables-pg}{65}
-@xrdef{Bourne Shell Variables-pg}{65}
-@xrdef{Bash Variables-pg}{65}
+@xrdef{Shell Variables-pg}{69}
+@xrdef{Bourne Shell Variables-pg}{69}
+@xrdef{Bash Variables-pg}{69}
@xrdef{Bash Features-title}{Bash Features}
@xrdef{Bash Features-snt}{Chapter@tie 6}
@xrdef{Invoking Bash-title}{Invoking Bash}
@xrdef{Invoking Bash-snt}{Section@tie 6.1}
-@xrdef{Bash Features-pg}{75}
-@xrdef{Invoking Bash-pg}{75}
+@xrdef{Bash Features-pg}{79}
+@xrdef{Invoking Bash-pg}{79}
@xrdef{Bash Startup Files-title}{Bash Startup Files}
@xrdef{Bash Startup Files-snt}{Section@tie 6.2}
-@xrdef{Bash Startup Files-pg}{77}
+@xrdef{Bash Startup Files-pg}{81}
@xrdef{Interactive Shells-title}{Interactive Shells}
@xrdef{Interactive Shells-snt}{Section@tie 6.3}
@xrdef{What is an Interactive Shell?-title}{What is an Interactive Shell?}
@xrdef{What is an Interactive Shell?-snt}{Section@tie 6.3.1}
-@xrdef{Interactive Shells-pg}{78}
+@xrdef{Interactive Shells-pg}{82}
@xrdef{Is this Shell Interactive?-title}{Is this Shell Interactive?}
@xrdef{Is this Shell Interactive?-snt}{Section@tie 6.3.2}
@xrdef{Interactive Shell Behavior-title}{Interactive Shell Behavior}
@xrdef{Interactive Shell Behavior-snt}{Section@tie 6.3.3}
-@xrdef{What is an Interactive Shell?-pg}{79}
-@xrdef{Is this Shell Interactive?-pg}{79}
-@xrdef{Interactive Shell Behavior-pg}{79}
+@xrdef{What is an Interactive Shell?-pg}{83}
+@xrdef{Is this Shell Interactive?-pg}{83}
+@xrdef{Interactive Shell Behavior-pg}{83}
@xrdef{Bash Conditional Expressions-title}{Bash Conditional Expressions}
@xrdef{Bash Conditional Expressions-snt}{Section@tie 6.4}
-@xrdef{Bash Conditional Expressions-pg}{80}
+@xrdef{Bash Conditional Expressions-pg}{84}
@xrdef{Shell Arithmetic-title}{Shell Arithmetic}
@xrdef{Shell Arithmetic-snt}{Section@tie 6.5}
-@xrdef{Shell Arithmetic-pg}{82}
+@xrdef{Shell Arithmetic-pg}{86}
@xrdef{Aliases-title}{Aliases}
@xrdef{Aliases-snt}{Section@tie 6.6}
-@xrdef{Aliases-pg}{83}
+@xrdef{Aliases-pg}{87}
@xrdef{Arrays-title}{Arrays}
@xrdef{Arrays-snt}{Section@tie 6.7}
-@xrdef{Arrays-pg}{84}
+@xrdef{Arrays-pg}{88}
@xrdef{The Directory Stack-title}{The Directory Stack}
@xrdef{The Directory Stack-snt}{Section@tie 6.8}
@xrdef{Directory Stack Builtins-title}{Directory Stack Builtins}
@xrdef{Directory Stack Builtins-snt}{Section@tie 6.8.1}
-@xrdef{The Directory Stack-pg}{85}
-@xrdef{Directory Stack Builtins-pg}{85}
+@xrdef{The Directory Stack-pg}{89}
+@xrdef{Directory Stack Builtins-pg}{89}
@xrdef{Controlling the Prompt-title}{Controlling the Prompt}
@xrdef{Controlling the Prompt-snt}{Section@tie 6.9}
-@xrdef{Controlling the Prompt-pg}{87}
+@xrdef{Controlling the Prompt-pg}{91}
@xrdef{The Restricted Shell-title}{The Restricted Shell}
@xrdef{The Restricted Shell-snt}{Section@tie 6.10}
@xrdef{Bash POSIX Mode-title}{Bash POSIX Mode}
@xrdef{Bash POSIX Mode-snt}{Section@tie 6.11}
-@xrdef{The Restricted Shell-pg}{88}
-@xrdef{Bash POSIX Mode-pg}{88}
+@xrdef{The Restricted Shell-pg}{92}
+@xrdef{Bash POSIX Mode-pg}{92}
@xrdef{Job Control-title}{Job Control}
@xrdef{Job Control-snt}{Chapter@tie 7}
@xrdef{Job Control Basics-title}{Job Control Basics}
@xrdef{Job Control Basics-snt}{Section@tie 7.1}
-@xrdef{Job Control-pg}{93}
-@xrdef{Job Control Basics-pg}{93}
+@xrdef{Job Control-pg}{97}
+@xrdef{Job Control Basics-pg}{97}
@xrdef{Job Control Builtins-title}{Job Control Builtins}
@xrdef{Job Control Builtins-snt}{Section@tie 7.2}
-@xrdef{Job Control Builtins-pg}{94}
+@xrdef{Job Control Builtins-pg}{98}
@xrdef{Job Control Variables-title}{Job Control Variables}
@xrdef{Job Control Variables-snt}{Section@tie 7.3}
-@xrdef{Job Control Variables-pg}{96}
+@xrdef{Job Control Variables-pg}{100}
@xrdef{Command Line Editing-title}{Command Line Editing}
@xrdef{Command Line Editing-snt}{Chapter@tie 8}
@xrdef{Introduction and Notation-title}{Introduction to Line Editing}
@xrdef{Readline Interaction-snt}{Section@tie 8.2}
@xrdef{Readline Bare Essentials-title}{Readline Bare Essentials}
@xrdef{Readline Bare Essentials-snt}{Section@tie 8.2.1}
-@xrdef{Command Line Editing-pg}{97}
-@xrdef{Introduction and Notation-pg}{97}
-@xrdef{Readline Interaction-pg}{97}
+@xrdef{Command Line Editing-pg}{101}
+@xrdef{Introduction and Notation-pg}{101}
+@xrdef{Readline Interaction-pg}{101}
@xrdef{Readline Movement Commands-title}{Readline Movement Commands}
@xrdef{Readline Movement Commands-snt}{Section@tie 8.2.2}
@xrdef{Readline Killing Commands-title}{Readline Killing Commands}
@xrdef{Readline Killing Commands-snt}{Section@tie 8.2.3}
-@xrdef{Readline Bare Essentials-pg}{98}
-@xrdef{Readline Movement Commands-pg}{98}
+@xrdef{Readline Bare Essentials-pg}{102}
+@xrdef{Readline Movement Commands-pg}{102}
@xrdef{Readline Arguments-title}{Readline Arguments}
@xrdef{Readline Arguments-snt}{Section@tie 8.2.4}
@xrdef{Searching-title}{Searching for Commands in the History}
@xrdef{Searching-snt}{Section@tie 8.2.5}
-@xrdef{Readline Killing Commands-pg}{99}
-@xrdef{Readline Arguments-pg}{99}
-@xrdef{Searching-pg}{99}
+@xrdef{Readline Killing Commands-pg}{103}
+@xrdef{Readline Arguments-pg}{103}
+@xrdef{Searching-pg}{103}
@xrdef{Readline Init File-title}{Readline Init File}
@xrdef{Readline Init File-snt}{Section@tie 8.3}
@xrdef{Readline Init File Syntax-title}{Readline Init File Syntax}
@xrdef{Readline Init File Syntax-snt}{Section@tie 8.3.1}
-@xrdef{Readline Init File-pg}{100}
-@xrdef{Readline Init File Syntax-pg}{100}
+@xrdef{Readline Init File-pg}{104}
+@xrdef{Readline Init File Syntax-pg}{104}
@xrdef{Conditional Init Constructs-title}{Conditional Init Constructs}
@xrdef{Conditional Init Constructs-snt}{Section@tie 8.3.2}
-@xrdef{Conditional Init Constructs-pg}{107}
+@xrdef{Conditional Init Constructs-pg}{111}
@xrdef{Sample Init File-title}{Sample Init File}
@xrdef{Sample Init File-snt}{Section@tie 8.3.3}
-@xrdef{Sample Init File-pg}{108}
+@xrdef{Sample Init File-pg}{112}
@xrdef{Bindable Readline Commands-title}{Bindable Readline Commands}
@xrdef{Bindable Readline Commands-snt}{Section@tie 8.4}
@xrdef{Commands For Moving-title}{Commands For Moving}
@xrdef{Commands For Moving-snt}{Section@tie 8.4.1}
@xrdef{Commands For History-title}{Commands For Manipulating The History}
@xrdef{Commands For History-snt}{Section@tie 8.4.2}
-@xrdef{Bindable Readline Commands-pg}{111}
-@xrdef{Commands For Moving-pg}{111}
-@xrdef{Commands For History-pg}{112}
+@xrdef{Bindable Readline Commands-pg}{115}
+@xrdef{Commands For Moving-pg}{115}
+@xrdef{Commands For History-pg}{116}
@xrdef{Commands For Text-title}{Commands For Changing Text}
@xrdef{Commands For Text-snt}{Section@tie 8.4.3}
-@xrdef{Commands For Text-pg}{113}
+@xrdef{Commands For Text-pg}{117}
@xrdef{Commands For Killing-title}{Killing And Yanking}
@xrdef{Commands For Killing-snt}{Section@tie 8.4.4}
-@xrdef{Commands For Killing-pg}{114}
+@xrdef{Commands For Killing-pg}{118}
@xrdef{Numeric Arguments-title}{Specifying Numeric Arguments}
@xrdef{Numeric Arguments-snt}{Section@tie 8.4.5}
-@xrdef{Numeric Arguments-pg}{115}
+@xrdef{Numeric Arguments-pg}{119}
@xrdef{Commands For Completion-title}{Letting Readline Type For You}
@xrdef{Commands For Completion-snt}{Section@tie 8.4.6}
-@xrdef{Commands For Completion-pg}{116}
+@xrdef{Commands For Completion-pg}{120}
@xrdef{Keyboard Macros-title}{Keyboard Macros}
@xrdef{Keyboard Macros-snt}{Section@tie 8.4.7}
-@xrdef{Keyboard Macros-pg}{117}
+@xrdef{Keyboard Macros-pg}{121}
@xrdef{Miscellaneous Commands-title}{Some Miscellaneous Commands}
@xrdef{Miscellaneous Commands-snt}{Section@tie 8.4.8}
-@xrdef{Miscellaneous Commands-pg}{118}
+@xrdef{Miscellaneous Commands-pg}{122}
@xrdef{Readline vi Mode-title}{Readline vi Mode}
@xrdef{Readline vi Mode-snt}{Section@tie 8.5}
@xrdef{Programmable Completion-title}{Programmable Completion}
@xrdef{Programmable Completion-snt}{Section@tie 8.6}
-@xrdef{Readline vi Mode-pg}{120}
-@xrdef{Programmable Completion-pg}{120}
+@xrdef{Readline vi Mode-pg}{124}
+@xrdef{Programmable Completion-pg}{124}
@xrdef{Programmable Completion Builtins-title}{Programmable Completion Builtins}
@xrdef{Programmable Completion Builtins-snt}{Section@tie 8.7}
-@xrdef{Programmable Completion Builtins-pg}{122}
+@xrdef{Programmable Completion Builtins-pg}{126}
@xrdef{A Programmable Completion Example-title}{A Programmable Completion Example}
@xrdef{A Programmable Completion Example-snt}{Section@tie 8.8}
-@xrdef{A Programmable Completion Example-pg}{126}
+@xrdef{A Programmable Completion Example-pg}{130}
@xrdef{Using History Interactively-title}{Using History Interactively}
@xrdef{Using History Interactively-snt}{Chapter@tie 9}
@xrdef{Bash History Facilities-title}{Bash History Facilities}
@xrdef{Bash History Facilities-snt}{Section@tie 9.1}
@xrdef{Bash History Builtins-title}{Bash History Builtins}
@xrdef{Bash History Builtins-snt}{Section@tie 9.2}
-@xrdef{Using History Interactively-pg}{129}
-@xrdef{Bash History Facilities-pg}{129}
-@xrdef{Bash History Builtins-pg}{129}
+@xrdef{Using History Interactively-pg}{133}
+@xrdef{Bash History Facilities-pg}{133}
+@xrdef{Bash History Builtins-pg}{133}
@xrdef{History Interaction-title}{History Expansion}
@xrdef{History Interaction-snt}{Section@tie 9.3}
@xrdef{Event Designators-title}{Event Designators}
@xrdef{Event Designators-snt}{Section@tie 9.3.1}
-@xrdef{History Interaction-pg}{131}
+@xrdef{History Interaction-pg}{135}
@xrdef{Word Designators-title}{Word Designators}
@xrdef{Word Designators-snt}{Section@tie 9.3.2}
-@xrdef{Event Designators-pg}{132}
-@xrdef{Word Designators-pg}{132}
+@xrdef{Event Designators-pg}{136}
+@xrdef{Word Designators-pg}{136}
@xrdef{Modifiers-title}{Modifiers}
@xrdef{Modifiers-snt}{Section@tie 9.3.3}
-@xrdef{Modifiers-pg}{133}
+@xrdef{Modifiers-pg}{137}
@xrdef{Installing Bash-title}{Installing Bash}
@xrdef{Installing Bash-snt}{Chapter@tie 10}
@xrdef{Basic Installation-title}{Basic Installation}
@xrdef{Basic Installation-snt}{Section@tie 10.1}
@xrdef{Compilers and Options-title}{Compilers and Options}
@xrdef{Compilers and Options-snt}{Section@tie 10.2}
-@xrdef{Installing Bash-pg}{135}
-@xrdef{Basic Installation-pg}{135}
+@xrdef{Installing Bash-pg}{139}
+@xrdef{Basic Installation-pg}{139}
@xrdef{Compiling For Multiple Architectures-title}{Compiling For Multiple Architectures}
@xrdef{Compiling For Multiple Architectures-snt}{Section@tie 10.3}
@xrdef{Installation Names-title}{Installation Names}
@xrdef{Installation Names-snt}{Section@tie 10.4}
@xrdef{Specifying the System Type-title}{Specifying the System Type}
@xrdef{Specifying the System Type-snt}{Section@tie 10.5}
-@xrdef{Compilers and Options-pg}{136}
-@xrdef{Compiling For Multiple Architectures-pg}{136}
-@xrdef{Installation Names-pg}{136}
-@xrdef{Specifying the System Type-pg}{136}
+@xrdef{Compilers and Options-pg}{140}
+@xrdef{Compiling For Multiple Architectures-pg}{140}
+@xrdef{Installation Names-pg}{140}
+@xrdef{Specifying the System Type-pg}{140}
@xrdef{Sharing Defaults-title}{Sharing Defaults}
@xrdef{Sharing Defaults-snt}{Section@tie 10.6}
@xrdef{Operation Controls-title}{Operation Controls}
@xrdef{Operation Controls-snt}{Section@tie 10.7}
@xrdef{Optional Features-title}{Optional Features}
@xrdef{Optional Features-snt}{Section@tie 10.8}
-@xrdef{Sharing Defaults-pg}{137}
-@xrdef{Operation Controls-pg}{137}
-@xrdef{Optional Features-pg}{137}
+@xrdef{Sharing Defaults-pg}{141}
+@xrdef{Operation Controls-pg}{141}
+@xrdef{Optional Features-pg}{141}
@xrdef{Reporting Bugs-title}{Reporting Bugs}
@xrdef{Reporting Bugs-snt}{Appendix@tie @char65{}}
-@xrdef{Reporting Bugs-pg}{143}
+@xrdef{Reporting Bugs-pg}{147}
@xrdef{Major Differences From The Bourne Shell-title}{Major Differences From The Bourne Shell}
@xrdef{Major Differences From The Bourne Shell-snt}{Appendix@tie @char66{}}
-@xrdef{Major Differences From The Bourne Shell-pg}{145}
+@xrdef{Major Differences From The Bourne Shell-pg}{149}
@xrdef{GNU Free Documentation License-title}{GNU Free Documentation License}
@xrdef{GNU Free Documentation License-snt}{Appendix@tie @char67{}}
-@xrdef{GNU Free Documentation License-pg}{151}
+@xrdef{GNU Free Documentation License-pg}{155}
@xrdef{Indexes-title}{Indexes}
@xrdef{Indexes-snt}{Appendix@tie @char68{}}
@xrdef{Builtin Index-title}{Index of Shell Builtin Commands}
@xrdef{Builtin Index-snt}{Section@tie @char68.1}
-@xrdef{Indexes-pg}{159}
-@xrdef{Builtin Index-pg}{159}
+@xrdef{Indexes-pg}{163}
+@xrdef{Builtin Index-pg}{163}
@xrdef{Reserved Word Index-title}{Index of Shell Reserved Words}
@xrdef{Reserved Word Index-snt}{Section@tie @char68.2}
@xrdef{Variable Index-title}{Parameter and Variable Index}
@xrdef{Variable Index-snt}{Section@tie @char68.3}
-@xrdef{Reserved Word Index-pg}{160}
-@xrdef{Variable Index-pg}{160}
+@xrdef{Reserved Word Index-pg}{164}
+@xrdef{Variable Index-pg}{164}
@xrdef{Function Index-title}{Function Index}
@xrdef{Function Index-snt}{Section@tie @char68.4}
-@xrdef{Function Index-pg}{162}
+@xrdef{Function Index-pg}{166}
@xrdef{Concept Index-title}{Concept Index}
@xrdef{Concept Index-snt}{Section@tie @char68.5}
-@xrdef{Concept Index-pg}{164}
+@xrdef{Concept Index-pg}{168}
-\entry{:}{37}{\code {:}}
-\entry{.}{37}{\code {.}}
-\entry{break}{37}{\code {break}}
-\entry{cd}{38}{\code {cd}}
-\entry{continue}{38}{\code {continue}}
-\entry{eval}{38}{\code {eval}}
-\entry{exec}{38}{\code {exec}}
-\entry{exit}{39}{\code {exit}}
-\entry{export}{39}{\code {export}}
-\entry{getopts}{39}{\code {getopts}}
-\entry{hash}{40}{\code {hash}}
-\entry{pwd}{40}{\code {pwd}}
-\entry{readonly}{40}{\code {readonly}}
-\entry{return}{41}{\code {return}}
-\entry{shift}{41}{\code {shift}}
-\entry{test}{41}{\code {test}}
-\entry{[}{41}{\code {[}}
-\entry{times}{42}{\code {times}}
-\entry{trap}{42}{\code {trap}}
-\entry{umask}{43}{\code {umask}}
-\entry{unset}{43}{\code {unset}}
-\entry{alias}{44}{\code {alias}}
-\entry{bind}{44}{\code {bind}}
-\entry{builtin}{45}{\code {builtin}}
-\entry{caller}{45}{\code {caller}}
-\entry{command}{46}{\code {command}}
-\entry{declare}{46}{\code {declare}}
-\entry{echo}{47}{\code {echo}}
-\entry{enable}{48}{\code {enable}}
-\entry{help}{48}{\code {help}}
-\entry{let}{49}{\code {let}}
-\entry{local}{49}{\code {local}}
-\entry{logout}{49}{\code {logout}}
-\entry{mapfile}{49}{\code {mapfile}}
-\entry{printf}{50}{\code {printf}}
-\entry{read}{50}{\code {read}}
-\entry{readarray}{52}{\code {readarray}}
-\entry{source}{52}{\code {source}}
-\entry{type}{52}{\code {type}}
-\entry{typeset}{52}{\code {typeset}}
-\entry{ulimit}{53}{\code {ulimit}}
-\entry{unalias}{54}{\code {unalias}}
-\entry{set}{54}{\code {set}}
-\entry{shopt}{58}{\code {shopt}}
-\entry{dirs}{85}{\code {dirs}}
-\entry{popd}{86}{\code {popd}}
-\entry{pushd}{86}{\code {pushd}}
-\entry{bg}{94}{\code {bg}}
-\entry{fg}{94}{\code {fg}}
-\entry{jobs}{94}{\code {jobs}}
-\entry{kill}{95}{\code {kill}}
-\entry{wait}{95}{\code {wait}}
-\entry{disown}{95}{\code {disown}}
-\entry{suspend}{95}{\code {suspend}}
-\entry{compgen}{122}{\code {compgen}}
-\entry{complete}{123}{\code {complete}}
-\entry{compopt}{126}{\code {compopt}}
-\entry{fc}{129}{\code {fc}}
-\entry{history}{130}{\code {history}}
+\entry{:}{41}{\code {:}}
+\entry{.}{41}{\code {.}}
+\entry{break}{41}{\code {break}}
+\entry{cd}{42}{\code {cd}}
+\entry{continue}{42}{\code {continue}}
+\entry{eval}{42}{\code {eval}}
+\entry{exec}{42}{\code {exec}}
+\entry{exit}{43}{\code {exit}}
+\entry{export}{43}{\code {export}}
+\entry{getopts}{43}{\code {getopts}}
+\entry{hash}{44}{\code {hash}}
+\entry{pwd}{44}{\code {pwd}}
+\entry{readonly}{44}{\code {readonly}}
+\entry{return}{45}{\code {return}}
+\entry{shift}{45}{\code {shift}}
+\entry{test}{45}{\code {test}}
+\entry{[}{45}{\code {[}}
+\entry{times}{46}{\code {times}}
+\entry{trap}{46}{\code {trap}}
+\entry{umask}{47}{\code {umask}}
+\entry{unset}{47}{\code {unset}}
+\entry{alias}{48}{\code {alias}}
+\entry{bind}{48}{\code {bind}}
+\entry{builtin}{49}{\code {builtin}}
+\entry{caller}{49}{\code {caller}}
+\entry{command}{50}{\code {command}}
+\entry{declare}{50}{\code {declare}}
+\entry{echo}{51}{\code {echo}}
+\entry{enable}{52}{\code {enable}}
+\entry{help}{53}{\code {help}}
+\entry{let}{53}{\code {let}}
+\entry{local}{53}{\code {local}}
+\entry{logout}{53}{\code {logout}}
+\entry{mapfile}{53}{\code {mapfile}}
+\entry{printf}{54}{\code {printf}}
+\entry{read}{55}{\code {read}}
+\entry{readarray}{56}{\code {readarray}}
+\entry{source}{56}{\code {source}}
+\entry{type}{56}{\code {type}}
+\entry{typeset}{57}{\code {typeset}}
+\entry{ulimit}{57}{\code {ulimit}}
+\entry{unalias}{58}{\code {unalias}}
+\entry{set}{58}{\code {set}}
+\entry{shopt}{62}{\code {shopt}}
+\entry{dirs}{89}{\code {dirs}}
+\entry{popd}{90}{\code {popd}}
+\entry{pushd}{90}{\code {pushd}}
+\entry{bg}{98}{\code {bg}}
+\entry{fg}{98}{\code {fg}}
+\entry{jobs}{98}{\code {jobs}}
+\entry{kill}{99}{\code {kill}}
+\entry{wait}{99}{\code {wait}}
+\entry{disown}{99}{\code {disown}}
+\entry{suspend}{99}{\code {suspend}}
+\entry{compgen}{126}{\code {compgen}}
+\entry{complete}{127}{\code {complete}}
+\entry{compopt}{130}{\code {compopt}}
+\entry{fc}{133}{\code {fc}}
+\entry{history}{134}{\code {history}}
\initial {.}
-\entry {\code {.}}{37}
+\entry {\code {.}}{41}
\initial {:}
-\entry {\code {:}}{37}
+\entry {\code {:}}{41}
\initial {[}
-\entry {\code {[}}{41}
+\entry {\code {[}}{45}
\initial {A}
-\entry {\code {alias}}{44}
+\entry {\code {alias}}{48}
\initial {B}
-\entry {\code {bg}}{94}
-\entry {\code {bind}}{44}
-\entry {\code {break}}{37}
-\entry {\code {builtin}}{45}
+\entry {\code {bg}}{98}
+\entry {\code {bind}}{48}
+\entry {\code {break}}{41}
+\entry {\code {builtin}}{49}
\initial {C}
-\entry {\code {caller}}{45}
-\entry {\code {cd}}{38}
-\entry {\code {command}}{46}
-\entry {\code {compgen}}{122}
-\entry {\code {complete}}{123}
-\entry {\code {compopt}}{126}
-\entry {\code {continue}}{38}
+\entry {\code {caller}}{49}
+\entry {\code {cd}}{42}
+\entry {\code {command}}{50}
+\entry {\code {compgen}}{126}
+\entry {\code {complete}}{127}
+\entry {\code {compopt}}{130}
+\entry {\code {continue}}{42}
\initial {D}
-\entry {\code {declare}}{46}
-\entry {\code {dirs}}{85}
-\entry {\code {disown}}{95}
+\entry {\code {declare}}{50}
+\entry {\code {dirs}}{89}
+\entry {\code {disown}}{99}
\initial {E}
-\entry {\code {echo}}{47}
-\entry {\code {enable}}{48}
-\entry {\code {eval}}{38}
-\entry {\code {exec}}{38}
-\entry {\code {exit}}{39}
-\entry {\code {export}}{39}
+\entry {\code {echo}}{51}
+\entry {\code {enable}}{52}
+\entry {\code {eval}}{42}
+\entry {\code {exec}}{42}
+\entry {\code {exit}}{43}
+\entry {\code {export}}{43}
\initial {F}
-\entry {\code {fc}}{129}
-\entry {\code {fg}}{94}
+\entry {\code {fc}}{133}
+\entry {\code {fg}}{98}
\initial {G}
-\entry {\code {getopts}}{39}
+\entry {\code {getopts}}{43}
\initial {H}
-\entry {\code {hash}}{40}
-\entry {\code {help}}{48}
-\entry {\code {history}}{130}
+\entry {\code {hash}}{44}
+\entry {\code {help}}{53}
+\entry {\code {history}}{134}
\initial {J}
-\entry {\code {jobs}}{94}
+\entry {\code {jobs}}{98}
\initial {K}
-\entry {\code {kill}}{95}
+\entry {\code {kill}}{99}
\initial {L}
-\entry {\code {let}}{49}
-\entry {\code {local}}{49}
-\entry {\code {logout}}{49}
+\entry {\code {let}}{53}
+\entry {\code {local}}{53}
+\entry {\code {logout}}{53}
\initial {M}
-\entry {\code {mapfile}}{49}
+\entry {\code {mapfile}}{53}
\initial {P}
-\entry {\code {popd}}{86}
-\entry {\code {printf}}{50}
-\entry {\code {pushd}}{86}
-\entry {\code {pwd}}{40}
+\entry {\code {popd}}{90}
+\entry {\code {printf}}{54}
+\entry {\code {pushd}}{90}
+\entry {\code {pwd}}{44}
\initial {R}
-\entry {\code {read}}{50}
-\entry {\code {readarray}}{52}
-\entry {\code {readonly}}{40}
-\entry {\code {return}}{41}
+\entry {\code {read}}{55}
+\entry {\code {readarray}}{56}
+\entry {\code {readonly}}{44}
+\entry {\code {return}}{45}
\initial {S}
-\entry {\code {set}}{54}
-\entry {\code {shift}}{41}
-\entry {\code {shopt}}{58}
-\entry {\code {source}}{52}
-\entry {\code {suspend}}{95}
+\entry {\code {set}}{58}
+\entry {\code {shift}}{45}
+\entry {\code {shopt}}{62}
+\entry {\code {source}}{56}
+\entry {\code {suspend}}{99}
\initial {T}
-\entry {\code {test}}{41}
-\entry {\code {times}}{42}
-\entry {\code {trap}}{42}
-\entry {\code {type}}{52}
-\entry {\code {typeset}}{52}
+\entry {\code {test}}{45}
+\entry {\code {times}}{46}
+\entry {\code {trap}}{46}
+\entry {\code {type}}{56}
+\entry {\code {typeset}}{57}
\initial {U}
-\entry {\code {ulimit}}{53}
-\entry {\code {umask}}{43}
-\entry {\code {unalias}}{54}
-\entry {\code {unset}}{43}
+\entry {\code {ulimit}}{57}
+\entry {\code {umask}}{47}
+\entry {\code {unalias}}{58}
+\entry {\code {unset}}{47}
\initial {W}
-\entry {\code {wait}}{95}
+\entry {\code {wait}}{99}
\entry{parameters}{18}{parameters}
\entry{variable, shell}{18}{variable, shell}
\entry{shell variable}{18}{shell variable}
-\entry{parameters, positional}{18}{parameters, positional}
+\entry{parameters, positional}{19}{parameters, positional}
\entry{parameters, special}{19}{parameters, special}
\entry{expansion}{20}{expansion}
-\entry{brace expansion}{20}{brace expansion}
-\entry{expansion, brace}{20}{expansion, brace}
+\entry{brace expansion}{21}{brace expansion}
+\entry{expansion, brace}{21}{expansion, brace}
\entry{tilde expansion}{21}{tilde expansion}
\entry{expansion, tilde}{21}{expansion, tilde}
\entry{parameter expansion}{22}{parameter expansion}
\entry{expansion, parameter}{22}{expansion, parameter}
-\entry{command substitution}{25}{command substitution}
-\entry{expansion, arithmetic}{25}{expansion, arithmetic}
-\entry{arithmetic expansion}{25}{arithmetic expansion}
-\entry{process substitution}{25}{process substitution}
-\entry{word splitting}{26}{word splitting}
-\entry{expansion, filename}{26}{expansion, filename}
-\entry{expansion, pathname}{26}{expansion, pathname}
-\entry{filename expansion}{26}{filename expansion}
-\entry{pathname expansion}{26}{pathname expansion}
-\entry{pattern matching}{27}{pattern matching}
-\entry{matching, pattern}{27}{matching, pattern}
-\entry{redirection}{28}{redirection}
-\entry{command expansion}{32}{command expansion}
-\entry{command execution}{33}{command execution}
-\entry{command search}{33}{command search}
-\entry{execution environment}{33}{execution environment}
-\entry{environment}{34}{environment}
-\entry{exit status}{35}{exit status}
-\entry{signal handling}{35}{signal handling}
-\entry{shell script}{36}{shell script}
-\entry{special builtin}{63}{special builtin}
-\entry{login shell}{77}{login shell}
-\entry{interactive shell}{77}{interactive shell}
-\entry{startup files}{77}{startup files}
-\entry{interactive shell}{78}{interactive shell}
-\entry{shell, interactive}{78}{shell, interactive}
-\entry{expressions, conditional}{80}{expressions, conditional}
-\entry{arithmetic, shell}{82}{arithmetic, shell}
-\entry{shell arithmetic}{82}{shell arithmetic}
-\entry{expressions, arithmetic}{82}{expressions, arithmetic}
-\entry{evaluation, arithmetic}{82}{evaluation, arithmetic}
-\entry{arithmetic evaluation}{82}{arithmetic evaluation}
-\entry{alias expansion}{83}{alias expansion}
-\entry{arrays}{84}{arrays}
-\entry{directory stack}{85}{directory stack}
-\entry{prompting}{87}{prompting}
-\entry{restricted shell}{88}{restricted shell}
-\entry{POSIX Mode}{88}{POSIX Mode}
-\entry{job control}{93}{job control}
-\entry{foreground}{93}{foreground}
-\entry{background}{93}{background}
-\entry{suspending jobs}{93}{suspending jobs}
-\entry{Readline, how to use}{96}{Readline, how to use}
-\entry{interaction, readline}{97}{interaction, readline}
-\entry{notation, readline}{98}{notation, readline}
-\entry{command editing}{98}{command editing}
-\entry{editing command lines}{98}{editing command lines}
-\entry{killing text}{99}{killing text}
-\entry{yanking text}{99}{yanking text}
-\entry{kill ring}{99}{kill ring}
-\entry{initialization file, readline}{100}{initialization file, readline}
-\entry{variables, readline}{101}{variables, readline}
-\entry{programmable completion}{120}{programmable completion}
-\entry{completion builtins}{122}{completion builtins}
-\entry{History, how to use}{128}{History, how to use}
-\entry{command history}{129}{command history}
-\entry{history list}{129}{history list}
-\entry{history builtins}{129}{history builtins}
-\entry{history expansion}{131}{history expansion}
-\entry{event designators}{132}{event designators}
-\entry{history events}{132}{history events}
-\entry{installation}{135}{installation}
-\entry{configuration}{135}{configuration}
-\entry{Bash installation}{135}{Bash installation}
-\entry{Bash configuration}{135}{Bash configuration}
+\entry{command substitution}{27}{command substitution}
+\entry{expansion, arithmetic}{28}{expansion, arithmetic}
+\entry{arithmetic expansion}{28}{arithmetic expansion}
+\entry{process substitution}{28}{process substitution}
+\entry{word splitting}{28}{word splitting}
+\entry{expansion, filename}{29}{expansion, filename}
+\entry{expansion, pathname}{29}{expansion, pathname}
+\entry{filename expansion}{29}{filename expansion}
+\entry{pathname expansion}{29}{pathname expansion}
+\entry{pattern matching}{29}{pattern matching}
+\entry{matching, pattern}{29}{matching, pattern}
+\entry{redirection}{31}{redirection}
+\entry{command expansion}{34}{command expansion}
+\entry{command execution}{35}{command execution}
+\entry{command search}{35}{command search}
+\entry{execution environment}{36}{execution environment}
+\entry{environment}{37}{environment}
+\entry{exit status}{37}{exit status}
+\entry{signal handling}{38}{signal handling}
+\entry{shell script}{38}{shell script}
+\entry{special builtin}{67}{special builtin}
+\entry{login shell}{81}{login shell}
+\entry{interactive shell}{81}{interactive shell}
+\entry{startup files}{81}{startup files}
+\entry{interactive shell}{82}{interactive shell}
+\entry{shell, interactive}{82}{shell, interactive}
+\entry{expressions, conditional}{84}{expressions, conditional}
+\entry{arithmetic, shell}{86}{arithmetic, shell}
+\entry{shell arithmetic}{86}{shell arithmetic}
+\entry{expressions, arithmetic}{86}{expressions, arithmetic}
+\entry{evaluation, arithmetic}{86}{evaluation, arithmetic}
+\entry{arithmetic evaluation}{86}{arithmetic evaluation}
+\entry{alias expansion}{87}{alias expansion}
+\entry{arrays}{88}{arrays}
+\entry{directory stack}{89}{directory stack}
+\entry{prompting}{91}{prompting}
+\entry{restricted shell}{92}{restricted shell}
+\entry{POSIX Mode}{92}{POSIX Mode}
+\entry{job control}{97}{job control}
+\entry{foreground}{97}{foreground}
+\entry{background}{97}{background}
+\entry{suspending jobs}{97}{suspending jobs}
+\entry{Readline, how to use}{100}{Readline, how to use}
+\entry{interaction, readline}{101}{interaction, readline}
+\entry{notation, readline}{102}{notation, readline}
+\entry{command editing}{102}{command editing}
+\entry{editing command lines}{102}{editing command lines}
+\entry{killing text}{103}{killing text}
+\entry{yanking text}{103}{yanking text}
+\entry{kill ring}{103}{kill ring}
+\entry{initialization file, readline}{104}{initialization file, readline}
+\entry{variables, readline}{105}{variables, readline}
+\entry{programmable completion}{124}{programmable completion}
+\entry{completion builtins}{126}{completion builtins}
+\entry{History, how to use}{132}{History, how to use}
+\entry{command history}{133}{command history}
+\entry{history list}{133}{history list}
+\entry{history builtins}{133}{history builtins}
+\entry{history expansion}{135}{history expansion}
+\entry{event designators}{136}{event designators}
+\entry{history events}{136}{history events}
+\entry{installation}{139}{installation}
+\entry{configuration}{139}{configuration}
+\entry{Bash installation}{139}{Bash installation}
+\entry{Bash configuration}{139}{Bash configuration}
\initial {A}
-\entry {alias expansion}{83}
-\entry {arithmetic evaluation}{82}
-\entry {arithmetic expansion}{25}
-\entry {arithmetic, shell}{82}
-\entry {arrays}{84}
+\entry {alias expansion}{87}
+\entry {arithmetic evaluation}{86}
+\entry {arithmetic expansion}{28}
+\entry {arithmetic, shell}{86}
+\entry {arrays}{88}
\initial {B}
-\entry {background}{93}
-\entry {Bash configuration}{135}
-\entry {Bash installation}{135}
+\entry {background}{97}
+\entry {Bash configuration}{139}
+\entry {Bash installation}{139}
\entry {Bourne shell}{5}
-\entry {brace expansion}{20}
+\entry {brace expansion}{21}
\entry {builtin}{3}
\initial {C}
-\entry {command editing}{98}
-\entry {command execution}{33}
-\entry {command expansion}{32}
-\entry {command history}{129}
-\entry {command search}{33}
-\entry {command substitution}{25}
+\entry {command editing}{102}
+\entry {command execution}{35}
+\entry {command expansion}{34}
+\entry {command history}{133}
+\entry {command search}{35}
+\entry {command substitution}{27}
\entry {command timing}{8}
\entry {commands, compound}{9}
\entry {commands, conditional}{10}
\entry {commands, shell}{8}
\entry {commands, simple}{8}
\entry {comments, shell}{7}
-\entry {completion builtins}{122}
-\entry {configuration}{135}
+\entry {completion builtins}{126}
+\entry {configuration}{139}
\entry {control operator}{3}
\entry {coprocess}{15}
\initial {D}
-\entry {directory stack}{85}
+\entry {directory stack}{89}
\initial {E}
-\entry {editing command lines}{98}
-\entry {environment}{34}
-\entry {evaluation, arithmetic}{82}
-\entry {event designators}{132}
-\entry {execution environment}{33}
-\entry {exit status}{3, 35}
+\entry {editing command lines}{102}
+\entry {environment}{37}
+\entry {evaluation, arithmetic}{86}
+\entry {event designators}{136}
+\entry {execution environment}{36}
+\entry {exit status}{3, 37}
\entry {expansion}{20}
-\entry {expansion, arithmetic}{25}
-\entry {expansion, brace}{20}
-\entry {expansion, filename}{26}
+\entry {expansion, arithmetic}{28}
+\entry {expansion, brace}{21}
+\entry {expansion, filename}{29}
\entry {expansion, parameter}{22}
-\entry {expansion, pathname}{26}
+\entry {expansion, pathname}{29}
\entry {expansion, tilde}{21}
-\entry {expressions, arithmetic}{82}
-\entry {expressions, conditional}{80}
+\entry {expressions, arithmetic}{86}
+\entry {expressions, conditional}{84}
\initial {F}
\entry {field}{3}
\entry {filename}{3}
-\entry {filename expansion}{26}
-\entry {foreground}{93}
+\entry {filename expansion}{29}
+\entry {foreground}{97}
\entry {functions, shell}{16}
\initial {H}
-\entry {history builtins}{129}
-\entry {history events}{132}
-\entry {history expansion}{131}
-\entry {history list}{129}
-\entry {History, how to use}{128}
+\entry {history builtins}{133}
+\entry {history events}{136}
+\entry {history expansion}{135}
+\entry {history list}{133}
+\entry {History, how to use}{132}
\initial {I}
\entry {identifier}{3}
-\entry {initialization file, readline}{100}
-\entry {installation}{135}
-\entry {interaction, readline}{97}
-\entry {interactive shell}{77, 78}
+\entry {initialization file, readline}{104}
+\entry {installation}{139}
+\entry {interaction, readline}{101}
+\entry {interactive shell}{81, 82}
\entry {internationalization}{7}
\initial {J}
\entry {job}{3}
-\entry {job control}{3, 93}
+\entry {job control}{3, 97}
\initial {K}
-\entry {kill ring}{99}
-\entry {killing text}{99}
+\entry {kill ring}{103}
+\entry {killing text}{103}
\initial {L}
\entry {localization}{7}
-\entry {login shell}{77}
+\entry {login shell}{81}
\initial {M}
-\entry {matching, pattern}{27}
+\entry {matching, pattern}{29}
\entry {metacharacter}{3}
\initial {N}
\entry {name}{3}
\entry {native languages}{7}
-\entry {notation, readline}{98}
+\entry {notation, readline}{102}
\initial {O}
\entry {operator, shell}{3}
\initial {P}
\entry {parameter expansion}{22}
\entry {parameters}{18}
-\entry {parameters, positional}{18}
+\entry {parameters, positional}{19}
\entry {parameters, special}{19}
-\entry {pathname expansion}{26}
-\entry {pattern matching}{27}
+\entry {pathname expansion}{29}
+\entry {pattern matching}{29}
\entry {pipeline}{8}
\entry {POSIX}{3}
-\entry {POSIX Mode}{88}
+\entry {POSIX Mode}{92}
\entry {process group}{3}
\entry {process group ID}{3}
-\entry {process substitution}{25}
-\entry {programmable completion}{120}
-\entry {prompting}{87}
+\entry {process substitution}{28}
+\entry {programmable completion}{124}
+\entry {prompting}{91}
\initial {Q}
\entry {quoting}{6}
\entry {quoting, ANSI}{6}
\initial {R}
-\entry {Readline, how to use}{96}
-\entry {redirection}{28}
+\entry {Readline, how to use}{100}
+\entry {redirection}{31}
\entry {reserved word}{3}
-\entry {restricted shell}{88}
+\entry {restricted shell}{92}
\entry {return status}{4}
\initial {S}
-\entry {shell arithmetic}{82}
+\entry {shell arithmetic}{86}
\entry {shell function}{16}
-\entry {shell script}{36}
+\entry {shell script}{38}
\entry {shell variable}{18}
-\entry {shell, interactive}{78}
+\entry {shell, interactive}{82}
\entry {signal}{4}
-\entry {signal handling}{35}
-\entry {special builtin}{4, 63}
-\entry {startup files}{77}
-\entry {suspending jobs}{93}
+\entry {signal handling}{38}
+\entry {special builtin}{4, 67}
+\entry {startup files}{81}
+\entry {suspending jobs}{97}
\initial {T}
\entry {tilde expansion}{21}
\entry {token}{4}
\entry {translation, native languages}{7}
\initial {V}
\entry {variable, shell}{18}
-\entry {variables, readline}{101}
+\entry {variables, readline}{105}
\initial {W}
\entry {word}{4}
-\entry {word splitting}{26}
+\entry {word splitting}{28}
\initial {Y}
-\entry {yanking text}{99}
+\entry {yanking text}{103}
-\entry{beginning-of-line (C-a)}{111}{\code {beginning-of-line (C-a)}}
-\entry{end-of-line (C-e)}{111}{\code {end-of-line (C-e)}}
-\entry{forward-char (C-f)}{111}{\code {forward-char (C-f)}}
-\entry{backward-char (C-b)}{111}{\code {backward-char (C-b)}}
-\entry{forward-word (M-f)}{111}{\code {forward-word (M-f)}}
-\entry{backward-word (M-b)}{111}{\code {backward-word (M-b)}}
-\entry{shell-forward-word ()}{111}{\code {shell-forward-word ()}}
-\entry{shell-backward-word ()}{111}{\code {shell-backward-word ()}}
-\entry{clear-screen (C-l)}{111}{\code {clear-screen (C-l)}}
-\entry{redraw-current-line ()}{111}{\code {redraw-current-line ()}}
-\entry{accept-line (Newline or Return)}{112}{\code {accept-line (Newline or Return)}}
-\entry{previous-history (C-p)}{112}{\code {previous-history (C-p)}}
-\entry{next-history (C-n)}{112}{\code {next-history (C-n)}}
-\entry{beginning-of-history (M-<)}{112}{\code {beginning-of-history (M-<)}}
-\entry{end-of-history (M->)}{112}{\code {end-of-history (M->)}}
-\entry{reverse-search-history (C-r)}{112}{\code {reverse-search-history (C-r)}}
-\entry{forward-search-history (C-s)}{112}{\code {forward-search-history (C-s)}}
-\entry{non-incremental-reverse-search-history (M-p)}{112}{\code {non-incremental-reverse-search-history (M-p)}}
-\entry{non-incremental-forward-search-history (M-n)}{112}{\code {non-incremental-forward-search-history (M-n)}}
-\entry{history-search-forward ()}{112}{\code {history-search-forward ()}}
-\entry{history-search-backward ()}{112}{\code {history-search-backward ()}}
-\entry{history-substr-search-forward ()}{112}{\code {history-substr-search-forward ()}}
-\entry{history-substr-search-backward ()}{113}{\code {history-substr-search-backward ()}}
-\entry{yank-nth-arg (M-C-y)}{113}{\code {yank-nth-arg (M-C-y)}}
-\entry{yank-last-arg (M-. or M-_)}{113}{\code {yank-last-arg (M-. or M-_)}}
-\entry{delete-char (C-d)}{113}{\code {delete-char (C-d)}}
-\entry{backward-delete-char (Rubout)}{113}{\code {backward-delete-char (Rubout)}}
-\entry{forward-backward-delete-char ()}{113}{\code {forward-backward-delete-char ()}}
-\entry{quoted-insert (C-q or C-v)}{113}{\code {quoted-insert (C-q or C-v)}}
-\entry{self-insert (a, b, A, 1, !, ...{})}{113}{\code {self-insert (a, b, A, 1, !, \dots {})}}
-\entry{transpose-chars (C-t)}{114}{\code {transpose-chars (C-t)}}
-\entry{transpose-words (M-t)}{114}{\code {transpose-words (M-t)}}
-\entry{upcase-word (M-u)}{114}{\code {upcase-word (M-u)}}
-\entry{downcase-word (M-l)}{114}{\code {downcase-word (M-l)}}
-\entry{capitalize-word (M-c)}{114}{\code {capitalize-word (M-c)}}
-\entry{overwrite-mode ()}{114}{\code {overwrite-mode ()}}
-\entry{kill-line (C-k)}{114}{\code {kill-line (C-k)}}
-\entry{backward-kill-line (C-x Rubout)}{114}{\code {backward-kill-line (C-x Rubout)}}
-\entry{unix-line-discard (C-u)}{114}{\code {unix-line-discard (C-u)}}
-\entry{kill-whole-line ()}{114}{\code {kill-whole-line ()}}
-\entry{kill-word (M-d)}{114}{\code {kill-word (M-d)}}
-\entry{backward-kill-word (M-DEL)}{115}{\code {backward-kill-word (M-\key {DEL})}}
-\entry{shell-kill-word ()}{115}{\code {shell-kill-word ()}}
-\entry{shell-backward-kill-word ()}{115}{\code {shell-backward-kill-word ()}}
-\entry{unix-word-rubout (C-w)}{115}{\code {unix-word-rubout (C-w)}}
-\entry{unix-filename-rubout ()}{115}{\code {unix-filename-rubout ()}}
-\entry{delete-horizontal-space ()}{115}{\code {delete-horizontal-space ()}}
-\entry{kill-region ()}{115}{\code {kill-region ()}}
-\entry{copy-region-as-kill ()}{115}{\code {copy-region-as-kill ()}}
-\entry{copy-backward-word ()}{115}{\code {copy-backward-word ()}}
-\entry{copy-forward-word ()}{115}{\code {copy-forward-word ()}}
-\entry{yank (C-y)}{115}{\code {yank (C-y)}}
-\entry{yank-pop (M-y)}{115}{\code {yank-pop (M-y)}}
-\entry{digit-argument (M-0, M-1, ...{} M--)}{115}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}
-\entry{universal-argument ()}{115}{\code {universal-argument ()}}
-\entry{complete (TAB)}{116}{\code {complete (\key {TAB})}}
-\entry{possible-completions (M-?)}{116}{\code {possible-completions (M-?)}}
-\entry{insert-completions (M-*)}{116}{\code {insert-completions (M-*)}}
-\entry{menu-complete ()}{116}{\code {menu-complete ()}}
-\entry{menu-complete-backward ()}{116}{\code {menu-complete-backward ()}}
-\entry{delete-char-or-list ()}{116}{\code {delete-char-or-list ()}}
-\entry{complete-filename (M-/)}{116}{\code {complete-filename (M-/)}}
-\entry{possible-filename-completions (C-x /)}{116}{\code {possible-filename-completions (C-x /)}}
-\entry{complete-username (M-~)}{117}{\code {complete-username (M-~)}}
-\entry{possible-username-completions (C-x ~)}{117}{\code {possible-username-completions (C-x ~)}}
-\entry{complete-variable (M-$)}{117}{\code {complete-variable (M-$)}}
-\entry{possible-variable-completions (C-x $)}{117}{\code {possible-variable-completions (C-x $)}}
-\entry{complete-hostname (M-@)}{117}{\code {complete-hostname (M-@)}}
-\entry{possible-hostname-completions (C-x @)}{117}{\code {possible-hostname-completions (C-x @)}}
-\entry{complete-command (M-!)}{117}{\code {complete-command (M-!)}}
-\entry{possible-command-completions (C-x !)}{117}{\code {possible-command-completions (C-x !)}}
-\entry{dynamic-complete-history (M-TAB)}{117}{\code {dynamic-complete-history (M-\key {TAB})}}
-\entry{dabbrev-expand ()}{117}{\code {dabbrev-expand ()}}
-\entry{complete-into-braces (M-{\tt \char 123})}{117}{\code {complete-into-braces (M-{\tt \char 123})}}
-\entry{start-kbd-macro (C-x ()}{117}{\code {start-kbd-macro (C-x ()}}
-\entry{end-kbd-macro (C-x ))}{117}{\code {end-kbd-macro (C-x ))}}
-\entry{call-last-kbd-macro (C-x e)}{117}{\code {call-last-kbd-macro (C-x e)}}
-\entry{print-last-kbd-macro ()}{118}{\code {print-last-kbd-macro ()}}
-\entry{re-read-init-file (C-x C-r)}{118}{\code {re-read-init-file (C-x C-r)}}
-\entry{abort (C-g)}{118}{\code {abort (C-g)}}
-\entry{do-uppercase-version (M-a, M-b, M-x, ...{})}{118}{\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}}
-\entry{prefix-meta (ESC)}{118}{\code {prefix-meta (\key {ESC})}}
-\entry{undo (C-_ or C-x C-u)}{118}{\code {undo (C-_ or C-x C-u)}}
-\entry{revert-line (M-r)}{118}{\code {revert-line (M-r)}}
-\entry{tilde-expand (M-&)}{118}{\code {tilde-expand (M-&)}}
-\entry{set-mark (C-@)}{118}{\code {set-mark (C-@)}}
-\entry{exchange-point-and-mark (C-x C-x)}{118}{\code {exchange-point-and-mark (C-x C-x)}}
-\entry{character-search (C-])}{118}{\code {character-search (C-])}}
-\entry{character-search-backward (M-C-])}{118}{\code {character-search-backward (M-C-])}}
-\entry{skip-csi-sequence ()}{118}{\code {skip-csi-sequence ()}}
-\entry{insert-comment (M-#)}{119}{\code {insert-comment (M-#)}}
-\entry{dump-functions ()}{119}{\code {dump-functions ()}}
-\entry{dump-variables ()}{119}{\code {dump-variables ()}}
-\entry{dump-macros ()}{119}{\code {dump-macros ()}}
-\entry{glob-complete-word (M-g)}{119}{\code {glob-complete-word (M-g)}}
-\entry{glob-expand-word (C-x *)}{119}{\code {glob-expand-word (C-x *)}}
-\entry{glob-list-expansions (C-x g)}{119}{\code {glob-list-expansions (C-x g)}}
-\entry{display-shell-version (C-x C-v)}{119}{\code {display-shell-version (C-x C-v)}}
-\entry{shell-expand-line (M-C-e)}{119}{\code {shell-expand-line (M-C-e)}}
-\entry{history-expand-line (M-^)}{119}{\code {history-expand-line (M-^)}}
-\entry{magic-space ()}{120}{\code {magic-space ()}}
-\entry{alias-expand-line ()}{120}{\code {alias-expand-line ()}}
-\entry{history-and-alias-expand-line ()}{120}{\code {history-and-alias-expand-line ()}}
-\entry{insert-last-argument (M-. or M-_)}{120}{\code {insert-last-argument (M-. or M-_)}}
-\entry{operate-and-get-next (C-o)}{120}{\code {operate-and-get-next (C-o)}}
-\entry{edit-and-execute-command (C-xC-e)}{120}{\code {edit-and-execute-command (C-xC-e)}}
+\entry{beginning-of-line (C-a)}{115}{\code {beginning-of-line (C-a)}}
+\entry{end-of-line (C-e)}{115}{\code {end-of-line (C-e)}}
+\entry{forward-char (C-f)}{115}{\code {forward-char (C-f)}}
+\entry{backward-char (C-b)}{115}{\code {backward-char (C-b)}}
+\entry{forward-word (M-f)}{115}{\code {forward-word (M-f)}}
+\entry{backward-word (M-b)}{115}{\code {backward-word (M-b)}}
+\entry{shell-forward-word ()}{115}{\code {shell-forward-word ()}}
+\entry{shell-backward-word ()}{115}{\code {shell-backward-word ()}}
+\entry{clear-screen (C-l)}{115}{\code {clear-screen (C-l)}}
+\entry{redraw-current-line ()}{115}{\code {redraw-current-line ()}}
+\entry{accept-line (Newline or Return)}{116}{\code {accept-line (Newline or Return)}}
+\entry{previous-history (C-p)}{116}{\code {previous-history (C-p)}}
+\entry{next-history (C-n)}{116}{\code {next-history (C-n)}}
+\entry{beginning-of-history (M-<)}{116}{\code {beginning-of-history (M-<)}}
+\entry{end-of-history (M->)}{116}{\code {end-of-history (M->)}}
+\entry{reverse-search-history (C-r)}{116}{\code {reverse-search-history (C-r)}}
+\entry{forward-search-history (C-s)}{116}{\code {forward-search-history (C-s)}}
+\entry{non-incremental-reverse-search-history (M-p)}{116}{\code {non-incremental-reverse-search-history (M-p)}}
+\entry{non-incremental-forward-search-history (M-n)}{116}{\code {non-incremental-forward-search-history (M-n)}}
+\entry{history-search-forward ()}{116}{\code {history-search-forward ()}}
+\entry{history-search-backward ()}{116}{\code {history-search-backward ()}}
+\entry{history-substr-search-forward ()}{116}{\code {history-substr-search-forward ()}}
+\entry{history-substr-search-backward ()}{117}{\code {history-substr-search-backward ()}}
+\entry{yank-nth-arg (M-C-y)}{117}{\code {yank-nth-arg (M-C-y)}}
+\entry{yank-last-arg (M-. or M-_)}{117}{\code {yank-last-arg (M-. or M-_)}}
+\entry{delete-char (C-d)}{117}{\code {delete-char (C-d)}}
+\entry{backward-delete-char (Rubout)}{117}{\code {backward-delete-char (Rubout)}}
+\entry{forward-backward-delete-char ()}{117}{\code {forward-backward-delete-char ()}}
+\entry{quoted-insert (C-q or C-v)}{117}{\code {quoted-insert (C-q or C-v)}}
+\entry{self-insert (a, b, A, 1, !, ...{})}{117}{\code {self-insert (a, b, A, 1, !, \dots {})}}
+\entry{transpose-chars (C-t)}{118}{\code {transpose-chars (C-t)}}
+\entry{transpose-words (M-t)}{118}{\code {transpose-words (M-t)}}
+\entry{upcase-word (M-u)}{118}{\code {upcase-word (M-u)}}
+\entry{downcase-word (M-l)}{118}{\code {downcase-word (M-l)}}
+\entry{capitalize-word (M-c)}{118}{\code {capitalize-word (M-c)}}
+\entry{overwrite-mode ()}{118}{\code {overwrite-mode ()}}
+\entry{kill-line (C-k)}{118}{\code {kill-line (C-k)}}
+\entry{backward-kill-line (C-x Rubout)}{118}{\code {backward-kill-line (C-x Rubout)}}
+\entry{unix-line-discard (C-u)}{118}{\code {unix-line-discard (C-u)}}
+\entry{kill-whole-line ()}{118}{\code {kill-whole-line ()}}
+\entry{kill-word (M-d)}{118}{\code {kill-word (M-d)}}
+\entry{backward-kill-word (M-DEL)}{119}{\code {backward-kill-word (M-\key {DEL})}}
+\entry{shell-kill-word ()}{119}{\code {shell-kill-word ()}}
+\entry{shell-backward-kill-word ()}{119}{\code {shell-backward-kill-word ()}}
+\entry{unix-word-rubout (C-w)}{119}{\code {unix-word-rubout (C-w)}}
+\entry{unix-filename-rubout ()}{119}{\code {unix-filename-rubout ()}}
+\entry{delete-horizontal-space ()}{119}{\code {delete-horizontal-space ()}}
+\entry{kill-region ()}{119}{\code {kill-region ()}}
+\entry{copy-region-as-kill ()}{119}{\code {copy-region-as-kill ()}}
+\entry{copy-backward-word ()}{119}{\code {copy-backward-word ()}}
+\entry{copy-forward-word ()}{119}{\code {copy-forward-word ()}}
+\entry{yank (C-y)}{119}{\code {yank (C-y)}}
+\entry{yank-pop (M-y)}{119}{\code {yank-pop (M-y)}}
+\entry{digit-argument (M-0, M-1, ...{} M--)}{119}{\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}
+\entry{universal-argument ()}{119}{\code {universal-argument ()}}
+\entry{complete (TAB)}{120}{\code {complete (\key {TAB})}}
+\entry{possible-completions (M-?)}{120}{\code {possible-completions (M-?)}}
+\entry{insert-completions (M-*)}{120}{\code {insert-completions (M-*)}}
+\entry{menu-complete ()}{120}{\code {menu-complete ()}}
+\entry{menu-complete-backward ()}{120}{\code {menu-complete-backward ()}}
+\entry{delete-char-or-list ()}{120}{\code {delete-char-or-list ()}}
+\entry{complete-filename (M-/)}{120}{\code {complete-filename (M-/)}}
+\entry{possible-filename-completions (C-x /)}{120}{\code {possible-filename-completions (C-x /)}}
+\entry{complete-username (M-~)}{121}{\code {complete-username (M-~)}}
+\entry{possible-username-completions (C-x ~)}{121}{\code {possible-username-completions (C-x ~)}}
+\entry{complete-variable (M-$)}{121}{\code {complete-variable (M-$)}}
+\entry{possible-variable-completions (C-x $)}{121}{\code {possible-variable-completions (C-x $)}}
+\entry{complete-hostname (M-@)}{121}{\code {complete-hostname (M-@)}}
+\entry{possible-hostname-completions (C-x @)}{121}{\code {possible-hostname-completions (C-x @)}}
+\entry{complete-command (M-!)}{121}{\code {complete-command (M-!)}}
+\entry{possible-command-completions (C-x !)}{121}{\code {possible-command-completions (C-x !)}}
+\entry{dynamic-complete-history (M-TAB)}{121}{\code {dynamic-complete-history (M-\key {TAB})}}
+\entry{dabbrev-expand ()}{121}{\code {dabbrev-expand ()}}
+\entry{complete-into-braces (M-{\tt \char 123})}{121}{\code {complete-into-braces (M-{\tt \char 123})}}
+\entry{start-kbd-macro (C-x ()}{121}{\code {start-kbd-macro (C-x ()}}
+\entry{end-kbd-macro (C-x ))}{121}{\code {end-kbd-macro (C-x ))}}
+\entry{call-last-kbd-macro (C-x e)}{121}{\code {call-last-kbd-macro (C-x e)}}
+\entry{print-last-kbd-macro ()}{122}{\code {print-last-kbd-macro ()}}
+\entry{re-read-init-file (C-x C-r)}{122}{\code {re-read-init-file (C-x C-r)}}
+\entry{abort (C-g)}{122}{\code {abort (C-g)}}
+\entry{do-uppercase-version (M-a, M-b, M-x, ...{})}{122}{\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}}
+\entry{prefix-meta (ESC)}{122}{\code {prefix-meta (\key {ESC})}}
+\entry{undo (C-_ or C-x C-u)}{122}{\code {undo (C-_ or C-x C-u)}}
+\entry{revert-line (M-r)}{122}{\code {revert-line (M-r)}}
+\entry{tilde-expand (M-&)}{122}{\code {tilde-expand (M-&)}}
+\entry{set-mark (C-@)}{122}{\code {set-mark (C-@)}}
+\entry{exchange-point-and-mark (C-x C-x)}{122}{\code {exchange-point-and-mark (C-x C-x)}}
+\entry{character-search (C-])}{122}{\code {character-search (C-])}}
+\entry{character-search-backward (M-C-])}{122}{\code {character-search-backward (M-C-])}}
+\entry{skip-csi-sequence ()}{122}{\code {skip-csi-sequence ()}}
+\entry{insert-comment (M-#)}{123}{\code {insert-comment (M-#)}}
+\entry{dump-functions ()}{123}{\code {dump-functions ()}}
+\entry{dump-variables ()}{123}{\code {dump-variables ()}}
+\entry{dump-macros ()}{123}{\code {dump-macros ()}}
+\entry{glob-complete-word (M-g)}{123}{\code {glob-complete-word (M-g)}}
+\entry{glob-expand-word (C-x *)}{123}{\code {glob-expand-word (C-x *)}}
+\entry{glob-list-expansions (C-x g)}{123}{\code {glob-list-expansions (C-x g)}}
+\entry{display-shell-version (C-x C-v)}{123}{\code {display-shell-version (C-x C-v)}}
+\entry{shell-expand-line (M-C-e)}{123}{\code {shell-expand-line (M-C-e)}}
+\entry{history-expand-line (M-^)}{123}{\code {history-expand-line (M-^)}}
+\entry{magic-space ()}{124}{\code {magic-space ()}}
+\entry{alias-expand-line ()}{124}{\code {alias-expand-line ()}}
+\entry{history-and-alias-expand-line ()}{124}{\code {history-and-alias-expand-line ()}}
+\entry{insert-last-argument (M-. or M-_)}{124}{\code {insert-last-argument (M-. or M-_)}}
+\entry{operate-and-get-next (C-o)}{124}{\code {operate-and-get-next (C-o)}}
+\entry{edit-and-execute-command (C-xC-e)}{124}{\code {edit-and-execute-command (C-xC-e)}}
\initial {A}
-\entry {\code {abort (C-g)}}{118}
-\entry {\code {accept-line (Newline or Return)}}{112}
-\entry {\code {alias-expand-line ()}}{120}
+\entry {\code {abort (C-g)}}{122}
+\entry {\code {accept-line (Newline or Return)}}{116}
+\entry {\code {alias-expand-line ()}}{124}
\initial {B}
-\entry {\code {backward-char (C-b)}}{111}
-\entry {\code {backward-delete-char (Rubout)}}{113}
-\entry {\code {backward-kill-line (C-x Rubout)}}{114}
-\entry {\code {backward-kill-word (M-\key {DEL})}}{115}
-\entry {\code {backward-word (M-b)}}{111}
-\entry {\code {beginning-of-history (M-<)}}{112}
-\entry {\code {beginning-of-line (C-a)}}{111}
+\entry {\code {backward-char (C-b)}}{115}
+\entry {\code {backward-delete-char (Rubout)}}{117}
+\entry {\code {backward-kill-line (C-x Rubout)}}{118}
+\entry {\code {backward-kill-word (M-\key {DEL})}}{119}
+\entry {\code {backward-word (M-b)}}{115}
+\entry {\code {beginning-of-history (M-<)}}{116}
+\entry {\code {beginning-of-line (C-a)}}{115}
\initial {C}
-\entry {\code {call-last-kbd-macro (C-x e)}}{117}
-\entry {\code {capitalize-word (M-c)}}{114}
-\entry {\code {character-search (C-])}}{118}
-\entry {\code {character-search-backward (M-C-])}}{118}
-\entry {\code {clear-screen (C-l)}}{111}
-\entry {\code {complete (\key {TAB})}}{116}
-\entry {\code {complete-command (M-!)}}{117}
-\entry {\code {complete-filename (M-/)}}{116}
-\entry {\code {complete-hostname (M-@)}}{117}
-\entry {\code {complete-into-braces (M-{\tt \char 123})}}{117}
-\entry {\code {complete-username (M-~)}}{117}
-\entry {\code {complete-variable (M-$)}}{117}
-\entry {\code {copy-backward-word ()}}{115}
-\entry {\code {copy-forward-word ()}}{115}
-\entry {\code {copy-region-as-kill ()}}{115}
+\entry {\code {call-last-kbd-macro (C-x e)}}{121}
+\entry {\code {capitalize-word (M-c)}}{118}
+\entry {\code {character-search (C-])}}{122}
+\entry {\code {character-search-backward (M-C-])}}{122}
+\entry {\code {clear-screen (C-l)}}{115}
+\entry {\code {complete (\key {TAB})}}{120}
+\entry {\code {complete-command (M-!)}}{121}
+\entry {\code {complete-filename (M-/)}}{120}
+\entry {\code {complete-hostname (M-@)}}{121}
+\entry {\code {complete-into-braces (M-{\tt \char 123})}}{121}
+\entry {\code {complete-username (M-~)}}{121}
+\entry {\code {complete-variable (M-$)}}{121}
+\entry {\code {copy-backward-word ()}}{119}
+\entry {\code {copy-forward-word ()}}{119}
+\entry {\code {copy-region-as-kill ()}}{119}
\initial {D}
-\entry {\code {dabbrev-expand ()}}{117}
-\entry {\code {delete-char (C-d)}}{113}
-\entry {\code {delete-char-or-list ()}}{116}
-\entry {\code {delete-horizontal-space ()}}{115}
-\entry {\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{115}
-\entry {\code {display-shell-version (C-x C-v)}}{119}
-\entry {\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}}{118}
-\entry {\code {downcase-word (M-l)}}{114}
-\entry {\code {dump-functions ()}}{119}
-\entry {\code {dump-macros ()}}{119}
-\entry {\code {dump-variables ()}}{119}
-\entry {\code {dynamic-complete-history (M-\key {TAB})}}{117}
+\entry {\code {dabbrev-expand ()}}{121}
+\entry {\code {delete-char (C-d)}}{117}
+\entry {\code {delete-char-or-list ()}}{120}
+\entry {\code {delete-horizontal-space ()}}{119}
+\entry {\code {digit-argument (\kbd {M-0}, \kbd {M-1}, \dots {} \kbd {M--})}}{119}
+\entry {\code {display-shell-version (C-x C-v)}}{123}
+\entry {\code {do-uppercase-version (M-a, M-b, M-\var {x}, \dots {})}}{122}
+\entry {\code {downcase-word (M-l)}}{118}
+\entry {\code {dump-functions ()}}{123}
+\entry {\code {dump-macros ()}}{123}
+\entry {\code {dump-variables ()}}{123}
+\entry {\code {dynamic-complete-history (M-\key {TAB})}}{121}
\initial {E}
-\entry {\code {edit-and-execute-command (C-xC-e)}}{120}
-\entry {\code {end-kbd-macro (C-x ))}}{117}
-\entry {\code {end-of-history (M->)}}{112}
-\entry {\code {end-of-line (C-e)}}{111}
-\entry {\code {exchange-point-and-mark (C-x C-x)}}{118}
+\entry {\code {edit-and-execute-command (C-xC-e)}}{124}
+\entry {\code {end-kbd-macro (C-x ))}}{121}
+\entry {\code {end-of-history (M->)}}{116}
+\entry {\code {end-of-line (C-e)}}{115}
+\entry {\code {exchange-point-and-mark (C-x C-x)}}{122}
\initial {F}
-\entry {\code {forward-backward-delete-char ()}}{113}
-\entry {\code {forward-char (C-f)}}{111}
-\entry {\code {forward-search-history (C-s)}}{112}
-\entry {\code {forward-word (M-f)}}{111}
+\entry {\code {forward-backward-delete-char ()}}{117}
+\entry {\code {forward-char (C-f)}}{115}
+\entry {\code {forward-search-history (C-s)}}{116}
+\entry {\code {forward-word (M-f)}}{115}
\initial {G}
-\entry {\code {glob-complete-word (M-g)}}{119}
-\entry {\code {glob-expand-word (C-x *)}}{119}
-\entry {\code {glob-list-expansions (C-x g)}}{119}
+\entry {\code {glob-complete-word (M-g)}}{123}
+\entry {\code {glob-expand-word (C-x *)}}{123}
+\entry {\code {glob-list-expansions (C-x g)}}{123}
\initial {H}
-\entry {\code {history-and-alias-expand-line ()}}{120}
-\entry {\code {history-expand-line (M-^)}}{119}
-\entry {\code {history-search-backward ()}}{112}
-\entry {\code {history-search-forward ()}}{112}
-\entry {\code {history-substr-search-backward ()}}{113}
-\entry {\code {history-substr-search-forward ()}}{112}
+\entry {\code {history-and-alias-expand-line ()}}{124}
+\entry {\code {history-expand-line (M-^)}}{123}
+\entry {\code {history-search-backward ()}}{116}
+\entry {\code {history-search-forward ()}}{116}
+\entry {\code {history-substr-search-backward ()}}{117}
+\entry {\code {history-substr-search-forward ()}}{116}
\initial {I}
-\entry {\code {insert-comment (M-#)}}{119}
-\entry {\code {insert-completions (M-*)}}{116}
-\entry {\code {insert-last-argument (M-. or M-_)}}{120}
+\entry {\code {insert-comment (M-#)}}{123}
+\entry {\code {insert-completions (M-*)}}{120}
+\entry {\code {insert-last-argument (M-. or M-_)}}{124}
\initial {K}
-\entry {\code {kill-line (C-k)}}{114}
-\entry {\code {kill-region ()}}{115}
-\entry {\code {kill-whole-line ()}}{114}
-\entry {\code {kill-word (M-d)}}{114}
+\entry {\code {kill-line (C-k)}}{118}
+\entry {\code {kill-region ()}}{119}
+\entry {\code {kill-whole-line ()}}{118}
+\entry {\code {kill-word (M-d)}}{118}
\initial {M}
-\entry {\code {magic-space ()}}{120}
-\entry {\code {menu-complete ()}}{116}
-\entry {\code {menu-complete-backward ()}}{116}
+\entry {\code {magic-space ()}}{124}
+\entry {\code {menu-complete ()}}{120}
+\entry {\code {menu-complete-backward ()}}{120}
\initial {N}
-\entry {\code {next-history (C-n)}}{112}
-\entry {\code {non-incremental-forward-search-history (M-n)}}{112}
-\entry {\code {non-incremental-reverse-search-history (M-p)}}{112}
+\entry {\code {next-history (C-n)}}{116}
+\entry {\code {non-incremental-forward-search-history (M-n)}}{116}
+\entry {\code {non-incremental-reverse-search-history (M-p)}}{116}
\initial {O}
-\entry {\code {operate-and-get-next (C-o)}}{120}
-\entry {\code {overwrite-mode ()}}{114}
+\entry {\code {operate-and-get-next (C-o)}}{124}
+\entry {\code {overwrite-mode ()}}{118}
\initial {P}
-\entry {\code {possible-command-completions (C-x !)}}{117}
-\entry {\code {possible-completions (M-?)}}{116}
-\entry {\code {possible-filename-completions (C-x /)}}{116}
-\entry {\code {possible-hostname-completions (C-x @)}}{117}
-\entry {\code {possible-username-completions (C-x ~)}}{117}
-\entry {\code {possible-variable-completions (C-x $)}}{117}
-\entry {\code {prefix-meta (\key {ESC})}}{118}
-\entry {\code {previous-history (C-p)}}{112}
-\entry {\code {print-last-kbd-macro ()}}{118}
+\entry {\code {possible-command-completions (C-x !)}}{121}
+\entry {\code {possible-completions (M-?)}}{120}
+\entry {\code {possible-filename-completions (C-x /)}}{120}
+\entry {\code {possible-hostname-completions (C-x @)}}{121}
+\entry {\code {possible-username-completions (C-x ~)}}{121}
+\entry {\code {possible-variable-completions (C-x $)}}{121}
+\entry {\code {prefix-meta (\key {ESC})}}{122}
+\entry {\code {previous-history (C-p)}}{116}
+\entry {\code {print-last-kbd-macro ()}}{122}
\initial {Q}
-\entry {\code {quoted-insert (C-q or C-v)}}{113}
+\entry {\code {quoted-insert (C-q or C-v)}}{117}
\initial {R}
-\entry {\code {re-read-init-file (C-x C-r)}}{118}
-\entry {\code {redraw-current-line ()}}{111}
-\entry {\code {reverse-search-history (C-r)}}{112}
-\entry {\code {revert-line (M-r)}}{118}
+\entry {\code {re-read-init-file (C-x C-r)}}{122}
+\entry {\code {redraw-current-line ()}}{115}
+\entry {\code {reverse-search-history (C-r)}}{116}
+\entry {\code {revert-line (M-r)}}{122}
\initial {S}
-\entry {\code {self-insert (a, b, A, 1, !, \dots {})}}{113}
-\entry {\code {set-mark (C-@)}}{118}
-\entry {\code {shell-backward-kill-word ()}}{115}
-\entry {\code {shell-backward-word ()}}{111}
-\entry {\code {shell-expand-line (M-C-e)}}{119}
-\entry {\code {shell-forward-word ()}}{111}
-\entry {\code {shell-kill-word ()}}{115}
-\entry {\code {skip-csi-sequence ()}}{118}
-\entry {\code {start-kbd-macro (C-x ()}}{117}
+\entry {\code {self-insert (a, b, A, 1, !, \dots {})}}{117}
+\entry {\code {set-mark (C-@)}}{122}
+\entry {\code {shell-backward-kill-word ()}}{119}
+\entry {\code {shell-backward-word ()}}{115}
+\entry {\code {shell-expand-line (M-C-e)}}{123}
+\entry {\code {shell-forward-word ()}}{115}
+\entry {\code {shell-kill-word ()}}{119}
+\entry {\code {skip-csi-sequence ()}}{122}
+\entry {\code {start-kbd-macro (C-x ()}}{121}
\initial {T}
-\entry {\code {tilde-expand (M-&)}}{118}
-\entry {\code {transpose-chars (C-t)}}{114}
-\entry {\code {transpose-words (M-t)}}{114}
+\entry {\code {tilde-expand (M-&)}}{122}
+\entry {\code {transpose-chars (C-t)}}{118}
+\entry {\code {transpose-words (M-t)}}{118}
\initial {U}
-\entry {\code {undo (C-_ or C-x C-u)}}{118}
-\entry {\code {universal-argument ()}}{115}
-\entry {\code {unix-filename-rubout ()}}{115}
-\entry {\code {unix-line-discard (C-u)}}{114}
-\entry {\code {unix-word-rubout (C-w)}}{115}
-\entry {\code {upcase-word (M-u)}}{114}
+\entry {\code {undo (C-_ or C-x C-u)}}{122}
+\entry {\code {universal-argument ()}}{119}
+\entry {\code {unix-filename-rubout ()}}{119}
+\entry {\code {unix-line-discard (C-u)}}{118}
+\entry {\code {unix-word-rubout (C-w)}}{119}
+\entry {\code {upcase-word (M-u)}}{118}
\initial {Y}
-\entry {\code {yank (C-y)}}{115}
-\entry {\code {yank-last-arg (M-. or M-_)}}{113}
-\entry {\code {yank-nth-arg (M-C-y)}}{113}
-\entry {\code {yank-pop (M-y)}}{115}
+\entry {\code {yank (C-y)}}{119}
+\entry {\code {yank-last-arg (M-. or M-_)}}{117}
+\entry {\code {yank-nth-arg (M-C-y)}}{117}
+\entry {\code {yank-pop (M-y)}}{119}
<HTML>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<!-- Created on March, 5 2012 by texi2html 1.64 -->
+<!-- Created on July, 5 2012 by texi2html 1.64 -->
<!--
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
Karl Berry <karl@freefriends.org>
<H1>Bash Reference Manual</H1></P><P>
This text is a brief description of the features that are present in
-the Bash shell (version 4.2, 29 January 2012).
+the Bash shell (version 4.2, 5 July 2012).
</P><P>
-This is Edition 4.2, last updated 29 January 2012,
+This is Edition 4.2, last updated 5 July 2012,
of <CITE>The GNU Bash Reference Manual</CITE>,
for <CODE>Bash</CODE>, Version 4.2.
</P><P>
borrowed concepts from are the Bourne Shell (<TT>`sh'</TT>), the Korn Shell
(<TT>`ksh'</TT>), and the C-shell (<TT>`csh'</TT> and its successor,
<TT>`tcsh'</TT>). The following menu breaks the features up into
-categories based upon which one of these other shells inspired the
-feature.
+categories, noting which features were inspired by other shells and
+which are specific to Bash.
</P><P>
This manual is meant as a brief introduction to features found in
by a <SAMP>`;;'</SAMP>, <SAMP>`;&'</SAMP>, or <SAMP>`;;&'</SAMP>.
The first pattern that matches determines the
command-list that is executed.
+It's a common idiom to use <SAMP>`*'</SAMP> as the final pattern to define the
+default case, since that pattern will always match.
</P><P>
Here is an example using <CODE>case</CODE> in a script that could be used to
command (see section <A HREF="bashref.html#SEC40">3.6 Redirections</A>).
The file descriptors can be utilized as arguments to shell commands
and redirections using standard word expansions.
+The file descriptors are not available in subshells.
</P><P>
The process ID of the shell spawned to execute the coprocess is
appended to the variable's value.
</P><P>
+A variable can be assigned the <VAR>nameref</VAR> attribute using the
+<SAMP>`-n'</SAMP> option to the \fBdeclare\fP or \fBlocal\fP builtin commands
+(see section <A HREF="bashref.html#SEC61">4.2 Bash Builtin Commands</A>)
+to create a <VAR>nameref</VAR>, or a reference to another variable.
+This allows variables to be manipulated indirectly.
+Whenever the nameref variable is referenced or assigned to, the operation
+is actually performed on the variable specified by the nameref variable's
+value.
+A nameref is commonly used within shell functions to refer to a variable
+whose name is passed as an argument to the function.
+For instance, if a variable name is passed to a shell function as its first
+argument, running
+<TABLE><tr><td> </td><td class=example><pre>declare -n ref=$1
+</pre></td></tr></table>inside the function creates a nameref variable <VAR>ref</VAR> whose value is
+the variable name passed as the first argument.
+References and assignments to <VAR>ref</VAR> are treated as references and
+assignments to the variable whose name was passed as <CODE>$1</CODE>.
+</P><P>
+
+If the control variable in a <CODE>for</CODE> loop has the nameref attribute,
+the list of words can be a list of shell variables, and a name reference
+will be established for each word in the list, in turn, when the loop is
+executed.
+Array variables cannot be given the <SAMP>`-n'</SAMP> attribute.
+However, nameref variables can reference array variables and subscripted
+array variables.
+Namerefs can be unset using the <SAMP>`-n'</SAMP> option to the <CODE>unset</CODE> builtin
+(see section <A HREF="bashref.html#SEC60">4.1 Bourne Shell Builtins</A>).
+Otherwise, if <CODE>unset</CODE> is executed with the name of a nameref variable
+as an argument, the variable referenced by the nameref variable will be unset.
+</P><P>
+
<A NAME="Positional Parameters"></A>
<HR SIZE="6">
<A NAME="SEC27"></A>
</P><P>
The basic form of parameter expansion is ${<VAR>parameter</VAR>}.
-The value of <VAR>parameter</VAR> is substituted. The braces are required
-when <VAR>parameter</VAR>
+The value of <VAR>parameter</VAR> is substituted.
+The <VAR>parameter</VAR> is a shell parameter as described above
+(see section <A HREF="bashref.html#SEC26">3.4 Shell Parameters</A>) or an array reference (see section <A HREF="bashref.html#SEC86">6.7 Arrays</A>).
+The braces are required when <VAR>parameter</VAR>
is a positional parameter with more than one digit,
-or when <VAR>parameter</VAR>
-is followed by a character that is not to be
+or when <VAR>parameter</VAR> is followed by a character that is not to be
interpreted as part of its name.
</P><P>
If the first character of <VAR>parameter</VAR> is an exclamation point (!),
-a level of variable indirection is introduced.
+it introduces a level of variable indirection.
Bash uses the value of the variable formed from the rest of
<VAR>parameter</VAR> as the name of the variable; this variable is then
expanded and that value is used in the rest of the substitution, rather
than the value of <VAR>parameter</VAR> itself.
This is known as <CODE>indirect expansion</CODE>.
-The exceptions to this are the expansions of ${!<VAR>prefix</VAR><BR>}
+The exceptions to this are the expansions of ${!<VAR>prefix</VAR>*}
and ${!<VAR>name</VAR>[@]}
described below.
The exclamation point must immediately follow the left brace in order to
</P><P>
When not performing substring expansion, using the form described
-below, Bash tests for a parameter that is unset or null.
+below (e.g., <SAMP>`:-'</SAMP>), Bash tests for a parameter that is unset or null.
Omitting the colon results in a test only for a parameter that is unset.
Put another way, if the colon is included,
the operator tests for both <VAR>parameter</VAR>'s existence and that its value
<DT><CODE>${<VAR>parameter</VAR>:<VAR>offset</VAR>}</CODE>
<DD><DT><CODE>${<VAR>parameter</VAR>:<VAR>offset</VAR>:<VAR>length</VAR>}</CODE>
-<DD>Expands to up to <VAR>length</VAR> characters of <VAR>parameter</VAR>
+<DD>This is referred to as Substring Expansion.
+It expands to up to <VAR>length</VAR> characters of the value of <VAR>parameter</VAR>
starting at the character specified by <VAR>offset</VAR>.
-If <VAR>length</VAR> is omitted, expands to the substring of
-<VAR>parameter</VAR> starting at the character specified by <VAR>offset</VAR>.
+If <VAR>parameter</VAR> is <SAMP>`@'</SAMP>, an indexed array subscripted by
+<SAMP>`@'</SAMP> or <SAMP>`*'</SAMP>, or an associative array name, the results differ as
+described below.
+If <VAR>length</VAR> is omitted, it expands to the substring of the value of
+<VAR>parameter</VAR> starting at the character specified by <VAR>offset</VAR>
+and extending to the end of the value.
<VAR>length</VAR> and <VAR>offset</VAR> are arithmetic expressions
(see section <A HREF="bashref.html#SEC84">6.5 Shell Arithmetic</A>).
-This is referred to as Substring Expansion.
<P>
If <VAR>offset</VAR> evaluates to a number less than zero, the value
-is used as an offset from the end of the value of <VAR>parameter</VAR>.
-If <VAR>length</VAR> evaluates to a number less than zero, and <VAR>parameter</VAR>
-is not <SAMP>`@'</SAMP> and not an indexed or associative array, it is interpreted
-as an offset from the end of the value of <VAR>parameter</VAR> rather than
-a number of characters, and the expansion is the characters between the
-two offsets.
+is used as an offset in characters
+from the end of the value of <VAR>parameter</VAR>.
+If <VAR>length</VAR> evaluates to a number less than zero,
+it is interpreted as an offset in characters
+from the end of the value of <VAR>parameter</VAR> rather than
+a number of characters, and the expansion is the characters between
+<VAR>offset</VAR> and that result.
+Note that a negative offset must be separated from the colon by at least
+one space to avoid being confused with the <SAMP>`:-'</SAMP> expansion.
+</P><P>
+
+Here are some examples illustrating substring expansion on parameters and
+subscripted arrays:
+</P><P>
+
+@verbatim
+$ string=01234567890abcdefgh
+$ echo ${string:7}
+7890abcdefgh
+$ echo ${string:7:0}
+</P><P>
+
+$ echo ${string:7:2}
+78
+$ echo ${string:7:-2}
+7890abcdef
+$ echo ${string: -7}
+bcdefgh
+$ echo ${string: -7:0}
+</P><P>
+
+$ echo ${string: -7:2}
+bc
+$ echo ${string: -7:-2}
+bcdef
+$ set -- 01234567890abcdefgh
+$ echo ${1:7}
+7890abcdefgh
+$ echo ${1:7:0}
+</P><P>
+
+$ echo ${1:7:2}
+78
+$ echo ${1:7:-2}
+7890abcdef
+$ echo ${1: -7}
+bcdefgh
+$ echo ${1: -7:0}
+</P><P>
+
+$ echo ${1: -7:2}
+bc
+$ echo ${1: -7:-2}
+bcdef
+$ array[0]=01234567890abcdefgh
+$ echo ${array[0]:7}
+7890abcdefgh
+$ echo ${array[0]:7:0}
+</P><P>
+
+$ echo ${array[0]:7:2}
+78
+$ echo ${array[0]:7:-2}
+7890abcdef
+$ echo ${array[0]: -7}
+bcdefgh
+$ echo ${array[0]: -7:0}
+</P><P>
+
+$ echo ${array[0]: -7:2}
+bc
+$ echo ${array[0]: -7:-2}
+bcdef
+</P><P>
+
If <VAR>parameter</VAR> is <SAMP>`@'</SAMP>, the result is <VAR>length</VAR> positional
parameters beginning at <VAR>offset</VAR>.
+A negative <VAR>offset</VAR> is taken relative to one greater than the greatest
+positional parameter, so an offset of -1 evaluates to the last positional
+parameter.
+It is an expansion error if <VAR>length</VAR> evaluates to a number less than zero.
+</P><P>
+
+The following examples illustrate substring expansion using positional
+parameters:
+</P><P>
+
+@verbatim
+$ set -- 1 2 3 4 5 6 7 8 9 0 a b c d e f g h
+$ echo ${7}
+7 8 9 0 a b c d e f g h
+$ echo ${7:0}
+</P><P>
+
+$ echo ${7:2}
+7 8
+$ echo ${7:-2}
+bash: -2: substring expression < 0
+$ echo ${ -7:2}
+b c
+$ echo ${0}
+./bash 1 2 3 4 5 6 7 8 9 0 a b c d e f g h
+$ echo ${0:2}
+./bash 1
+$ echo ${ -7:0}
+</P><P>
+
If <VAR>parameter</VAR> is an indexed array name subscripted
by <SAMP>`@'</SAMP> or <SAMP>`*'</SAMP>, the result is the <VAR>length</VAR>
members of the array beginning with <CODE>${<VAR>parameter</VAR>[<VAR>offset</VAR>]}</CODE>.
A negative <VAR>offset</VAR> is taken relative to one greater than the maximum
index of the specified array.
+It is an expansion error if <VAR>length</VAR> evaluates to a number less than zero.
+</P><P>
+
+These examples show how you can use substring expansion with indexed
+arrays:
+</P><P>
+
+@verbatim
+$ array=(0 1 2 3 4 5 6 7 8 9 0 a b c d e f g h)
+$ echo ${array[@]:7}
+7 8 9 0 a b c d e f g h
+$ echo ${array[@]:7:2}
+7 8
+$ echo ${array[@]: -7:2}
+b c
+$ echo ${array[@]: -7:-2}
+bash: -2: substring expression < 0
+$ echo ${array[@]:0}
+0 1 2 3 4 5 6 7 8 9 0 a b c d e f g h
+$ echo ${array[@]:0:2}
+0 1
+$ echo ${array[@]: -7:0}
+</P><P>
+
Substring expansion applied to an associative array produces undefined
results.
</P><P>
-Note that a negative offset must be separated from the colon by at least
-one space to avoid being confused with the <SAMP>`:-'</SAMP> expansion.
Substring indexing is zero-based unless the positional parameters
are used, in which case the indexing starts at 1 by default.
If <VAR>offset</VAR> is 0, and the positional parameters are used, <CODE>$@</CODE> is
<DT><CODE>/dev/tcp/<VAR>host</VAR>/<VAR>port</VAR></CODE>
<DD>If <VAR>host</VAR> is a valid hostname or Internet address, and <VAR>port</VAR>
-is an integer port number or service name, Bash attempts to open a TCP
-connection to the corresponding socket.
+is an integer port number or service name, Bash attempts to open
+the corresponding TCP socket.
<P>
<DT><CODE>/dev/udp/<VAR>host</VAR>/<VAR>port</VAR></CODE>
<DD>If <VAR>host</VAR> is a valid hostname or Internet address, and <VAR>port</VAR>
-is an integer port number or service name, Bash attempts to open a UDP
-connection to the corresponding socket.
+is an integer port number or service name, Bash attempts to open
+the corresponding UDP socket.
</DL>
<P>
<DT><CODE>unset</CODE>
<DD><A NAME="IDX88"></A>
-<TABLE><tr><td> </td><td class=example><pre>unset [-fv] [<VAR>name</VAR>]
+<TABLE><tr><td> </td><td class=example><pre>unset [-fnv] [<VAR>name</VAR>]
</pre></td></tr></table><P>
Remove each variable or function <VAR>name</VAR>.
<VAR>name</VAR> refers to a shell variable and that variable is remvoved.
If the <SAMP>`-f'</SAMP> option is given, the <VAR>name</VAR>s refer to shell
functions, and the function definition is removed.
+If the <SAMP>`-n'</SAMP> option is supplied, and <VAR>name</VAR> is a variable with
+the <VAR>nameref</VAR> attribute, <VAR>name</VAR> will be unset rather than the
+variable it references.
+<SAMP>`-n'</SAMP> has no effect if the <SAMP>`-f'</SAMP> option is supplied.
If no options are supplied, each <VAR>name</VAR> refers to a variable; if
there is no variable by that name, any function with that name is
unset.
<DT><CODE>declare</CODE>
<DD><A NAME="IDX94"></A>
-<TABLE><tr><td> </td><td class=example><pre>declare [-aAfFgilrtux] [-p] [<VAR>name</VAR>[=<VAR>value</VAR>] <small>...</small>]
+<TABLE><tr><td> </td><td class=example><pre>declare [-aAfFgilnrtux] [-p] [<VAR>name</VAR>[=<VAR>value</VAR>] <small>...</small>]
</pre></td></tr></table><P>
Declare variables and give them attributes. If no <VAR>name</VAR>s
The upper-case attribute is disabled.
<P>
+<DT><CODE>-n</CODE>
+<DD>Give each <VAR>name</VAR> the <VAR>nameref</VAR> attribute, making
+it a name reference to another variable.
+That other variable is defined by the value of <VAR>name</VAR>.
+All references and assignments to <VAR>name</VAR>, except for changing the
+<SAMP>`-n'</SAMP> attribute itself, are performed on the variable referenced by
+<VAR>name</VAR>'s value.
+The <SAMP>`-n'</SAMP> attribute cannot be applied to array variables.
+<P>
+
<DT><CODE>-r</CODE>
<DD>Make <VAR>name</VAR>s readonly. These names cannot then be assigned values
by subsequent assignment statements or unset.
<DT><CODE>typeset</CODE>
<DD><A NAME="IDX107"></A>
-<TABLE><tr><td> </td><td class=example><pre>typeset [-afFgrxilrtux] [-p] [<VAR>name</VAR>[=<VAR>value</VAR>] <small>...</small>]
+<TABLE><tr><td> </td><td class=example><pre>typeset [-afFgrxilnrtux] [-p] [<VAR>name</VAR>[=<VAR>value</VAR>] <small>...</small>]
</pre></td></tr></table><P>
The <CODE>typeset</CODE> command is supplied for compatibility with the Korn
if necessary, to contain no more than that number of lines
by removing the oldest entries.
The history file is also truncated to this size after
-writing it when an interactive shell exits.
+writing it when a shell exits.
If the value is 0, the history file is truncated to zero size.
Non-numeric values and numeric values less than zero inhibit truncation.
The shell sets the default value to the value of <CODE>HISTSIZE</CODE>
<P>
In an interactive shell, the value is interpreted as
-the number of seconds to wait for input after issuing the primary
-prompt when the shell is interactive.
-Bash terminates after that number of seconds if input does
-not arrive.
+the number of seconds to wait for a line of input after issuing
+the primary prompt.
+Bash
+terminates after waiting for that number of seconds if a complete
+line of input does not arrive.
</P><P>
<A NAME="IDX296"></A>
and history expansion (see section <A HREF="bashref.html#SEC124">9.3 History Expansion</A>)
are enabled by default.
Bash will save the command history to the file named by <CODE>$HISTFILE</CODE>
-when an interactive shell exits.
+when a shell with history enabled exits.
<P>
<LI>
Indexed arrays are referenced using integers (including arithmetic
expressions (see section <A HREF="bashref.html#SEC84">6.5 Shell Arithmetic</A>)) and are zero-based;
associative arrays use arbitrary strings.
+Unless otherwise noted, indexed array indices must be non-negative integers.
</P><P>
An indexed array is created automatically if any variable is assigned to
The file named by the value of <CODE>HISTFILE</CODE> is truncated, if
necessary, to contain no more than the number of lines specified by
the value of the <CODE>HISTFILESIZE</CODE> variable.
-When an interactive shell exits, the last
+When a shell with history enabled exits, the last
<CODE>$HISTSIZE</CODE> lines are copied from the history list to the file
named by <CODE>$HISTFILE</CODE>.
If the <CODE>histappend</CODE> shell option is set (see section <A HREF="bashref.html#SEC61">4.2 Bash Builtin Commands</A>),
<P>
<LI>
-The expansion <CODE>${!<VAR>prefix}*</VAR></CODE> expansion, which expands to
+The expansion <CODE>${!<VAR>prefix</VAR>*}</CODE> expansion, which expands to
the names of all shell variables whose names begin with <VAR>prefix</VAR>,
is available (see section <A HREF="bashref.html#SEC32">3.5.3 Shell Parameter Expansion</A>).
<P>
<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>March, 5 2012</I>
+This document was generated by <I>Chet Ramey</I> on <I>July, 5 2012</I>
using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
"><I>texi2html</I></A>
<P></P>
<BR>
<FONT SIZE="-1">
This document was generated
-by <I>Chet Ramey</I> on <I>March, 5 2012</I>
+by <I>Chet Ramey</I> on <I>July, 5 2012</I>
using <A HREF="http://www.mathematik.uni-kl.de/~obachman/Texi2html
"><I>texi2html</I></A>
/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.2, 29 January 2012).
+the Bash shell (version 4.2, 5 July 2012).
- This is Edition 4.2, last updated 29 January 2012, of `The GNU Bash
+ This is Edition 4.2, last updated 5 July 2012, of `The GNU Bash
Reference Manual', for `Bash', Version 4.2.
Copyright (C) 1988-2012 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License,
Version 1.3 or any later version published by the Free Software
- Foundation; with no Invariant Sections, with the Front-Cover texts
- being "A GNU Manual", and with the Back-Cover Texts as in (a)
- below. A copy of the license is included in the section entitled
- "GNU Free Documentation License".
-
- (a) The FSF's Back-Cover Text is: You are free to copy and modify
- this GNU manual. Buying copies from GNU Press supports the FSF in
- developing GNU and promoting software freedom."
+ Foundation; with no Invariant Sections, no Front-Cover Texts, and
+ no Back-Cover Texts. A copy of the license is included in the
+ section entitled "GNU Free Documentation License".
INFO-DIR-SECTION Basics
*************
This text is a brief description of the features that are present in
-the Bash shell (version 4.2, 29 January 2012).
+the Bash shell (version 4.2, 5 July 2012).
- This is Edition 4.2, last updated 29 January 2012, of `The GNU Bash
+ This is Edition 4.2, last updated 5 July 2012, of `The GNU Bash
Reference Manual', for `Bash', Version 4.2.
Bash contains features that appear in other popular shells, and some
features that only appear in Bash. Some of the shells that Bash has
borrowed concepts from are the Bourne Shell (`sh'), the Korn Shell
(`ksh'), and the C-shell (`csh' and its successor, `tcsh'). The
-following menu breaks the features up into categories based upon which
-one of these other shells inspired the feature.
+following menu breaks the features up into categories, noting which
+features were inspired by other shells and which are specific to Bash.
This manual is meant as a brief introduction to features found in
Bash. The Bash manual page should be used as the definitive reference
There may be an arbitrary number of `case' clauses, each terminated
by a `;;', `;&', or `;;&'. The first pattern that matches
- determines the command-list that is executed.
+ determines the command-list that is executed. It's a common idiom
+ to use `*' as the final pattern to define the default case, since
+ that pattern will always match.
Here is an example using `case' in a script that could be used to
describe one interesting feature of an animal:
assigned to `NAME'[1]. This pipe is established before any
redirections specified by the command (*note Redirections::). The file
descriptors can be utilized as arguments to shell commands and
-redirections using standard word expansions.
+redirections using standard word expansions. The file descriptors are
+not available in subshells.
The process ID of the shell spawned to execute the coprocess is
available as the value of the variable `NAME'_PID. The `wait' builtin
string-valued variable, VALUE is expanded and appended to the
variable's value.
+ A variable can be assigned the NAMEREF attribute using the `-n'
+option to the \fBdeclare\fP or \fBlocal\fP builtin commands (*note Bash
+Builtins::) to create a NAMEREF, or a reference to another variable.
+This allows variables to be manipulated indirectly. Whenever the
+nameref variable is referenced or assigned to, the operation is
+actually performed on the variable specified by the nameref variable's
+value. A nameref is commonly used within shell functions to refer to a
+variable whose name is passed as an argument to the function. For
+instance, if a variable name is passed to a shell function as its first
+argument, running
+ declare -n ref=$1
+ inside the function creates a nameref variable REF whose value is
+the variable name passed as the first argument. References and
+assignments to REF are treated as references and assignments to the
+variable whose name was passed as `$1'.
+
+ If the control variable in a `for' loop has the nameref attribute,
+the list of words can be a list of shell variables, and a name reference
+will be established for each word in the list, in turn, when the loop is
+executed. Array variables cannot be given the `-n' attribute.
+However, nameref variables can reference array variables and subscripted
+array variables. Namerefs can be unset using the `-n' option to the
+`unset' builtin (*note Bourne Shell Builtins::). Otherwise, if `unset'
+is executed with the name of a nameref variable as an argument, the
+variable referenced by the nameref variable will be unset.
+
\1f
File: bashref.info, Node: Positional Parameters, Next: Special Parameters, Up: Shell Parameters
expansion.
The basic form of parameter expansion is ${PARAMETER}. The value of
-PARAMETER is substituted. The braces are required when PARAMETER is a
-positional parameter with more than one digit, or when PARAMETER is
-followed by a character that is not to be interpreted as part of its
-name.
-
- If the first character of PARAMETER is an exclamation point (!), a
-level of variable indirection is introduced. Bash uses the value of
-the variable formed from the rest of PARAMETER as the name of the
-variable; this variable is then expanded and that value is used in the
-rest of the substitution, rather than the value of PARAMETER itself.
-This is known as `indirect expansion'. The exceptions to this are the
-expansions of ${!PREFIX
-} and ${!NAME[@]} described below. The exclamation point must
-immediately follow the left brace in order to introduce indirection.
+PARAMETER is substituted. The PARAMETER is a shell parameter as
+described above (*note Shell Parameters::) or an array reference (*note
+Arrays::). The braces are required when PARAMETER is a positional
+parameter with more than one digit, or when PARAMETER is followed by a
+character that is not to be interpreted as part of its name.
+
+ If the first character of PARAMETER is an exclamation point (!), it
+introduces a level of variable indirection. Bash uses the value of the
+variable formed from the rest of PARAMETER as the name of the variable;
+this variable is then expanded and that value is used in the rest of
+the substitution, rather than the value of PARAMETER itself. This is
+known as `indirect expansion'. The exceptions to this are the
+expansions of ${!PREFIX*} and ${!NAME[@]} described below. The
+exclamation point must immediately follow the left brace in order to
+introduce indirection.
In each of the cases below, WORD is subject to tilde expansion,
parameter expansion, command substitution, and arithmetic expansion.
When not performing substring expansion, using the form described
-below, Bash tests for a parameter that is unset or null. Omitting the
-colon results in a test only for a parameter that is unset. Put
-another way, if the colon is included, the operator tests for both
+below (e.g., `:-'), Bash tests for a parameter that is unset or null.
+Omitting the colon results in a test only for a parameter that is unset.
+Put another way, if the colon is included, the operator tests for both
PARAMETER's existence and that its value is not null; if the colon is
omitted, the operator tests only for existence.
`${PARAMETER:OFFSET}'
`${PARAMETER:OFFSET:LENGTH}'
- Expands to up to LENGTH characters of PARAMETER starting at the
- character specified by OFFSET. If LENGTH is omitted, expands to
- the substring of PARAMETER starting at the character specified by
- OFFSET. LENGTH and OFFSET are arithmetic expressions (*note Shell
- Arithmetic::). This is referred to as Substring Expansion.
+ This is referred to as Substring Expansion. It expands to up to
+ LENGTH characters of the value of PARAMETER starting at the
+ character specified by OFFSET. If PARAMETER is `@', an indexed
+ array subscripted by `@' or `*', or an associative array name, the
+ results differ as described below. If LENGTH is omitted, it
+ expands to the substring of the value of PARAMETER starting at the
+ character specified by OFFSET and extending to the end of the
+ value. LENGTH and OFFSET are arithmetic expressions (*note Shell
+ Arithmetic::).
If OFFSET evaluates to a number less than zero, the value is used
- as an offset from the end of the value of PARAMETER. If LENGTH
- evaluates to a number less than zero, and PARAMETER is not `@' and
- not an indexed or associative array, it is interpreted as an
- offset from the end of the value of PARAMETER rather than a number
- of characters, and the expansion is the characters between the two
- offsets. If PARAMETER is `@', the result is LENGTH positional
- parameters beginning at OFFSET. If PARAMETER is an indexed array
- name subscripted by `@' or `*', the result is the LENGTH members
- of the array beginning with `${PARAMETER[OFFSET]}'. A negative
- OFFSET is taken relative to one greater than the maximum index of
- the specified array. Substring expansion applied to an
- associative array produces undefined results.
-
- Note that a negative offset must be separated from the colon by at
- least one space to avoid being confused with the `:-' expansion.
+ as an offset in characters from the end of the value of PARAMETER.
+ If LENGTH evaluates to a number less than zero, it is interpreted
+ as an offset in characters from the end of the value of PARAMETER
+ rather than a number of characters, and the expansion is the
+ characters between OFFSET and that result. Note that a negative
+ offset must be separated from the colon by at least one space to
+ avoid being confused with the `:-' expansion.
+
+ Here are some examples illustrating substring expansion on
+ parameters and subscripted arrays:
+
+ $ string=01234567890abcdefgh
+ $ echo ${string:7}
+ 7890abcdefgh
+ $ echo ${string:7:0}
+
+ $ echo ${string:7:2}
+ 78
+ $ echo ${string:7:-2}
+ 7890abcdef
+ $ echo ${string: -7}
+ bcdefgh
+ $ echo ${string: -7:0}
+
+ $ echo ${string: -7:2}
+ bc
+ $ echo ${string: -7:-2}
+ bcdef
+ $ set -- 01234567890abcdefgh
+ $ echo ${1:7}
+ 7890abcdefgh
+ $ echo ${1:7:0}
+
+ $ echo ${1:7:2}
+ 78
+ $ echo ${1:7:-2}
+ 7890abcdef
+ $ echo ${1: -7}
+ bcdefgh
+ $ echo ${1: -7:0}
+
+ $ echo ${1: -7:2}
+ bc
+ $ echo ${1: -7:-2}
+ bcdef
+ $ array[0]=01234567890abcdefgh
+ $ echo ${array[0]:7}
+ 7890abcdefgh
+ $ echo ${array[0]:7:0}
+
+ $ echo ${array[0]:7:2}
+ 78
+ $ echo ${array[0]:7:-2}
+ 7890abcdef
+ $ echo ${array[0]: -7}
+ bcdefgh
+ $ echo ${array[0]: -7:0}
+
+ $ echo ${array[0]: -7:2}
+ bc
+ $ echo ${array[0]: -7:-2}
+ bcdef
+
+ If PARAMETER is `@', the result is LENGTH positional parameters
+ beginning at OFFSET. A negative OFFSET is taken relative to one
+ greater than the greatest positional parameter, so an offset of -1
+ evaluates to the last positional parameter. It is an expansion
+ error if LENGTH evaluates to a number less than zero.
+
+ The following examples illustrate substring expansion using
+ positional parameters:
+
+ $ set -- 1 2 3 4 5 6 7 8 9 0 a b c d e f g h
+ $ echo ${@:7}
+ 7 8 9 0 a b c d e f g h
+ $ echo ${@:7:0}
+
+ $ echo ${@:7:2}
+ 7 8
+ $ echo ${@:7:-2}
+ bash: -2: substring expression < 0
+ $ echo ${@: -7:2}
+ b c
+ $ echo ${@:0}
+ ./bash 1 2 3 4 5 6 7 8 9 0 a b c d e f g h
+ $ echo ${@:0:2}
+ ./bash 1
+ $ echo ${@: -7:0}
+
+ If PARAMETER is an indexed array name subscripted by `@' or `*',
+ the result is the LENGTH members of the array beginning with
+ `${PARAMETER[OFFSET]}'. A negative OFFSET is taken relative to
+ one greater than the maximum index of the specified array. It is
+ an expansion error if LENGTH evaluates to a number less than zero.
+
+ These examples show how you can use substring expansion with
+ indexed arrays:
+
+ $ array=(0 1 2 3 4 5 6 7 8 9 0 a b c d e f g h)
+ $ echo ${array[@]:7}
+ 7 8 9 0 a b c d e f g h
+ $ echo ${array[@]:7:2}
+ 7 8
+ $ echo ${array[@]: -7:2}
+ b c
+ $ echo ${array[@]: -7:-2}
+ bash: -2: substring expression < 0
+ $ echo ${array[@]:0}
+ 0 1 2 3 4 5 6 7 8 9 0 a b c d e f g h
+ $ echo ${array[@]:0:2}
+ 0 1
+ $ echo ${array[@]: -7:0}
+
+ Substring expansion applied to an associative array produces
+ undefined results.
+
Substring indexing is zero-based unless the positional parameters
are used, in which case the indexing starts at 1 by default. If
OFFSET is 0, and the positional parameters are used, `$@' is
`/dev/tcp/HOST/PORT'
If HOST is a valid hostname or Internet address, and PORT is an
- integer port number or service name, Bash attempts to open a TCP
- connection to the corresponding socket.
+ integer port number or service name, Bash attempts to open the
+ corresponding TCP socket.
`/dev/udp/HOST/PORT'
If HOST is a valid hostname or Internet address, and PORT is an
- integer port number or service name, Bash attempts to open a UDP
- connection to the corresponding socket.
+ integer port number or service name, Bash attempts to open the
+ corresponding UDP socket.
A failure to open or create a file causes the redirection to fail.
results in permissions of `755'.
`unset'
- unset [-fv] [NAME]
+ unset [-fnv] [NAME]
Remove each variable or function NAME. If the `-v' option is
given, each NAME refers to a shell variable and that variable is
remvoved. If the `-f' option is given, the NAMEs refer to shell
- functions, and the function definition is removed. If no options
- are supplied, each NAME refers to a variable; if there is no
- variable by that name, any function with that name is unset.
- Readonly variables and functions may not be unset. The return
- status is zero unless a NAME is readonly.
+ functions, and the function definition is removed. If the `-n'
+ option is supplied, and NAME is a variable with the NAMEREF
+ attribute, NAME will be unset rather than the variable it
+ references. `-n' has no effect if the `-f' option is supplied.
+ If no options are supplied, each NAME refers to a variable; if
+ there is no variable by that name, any function with that name is
+ unset. Readonly variables and functions may not be unset. The
+ return status is zero unless a NAME is readonly.
\1f
File: bashref.info, Node: Bash Builtins, Next: Modifying Shell Behavior, Prev: Bourne Shell Builtins, Up: Shell Builtin Commands
non-zero if not.
`declare'
- declare [-aAfFgilrtux] [-p] [NAME[=VALUE] ...]
+ declare [-aAfFgilnrtux] [-p] [NAME[=VALUE] ...]
Declare variables and give them attributes. If no NAMEs are
given, then display the values of variables instead.
characters are converted to lower-case. The upper-case
attribute is disabled.
+ `-n'
+ Give each NAME the NAMEREF attribute, making it a name
+ reference to another variable. That other variable is
+ defined by the value of NAME. All references and assignments
+ to NAME, except for changing the `-n' attribute itself, are
+ performed on the variable referenced by NAME's value. The
+ `-n' attribute cannot be applied to array variables.
+
`-r'
Make NAMEs readonly. These names cannot then be assigned
values by subsequent assignment statements or unset.
if any are not found.
`typeset'
- typeset [-afFgrxilrtux] [-p] [NAME[=VALUE] ...]
+ typeset [-afFgrxilnrtux] [-p] [NAME[=VALUE] ...]
The `typeset' command is supplied for compatibility with the Korn
shell. It is a synonym for the `declare' builtin command.
this variable is assigned a value, the history file is truncated,
if necessary, to contain no more than that number of lines by
removing the oldest entries. The history file is also truncated
- to this size after writing it when an interactive shell exits. If
- the value is 0, the history file is truncated to zero size.
- Non-numeric values and numeric values less than zero inhibit
- truncation. The shell sets the default value to the value of
- `HISTSIZE' after reading any startup files.
+ to this size after writing it when a shell exits. If the value is
+ 0, the history file is truncated to zero size. Non-numeric values
+ and numeric values less than zero inhibit truncation. The shell
+ sets the default value to the value of `HISTSIZE' after reading
+ any startup files.
`HISTIGNORE'
A colon-separated list of patterns used to decide which command
from a terminal.
In an interactive shell, the value is interpreted as the number of
- seconds to wait for input after issuing the primary prompt when
- the shell is interactive. Bash terminates after that number of
- seconds if input does not arrive.
+ seconds to wait for a line of input after issuing the primary
+ prompt. Bash terminates after waiting for that number of seconds
+ if a complete line of input does not arrive.
`TMPDIR'
If set, Bash uses its value as the name of a directory in which
7. Command history (*note Bash History Facilities::) and history
expansion (*note History Interaction::) are enabled by default.
Bash will save the command history to the file named by `$HISTFILE'
- when an interactive shell exits.
+ when a shell with history enabled exits.
8. Alias expansion (*note Aliases::) is performed by default.
size of an array, nor any requirement that members be indexed or
assigned contiguously. Indexed arrays are referenced using integers
(including arithmetic expressions (*note Shell Arithmetic::)) and are
-zero-based; associative arrays use arbitrary strings.
+zero-based; associative arrays use arbitrary strings. Unless otherwise
+noted, indexed array indices must be non-negative integers.
An indexed array is created automatically if any variable is
assigned to using the syntax
named by the `HISTFILE' variable (default `~/.bash_history'). The file
named by the value of `HISTFILE' is truncated, if necessary, to contain
no more than the number of lines specified by the value of the
-`HISTFILESIZE' variable. When an interactive shell exits, the last
-`$HISTSIZE' lines are copied from the history list to the file named by
-`$HISTFILE'. If the `histappend' shell option is set (*note Bash
-Builtins::), the lines are appended to the history file, otherwise the
-history file is overwritten. If `HISTFILE' is unset, or if the history
-file is unwritable, the history is not saved. After saving the
+`HISTFILESIZE' variable. When a shell with history enabled exits, the
+last `$HISTSIZE' lines are copied from the history list to the file
+named by `$HISTFILE'. If the `histappend' shell option is set (*note
+Bash Builtins::), the lines are appended to the history file, otherwise
+the history file is overwritten. If `HISTFILE' is unset, or if the
+history file is unwritable, the history is not saved. After saving the
history, the history file is truncated to contain no more than
`$HISTFILESIZE' lines. If `HISTFILESIZE' is unset, or set to null, a
non-numeric value, or a numeric value less than zero, the history file
PATTERN and replaces it with REPLACEMENT in the value of `var', is
available (*note Shell Parameter Expansion::).
- * The expansion `${!PREFIX}*' expansion, which expands to the names
+ * The expansion `${!PREFIX*}' expansion, which expands to the names
of all shell variables whose names begin with PREFIX, is available
(*note Shell Parameter Expansion::).
(line 7)
* disown: Job Control Builtins.
(line 87)
-* echo: Bash Builtins. (line 233)
-* enable: Bash Builtins. (line 295)
+* echo: Bash Builtins. (line 241)
+* enable: Bash Builtins. (line 303)
* eval: Bourne Shell Builtins.
(line 85)
* exec: Bourne Shell Builtins.
(line 133)
* hash: Bourne Shell Builtins.
(line 176)
-* help: Bash Builtins. (line 324)
+* help: Bash Builtins. (line 332)
* history: Bash History Builtins.
(line 40)
* jobs: Job Control Builtins.
(line 27)
* kill: Job Control Builtins.
(line 59)
-* let: Bash Builtins. (line 345)
-* local: Bash Builtins. (line 353)
-* logout: Bash Builtins. (line 364)
-* mapfile: Bash Builtins. (line 369)
+* let: Bash Builtins. (line 353)
+* local: Bash Builtins. (line 361)
+* logout: Bash Builtins. (line 372)
+* mapfile: Bash Builtins. (line 377)
* popd: Directory Stack Builtins.
(line 39)
-* printf: Bash Builtins. (line 417)
+* printf: Bash Builtins. (line 425)
* pushd: Directory Stack Builtins.
(line 61)
* pwd: Bourne Shell Builtins.
(line 196)
-* read: Bash Builtins. (line 463)
-* readarray: Bash Builtins. (line 547)
+* read: Bash Builtins. (line 471)
+* readarray: Bash Builtins. (line 555)
* readonly: Bourne Shell Builtins.
(line 206)
* return: Bourne Shell Builtins.
* shift: Bourne Shell Builtins.
(line 241)
* shopt: The Shopt Builtin. (line 9)
-* source: Bash Builtins. (line 556)
+* source: Bash Builtins. (line 564)
* suspend: Job Control Builtins.
(line 99)
* test: Bourne Shell Builtins.
(line 330)
* trap: Bourne Shell Builtins.
(line 336)
-* type: Bash Builtins. (line 561)
-* typeset: Bash Builtins. (line 593)
-* ulimit: Bash Builtins. (line 599)
+* type: Bash Builtins. (line 569)
+* typeset: Bash Builtins. (line 601)
+* ulimit: Bash Builtins. (line 607)
* umask: Bourne Shell Builtins.
(line 383)
-* unalias: Bash Builtins. (line 690)
+* unalias: Bash Builtins. (line 698)
* unset: Bourne Shell Builtins.
(line 401)
* wait: Job Control Builtins.
* !: Pipelines. (line 9)
* [[: Conditional Constructs.
- (line 117)
+ (line 119)
* ]]: Conditional Constructs.
- (line 117)
+ (line 119)
* case: Conditional Constructs.
(line 28)
* do: Looping Constructs. (line 12)
* in: Conditional Constructs.
(line 28)
* select: Conditional Constructs.
- (line 76)
+ (line 78)
* then: Conditional Constructs.
(line 7)
* time: Pipelines. (line 9)
\1f
Tag Table:
-Node: Top\7f1348
-Node: Introduction\7f3186
-Node: What is Bash?\7f3414
-Node: What is a shell?\7f4527
-Node: Definitions\7f7066
-Node: Basic Shell Features\7f9984
-Node: Shell Syntax\7f11203
-Node: Shell Operation\7f12233
-Node: Quoting\7f13527
-Node: Escape Character\7f14830
-Node: Single Quotes\7f15315
-Node: Double Quotes\7f15663
-Node: ANSI-C Quoting\7f16788
-Node: Locale Translation\7f18032
-Node: Comments\7f18928
-Node: Shell Commands\7f19546
-Node: Simple Commands\7f20418
-Node: Pipelines\7f21049
-Node: Lists\7f23748
-Node: Compound Commands\7f25477
-Node: Looping Constructs\7f26483
-Node: Conditional Constructs\7f28946
-Node: Command Grouping\7f39650
-Node: Coprocesses\7f41129
-Node: GNU Parallel\7f42803
-Node: Shell Functions\7f45271
-Node: Shell Parameters\7f50355
-Node: Positional Parameters\7f52960
-Node: Special Parameters\7f53860
-Node: Shell Expansions\7f56824
-Node: Brace Expansion\7f58750
-Node: Tilde Expansion\7f61504
-Node: Shell Parameter Expansion\7f63853
-Node: Command Substitution\7f73201
-Node: Arithmetic Expansion\7f74534
-Node: Process Substitution\7f75384
-Node: Word Splitting\7f76434
-Node: Filename Expansion\7f78057
-Node: Pattern Matching\7f80222
-Node: Quote Removal\7f83922
-Node: Redirections\7f84217
-Node: Executing Commands\7f93413
-Node: Simple Command Expansion\7f94083
-Node: Command Search and Execution\7f96013
-Node: Command Execution Environment\7f98350
-Node: Environment\7f101336
-Node: Exit Status\7f102995
-Node: Signals\7f104617
-Node: Shell Scripts\7f106585
-Node: Shell Builtin Commands\7f109103
-Node: Bourne Shell Builtins\7f111131
-Node: Bash Builtins\7f130512
-Node: Modifying Shell Behavior\7f157126
-Node: The Set Builtin\7f157471
-Node: The Shopt Builtin\7f167219
-Node: Special Builtins\7f181270
-Node: Shell Variables\7f182249
-Node: Bourne Shell Variables\7f182689
-Node: Bash Variables\7f184720
-Node: Bash Features\7f210231
-Node: Invoking Bash\7f211130
-Node: Bash Startup Files\7f216908
-Node: Interactive Shells\7f221927
-Node: What is an Interactive Shell?\7f222337
-Node: Is this Shell Interactive?\7f222986
-Node: Interactive Shell Behavior\7f223801
-Node: Bash Conditional Expressions\7f227081
-Node: Shell Arithmetic\7f230869
-Node: Aliases\7f233645
-Node: Arrays\7f236201
-Node: The Directory Stack\7f240409
-Node: Directory Stack Builtins\7f241128
-Node: Controlling the Prompt\7f244084
-Node: The Restricted Shell\7f246856
-Node: Bash POSIX Mode\7f248693
-Node: Job Control\7f258080
-Node: Job Control Basics\7f258540
-Node: Job Control Builtins\7f263259
-Node: Job Control Variables\7f267611
-Node: Command Line Editing\7f268769
-Node: Introduction and Notation\7f270441
-Node: Readline Interaction\7f272063
-Node: Readline Bare Essentials\7f273254
-Node: Readline Movement Commands\7f275043
-Node: Readline Killing Commands\7f276008
-Node: Readline Arguments\7f277928
-Node: Searching\7f278972
-Node: Readline Init File\7f281158
-Node: Readline Init File Syntax\7f282305
-Node: Conditional Init Constructs\7f298738
-Node: Sample Init File\7f301271
-Node: Bindable Readline Commands\7f304388
-Node: Commands For Moving\7f305595
-Node: Commands For History\7f306739
-Node: Commands For Text\7f310924
-Node: Commands For Killing\7f313597
-Node: Numeric Arguments\7f316054
-Node: Commands For Completion\7f317193
-Node: Keyboard Macros\7f321385
-Node: Miscellaneous Commands\7f322073
-Node: Readline vi Mode\7f327879
-Node: Programmable Completion\7f328786
-Node: Programmable Completion Builtins\7f336036
-Node: A Programmable Completion Example\7f345782
-Node: Using History Interactively\7f351032
-Node: Bash History Facilities\7f351716
-Node: Bash History Builtins\7f354707
-Node: History Interaction\7f358635
-Node: Event Designators\7f361340
-Node: Word Designators\7f362562
-Node: Modifiers\7f364201
-Node: Installing Bash\7f365605
-Node: Basic Installation\7f366742
-Node: Compilers and Options\7f369434
-Node: Compiling For Multiple Architectures\7f370175
-Node: Installation Names\7f371839
-Node: Specifying the System Type\7f372657
-Node: Sharing Defaults\7f373373
-Node: Operation Controls\7f374046
-Node: Optional Features\7f375004
-Node: Reporting Bugs\7f384576
-Node: Major Differences From The Bourne Shell\7f385777
-Node: GNU Free Documentation License\7f402469
-Node: Indexes\7f427665
-Node: Builtin Index\7f428119
-Node: Reserved Word Index\7f434946
-Node: Variable Index\7f437394
-Node: Function Index\7f450630
-Node: Concept Index\7f457858
+Node: Top\7f1089
+Node: Introduction\7f2939
+Node: What is Bash?\7f3167
+Node: What is a shell?\7f4280
+Node: Definitions\7f6819
+Node: Basic Shell Features\7f9737
+Node: Shell Syntax\7f10956
+Node: Shell Operation\7f11986
+Node: Quoting\7f13280
+Node: Escape Character\7f14583
+Node: Single Quotes\7f15068
+Node: Double Quotes\7f15416
+Node: ANSI-C Quoting\7f16541
+Node: Locale Translation\7f17785
+Node: Comments\7f18681
+Node: Shell Commands\7f19299
+Node: Simple Commands\7f20171
+Node: Pipelines\7f20802
+Node: Lists\7f23501
+Node: Compound Commands\7f25230
+Node: Looping Constructs\7f26236
+Node: Conditional Constructs\7f28699
+Node: Command Grouping\7f39532
+Node: Coprocesses\7f41011
+Node: GNU Parallel\7f42739
+Node: Shell Functions\7f45207
+Node: Shell Parameters\7f50291
+Node: Positional Parameters\7f54420
+Node: Special Parameters\7f55320
+Node: Shell Expansions\7f58284
+Node: Brace Expansion\7f60210
+Node: Tilde Expansion\7f62964
+Node: Shell Parameter Expansion\7f65313
+Node: Command Substitution\7f77317
+Node: Arithmetic Expansion\7f78650
+Node: Process Substitution\7f79500
+Node: Word Splitting\7f80550
+Node: Filename Expansion\7f82173
+Node: Pattern Matching\7f84338
+Node: Quote Removal\7f88038
+Node: Redirections\7f88333
+Node: Executing Commands\7f97497
+Node: Simple Command Expansion\7f98167
+Node: Command Search and Execution\7f100097
+Node: Command Execution Environment\7f102434
+Node: Environment\7f105420
+Node: Exit Status\7f107079
+Node: Signals\7f108701
+Node: Shell Scripts\7f110669
+Node: Shell Builtin Commands\7f113187
+Node: Bourne Shell Builtins\7f115215
+Node: Bash Builtins\7f134807
+Node: Modifying Shell Behavior\7f161837
+Node: The Set Builtin\7f162182
+Node: The Shopt Builtin\7f171930
+Node: Special Builtins\7f185981
+Node: Shell Variables\7f186960
+Node: Bourne Shell Variables\7f187400
+Node: Bash Variables\7f189431
+Node: Bash Features\7f214941
+Node: Invoking Bash\7f215840
+Node: Bash Startup Files\7f221618
+Node: Interactive Shells\7f226637
+Node: What is an Interactive Shell?\7f227047
+Node: Is this Shell Interactive?\7f227696
+Node: Interactive Shell Behavior\7f228511
+Node: Bash Conditional Expressions\7f231799
+Node: Shell Arithmetic\7f235587
+Node: Aliases\7f238363
+Node: Arrays\7f240919
+Node: The Directory Stack\7f245205
+Node: Directory Stack Builtins\7f245924
+Node: Controlling the Prompt\7f248880
+Node: The Restricted Shell\7f251652
+Node: Bash POSIX Mode\7f253489
+Node: Job Control\7f262876
+Node: Job Control Basics\7f263336
+Node: Job Control Builtins\7f268055
+Node: Job Control Variables\7f272407
+Node: Command Line Editing\7f273565
+Node: Introduction and Notation\7f275237
+Node: Readline Interaction\7f276859
+Node: Readline Bare Essentials\7f278050
+Node: Readline Movement Commands\7f279839
+Node: Readline Killing Commands\7f280804
+Node: Readline Arguments\7f282724
+Node: Searching\7f283768
+Node: Readline Init File\7f285954
+Node: Readline Init File Syntax\7f287101
+Node: Conditional Init Constructs\7f303534
+Node: Sample Init File\7f306067
+Node: Bindable Readline Commands\7f309184
+Node: Commands For Moving\7f310391
+Node: Commands For History\7f311535
+Node: Commands For Text\7f315720
+Node: Commands For Killing\7f318393
+Node: Numeric Arguments\7f320850
+Node: Commands For Completion\7f321989
+Node: Keyboard Macros\7f326181
+Node: Miscellaneous Commands\7f326869
+Node: Readline vi Mode\7f332675
+Node: Programmable Completion\7f333582
+Node: Programmable Completion Builtins\7f340832
+Node: A Programmable Completion Example\7f350578
+Node: Using History Interactively\7f355828
+Node: Bash History Facilities\7f356512
+Node: Bash History Builtins\7f359511
+Node: History Interaction\7f363439
+Node: Event Designators\7f366144
+Node: Word Designators\7f367366
+Node: Modifiers\7f369005
+Node: Installing Bash\7f370409
+Node: Basic Installation\7f371546
+Node: Compilers and Options\7f374238
+Node: Compiling For Multiple Architectures\7f374979
+Node: Installation Names\7f376643
+Node: Specifying the System Type\7f377461
+Node: Sharing Defaults\7f378177
+Node: Operation Controls\7f378850
+Node: Optional Features\7f379808
+Node: Reporting Bugs\7f389380
+Node: Major Differences From The Bourne Shell\7f390581
+Node: GNU Free Documentation License\7f407273
+Node: Indexes\7f432469
+Node: Builtin Index\7f432923
+Node: Reserved Word Index\7f439750
+Node: Variable Index\7f442198
+Node: Function Index\7f455434
+Node: Concept Index\7f462662
\1f
End Tag Table
-This is TeX, Version 3.1415926 (TeX Live 2010/Fink) (format=tex 2011.12.21) 5 MAR 2012 21:30
+This is TeX, Version 3.1415926 (TeX Live 2011/Fink) (format=tex 2012.4.18) 5 JUL 2012 20:43
**/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]:
\SAVEmargin=\box23
(/sw/share/texmf-dist/tex/generic/epsf/epsf.tex
-This is `epsf.tex' v2.7.3 <23 July 2005>
+This is `epsf.tex' v2.7.4 <14 February 2011>
\epsffilein=\read0
\epsfframemargin=\dimen39
\epsfframethickness=\dimen40
Chapter 2 [1] [2] [3] Chapter 3 [4] [5] [6]
[7] [8] [9] [10]
-Overfull \hbox (43.33539pt too wide) in paragraph at lines 882--882
+Overfull \hbox (43.33539pt too wide) in paragraph at lines 878--878
[]@texttt case @textttsl word @texttt in [ [(] @textttsl pat-tern @texttt [| @
textttsl pat-tern@texttt ][]) @textttsl command-list @texttt ;;][] esac[]
.etc.
[11] [12] [13] [14] [15]
-Overfull \hbox (89.6747pt too wide) in paragraph at lines 1263--1263
+Overfull \hbox (89.6747pt too wide) in paragraph at lines 1262--1262
[]@texttt cat list | parallel "do-something1 {} config-{} ; do-something2 < {}
" | process-output[]
.etc.
-Overfull \hbox (89.6747pt too wide) in paragraph at lines 1278--1278
+Overfull \hbox (89.6747pt too wide) in paragraph at lines 1277--1277
[]@texttt { echo foss.org.my ; echo debian.org; echo freenetproject.org; } | p
arallel traceroute[]
.etc.
-Overfull \hbox (106.92076pt too wide) in paragraph at lines 1284--1284
+Overfull \hbox (106.92076pt too wide) in paragraph at lines 1283--1283
[]@texttt { echo foss.org.my ; echo debian.org; echo freenetproject.org; } | p
arallel -k traceroute[]
.etc.
[16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30]
-[31] [32] [33] [34] [35] Chapter 4 [36] [37] [38] [39] [40] [41] [42] [43]
-Underfull \hbox (badness 5231) in paragraph at lines 3567--3580
+[31] [32] [33] [34] [35] [36] [37] [38] Chapter 4 [39] [40] [41] [42] [43]
+[44] [45] [46] [47]
+Underfull \hbox (badness 5231) in paragraph at lines 3718--3731
@texttt emacs-meta[]@textrm , @texttt emacs-ctlx[]@textrm , @texttt vi[]@textr
m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and
.@texttt c
.etc.
-[44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58]
-[59] [60]
-Underfull \hbox (badness 5460) in paragraph at lines 4824--4830
+[48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62]
+[63] [64]
+Underfull \hbox (badness 5460) in paragraph at lines 4984--4990
[]@textrm If set, range ex-pres-sions used in pat-tern match-ing (see
@hbox(8.2125+2.73749)x433.62, glue set 3.79674
.@glue 3.65 plus 1.825 minus 1.21666
.etc.
-[61] [62] Chapter 5 [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73]
-Chapter 6 [74]
-Overfull \hbox (51.96864pt too wide) in paragraph at lines 5723--5723
+[65] [66] Chapter 5 [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77]
+Chapter 6 [78]
+Overfull \hbox (51.96864pt too wide) in paragraph at lines 5884--5884
[]@texttt bash [long-opt] [-ir] [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@t
exttt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar-
.etc.
-Overfull \hbox (76.23077pt too wide) in paragraph at lines 5724--5724
+Overfull \hbox (76.23077pt too wide) in paragraph at lines 5885--5885
[]@texttt bash [long-opt] [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@texttt
] [-O @textttsl shopt_option@texttt ] -c @textttsl string @texttt [@textttsl ar
-
.etc.
-Overfull \hbox (34.72258pt too wide) in paragraph at lines 5725--5725
+Overfull \hbox (34.72258pt too wide) in paragraph at lines 5886--5886
[]@texttt bash [long-opt] -s [-abefhkmnptuvxdBCDHP] [-o @textttsl op-tion@text
tt ] [-O @textttsl shopt_option@texttt ] [@textttsl ar-
.@texttt s
.etc.
-[75] [76]
-Underfull \hbox (badness 2245) in paragraph at lines 5897--5899
+[79] [80]
+Underfull \hbox (badness 2245) in paragraph at lines 6058--6060
[]@textrm When a lo-gin shell ex-its, Bash reads and ex-e-cutes com-mands from
the file
.@textrm n
.etc.
-[77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90]
-Underfull \hbox (badness 2521) in paragraph at lines 7094--7097
+[81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] [94]
+Underfull \hbox (badness 2521) in paragraph at lines 7256--7259
@textrm `@texttt --enable-strict-posix-default[]@textrm '[] to @texttt configur
e[] @textrm when build-ing (see Sec-tion 10.8
.@texttt n
.etc.
-Chapter 7 [91] [92] [93] [94] [95]
-(/usr/homes/chet/src/bash/src/lib/readline/doc/rluser.texi Chapter 8 [96]
-[97] [98] [99] [100] [101] [102]
+Chapter 7 [95] [96] [97] [98] [99]
+(/usr/homes/chet/src/bash/src/lib/readline/doc/rluser.texi Chapter 8 [100]
+[101] [102] [103] [104] [105] [106]
Underfull \hbox (badness 5231) in paragraph at lines 561--577
@texttt emacs-meta[]@textrm , @texttt emacs-ctlx[]@textrm , @texttt vi[]@textr
m , @texttt vi-move[]@textrm , @texttt vi-command[]@textrm , and
.@texttt c
.etc.
-[103] [104] [105] [106] [107] [108]
+[107] [108] [109] [110] [111] [112]
Overfull \hbox (26.43913pt too wide) in paragraph at lines 918--918
[]@texttt Meta-Control-h: backward-kill-word Text after the function name is i
gnored[]
.@texttt t
.etc.
-[109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120]
-[121] [122]
+[113] [114] [115] [116] [117] [118] [119] [120] [121] [122] [123] [124]
+[125] [126]
Overfull \hbox (12.05716pt too wide) in paragraph at lines 1866--1866
[]@texttt complete [-abcdefgjksuv] [-o @textttsl comp-option@texttt ] [-DE] [-
A @textttsl ac-tion@texttt ] [-
.@texttt m
.etc.
-[123]
+[127]
Underfull \hbox (badness 2753) in paragraph at lines 1980--1983
@texttt hostname[]@textrm Hostnames, as taken from the file spec-i-fied by
.@texttt o
.etc.
-[124] [125] [126]
+[128] [129] [130]
Overfull \hbox (26.43913pt too wide) in paragraph at lines 2131--2131
[] @texttt # Tilde expansion, with side effect of expanding tilde to full p
athname[]
.@penalty 10000
.etc.
-[127]) (/usr/homes/chet/src/bash/src/lib/readline/doc/hsuser.texi Chapter 9
-[128] [129] [130] [131] [132]) Chapter 10 [133] [134] [135] [136] [137]
-Underfull \hbox (badness 2772) in paragraph at lines 7700--7704
+[131]) (/usr/homes/chet/src/bash/src/lib/readline/doc/hsuser.texi Chapter 9
+[132] [133] [134] [135] [136]) Chapter 10 [137] [138] [139] [140] [141]
+Underfull \hbox (badness 2772) in paragraph at lines 7862--7866
[]@textrm Enable sup-port for large files (@texttt http://www.sas.com/standard
s/large_
.@textrm a
.etc.
-[138] [139] [140] Appendix A [141] [142] Appendix B [143] [144] [145] [146]
-[147] [148] [149] Appendix C [150] (./fdl.texi [151] [152] [153] [154] [155]
-[156] [157]) Appendix D [158] (./bashref.bts) [159] (./bashref.rws)
-(./bashref.vrs [160] [161]) (./bashref.fns [162] [163]) (./bashref.cps [164])
-[165] [166] )
+[142] [143] [144] Appendix A [145] [146] Appendix B [147] [148] [149] [150]
+[151] [152] [153] Appendix C [154] (./fdl.texi [155] [156] [157] [158] [159]
+[160] [161]) Appendix D [162] (./bashref.bts) [163] (./bashref.rws)
+(./bashref.vrs [164] [165]) (./bashref.fns [166] [167]) (./bashref.cps [168])
+[169] [170] )
Here is how much of TeX's memory you used:
- 2084 strings out of 497974
- 28630 string characters out of 3220832
- 65784 words of memory out of 3000000
- 2900 multiletter control sequences out of 15000+200000
+ 2085 strings out of 497974
+ 28645 string characters out of 3220833
+ 65554 words of memory out of 3000000
+ 2901 multiletter control sequences out of 15000+200000
32127 words of font info for 112 fonts, out of 3000000 for 9000
51 hyphenation exceptions out of 8191
16i,6n,14p,319b,705s stack positions out of 5000i,500n,10000p,200000b,50000s
-Output written on bashref.dvi (172 pages, 702588 bytes).
+Output written on bashref.dvi (176 pages, 708852 bytes).
%!PS-Adobe-2.0
-%%Creator: dvips(k) 5.99 Copyright 2010 Radical Eye Software
+%%Creator: dvips(k) 5.991 Copyright 2011 Radical Eye Software
%%Title: bashref.dvi
-%%CreationDate: Mon Mar 5 21:30:59 2012
-%%Pages: 172
+%%CreationDate: Thu Jul 5 20:43:08 2012
+%%Pages: 176
%%PageOrder: Ascend
%%BoundingBox: 0 0 612 792
%%DocumentFonts: CMBX12 CMR10 CMTT10 CMSL10 CMSY10 CMMI12 CMMI10 CMCSC10
%DVIPSWebPage: (www.radicaleye.com)
%DVIPSCommandLine: dvips -D 600 -t letter -o bashref.ps bashref.dvi
%DVIPSParameters: dpi=600
-%DVIPSSource: TeX output 2012.03.05:2130
+%DVIPSSource: TeX output 2012.07.05:2043
%%BeginProcSet: tex.pro 0 0
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 39 /quoteright put
-dup 42 /asterisk put
dup 45 /hyphen put
dup 48 /zero put
dup 49 /one put
650DDF28FC1AF21FA124C16EE8ABB98904F03E7F49E54348B1AF2211A1768768
D62E35EA2EF7F2756B58168F9FFB5785DAEAB324C90FDF6207E670DF277D6AB5
F0924B26BCF52CDA2980680320314F41244B73DA6367C434B5DCDB96B6F0F454
-89BE7484DD1180BC24D94405E8D09C599C2E8A62E8DD7F38B400211A85C85DE7
-12A769E4CB95BA1A04178B882B3999815114265DF5F693BBBDE48CF4B371789D
-5145D60A835BD68CE2F908F77C429E8009FBEC55A03C04475FD1D0018263250C
-3036B4BA68720B029069CD05AFC964345D3CFEEC17DE26A4A59679224C48BF03
-7A75B7A9F0DACCB0C16E80FDF62606A2311BD9ABAC26E343222126B2F695F1A7
-1A5DAE539774717A26C199A011A14A0BC89ABCD99B97CAFE08E2BBE06232BA1D
-56B65F88FEA5D5B76868B3F60A986F0C62AED2849DE1D0A9DB107D283996FB62
-78930D63980AC543C3947F7B06A6FC871D3CF2642A7A5831908F975B8FE74BB4
-0B0B133A1894C7E846BE2C61DA0A7F2A4946BC0BE4810718EBAC6A19AFD079F7
-C2AF5C448A2FA4E9D0136DA7E68165E4B421EFEBD77DCAA4773C15BC8B83BC8E
-BF0A6E83F73D32ACFDA73F6331352360D78207B3B4DBA5BD192A7B5E157D08CD
-BCC5F56A8AE6DD3081EF8B5E8326B68F44EAF1E6744C2B218BA67A6ADCAB7ECB
-C0030B20A9258D78F50E768B5C8C129AE6DDC880DB3525890C1DC8676785D903
-53CD13AC75493DBD1C83909231F168F3FF85E06B51DA33F962A1E95ABED58D43
-6574BAC1FBE11E37CB2EC0DC1460DFF4C84F879A028F7CF219C84D78C174273C
-2887EE976982195E235431F9B55544D431C67E264B7D0A2979BBD6460F39CFB0
-4F5E5CDC7BA1D7885061056AB5432635F3B086AA08F5B1A489016A01F6DF1A74
-3F8F6562300D196A6B148A0C069F14692EF26D9A9971A881DB2D2A1852815E3E
-980D8D1EF0C4368B6A4A0A03EA3F75882F55A9DB3ACE5A8397678610BA19CF17
-CC939C8714AE9A209553896D8F5755EA09921F0556BEE9A690A9D96D22B5B1B7
-689AF634774D3733CE3AF1E0FF8F7AD6842A53DB53D1F98C865D03597793FA20
-BA886E90A8361B4E0C683E07F9546A644A6D9DC2721F95B50B7E7EEF94AC7711
-0FFE2AFC30EF8079F9CEFAD9D746B9DCEA75CF1327210CF387F29D580E702ECF
-896B9BF7064A23F87E1C54A02D44FB7203D7C22726CEA8FD7F92953410635D75
-F85D20504C4C6D415478975E25D1E9EE1EC29AC5D3D8FDAE36F09C64F62638CD
-EAB56566EF48C87D1D9DEE2B98A21F8098B9A921DC2ADDAA8A57C257A92005CD
-3EEABFBE346B788A223584441FDA53A106ABE6C6E0EBB1FA33410A5CF0A96D6E
-BA1D2E2C78F9E40DBC4B5E189D87AA915E2EEA532E2AAA18135F301CC1AF6E53
-A742F604717D908F31A049BDA9CF935C449EB363CBB3F60DFD8D39619B73A7FE
-DBF02AF8A3CD757D571AE69E96AF19BE51A472921122F68760DE738F9AA02A7A
-E0E523690E26CFFDCF048B5D26347AD3B764A6A0C08CC956C533F500A9A0A42D
-1C15DE9CBDD02A5D564D59B23F7FCBD123543E8E14B6984CB0EF81108FE64D21
-804B9BA4B021D8940E28A47B62365108FF9C10E99F434C9FD062F9BEFB67A801
-EFF26B71D6A9E9A2C0BC38266609BE04D4F2832B133FB8EB52C9A39ECEC193AC
-7623647FFBB3EAE39FED9474F6717804F648D3574867D7DEB2EE1C2AEF607DA7
-8266B83FFD162FB9D88647BB22ABCD9E9CCDF6390F6F5400E64B3850227D2F6D
-538F0561747983DD1A28720ECF0D8E472E06DFC0C972AB05F04A7D5DFE01C4AE
-D19523FDF2A1775A7298787CEF515843AA5AABA66C39054BCBEDA75F30E06B10
-3FB847C8359BD32F665CCFE7B2BBEAB0DA9166B3544E54FE10BF82EBC68AA229
-12783EBAB44903A2E91CE42EB62C55A42284C6F56AE22D2AFA5FED63223DF7D1
-6AB06132E5568FC039EF711F03B492C3529814C33457C031BBFF13D84D6C3978
-B61210EDA38FB66207339DD4F17CD7DAFFF2777E55D8A76763EE6826CACCDBC2
-F5AEB4E4F231406550F559D449AAA611D8F58B731FAEB6792FE094E20E773FAA
-AD1280CA9F57BB265F9B81D39B5126F47B443871D6B910FF8BB1A91870ED9ACB
-D9A9F110701F43D01251B426E835DCC06D56149778A084693489A0637F3E7F98
-B23CB5655BD1840EA35F363EB48A1EFC332DC15EB5A86A09C5B975F894827664
-F338ACDBA22D780AE9C852D7C92613B247AC57C23D31777A877EAD3A44210832
-FD4FD9DA042F46D0D16B10763F528BE9779D1767B96BA8696605E665C43F16ED
-92EEB358D7D061AD2F1CDD87D82283B1726442D8274BC3D63D6F02CB335F1442
-E073C22608CDD9A98F63FD225C459A6F7BFB6BFE6AD048558816B5F2B8DC823A
-112F342B108DA65C35BDD95B592440BE7882070DC8A26B9F17D48E098B5FA467
-4003AA2DB0E9DDCAE162E13746061ADFD3956F746EBC8013DB66A16D7490EA99
-A1A34B327110B98372F00065F1688911EE789B6A3595E4FA1A62248426D67D38
-6233DEB04D13B3CB0C119467C3BFA36B63F22B893C9861B8AA39EA891F7D94C7
-18A972FCC15542CD22DD924132FF8879E80494197B1155437FA6B11F8079C07E
-0710AEA9272380FAEF4D28B65D6A20C60658D61E7746C1D3E4E8A991EAC88C67
-31807BDE521FF875B450B3434C61F64B7A1C552EDAA703D6AED3295F5C26FA52
-166AAD62A68141096231FB1257FD34BA9747A4F1ACD786AC1106765B23D00B3F
-3DC3E33CFB6499636F25BC6A448C2D8405EC8805ED70A6A1FF932B9D54BEEB3E
-37663785E6422CAB40D2EEA9012DB2A7C03C8A6A530427A2648DA2A462722225
-D3B1077DB027F50955FFDD4FDA060609B8C462A60C694343C1CA069465E5A64A
-0E5EAB6395E63E3B011EDF01DA448967C5A4A3AC13B2ACEBB7DD0004B89B728B
-A0C84E8EAFB640AEBBC6F623B4C8BF481BB3B5CB1EFE06491BCA9FC3D917576E
-D4175C0B53CF8DA884C28C76BE4B2B3335D0B00E7800FE671FCF89B8B76CCF92
-C39F94CF2E5D9FB7579FE963503F3B892453B343D826C4E747C2C93D6783D3DE
-C89D7B2CA6F2832EE89E986B1AB55A36A4012983C1C77EB76941EEFE5CFD877F
-983AAC6875E0A08F60D9EFE93094706B1B9BE96B84F6CF8EF2F1199B046D3061
-E802014B7D65291B3B01992AE7F8D0C56304D7ECF8E0BCC22A6E99E724DE028B
-ED6DB2ED776CA03C2F7EF74D10901418D803C90DCEE4FC37C9BB15D317953588
-3D064E21CAA6FE07A8D41D03D60B02D3D1544BE9969A76F0E10AE062B06ABE83
-97882E6C8D98321487C255B392B18F57366732C01DC433E7721143EB00EC544A
-2B742171F70E7F1ED108C591A72B4A29E34A670A1257986B7173D5D31B97C9CA
-3E8D41898F4E9158AD23F07464E6CF4EF05D8B49E291D32EE8A053507FF16463
-A3070681D0D8FB31811620B0ADCC2466BCF83A7490D21834CF910A56753B9F3F
-EE42E879F4B5F535EB496CA8B7DE09697387D7CB5D84069E334B4F3A5D3AF692
-8CCD5F4A5484DD710DA87F001648E971EEF4A9360B108A24F49AE81501E6FA9F
-EFB1235CE72746EFE3BFE8F41487B077F4451A359B756A7C5E04E9ED5E764206
-9300B7F4DD63E3011779EA52B649ED561C4F0361C9740B7C47E9E57015828551
-922E5C6BF6BD4FACC9753BF91DF3471BCBBCC1ED0B499413C71DAF4DF35B534A
-A62CF88EF7B9BFE43E04BF71711DDEBBBA0C07C1D1A1C1DDFB641D891A10E5E6
-A16ED88B0517943F95138A398CBB64B76FBFCACFD162B2AA238D01FEAB17BE68
-A748E6D0F1102D31F8100C681905249A91C57CF20ECD2EE1BA7802C3AEA4369E
-ECB59341EB7FFB017E73BE6B6173B70A77B84F689C270315A2348C6041E1BAD6
-454C86AB50119BF51B0460B9C4A53703D4EA50EBC685F13F63A1811D58EA368A
-BD9AE378344116DEE4C07A5DB6B0F265BB9C2A15A275D8AC5DFD79F5F41ECEC0
-61D9712570385B99917FDCAFD9CD115F61D6C2179643F0A89C4DF01C430C49E5
-595A9D79C8E88A4F6668228A428EA417DE9FACC70AE53CEC7C8742A37DE18B64
-35D9ADC9C5AC8D4FAA21D0C602C7390305C2E07D0E8683120E93B6A72702D5EE
-9CB2277D9D23CF732A618E174BF7021772882E7FAB58AC7E9060BF86C5616811
-098D6248BF8153192EA741FDDA54CFD532DAA32F69C891D41211A5F5C80DBCEF
-116C2EC21A4F50828629E2CF49CE351260A7BAAA78D08B2A830DDEBC100F7D1F
-06F467DE0CAE31EADD113717CED7B4CB62983E2A2CDC2422C662D6D17BAF6C3C
-4681ABA54CBB797A6BDF162C04D3179F42AE6B2C689C8DF7C8BB905A84355A0E
-6C0532E0EEF4D12995C449FF19E553608C722CAC5799FBE07727889F88E1FAD9
-1DED2BE2EFA25728915308CC69EBF1AA4B82D27E1C6B18328C45E66108774A28
-294A735A264F4B3E4AFA5A522655C6396F49842B6A31D6B84A46370DCAFF5869
-074C421ED8B19F680D1510501FDBADB6E3A9A1704083D2DD44A1A8B4DC84FFEC
-AB846B3D7D51559BCD5728AEA51C053EAC20DDE1550A125D0DC4004ECCB7AA1F
-D390F85450375018B096740AA7C2513982F3168AE86D8992E7469BFDB4F22E19
-2EBC6B98C3447502A580A41AA2201A27DC08EE958C51AEF45423AF96AD4A0A51
-47512127E20C6012F7250BA2D73D37523699DAA593ED11933057D460CC6C92C3
-0DE398677F6983903E8CD9B7B7D7A9539C194EA19D60E74A40F348449C01E851
-38F45F94E605F4A5E4F9C97303AD93E5ABEBB942BED075C5BE70BF7F5A091EA8
-A475E03D38743C9888EBD5C038971546B2F16FEEF4325C68C62FF281ED7D8DD8
-230646582F5DA8537C0E64F968E1A66D5A8CA666F0A2E988FC20F1DCAA493E86
-0F109897BA0F1E49A5AD0017631A3F2E01E53E5A05472ED9DC361A0FFF2CC614
-98647E596B5FCF40B3A3137B9E83788977AB11FF2E8571F6C534E3522DD361F7
-177559CE8B432110960A3F638EA35ABE530BFAC1EF83408F90CB1F527982BF58
-D7BC72BEB05B392AEC7974EBE37D57A826BD2E3CB7EBCE3B92A7D89C65F5B8AA
-966C7CFB8A34DFE6190EF03B8A4A5C3575B3ADE3427ED8F0AFEEE640EF899D91
-691552B02ABF2F7F74A4A215835D1C7435090CFB6EEA56BA941944E8205963AD
-84098433875FB627B75DB9EF71803C2653B4CD4BB16F76AC856F88281D0AB313
-9AB54F5622854827AE8B79F2FAFD115FFB6ABD6BA559A0F7B9452E97656CF83F
-A5D39988256D595F3AB947862689B32F1C9F94D839F7AA13D3BFEDC6668DE29F
-BD646D4F3EFE30B72FFE6B0914CB9D45E98C9905BEB34814EA06B69D795DB3D6
-A4E7A839536F79545CD4F721DC26729A79447319B38341022CB021E8B699A325
-6FE8DDF753E8F24CAA91771CEC64553AFCC56972D5F6F72A406A738CCF5C3EDB
-B719842CEE9B3A1C36DF074C78BFB0BBF9F0E924C518BD592F4373329C6B753C
-831A906A078FFCB43DCD333D36D4B71DD14769D6FE43CBD8FA5C8536ACC3E852
-59777C09EE356DB5E661A45018F5E23FDBAAAAA2CBE098999AB59A66885B91DD
-3F082354EFF333CCF91FA24D160E4F8D4520F8B059618EE18B1D4AE16C821477
-7ABD35259F1F4AAAA1C2FC868CF98354F5A4108A82DC8A425598229BBE20F08F
-0AFCBBB5B04049CB7FFA39716E5B2BA25958164D07FEB2960FDBF36C3B5AE88A
-72B485E0F3EBF0921EF03A4B2F77EAE6361A6CBB2BFF6D3DC8C4527837DBCB43
-717DBC0D70564E2E269E9530C6BFE8D8B9874C82531222F938194F717E24147E
-A96BF63AF53FDB94A374464C3F4271CC19081C230ADFAD374D7333D9E23E8DEC
-30125A933D08DD8FCFE58C790C187401AF4B09B4FAD3E1710EF87C60CDC17CD9
-E3F1EDC6B6C286861BF4D12DFC999B18658791E7FE352A88E98158207E1E2D5B
-A9074EF795D97AA91F4F75201BE68572C363A1741BB931B5A23114986CA7E023
-56C5B8BEC8AD9A71FC8B2BC03D2FCC9A29136C375D765719F4C1A7306727ADA1
-F8E0BF7488C4EAF2C33DF25F6ACD29CC709286DFFE6243FA9CC1A37BDACE4759
-2F1CADBC12B2AC398128B457EEB0A4813BD6783671390CC265F0F9C37033963E
-C10B3102CD9B9CBD4570C70F7860B74517B1FFD08F324D1D5070EFF22131488F
-844ECB977B4811305918FB279B7ADC75B3AF4245C3B709B76B4CB0D705BE20E0
-07BCE670DF2D105D882FF9BAFE6B10637488945EE1C8C51CB9B707D6DF4790FC
-198B186C8903D7F4F9E9E07E8A79D0601D2FCAD5B2FBC2565BA073329C3E74BF
-3482D79817FF8CC0BA51B8C2B8BBC62AB451AD2968B1BDD55B0E1AAFC8776017
-122C105EFC48486DBF88C7B6C1F445E8C6DD4CD56819A52A6F0A21B10EBC7BA4
-2A4F9F1E2106DA7EF44225C37D4847A2732F5D59907121C056E25123F987C2A5
-63E5E867FAB8C9CF513B3D21C2FB6A83B8CA7DA0CFF86886257FABC2CF76D35F
-3A8121714282F430968BE5F79C853951D3C0F91D768291ED59A593FBA9C2E164
-B0D10686FEA9817A737462845B642B434F7447CBF0EF04BF4DC91E0F5FD03118
-6127434FC83ADE4B29175F5AAAE678540210ACC90DFD26855596CF7437F18A92
-AB212A520FA59F68C2DBF6EAFFD866280238C72EE7BBD8D34C0ED6C4980512D1
-B20CCCB7EDD37256785343D94268E7676B8EADAA1AA225F2206D7982618A8385
-7CE23E4B027F32576CED74809E2D24D1424C444B9D6F092D5C29BE70B7893547
-E4A7142E635B2A2C82D5278C34EC152EEF655EA12EF940886DAB711C9CB690AD
-2E0D5DD588021A4DB5022A87C5AC61D657927BD00CF8B87BBE73C597A009B6C9
-9CFF78EBDAE7961F113AD493604F53F242152203FC0CD4999FD43FF3C402455F
-4449D0F9F9C71B704E2E4C956369C8431DE5E6F107876594711A17396327BBBA
-55C29C749B00739E2BA03E775F207A22B0560697C1A9CDE9B3736975E6055850
-CB4830454A5DA9778AE029429674280D0EED483F49F3AB6F36136AA9672F2503
-D5C9A31B75C66F97421EA91C91CEC32BD067899CA55BE6CEC631B079DC465752
-08294E603A04E216E5D15DCB86F6CAA71ED3A9ED58948F00B558464C02B77D3A
-13CCFEEEDDD6C2AA904619332D352560F6E19C5783A7E5CB90BBE1A05F097A16
-9DCD1C288E5317F632F407290BEC6E8BA184CBED0114CCB8A002E0EA2A1B279F
-B106E9547B6B78EF2B4177CFFCE67A169BD287627975C8373A8C3AB0011C917A
-6FD1659E1442AD6B8EB68B5C5BB5C0E5891D62BCC9709E52204540232BC54183
-E745617938F8E7E383D8DA45A220D90C99B13349ACE2178D44AA18B92AD14E04
-0A20EE8FB2BAA86A7AF6B7110E19D01CC781518218675B20254934ADE08CF6D0
-3D0B311FAEEF28E7C58428F2E5F614A2A687CA4FA22E75C14075DBCBDEF0C36D
-05C6DDDA33332636637E3837845D0246CA921F5800DA8F3C0C518D21E8F92A1A
-09160740F68F4364E1AA8005BC45F05049903DB8C261086BE3F8D30567567813
-4977E9CE15FA719C15AC55E8D3060578A68A162179A3FBAD7C8246F0C6EBA67D
-D3F3C30D48760FDF6DE8CCCCA79BE5B38958BCD22C79AE00980313210BA73DC2
-92E1AD1A8362D98F91E403838A51F32CBEC6AA080A982D4D4D2F7DE70B21E4CE
-186DE601E3E654DD5E43682BD69B13E070C03EF6BD4EC8737404D44792C98937
-44437AE97C64C3713781BF1E79C7FC983129988F5A14F0A552454BD21B4899F7
-24E9AA642EE02DC3ADDA76AAF81AA2016C889B0C5E89E42BCE90A7FC2D17BB6D
-13034ED22E55A7689A824B564BFE4B62C01F37A7A1E3580FEEBDD53A20B04B05
-4D28662D42E40F766663DC486AC893927A46C24F00CE218E7CDFE3A65D9DE5DA
-44B0B0DB87011D705B967B500F1760E988CBB8D16567A860CBD88E962E7EE6F0
-F61752F5C986B4E4DA5D78190AAAB76AA51B23D58F576F272F5A57EF43151687
-802BC7AF286D0F7F70CD4406D2BF322EB3A6B8B98401059240D27E0760E50AE6
-B69D375792ECA645CAF83588868F29A51A67CC197C6775A11759181518E173CD
-A64CF8BCC9BF0CE4B734DA72559E863C92692A00FBD94E3141F6D92347EE1318
-3F919ED16E652A3F258BA54A749B47D610FECAD0ADF6C46CDA27487803F0BF59
-47815117D2879298CD50DD6CF250F9BE4024C7E24FC7238B6D3A663E2C65A133
-FB0D9F01EBD36749B601F14D83825C3EB945B819AA738E3D3FCE587E30CD7716
-AA52028FCFFC08C7EB43A23A8A80EB240F805322E18A6B286AFB6879C2AC0367
-DE1C7E2C85F9D4B6096920F03D99075E2260D2CC9EA50A330144E20A362A1E50
-402B97CAC5513BAA4F9A70841027A9D6D6874A807BC1D74BDEA77930F4FD82C7
-0D178BC6300EB8868F605595EA6E911EF701EC772B4C7B1739786DD786510B00
-B6A49E60242C45C98E32BACCB2E4F34B8C7ECFB38F5740A372C2BEEAF5C6B253
-E14412CF2BB61A54A3A5E489A881C693419906783F3E69844AA380D64FE5A0EC
-1253BBBD6843D08273B00B8E0ED27643C842126878C30AD34598DEF21E27D657
-4CC1FCECCE4FCE54E4F5341C57B56320B01EC031CFB13EE91C919773DF0E22E1
-AA79B5120944CB41EC4417AB7593B97047BD6C2D19B3A9DC7484B33CCDA63B75
-809F50C3CE667DEE02A4E8D4D025E38072E84EA9F4D320CA80DFD771ECF36324
-B9300D53FDEFBD2D78282B6C9F9C76154248B1F48974AEEADD66F55ACDFDDC33
-DCDC842B3E205056DD7D0757699EC5116DA5CB3E7D88CA425C13025F074937A6
-46346CBB4E4CBB2035453F31F004300441F9A26DFD9841C908CD3525CB286B1C
-29171A8C68487F8E483FF8D2776A147548E85C65A44737E84E061F541B92B839
-980A972BD5EF406FBB5170FB586A7D4C4D9676CF0B18D5D248D97C937D12E325
-83161F003B5E04CDA1F73EEEACE472F035A0229C7615F811840BC94CE3054D53
-E0FC3825E15313035833B1B41B40764384D38E73CCAA681C4D109726759E19D9
-28554E6E168E2BE913EB409255ECBF5AAFD9E0555DFF02F24D4BBD84D3893C1D
-958AAEAB3504B7F8FB8C93E0ACBA935FBE7DC85816BCD4E0BBA3AAB3830C6149
-6EA6050BE241A9BEE9EC45E35217DBF0BF66C5C163D78545167B171968B0A4A6
-B53AB4CC9BB657F73B6E86B58D713B3DEF30F08336FFEF1DFCA41C1360B87B8E
-CC5E66E0BA0288CCA66452671715F490672D54EFC1EC524C62C6B0C8BD756DAB
-6904413B36D8FE899D8CEDD8EBC305A07052BD508E846D7C0BBFE76AC6ECC5B7
-383B5E34A241C702025DB7EF358768FA3ED026F962AB10E5E19883DB25C85088
-FC3DCC6809A2D20BC7F1CAB15D2058E45E702B9DBF846C3647751AD7B2B47C0B
-B60B137C96189ABE87B7089A53C33DDA3A07341414063E80E2FA5F57DFC2FAD6
-62135EAB4D2DCFC40705784B342BE512B2F32CA9CDC29534C86FE1CEEC3385F5
-0926662B707F73B0224AB9192580F3434CF5C845EF100648F96BD4AF2EAAA65A
-180AB7A4A6F3D963B56B735A609A7FECC9C7F614931980F8AA75BD61AA05DB93
-52FA135487818F7A07E615BEE4C9296EB4CFA08978D32F0D0E8F7AA86D9A2ABE
-D436917460CEFD314D76AD3972642F930E3195C34E2523FA53FDECCE54343B9A
-4736175225B9C5E67B5BCDE578B03C604B50A5F9CAC95C0255DDA9D9B0D4EDC6
-FED31962685A37A09395187E67902422115F07C7916E3A7E5981BB2ACF8F23DD
-3C0674EE5E38A37751ED00939AC2011AD76F2604F8E2D8FC2D74619EE93142FF
-8FC5634D42B376B7A42E0E566A23F619932207FEB905BEE7023D14ACDD99BB22
-3DD09C97796741D30DF27A8088D04D55F3D29DD8EC517D836AB09C5B377D1476
-2A5710402668C120D314EBAFF3ADE1ABCF8CD906EA46F26C09689422CC119822
-1060872F4099B0B78BC42313A0AAF2E0A6D081A3CCC584DD0941DF9BF1D7CF72
-BBC7509AEBA131D48930234200128F53A3DADD086619F8F0894C659A6150BB2B
-511F18EFE0F66D033FE2A32350C423ECB02E75A048AE5A54D10975408DE48387
-6E9E740A168FBD1B512FF956BC7DC6EFD8913B76F565CBEEC23E520020AA85A0
-A8A39BAEA80FDAF96DF37B3AAA5F392A2D24637BB1BDD784B5BEB3CD6873AFB7
-C0C68E66E15C74AE6DF6903F49D3908AF570B569F1DDC65E5388A3C3EE1F559B
-9A9BC3F816DE94A18546599281029EF854945AAB018E62E6DC96A21117F817B6
-915EF675AC1DF827932FE0999B0CE9B5AEA5A02A7CE54600B9634891F8B95B98
-2EE30A8054D33D13CA90BC8C13A2A6C2276D426254995B6419AF30AA299E2823
-CD21F0BEA6C87890630B8FD54A43E259E3522478FAD424BAA473C3182DAA54C8
-3AC58A2500B2338678D4C7D0352D21D88985288FBF3AA9E66BD1A05D354EE96A
-4A72E17D136DE697A1EFED7A941A2A9D4CA3C51AB7C7ABFD65A066CDB923C99B
-5A19B541853C40EC8D7EADEBFABFD40AFEBA04597577B0EF2B5F2A90B9C9EA64
-0933AC8202142CA3B1FF05D957F40A504568E8CAE085FF963C3CB9939780F7D5
-DE145490E8AEC4CB9850374B553A000C49B5C4
+89BE7553B58CB230BE71B2C7A7F1D63C3B1E80C159DD941027EA44D54767355C
+6EB30D38D407FA1189474C2F9D3FD92F5CC6CECC63CF6CA6B33D77F08D274A1B
+0AD7C2DCEE55F1B425BCB98F24D0BD431A5BAF6F42BF897BDE9198E6BB331C81
+6B5B63F3604235FB733A882BA5464A3E5415341C8E9A2E79A5896C8C334CCBB8
+A2047CB4E6BB167BD586FFC4A1409B4C13DA0B84608126D10754D562A9812A79
+F2B3078B7CD1D0A37A192E1D58623331B582E62291B6EF6FE3C92E8EC9A40C37
+B251270944393FCF133426FBCE86A318E16141654DD7BB12AD46B60A05E86D3F
+14BDDE12FE3B17F9E2443E057FD0A25677D1F17C2BD87F84BA7D6AE3E7EF3EF9
+3DEB268B580A7823253430FF8D80FEFA0F9E4F66D0733E251E7F680B8B23B7B5
+A614F4FAEFAB880843451E4D9840AF7B8BBB6333E010A169528748AFBAE9A6D9
+499E221149C0AA19D536F3F121DF1AE056D3D0FF5C6D837BD8061153501F0209
+79076B4E0C63738C54BB31156F2273A327D3B6D0DDB5039D27D1C4020E90C94E
+4A4B156B32F28DD132D2AB4D9CFE18B7851A65BA965382B23CCC0915EB6847A0
+B14492B0405395BDDAB36C2205F229891D989196608455629CB3CD67E07DEDB6
+A09E68BE431182D6CE52CE41B8531FF111ECECA60A68E7E7BDB6B91C7B694688
+47786E04588AE7D21DC6F2309D492FC9795DD054C150ED94110A7F89CF3E92F7
+4649D3F4C778FBF02ADA9E577C5EBA24A1F0278E9D9DC5556A60EADEC068AC57
+5359E9FD0D2E3E7B0006127F95F333D2BE77C70EBB163EA9679207C76C999903
+50D76BDAB2DF0D6A506EEA9C952A3D28D419FB78CC64078CD91C39A5D4FCD9B9
+D135A4E24E373E24047EF1180D3BF51DE4167F3945825B7124198FCDF7432E20
+C35BE9B0C7C0CC194867C4CE9BCD27860826C14749B811E8FEE29015CD65E7F5
+307300B316054B7914CB7464E6AA37DFF4BD0AFC04C0E8BFD1269E2D4CB5A201
+785C32B6B5656A7F6CA6AD8F7C77DF8F70B8F99C88BD8D548E78986096C917F1
+C0C195F4CE7972F1354B95D1BD84934D80CFD09FA14F3DF37300B5E8C208C66B
+C544BFBF9B18AA7E27AC4E8567CB7188C20B1807BE56BB2B348C551767F40A07
+022EBCBE0749DE0D8FF1E2792A0BF2B84C940A127203E2216EA4F8689C84C739
+58D5693082E057B67C9BD80FBCA6463D9EFBA2B9F4D3C8F239C1A70D8A4A824C
+B045489E1C6BCD28DA4F1BEA2BD80D424722479D0E8A1A99A8B2FE26822D3198
+722E2D276A123A95128EB6C5C6AF9AAD213D088EE92917E0870179888296F4D1
+0FFB87A340D7F052B07C6274027559A8B3843F2422C3640848CD8BF664645EA7
+20EBCB14E9B15F552E9E793B2F5D7BFE849817CCDD9BAF7DBA26BEED536DF80B
+E250F831A12EC703AEE5ED6F5C688849B00C85AF124451A29CB67398FD3D4015
+C5D8824B7EC81F85CE9170560BEACD43ABF5EB5329A4E38431F243099B8F88F6
+58E8F6A7DF8AED9153CA90F9C941320750E5C26262BD14CE3CDBA9AED2270546
+24917E378761B5A96F0689511C12A0E598E7BD54A6ABD40AA4FE651AAB9DE733
+88677F863423C714476E797F4A22B94AF646819D91F9612E6E5CCFD9F7D11AB2
+DBDD3C8ED9D257E5A8BE4B7DF9997EB2ED23EBF4BFCBA1993796E34AD93C8CAD
+DDEE75EC199BF642C34BA24E323A7099C4B7D232328ED3C7A3BD476FC0B3D921
+8E773970ED221BFD47FC656BD14FEE47F06834C55C0EF960DF0265E847EA4421
+CF81FDFB40A4C997B1EDA3556FCD8BB4EB141EAF4DF853FD353120BBD37D4B44
+2CA1C1D5D8A5626870AAFD925B461A65FA0E2924A197F27B224E53A7140A83C3
+10A7F3868E4801C216EBFC5F8391A1576C69537686DB1CF7F2AE299FB03CF222
+6A38A57466A9C0DC13E9A8200649DA837A6C40E002C25114F0CFB3D2C0A9AF20
+C7B387856AEEE008AD60FA1B26179D95B3486DD3E5BBD096D4B105117418F60B
+26AEFDF53A815F712956AFAE0585B243D5A2B4AF5B517023867F57ECE2D538D3
+89804EFA77C0D9CE905A3303F19A9AB3B228A03B88CB26631814A36C27D09E56
+E965514293048ACF6BBAC80329F0422591F06637A274F2582A6BC59ECE5DBB7B
+7CB5056822A2426E4359DE632F89734AEB6F783952B007EA1D2EBB7CFB1C1D78
+7EADDF28CA76CE34F78E568B11AA69FAB64D8B0FC933FAD372B9EF19D5F31A25
+35BAF075193980F69141538B7E7586E8DB534762CBD9E95442AD17C8C2F438D4
+DAC23C5F5D772D1809ECEB13809662C6C8B97DCFA5AFD46C6CF3FC6F07BDD604
+5A4C473C7FF3ED34462A79487EB47D5BD4580E98BD44CFF016DCC942E831F7BC
+759A345622F5C65C067C83F7474EBEEF62E63F5B49519E0E1A7BA279784977DB
+C646DFE8D0AC7D78CD27B8F9D8E18A3A1C1AD427A85401543B0CE4F4469FE14F
+BFD02FEBB2050BD06558FEBA3F61D35AE7A0E49639DF68910174F41A20F5C839
+79545CB64FA870FA9AAB20B80CE7D85DB8A0F64915E1742E5835B5152BCD4B89
+4E7BC34E8D8CC93F5DE675090B7BDAD2728022F29D6A7D0F5508A189B8E0CCBB
+87AB29B9680978381252A9A37AD5CEBA8E4F8CA2C06D7A2133FF94B3AF05EA7B
+0C1497955A4E04183092871E66A7386E063B58764B62C33B6997F2E0D7F4AB76
+6093F606DF3C4E5F8A06E9D602E36F2DF4CA2E8C59EA6F8537A8269EEE427271
+E1FFFFEC053811328AB1FC60821F4C13D277EC66F56F27E0208726C915CBF178
+D2DFBEB767FE08AF1DEF4219F6C97BA5505DA3CF06BCE02E8E5013872DDB0E9B
+01103E8F7213F1A00C473349820BA7F202C9F8632B9D7AC4FCC98287175CB2EC
+7800B05D4A7617335D1CCC2094F70BA6556A99F2B9365409971DA4BA1913B7E8
+D6D84BBF1CB40FFCBC9B1C6306E9A148F39874A1E2A8FC677EB621FB46304D59
+B982A381886E99BE387640FAEFCE8182A2CC9AC76C1078D9E03CEAFA0747AACE
+16F9A95F5A97265A208ABD10C3BF49C1856461B710A29887CB6D57B61D24DDC1
+5DBBFEE1DD43EA93F9B0B70276253A89546A4E3918B5C93A991AD372606F091F
+EC35362E95CAAC00280DB8BA15DFA28F9AF7A6F9EC51FB2ADE3D15599AF01627
+B4D96F3D35FC4995EB18DA916FB6D24B56D60084E0CD8A32AB934845FF24B689
+67883D3EAB40BAB8FEBC3C17F6145CE0B96BA50A9ABEC6F1FF955C9FF80DF500
+BEEC7AEEA8C2FAA50968A57FFA5E9AFBAFF08451A63625918621B8FE9A46255C
+86B9E145C2526E4D27F974D74221FC90BC691454D7CC6413AEE3321D64E57F58
+81DF5C5954C794492D4135F130855678C8BB7C4A3E3551D2E89F3DF6B049D857
+9115B3697E07024C34985FDAF5EF24210B2864F9471879835FBFED10D7535002
+E806CE05BEC90ACF31E49AA6C62D9E169196A7C358E1AA5C886C1E1544568C2B
+500F208319AFCB37CBE4A568136B1791844DB5B627F66C75DBB7FCAAC4EA4620
+323DD1FC501727D74CEEA2C3D1B4D63779120AE0B0843FC978E1EAA6FE4FC337
+46F12F90D6168313CA077B85990EF9C6EB27F71D3B8C262FDBB297B1B88625E4
+62143BD515F6FEFEBAAF35ADF8B57486A14DC57614488C332E2B81B946397168
+1069CE21C21E8F44B2DB9EFC2F4160F17ADC55DA7218DBE64FBD5BABCA4C5718
+9748B61B8F7F9573847E7BB62DCA710100AD39FA555C2C3B3800BCE7C78BA404
+3DBEE48BA6328F47B1E72A507432BE4A7EA3F0AF034B2E29A4CFFAE8B30AF806
+F71936B5FE86F73F9C4B81123E1AE017B60EB2EB108EAC9579F3EF142CEEC861
+EAECCABA38C637306D8379C02548B4B33FB5D8A6169B3899A2D0499899946371
+BCD7D8D37924B66E4DFDF25ECD17408AA78A9A1D1C8A3615E428EDAE3E56017A
+0C2CD79A0D92E6DDC54746E5095B4659D73A251F3B7FD7625CE7EAC3EFB61409
+C1463D4015619BA3746F278188E2F30F997D477491D39625C2B829845D4EA97E
+56D7F3883CDD5938BF1BDCA2DF5BBD0E3D495554A01840E7E7A081A736DF6D7E
+6BDD580F717261F6A3953157DA05AA3B57FBB1E977C6A43555F7BDFCB35C8B8E
+B6356A4F1B01317B029918AB1C0400CD32A41515CA55E59CDC9C4641A570DA65
+96FA304094735B8B070FCDBA01DABC55C493A390F3A0B60D31C6EE3176BD5257
+F6CFCD17682833155B9DE734CE94A232BF9FD8AA45C35DCC0B16FEE6EC241BC1
+E944B183ACFFCBA57219D6BD9132E9610780D4AB07FB2F77428114E800CB5855
+0C26502E4B09AD0EC8A4B342DA732E24CBCBC7BEB15322BC3A4B004CB9652D27
+B85525C0E59DF15D972EE00D5D6DCDDE1A141DEDF0BF9309463C7D5D0D95077C
+F41EACAFA40CBA65004AC680983DB2CC892C1089A58514051E2C0FC16D74056B
+34151DCA72FADD08765BF73139A2A15A46067064490DAC5AB5039C545DE452F7
+35416482DD79C77BD0256D6BE9005C80902D9BE36F06FA4431F1DFBA7C982C66
+E141DA88A07902D83D1A83C0538DF2F8F8719409259196EC46B9D7815E17F836
+4F06E024C1A05A594BCC8C7489B3DE9E9C3B9D2D15B8149F6D09A35A8444CE1C
+704E2B8F273FAD8128A6033E871F1A36B95969EF3EA5EE8DE9B2720FED92D43A
+B894DFB54E6F3E4D92E18AFD7B4D72FD675AB7447729F4F618FAC4938ABBE9BF
+29045FD578CFEDE3BAFA55419C564CE39F324592304FF7B339DC2D889C157BE3
+A182E42DBCB6BEA7773CE2A058EE2076C77CC98F0C37CE8128E1671D8BD8AEB3
+1E724BE5297AEF6F8F90719D75E2218470034C970C7C3BC4CE46234CF25F3092
+526AD39838F4DD2399A4DE9BE341EA932FC616B02FBFE7EC68AD6E98F5AB3040
+C00C615ED7C7D427387D5AA99594EAFD54D3CE88DEEAB0A408C14B48217D73B7
+AAFF60D219FC71262E05BF9D15DA7739FAB52683D27A3E094B40D84E3C272D26
+F9CC125000AADA491137363EEBDE57EF302943F26E7DE08EC71707B62E717F92
+BE14CB7F5D4FF8A802030B10FA8AB4D93286AC064E0547032E2AAFA3E353F4A2
+4B3EA80EF4221C81BA5698D58A460C0412B1C1BF143E547DCA6CCA584011B55F
+526742925DBE8300564D621015796CD280DE573A0A733C5F6B2D4AD811EE4778
+FE60F46ACF6B6943B07B0EB0E4636823430A301B06BE688CC24785A8896BCD42
+39B97D9963BB74BD8BF05217B615983E27994FBEDB0577010E46BCAA04DB1A72
+77F4ED8257D145EC44B2B65B408BC71239F1C2E8434C1C2FEE4642BEA1C60C7A
+F02BF44140D0DA3E94D7658312A212FABFC0AA74F3512D513E82248BACD86A15
+B5A2C71F3692C8D702FA11B262ECE33B382C681D54BC275FBAB326D928A6A327
+AB2ABFF6C4A65339D945A671AD839DEACA7412ACA3253B399BA17E363B213FCC
+962725E0BD8CCE55985438700204353C507E4DB96C1B57DD7A071124476A5095
+BDA4C678F514AA63CADCF7003C73F0C505590526C0D1BCD7DAC0236243AEE48A
+5F351E12194DE6754336416227A63FE6C37D472EA1688AFD88FC94922094E799
+930F9952B2B1B86D1436C843A90AA230139B82449E16EA8B29108AA624933D1F
+5BB7E1EC1E7F570BD1DC0D2A9C338F4590D590AFE417D289B103E11156D66DEF
+F9E1F1F3A68DF07D69FB9CF4D09F2E2D47C2168E0BCECB8BA1CF856826B51D23
+D440D7EE177DC922BA367BC69871D037A508B80E75F43C331F7BB5FC96493932
+0B3CA39DB05BB29C08348C3F0FAC71ADA5C07BCFD160FE677A8A030BDE2C4A6C
+A866D89CAFBFE647B36F7931664F82997CBFDECB6F88C795609D1C94DC80F09A
+87221FDA3A699D0748F97E682B5B8C7B1EBA75BD44070DDBECB03824F9EA4E1B
+BC66A08A1A0F8AA3DC482D408C83B469315A2ABA685726CEA99BC3D15799D28D
+F81E0BB958E34A1670C23FCEE68A0DADD2BE3CFCC1914A9FA1B1A661693ADFC6
+378969C2E400E5D4AB0CB7DC0FA364893D2484DA98264CB50205B7B9A2532492
+81A2697B7FA4FC77E71D3117608ED7C474AA2FFEE8B3F1DD942CB16A1FF06C6F
+3741AF6972D09A5EDA91B4EDE291A7B3E3D481005BB578DC5AF13C88EEE51380
+78E57D8E073FA46B89A1DD73D51AB11B44048CE2F031031018697B2DA15BB05E
+B69E9E54F85E09EE3EBCFF390A9CF28B6F0932A46C9306911F2F36B8CA3ABC14
+022697A6BC560C0A688BD1E49AA9F9CF4917130ECF08F8C500E0096A8BE65E01
+EE5A2618E3C9DDD1D227EB584EB0763C6294B91DADC65AA8F1DB42BA25E77B9B
+AAAABEC083135CC61C18987128961505D602E409C3DB90F301CE2C792AB7ABD8
+1B7442AB1C8D5B1FB5AB30444752254A530B227A1E7CBC615B045031FB07468D
+DADBE63C9D1AC6F9742738FCF2896ECE73C131063E6FB3B954A77D1CD1F5764E
+3D65A43B627E8E7E10C5966C93E9794A3211D8B349D7F82427A65DA39B4AD1AE
+A98733594453F400B9841AD3207DF9A908372B8B7F8EAC363D0DDFB90411A468
+1F3F0E7A8DE83F3CEC745BF43D341A20F53BD0667B70613FDB9B1379FA61BC9E
+516118F7B1DC7A7B049E116A7A254F0A363694920EA156DF045038B14C229E6D
+19417309B6DFF125580B5279D6CAE9AACA31A1D21AAEA8DE32180F3456AF61E8
+AE8011BFA62D7B5A8123A02131D2F622211D74F104CD729CBE44EBC70672C064
+6D8CE2956C78B8CAF172B77E78F715DDA875A492CDD8357CB3AA3ED817043631
+0D278C6AB079AEC3C765D5E0267BD01C1D3F7AAACD0CF34EF8DD2FC5FF8FE85D
+E410CBDCE53C792C0ED5092162DB85E6465C058D95816008077E22EB8A98B8D2
+5A4069933FD3F3DE33926152C7DC712807784C17863EC78F9FD11A335BF8C700
+F4963F7C1A72505DB453012507A3EE51F7F2E814CB77769356C7654B9569B68D
+36C1EBCFACDF5C8D91D664820758BA73A83EA9660E33D4589C6950CC5C612710
+E9E97BEB5CB43F4109FC0F9E5EA126C1A9F2C4617CA146013F01E810EED40041
+5D09159A5B53FAF73B151499CF4BA3B79A19034CE461298D1B805E161CE837C1
+AE9A7298DB9DD9E54C347E64772AF100A5C736173D5D9EF4C45B8FF6B0ECA17D
+C1ED7FA96FAC530778D72CAB4D9920BC6C137EB3187B1DEE669419753B6472C4
+D29CF8ECD1D43AC03DB1413FE6D4A883857E2574C68AEC9AC7F7D3173E9EA7AD
+1A8762EB2841D29BA98B8C59BF52ADB41A1C06A50FA66C169605BF950AFFFED3
+6CF7FEE0126C0AF7DD7A85796BE7D93A124581EF530AA62DF4CB06A15A17D5E3
+F6B6B72CD7481D238B2EF97123EE55872A43599ADCD48443DD9DFBFD469C71D2
+624FE39A15FB5CC331E29B20DD1994FDBADF7E2843ADFEFFB38AF6E727638848
+4BB02352C312A363C3920604853550205484499FE4B1D8A29A4913F440E37CBA
+9CFE762651749B33BA532DDFEBA257869BE4585699ED7E918FF72D25F3EC0C71
+FC49EF6C38DD1105AE50D5DC13F6F1AE2FC3264C549FB4D8D1A959F25DFE913C
+1ABC41ECBB5B538BA1C4870E73599BA518FF41B6445D40C9B9BDAC2D552E4533
+670DE0C40C155E46AEDF4B74BD44A521815B69981F4F33EBB774391320D8B6DB
+AD9C9545557E21A90EA55CFA69B967F3E136CCA7A1E4C9D312D9D08940DECDC9
+1CF646FB7704DFDF783BBB1739DA1D2EF502B7B3A1FBEAD958DC99F086E6B623
+F33ADC3A758138E47EA3DE1FEC42EBC6D675C658B9AAA4C4054B1F81CCC4D216
+9559BDFD542140F2A101095F2B3FFEA124F407A8B650032265A48F065C3C5BD9
+66D843E3A2BA4CD7BF56A6A10D90345B51969A03DF45C91EBC2F3023A3E71B4A
+B6A7DADD9E3EC5C70207F743157A9A0ECE23A7A95798C2174281A7900919878D
+955EBCA90D02F07876BC3F5EB1252A82D891FB3E0FB9FC032080E6F700981030
+0E81FC3E75AC8623405CCAFA66161D5D471EA952F0FD4021754CB61A7B1445AC
+0547EBD4D78F141651A5DEA6262F0A05559DEFD434C5485FFBEEE7DA647AFECD
+6468D4D3905576FC4F670BA39F9956149CC371A31ACA929CAF0668B667DC2CF1
+8810C6CF9EA23CD5576C110183155DBF15F24CF0973532800274127C6C5C9C79
+EB121C5F0B74D824DDFA3EC4BD7BBB8799875B8A4776B60F840AE96A8F65724F
+AAC3BB862EA6F8697D935C60C2DF962F042521BB1D3EB9C064F2CBFD84208D94
+0E9DD9242157F4D3DB05194E82FAD5EF8C09092055463620D1B4ACE3BF9CFDC4
+989840A2CE7BF62D69BBC387D0184EBD87755E4DCEB8296D1005E79779A19B14
+354345A8A0324F1E61D88A22BC423D3DB4686ACB6CCA3CC515B6A5CCA6C888FD
+EC2CCB767778AE3FFD7ECBD8BF1828E5BDDF119247F11B299D5272C475C67113
+8F124D25A87AD26E8B7713A5189FDD920EAFC2D9069664744B6E7DE1AB20E798
+8BF9B8885BED5CBAB904032F6245AC752F392524C2FE09F636B59B17ACCE1E56
+ECDE4533FEE75C6ACA81D3FD7F6032B865D8B6F34DF1A99E01FB6534659921FB
+81631346B4530CC2E6B15389D7D494A4851C5F7CB502B394E840ECB67D359B77
+E940F25E96B3AA4DBFB0689C0C8D41EBFB5A9ABF7B817AC487093BA1013E345F
+B42647E031C22B77A319062324A7BBFDC9DAB8D5B1E0FA4FBF8036AD46E554F9
+6B925144323B7A79B103E808A43954DB3A03120EE5BF48438C0ED2807DE82FF1
+6800AA8EEEA5C70DE747B76246A437B09F402C8E1B545636E0860F670D10E42D
+9A579DEFDAFC447917E0AE0AD49F49EFEEAD72A83149A22A82F909670FDF4A9A
+B106147A6CD6D9CA4FD64191B7883E89C30FFC30D3262B9B09CD7D2440D85F28
+983B191CEDBCDBC06375195625EB247DAF10FC3F01259E59184F462B79592181
+DF37D70E698785E55E0810FC9A5094CA115B2067FBEE8ECB004856C68A18AE7C
+9BB1186342D173068A4BD0020FC703BC1AE0D6C8EF419288D7D0F09042C5CAC3
+6DDFFAF9A79B811C55F41AC87F93DF99604165A6D6E5938016C155EC65393512
+EF633ED422AD5BF8C66AD82B3B2B0FC59F40ACA8B62B2195D84478F920C39EFC
+328C9EEAB999D28CB365ABA1A99475D57D5BE151E107BCA6C65D535D8E83EF91
+35EC4BBDC0C5A124CE24ED6438F2103FA03BC103F899CC0E12428A807763DDC6
+CD11E4E11749145810B387906A7B3065BCF1E29A1815ED266DB7A429C3FB2860
+AF3305E4FE74E02626385FAB8833954B803CFF6231810CA8CE55EDB2DC2B1548
+82CFD8F105CC916B0A55E3955BEF60680B544501937E9A6FBDFF46E12B114967
+2066512D019B1D727D3759A708E5D8D8FCD99AEB82B3F660602F8BAF091A7AE9
+ECBF15E7720F671E85C5FE0F2871CE1EC0A7B8E923EDD845F6C8F8CEACC70DDD
+B2F87D25890FF1DB39BFF89A3A35B8B14742B4571F412CDF868177E406C9D07D
+B759D6D32A7CE22D9E9FD13802A170F20E9FD757B9DA76B12712FF6DD0E8F4E7
+4A296ED2795FFA5A0C3CE468C7A9CCA440C599C207BB084B1DEE83817A7F23EA
+1A4ECF72B3786D72D12FE3123D33559793046B7773C9E93AC1172026014A1917
+4B66A90C5AF50072C231F0B633F00EFED86156FF0FBD451C161DD06EDF438A38
+91FA7FFBA022A4468296A7132A3D88AC243B69C70F21B7AEB32BB5AA21800620
+BE6C8116466BB843FEBE361D1DE93F7C38033C95EBFA922FCC45E812B48B1A23
+C33DE814EE885A2354B37C05E405D27A0D3870E19CC718284FDD45F7926758DC
+62D79AC3C0EAF56B6812049148970442ABD34E0C0F49A6711A134C5568004C24
+F92B455E8085D77F48ECE5FE9F27FA91379C939919E78B60A54E235B0936B3F0
+E1300BB4CBFD05A18DBBBD76524B4084D54D990F5EA51E5670906E358B4977C1
+83A7124F6BC09AEC282DB90C2FCCD9D909B57959E6E68D2E50344100EB1B6BD0
+1A1FF2C2F0B250AC9B1FFB4A4EF3F28C022F7F873C7B3AF76E1830C9B039154F
+B3C3BD97DB32958B718D53B552A7A0B033E84EE515B42184A22A10D77FFE32EC
+0E1CD1708021D7931DC73448FB098A61C93B7D03F98465BA42D4B927AB115C49
+C0CB10C0BD55B16E6BA017306506D3D610ABECFA480D8840DAAF23CA03AFD9CF
+1075C8E9B821499DE23D4882C081D51649E5C9BBFF1431057D95D61351287B03
+0C9A6BD89F33C02555E1D3DA7F03CC395C1E3633FC902F060DF903FC96C19719
+A5B6A39E
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
dup 39 /quoteright put
dup 40 /parenleft put
dup 41 /parenright put
+dup 42 /asterisk put
dup 44 /comma put
dup 45 /hyphen put
dup 46 /period put
E6AE1A2E9ACFC032BA9A5DEDE9DDEE22A88D9A1F1E0FD9BAE2D88FA168386D43
4B93EFF3AD84A9C05A80462BB3A940B2F7311CF7054F501BDD4F1347213C9327
5653B73E9D78866901235C66B0C49CBDE3A1BA3A11991E6B8443117745D96020
-38F4A74D9676E4E99291D4420C519E5C9C7439AECB922F531C2ADF25F29002B6
-A61BC223B0C55EB698ADDBB008F2C714421551C5C0EC6ABE3DC33C4FC6396DB4
-85EE83847C478012FDDBAAC1A010779DE56FAF0E6EF309E6F8F9075A64847244
-3F35E31A01783ED8954C5B86EF7AE3D016AD55FEC144D688071444C6EB26299A
-169EC653A46F2C2F1F5F11E14530FF3F7B4020B64FF37AE7FAC49EDCD76FA9C4
-8822F17C100F0749832DCB3B6984052193CCA7E7756DA9833020A9D3345495BD
-8ABEFA3D85BF7B6D182A51BA56186F64352EF04774FE6CFA52B7876F4B2D209F
-F74EED4D5E357AEDF8BBA6C18A6D1E61955DD3251C43B948E32C4529FDBDAEDC
-E7792F6B9CE988E49B6432AC7F317F9391851B2E558D185971922B703C6D55D8
-DB84FB19A69C5B2F56F799FA98E9FC6346774B125911B5E6097DFAC64341A16C
-F19FD93995A6716ECC967BF3983FCE912039E4EA6B6DE7C2418EEB63B7E3ED1E
-5C8E77FC94210A147B05E27F9AE87CF8A3004CC682DA6A52A4DE356AEE02D53F
-1DBC5E51E570BD135E3CAADE82CBC290E97DC05939753447BE62C3BEC821DE5B
-74B6178D281CAA541FD3F68EA21CA75E5E31C34A63AF41E0C8FDA9386B104D4E
-2193B86AA31F887A3A95E13EEBAD4F21562FA00F891AC2B831FAC8B35A709561
-266A83B96E52E992ED02086002EC2E4F2047A024CB83BB3F1E154BB2DF3EBD6F
-B671801FEFAE655AD62B6860C3899A5D6D4A5C3C028C43720E3EE0C13F4A88DE
-2D7515B5B7EAA2134DB8B347918C4920C76ABE933B36D86076C995DB926AAFA2
-8EF5F264553E799F6EAD48DBA338B09BA9E071414C808346B7C97C619E7BF8D5
-EFE7A90B24544DE1F2FA21DC40AF15C299D106B6E743218068DE7987BB55D05C
-BD1A90D72A1790C33E9C1A2D5F410DA41A4FE88655F94A935CEABF0EA6EC704B
-F556C274C0C815503DB16E32D80D94CE082C9B9A6C7AF788223EFB01D8675632
-47D9E22BF2869A9A97398E0C20F5F017CA9DB7BAB3BAB4ACC8394EFF0ED85AFF
-0B5A4DBC8676E0847506D0FAFE7D3B099BBA054CFCF3626CC3C6DEDC1CD45FAD
-EFD8ABDE4AB15356BCA61DF0426619FE5F40B4EB3B22534E88AE8D7D0020C1D4
-C99000EE0A1BFEAD06E64C575FF8CDDDE264E04EC3B405A65559328EAF26373E
-931425A36178781D7FA15AE5E3255BF6273A4B09B49DFBB2C31C4F8FF8BB1841
-E7A76F9AF66413EC719F80D117B81B5DD02361FDCB53920E25B0506E42DB9522
-329B698729A632B301C7BB727CACD93ECB158051EA750068C312DF34689D4F3D
-0983194B19FA8DADD21640483D4C8A29D85586F1E197DD77B7F87C26EDA187D2
-D5A83711F8850845648531D696EE446F18D3521FC918AF87D5282D8D3DBD2C09
-43E101CBBEFE76C52AD8F062C2D2B4973E4E9FB1DCAC39C40426E565F6E26250
-0B0209B25E180A74C40EE3B496E05EBE0CD7CA56CDD4BE840AB7599E30032434
-2C9778CA9A030ADD671B746BDF7CC9C606BDC42A069D8C8F533EB349361386E8
-4E7C463B1B949E0483449C421889066A22AB057ED97CB679DBB3EC55E1F756B3
-BA3EB42F6BE6E1B73CC8A3AB2D91A621D87B12B9D936CDB96B049595E65C9EDF
-05D020C458C7F7197C8651599448EA77982CDE0165A7DCD85B597C4E24FBE7C1
-131BAD1F41918CC086D5534097225899D5473A83A3AEC0C01CBAA10C00329673
-1D05C096807DCC02041AF9498059036AAB5A23A9A53CD7E7C96B8EE9211460C2
-E7308C6AF57344A82B622327EA309222C54C084399C82832766DD5EE9C64FACB
-2DF3175DD6700FB2B2B346B92CDE3C520683485CB302C7121D3586B09D9BDF4B
-F9BDFB28B4401DD4CF570A31BB41BFDCBAAA5E39F23E23146DF1245EAC891F6D
-DACE97846EA21E467441815EF07992BE269C6833F0F39BE0C94CAF9E029F2AC9
-D1AA1493A3CB56165228243C37D02E1F403BFF62BCEF4E90DE7840CABAA8175E
-D7000248B0E79A0321DBFAC6663C275934BF33E936E85A5E1D52F9C8D25DC3B4
-393DAD79DFF0E5A088EAE0BB8CD7915F4BB60337AA67EFAA8326CCB6D05AA686
-1E3ABE530412E59AC6BDA23D05176239B91DC8F2E2C9BC6A53F2A0EC9BCCB4EA
-9012AD3D9EF3C3D5E7500775EAD569E7BEF81B02A73731D8E3CA545AC7AE213D
-5BCD0EA2C8A4C866A1B6351BF489CBCB1C188A4058BC14A458F4841FD41FB31D
-2146D38FBCE916EC3C9D281DE220E2E639514CB1CF6E187B2D1894EEE72D2CD5
-E415EAD745ABA5E8D7ACB783797A7AAF942E66373C9090EA972CB8CA3E59886F
-F10C49E998985E08F17446C4B4971FA259CB12C49190CF229F1780F62569BD23
-250F324FA5E2D47AFCC526E21D6D22B965F0ACD63629702FEA1BABDD41DF4DCB
-3752372EBD7A5FA7554EBADBDDBD20F23D70848B171915FFF4545DD51CFC3583
-43E6050AA7CF39D31C634A12900D7EED815F4268604A4AA4D10DAA55486089CB
-F1E7EF17ED4DDE5A30AA823677560378560CA484F36094647D0F589FB14A507D
-A03AA6DA832CD6120D4B919360E8FFB9C2DBC190F41B2C7D8F71B1B8FF8E0F60
-CF50A8AA982FBDAC8713D0CC2C65CA76AFDBB1630D56F53C5858A82C7783C764
-BFCB8875709764246F9BE4D088CE38A32C33C2818E0FBC4E3C391EC470A32CFC
-F7AC317C9A5EF7596F6E63C8B9A02253F659EDF5DF4AA36FD72005A389EC51A2
-326F5832D907EB6FF1EB04BB78E7BBB916AD228F3CF3A325282F3C977E12739A
-CE775C6F5897742C22CCB3B0418A0E4E57B13B158DBD7CF4761AB2942391D4A2
-EB9A27A458E8BC79D7EF29298F13E41DDFBEAF65EB7B2824D55D110CA277F130
-4090B0A53D01BB4517DB1882579C45D43E634C5F8E12D8BC44CC86A929D3FC55
-C12E99858DA21BBEB09A6B25E8C86B31D6B228E300745435694FB62D0B2C30C2
-F838473612A0D7D2067EE56B77B44945176338428D1E5B3F344D46932083CDCA
-83310E19AFBAB852BB5135941AAB9EA47FFE2D1A1757F080785F0FEFB6A2FAD8
-FBC1347C03394AB651BAC539FDB597E3AB7C00F56517CFF904BA2676F4462A16
-FEBE465EFD38F756C5B08CCB6AF7ACD21613127C35BB33E26F0270868583290E
-2A26D8B24314C53053041924B0FD0AF50D45D391FA8209DA09D48C38C877FAEF
-37091968491B5CA18648BA426679B7A0176A0E3BD30B8B6D9CF486DEFFCBF438
-37241925707B0F5B54914B7A631F42A1CCCFB934D9FDA9338BC08ED7CCA6488D
-19B92EF0646D2E09C9348CF1D1036FA5C79353035D7DD6D9081F22DEC48BB9CB
-5A9591E89E4FAD9D58F384DC27B11B3A6F029F28906E7424CC62AA9E918E4DC6
-DDBA119EE08D4AD59E1A6260509E4CD2A838A4BE40B4F52E2921D54A4C87E51D
-C00983F9E44F040E26008D465C6EEB13C0D6D3DAD1CA0A55961A4769AC3F5420
-1AF8F72103F1A741DF33D48253993F2F617DBFE06195D2B222FE161C45AB7666
-C61AC6306C420F53DD1BA44DA8D02C90B797B49B8ED85558C70C549D8E66A4AD
-0D7458B1E6520877BB73A8C475477E1E838D6CE8DA386EF41FBB12B8EB05FB28
-10D439A4CE8FF97A6B289A485680372EB8A34D97A119A4380A477434E55EF567
-743166466B6A832F1921A69E8EAEC1377F1CA8D7E4598397E1C5FE9B5F2DEC3B
-45A0DCFD619EBFFF2C66804BCAB7DBC5D01CFA0E0F8ADA806335BBD9CFC2B7A4
-659EF349B6D75A8ECE512D50FAA648A982D3CBDD9D42A2FB4806237A569B951D
-71D192C6D91E700C816662BA672A64C4233104D1AAFF5664E2DA3631AB809AEF
-D0F3A40E75E57F66F06D0F94CC3F5991209A1A48D86149362BE01EB6508876E1
-731521D8E5196D7D75AB29D7155F5C83EF7119C2C4ABA7C2A52D81E317225BEE
-D285D637D1AD02136CBF368027F154A99DF4469D04435C0B3D4F704136A10293
-0A01E7C4B371491888D998A4137AB15A319048DD59FE53EAADCEA430D44BBC28
-B929E410A6255D2AB7A4AB3A7BED1EA00FE4561A01D6D0E3922BEDE40F92C33B
-7ED50A09E32CA53B0F84490BC845FFB8045630FD3158801B613DC6021416D4C8
-863DB91608B724E0833423843B5DC14895B86857078BF39088F0CCF12E488A3F
-2236DFB7767292AAD81E5B4186180C7D70697B73BFADE5EC7F72E19A9CAB9E82
-1B14F1F8558F12C3ABE893B9865E8B06C216814269A520C7CF2C27A9AAA7AE83
-7C9ED828E862A9FA3A22300877CE3F68685D2692209DE01100C7A5DD6802EB64
-7400E8B9097191903FA8DB4CCBA6C6D63E2412EAC13FD48960D64CA0F201A731
-AAC97D49E91FA161188C14E12A2CB9940DC6832399C4C5FA1EF31347E7BA6F50
-2F71C9845095E4B2562CBCFE29149AE79ADAE1724548AA8D8EE26C165FC611ED
-44F9317BA7E884BB9CCDFD13ED74AF8C461E75FA4FD769A5F5E684764A0FF310
-E22140A3886969D17E57EA7803D6A31859079B810321C9E2CE97BB940C42733F
-4FFD351118A282F15060BDF591AE4F857B5F305C7D3AB72AE4569729A93D5274
-C6912F76FF063D26DA3A641C49948FBA78B970DA71016751A76B2D60E7A7ADAA
-31B3481E57C879E2D7F89ED663B353524B09F524CB90AB4F811587231D65A356
-AE4EF3CF965D62B1751B6040198BE77108D59293DABE2B79A98FB4BF9290E501
-F4784054908CCF751076E6CF1BB3430933687FB6D225E62F699FD4A5BA72587E
-9F49511AD57105A928D5C6939F3A59FE155CCE01826228CD96906BE037A8DB0C
-E75ACA4924BD13E3EE78D4FBB4A9E8F1267942BCF141039E15521E974759583A
-A7650C3D0AB3D36DE2794EA625EF3052D45FA0BFCF3E72FDDAF9F2752ED6F766
-1C481996E80534B71507AF8394041D74BC58669D27E4C7AE41D0DDC816407248
-A50DDD91D6AF04765FA75CC3F13E0F77918B59BA8A0F1E89C9D8B17E62AA0C0F
-F053F9B95AA70636F21A3D0532F8941DA668A7ABCD45D1300DD7CEE13E3095E3
-CEDD08773BA22D8FFE509BAA5F978306AECE4B52631D835F46404DE3B72DCFEA
-551C30984831C4C0D3CACB8FAF2088501028C3233311AE8F25902B1CFA61606E
-5DABBF88EADCAE40B39ED4B0F5C3D31C3CC4E8A2C77C4E9BE7C7445BB6796835
-44A8F4ED4ACA93BD8CCE3B5263A7148C5CD4961E0005B21ADF5F77D6387C8CBE
-17657712DDA12CBFB2705CF7FD0BADCCBC78CE65734EA8FC9E55B5E9413A5398
-4D41A8AD249076DC66087CFF05CB91156E5668228158D8C648081AD55C44A814
-E6AD1EFA51A725193A2E0A8D8E876310C3E3D277B1CD715A0F566EBE6A446B98
-6F82DADA812486C7A8BBB6C6D1DD7C90EB51D64E4E988A0949EED9181461B9B6
-337C6704DAA64BA2A8AA87589EA5FB9FCFFD15611F35E38E9FB1294248ACE9E4
-1B6317997CFB576ABEAD780BAB7CB7C788A2BF6AFAC1F280E22C974BCD714033
-F4CDD76492AC6EC96F3E23FCB2E2E31A4FE930596CB16F66106B36FF668EBB87
-78FBC2F98D50D40D546CE889FEA99663EF0B4059C485E02EB2F6B99DD0950150
-3DB2C163F9EEBF9BAE8A4CD3791F41C83293DD539A3E8A08F6A5BEBB03554570
-D9102B32541C1F5E9D16DCA78E556EC9308E7D1E8A9E6FA56D2AD6D4F2EC0C74
-0BB8F8E51FC885FD4D33C42F161BED8CA8A65C8D4327C58D4DA5BF62E9277FDC
-84DFF8534562B098CEF50AEA467432EDEC5FF6F1367FE3FF22A846637F2613D5
-53950DE6BD3CB70E9E9246456059CC43CC83AEBEDB958522BFD8E8608AEDDD98
-EB85597D1F3188E9F9B721677A8C39000ABDA341E12B97DF52DA649B1DAF9510
-6D5C2418638833816F1E42C1ED72982F20DC85D7294F3969E29A85419BB4EB96
-DC90D4D7B7176B0DB5587CE852EBB16B1BB4FD3FD47D8EBC497775556BFF15CA
-2782B06016C6A2A6B5336B3C14404AE7A5B0CB20A7DE9B070B5BDCDDE508AF41
-B8B55DFD269FC649AE933A0B4CEBDE2B5EFA984A271885E498FB75D78658A173
-472B34B2F6F0BEDF32232F5A1DEBDA9B843ED55E17848D7C3D0F4679258137E4
-E4C4A825105FA1EF614F738C0920D20A913FDA4EEDF58BDCB36164F417D77B21
-698E54C025758FAE560CD469ED5CEC0BB5295B29C7480A13CB97AE699ABC40B6
-B6D8A96AE04B91E5A1C973064F482BA750A6648E9162E4CF40DD05F707FE13F9
-49B23F3A94871ED42E4705ACA9BB20072C85FB60D47CBAC9322CC4EF32290A63
-5E347F92B0950971916D8DEF6C54C385E3A067E690C756F6D0E595CCBD62E40C
-F248761FD69946A971C2AA4C0FBDCBDD4A99CC2F0BD0358E999FB508B914FB69
-B55273407066BDFDDFED586DD9FC75CDDE18CA105F9BFF35D06610F884896FAC
-778AAA837CB149BB308D2217E6D3B031F2DFCBB8F73DE1DEABFADC5EFE3647CD
-25B86E6B4C0907C5913DB141C6BFEB4061B1D547BEB1DD8B3F4159CFC6A643A2
-9F411BE057C34D3EE4EC1BF4987F7203DDCE93DFB0DEE56BDCD9C5C0C7205900
-7CA6C31ADF2A27E3F81D769CD9736B1044743ECD8CCF2389F53EA92AF1DC1A5F
-FCD2B8968D2446C4D5C607F9C69A78956EA8AC33FBA1470214A9113057888C84
-FAFD8FC493A1864B3DCCF979D0443A5B5AC490AD311609E72DA2BFD08850CFCC
-4E66FDFDC907AC7421AA7233E538078277B7461338C5C540B59B50597CCEDC5C
-9DBA7D7EF20621E0876082111D0EBE6FDF2BE6C0D05D9B3A50BCA475AE71E995
-578AC489E7721BD11C3D16DF869E5F51B19807E7FA7296D6506A165F04FC9CAD
-A86CC5BA171385D6443CEF2D7F1E3F051979D4944FBD44B36C846101187AA038
-CD55AAA52590C081B630A371296213E66E3B6C1BBBA191AD3063AB1BB8D36037
-11FFD0A12D71815A275AAC0974D7C20676043CC3B5B387CBE7D5AC6357D8A6C8
-926C371E37715F42EDEB461402C001331E07B5C8770A6434E0B4F3B1A188E1F0
-CD33948B0E5A9330B48259427F0670F10D7B61CEFA44AD281885CD65033E1AA8
-C4D0248861C3D3F52F6A2EB44F33CD15555EDFDC98592FD9248AF3FFBC3E093B
-E9A84BECB7B957110FDA32C497C79E3921D76B7662283659990BE2F07824C7DD
-2CC62787FC7DDF5B25E52AF629403EDB8129B4E194FCD2BD4DEA331F203A655C
-F95D45BE0F8B0995BFDDE3534167EFDAD30CB6867A3D212752473D413A42F495
-AEA57FCB81EF48FC365AF26AB93B0E72F05D5BA5AA5DE6CBD10CE7249A0EC1BE
-DB2C09283C101AC6B8FFF34E2E7D80D94F9B217B321BE63CE268E1D49644E21A
-0A3429424034C59A24FC0B3A3703949F08E2F25B75B1F6A160C5D0491717BB51
-FF1EC611B4063FCE4E44017B6195EC18B297BFFDAB28F9A570F0D7A481967249
-C30FEA6B0E47E69DEC5EEF766ADD7BBC06E36351C5DB93BF1C85F6F1EE38134D
-EB1FBDFBF2E9E1ABC2DAF0F60C4A1A8BF430C86C323D5B66619F16B3E0CBAE3E
-9F51B12010D5362391D4BA036100F27FBACC55A3AA539CA852485A7E9364D503
-63762AB0FD8326248FB04666C23D0F446C111E7A2F351250590380F5D3730559
-6CA446905A18185D6A726ACA1B80A7048295A277ADF83D2DDE132C662E511AF3
-EA13826BE2EEB74389C6A77379D25E8E064D4AEA8F8D04A9F7685226E304A50E
-4BCF9122B8E87DBF4CA825A48A9C2B541634DA6905517DCDAEA379BE493E6762
-B3DEAAB204FE269A560B7E759E21EA18D96B0F0B9EECB27F57D5FF4284DA7435
-0F413A23EA958AC37EF804C7B0ED4E790A79D8AD6723854EB9E3E97B8D511A89
-B6C3F0C4A3B05B9E1749462E943EAD122901C45BCB15F305EA6920CBBBBE4032
-35FED7149966DADD105A514289DDA1D0A5AD66851873AB8E2E4627AD8DD6D037
-D002C390E1711D245ED1D2EAE72CC8794199D8F9371E0A4B413C35127FC0F524
-577C5183CEFAA1EDC2D6E2FAF928726855C58DABA7BF82D4470A87F406D420FB
-BDC21E9CF3D36FFE12AA62DF7FDC1FDAAACEB4FBC75CA76510B13005889474BE
-74ADDFF8E98B283304CB5A9FB221E46128BC3E0C0F73E8B8B7488D5313E1DAA7
-A7964AFDAD1A5ABCE8FA0EF3CF614DEFF7E4457EBC0943C8E5DEF9E3F4789C35
-59B7AEBB9EB8D3082F97C552C39699CB7519F3F59AE82D809F040BAA865008C8
-0B79E4B80659984344C103FB5664EF0920182B0BAC8AB38165451B2EAE6B880F
-8CABE94CFF35212069BB5C701AC3FFEC2FADB664214FEAD6811205171CA018AC
-C1F18181505206619222EA836BCB7F2FB970FDE5D574B74CC4700E663D56B264
-403B32E56D357DD9B1A04F16826F1B26B2DDA6EF408C4FF4AA5437DB86AFAB9E
-6AF28D60564AD728BF7A287695E847472EC50C9129BB932B91A3CEF2B8967F6B
-A781568FFDB9610A3AF619933057CB5FD2864D0078956A69464DD7A894B0A214
-FD156D187250CBB7D2688FC6447863C0FA9024D071D4652F7E375239772AFF68
-1FA993FBD373D248A61E9E53E9C3A9D8BE6197BB654DF1BFB542D58A3050B3C1
-987DE084970E3A5DA661EDA63676F2786D00CD2329EB0C011693DCF74B458978
-5745ED9343DB2764F3C79797A197FCEF2322152C82746FED927EAD8E46177389
-46A80DC34ED97549E22A1092DC7A87D6E6E9F13DC942A8243CB9EEABB45FA74F
-E8DBF2C13FBFA93A42A0BD6E3330F18CA17DFCFFD6E308E1844D9A9E730CA0F4
-898F0CE56DF4717288C3BF26DDDBC3527C4DDEE77B66101DA849237AC1500958
-88D9ADFF901778EF809694542CF2C81B1E73B626FF00B250575B9DF932EC0156
-B817D9758F46F5180F7B44ABB5C5D9F9501F6F04B13BC3C78EED272BB92B06BC
-C992949AA97178E8C9B75D3A1F303D30FE7723E609D588BA13A25EFF02DDDF7F
-94C2FE98C31D1751430406EB4FCE6C1E59132949D3E17C003D5588CDB7722E29
-7692FCA6FB785C373A930566B4175436834C62D385A57D2909E8B8360B1562ED
-4007969CBC5AC873844661727665721D102682BD47FB98D4D1AC24DDF30C5715
-A8E8DE9EB1B663967353E4FF3E3FF6DC75403F26DBA98B31B1EFDFBF9D3E5366
-547A30B80FC9C62E910B92BCF96BD627D227D32C6D4F43551C4AC5E91BF7B1B6
-6A49D168767697280DD18C29BBE5EECAA786A259CC2854DAF6801A04BE669C51
-8854CF2DDE7B40DD349DD094770C1A1B84DB76CAF7502EF192FF1DA414691651
-476BEFC6D7CCB69D2DF1E12CEFBD28930674D024D6114FFF44674BBC8D31F93F
-FDEBAF6615CC543130A39ADAFC85966D645BA1FB54629339C1E2391FC515399E
-86A0533C4108CAFE0EEE0465355D8E78D608A00D432EB2DE6563D027E1F85317
-0CB647592152CA094D8A61196FF9F053FF04BF67562BE791540BE70E701B1DE6
-1DD9EED9800F98038B815CEB15E66FB080A2B726531DDDB40E4E96FFD7543B50
-FB33F5737B808FE1947F643DD9B70FE337FE92F6DF5C82F078C94473839F347D
-4F4CC8921A6B8B88547BFE2BEC4520FD8EA08E62AF2E9BC5DFEA8F848F7827C7
-4F429223CFF9714F76DBC36E3AE9E45561FF32FFC264815572E4F35B97F69ADB
-9608C9571E6200E5209D88A56A76E1B2C4E83CE2C703E73921D73820EFB2DCDB
-825C54647B4BD17EC11444B161DF797328B96D9992389F5D25D61D158ABF7773
-851AD2DBD34A0B7A7B3C4B812B285C06A78206FCD84DCA46B9FC1B30C6D66EC6
-3BC8F1703A08CD8C828A5146C1688743A4E9E7D08B74C420654DAE8F3339D8CF
-EC2C5A6DE588D62AB88C298ECD52593285FF14705B0A7FF5B945B18A4B86223C
-758B3DDDBB28A3DF15A87C9C745727C5F9011C9B617E080B145F93EA91B49FC4
-ACF47B130F1BCECB30F0A87E3672083E13602742C111923048B66DC2706F771A
-E62226BA67C0B1FDD79ED87DE8B1F3A83B61C77612030BC4A1EFCD45A9DFCE67
-5970A2B1D7BD336E63C883463BECC3B0E1288C14BF8F9CF31A12753FE6C5A1EB
-436D3EB83DCB01D04A23424B6FCF1E85F4FF56B441268E7E8CD5E70CB6AB119E
-118962C42A56496A24E07CD4E07B09064B0AF4017C70C5B76BAA2767D1F235AA
-2C22F6B0D50965992EEE66AE8BDD485210851B915A0B135A27BAF0BFB58CB822
-23EB3241DFE67D1A561FA81B2C40E425475E8CE9A48919D34E91B6D805981E08
-2DB65953FB783C4FB5B8F949633EB81422D739D64E8E98568CBF8760A5E02DC4
-0767B8CA0EA0B42D0BA79B70FA8D7CAA29F11D43B3842473656CDAE1A78A2D35
-941FFCE9055629AE6D29649F40BAD8BBEE0193CAE8E59E0D9115570AA8A3D7AF
-866F9E88CBAE8857C57BA1542A2169A6898FFA03B14A9F9C95C58A97DEC9CFCD
-C04D45AFDAFD37EA23A82C76603C11CB33F8B6ED4C5DE006541FEB4D4A0B156C
-D411BF24F6F3AE905CEFC2448E718D4F4241D8FDE812057D41AE4C90DB290A58
-DA8E4C9A13C3EA6B7FCFFD814F9FE57A2360FEC4D66B0F4919251EE1E2BAC75F
-BD53A341EDE41608218BD6BA2DDFF8C40F904388F5A76B5EAED70627E43090F3
-E90252096DAB3FAD3BC58EFB41B930CDCE28DFF595717B8EBB4F3EC454B62402
-0F2AECEC6501AB6721AF187AB1AC927034980F6D03F104CD7C81B1BFD8DC0D70
-B489E28AFED57E7FA2F502077F136570B1306894FC0B2E64F115B8DC84694BF4
-1145D34846AC355DC44C7BC12AED2D3F63415F73164D0787343FACD141C06979
-C03407131B06BAA8A9AADC462BF2B337EA16BB641D03D7A4E25F150C8BEBC48B
-80EDD36DF482E73294402124DBFDE35EC4F08971700D3CD6F9B56C3617FEA2E7
-B2E11F1057797F73D229D0DAEC3DEE40BDD51270946988858CA82D1B19D45CB2
-8A0B273EC07DCECA2211E7FC407F7AF290C2FD6E34E41EDBA04B4C2A07EFE8E5
-53FCF27161656E30423978A78AFA6AB8AA2D0C388C82E0F2A04CE494F92E8FF1
-19E470A7C5E8437CBDB2D94F0236542D9C62572D1DD4DE73FE18241BAC08BFCD
-8E7D8B87BDFA1323DB39CBAA3AFA8293137F025B39F32F0C5303A0B3FD194111
-ADCA8385D3E0B23FBA637E0E60297F0F06CEE3E459F17A9DCEA078FE7D96FEDF
-3B939396373AF96287D8E3A843004C5DCB9871E76194DEBB0897B97D21AD8E30
-74523A5A4F161B3C090A1D8A5D937AA492426A3857944B7AFDAD644BDED70A4D
-DE69042D6D03FCC710042E16500E2C1A210E0792A710D75242A4B38786719882
-A4564890C6C1BDF75FE0D008546FC069CBCF989130D56A2A0870F04E21C80E8A
-45FE737FC0FA4850C9E226A47F7D004729496C049E36272714324D7D1B2347AD
-16A6CC6D186B9DF0350F46BDD8CEC391AD2EF0176B02982256B941C03C889C60
-974A07EE67FD2AE1552E1AF9CC97D5A5081E44EB0D08124DBC50890905E52A2A
-A1B9F8347164338A1D4BF7C74062F7D3FC69A6C257E6FB319F985782FFEBA141
-457C421B4352A6C49A8E9168DC1E7B2A905007E77A0CA11306D3D79EF17CAD20
-DAF8C21838D7E628358BDC90635E450C9D6B846C73A9D51219B4E38523086546
-30AA401B6C8495A5EBE9A76EE9A3A5A428D4A653A48D186C013282C77FCD8D60
-C1E3841453CB2D0275C7144FE3F1F1B8D60BA854D1379A2F17569D15B9A1DB46
-B30A28625808BCD6CF66E574064EE3519A455E799EF2E3D9A926DD35F525FE5B
-97F325663B861EFB52A4E4063E0F3D3D6ADFD280B50CD16063B8721AF76E3616
-C3CC013A2C999E4205806AAF65A3E9263C8753A4C63FB4DE3C98FFDFF448EBBA
-76C0ADE5CA6BCD612E26F15E749FA8CA257CFA45013F27C433CF6AB8F58E5A68
-5FBCB020B7D2C79F0C6738FB4E360EA5B167D1E35DD65779019E678CC81FD74B
-5AD5B25EA81024BE25734845FD89A50D76AF358B5F145D3018A113F05F85B748
-C70F4D6310DA0AA037D7DF8D3EAF021FD9B32893942E1F612FA9508509FCB3A4
-DB5EBF80670717EAFA2CD488CE9EE5C224979C076DD69B360F88DA816762E173
-BF3E73A35ADE19F5477AB4B26D7653C5CCE63A08066E2627B4B6C32E6E5FEDBE
-F4DE4E89F3F10F94B7957673B72A8545B28052E18AD4221A05BD7CF3A78168D6
-672CC40E5BFB08DB8D512C3DAA19C6A2B84F76988A0C7683DC1FD3944BED5B9E
-947F6C4A6FDF5219E747DE62B3F5816197ABA4BE922AA752DB69A682378EC99E
-44A1E85CD6485D12F7302A8B5A568E0279E13937BA51F5E92BF70AED18CCC470
-5D7FF92E0BFB390C52FAF63D69DCB55888892053C5F1EB2B5F0F722B50BF7B55
-1492697BDEB5640D351E7C9C5E3E990BD1C205085FA44813606FAF028EF8D5F0
-9DF459A3DEB83E1385494D29FCAC06878FA9523D2CD4D25DB824ADE1F53BE952
-54120B9D33972C1A4E2F861109E57375F3A4E1A9E391C03D9EBE0D29C88BE6AB
-EAE4E7F383985E1CC462AF78CF19B873A6A8103B1214EC803D3C1EB72368A898
-95084182728212A4B32E80376F83DB9C6064C6BF78F85D38938AE6DA1F4DB90E
-A117C5B0FEF0DCEA935144E4B5A912CFAC15A9B9FA19CC07C62992115811E31A
-6FDB2C2B0520D143AEDADD6BBC436BA0B38A8453AE79298F989534E143FC17AB
-4F1B2470465A8E3F45006F7BF2112954EB548F401DD48C0B173400DA20D19911
-4F0178F46C7486ED9E84F55F4910896A3DB5AE93BFFCCDFFA66B40D84C10B455
-4DAF7761947330616311DCB6BB89CFFAA2083DBCA6D06E955D35392D0F5BB12E
-CFA4AAC32734625A475C598CEF07DD83B08634F98DA5A6306B360AA6ECE53711
-EC0B42D17291AA201111B0FBA224FCEBA21ED5A28A0EF92671B082425A9FE937
-22350D9C44523889F843DD280E040B18795CD180874568D1F0D8E813D0F70462
-504C017635C1BFA8D08A4863B06E09D053707916DE9BB89DFFE0DAC34404C023
-812015DD3CC95084E86EC5AAD9B8013F1028C6FB04CB8A8DDA623C09F9309513
-2F1777442FC477E54A33293DA10F375D00D408459D4072ACB97211C800EA72CE
-BCD74C7F1B301918E2A3970D8154ECFEAD2066B9785FD68A94D4317219AAB8C1
-773DDE8EF0056CC3E88A55329DD841E8782E7EE0E81FF99E58887F10F092EF9B
-50577AF0402679C70703B3DE9621A62E644F4FBF30E1FEE7389AFE281FD7BB8A
-25929239E4286B475A745C4C3B955CF2B57D3BE3D665CD0761D6C6E6C5E13859
-7106F4C08DB3385133AD9FE17E1D2EC79CC843694DB8E433B12DA90867EE2A3C
-43960C361DD81DB91336B50F43459053227D9D94FBA3EB2EB72466F5969CC8CA
-D59668F6D7450E6D059B7C505FAF240FB507C569F1AA889CBA88D59C511C7A37
-34489A57E102CB34A2B4FC1FF20CAEB797CC9124C191C0E5C69AB76058440079
-F8EAEFDEF049CA04CE850510CA8725CFCE5CF91E459C7189A278176E3A73DACA
-90C64F579D1DE800159789F762FD6884367001B500BCE2F78ADB1005B42D5A62
-B9F07C2804F039C8339CDD358704305FA0286D6ECF6E1594A639DD781F1C8BDD
-2D41606C75BA9964639281F58479087D84678D64D7BEAE3EEEE38659E8572C80
-485A73CF5313402943DE031EBDA8134102B38F0B8DD950AB8AA9CD26B59A806B
-C5E0C47A71883C45D8AA6BB86A8D705FAE643E9D809C4CC8445C327C7B22CC57
-9197143BDCD694A6E5BE00E8B4DDC98EB3C14226797126B6B08F224B5B81F048
-8CB0A1E0CDF928168FFD6A9CEC631790BD6F6543C0D1323B239944FC07806A72
-000FD094DDD6C7EFDFD73701881B51D2A69BFC8BACC8AD27D1EBEBD3B1CA0159
-7CDB69A5F065A6F3961838B08B0EE76082B1F7FCDE033BB442DE83B052536931
-77CC21E6637C566AFA8CE8E16E9864EACB51D53DE13E9819EEE37155C23DB919
-3BEEA0C8321E55D28744225B68316B237F6F43AF667CBD4E056B8F411A9CF4DA
-DD78F134DAC7AD10A6E068F3A332FACF78761BDE131A4CCFD1DFF69C81E3081E
-6039A768994985AE222979280B7BEEE4F80E1596EC2193B8B214BEAF62E615F7
-5F196C17BED09577CA87EFA65C8E3766AADA3F0B9AC004B5E4FA3766E7C142DF
-6D11916805731CD1408B6DEC7D59C604CD9FC1EBA9C67AED1ACEC29635E89B8D
-35DFD6D7CB5229F5FA8C9FCA4609362AFC18393AC5AD1D9EC6DF10791AB8C313
-0239AEF386095420187572AE1C04D4384D7C4C519CBF385C588E79180230999A
-EA14079C31D65CD928EAA98CB21220D07A00F4CFBFA7E0B63FA4807DE73577A8
-D57C23C1E3FDED22B145103B05648B297972F0910AE79E45E87F66A0A6EF9B67
-4ADDDC6EC204BC3F734A0B640875C1DFF119962B9637BAEE74A59ADF804ED619
-5E46C6EA36E099E4150208AC9BF805AC69450B021733D30647510DB77D309C6B
-ECB6BC54B17D302471A9B097A32394393881DE1767436A743C1735FAF459EB92
-24B667E6776BBDFC7C015A40C80762FFFBCCDF5B0C9DE22619C3721A0E6A2619
-5F5E8637DC422803E7D952C4BB9250ABDFE6E8F92AD38E7245E941D806F8FE81
-2C538E98E10C0FD1058F30BF8C307F30BF7F4FE8806424428745CD2531BC35F2
-E1A0E8F04B3A552E8640E3560C569688F15BCDF3A0EB080453A57B2FE3752B16
-8E53B5B5FDB0CDEB13F879413C81F49200F185BC946E653302F6DE5585E48C7C
-62B672509C26CE1561727FDE8D60EAE389E7731612CF054CD9FDB02486D6E233
-553705DB3786BB9108222F7FBF61107AF3A48E93A2D74B51236C6F387844876E
-06E4B9DFD17266029974CA6F28A5541A6112FB4A4EE3E92FA7F1C056B3887380
-0C5B45E6ADD3C8B9C6495BE61C162EC5E083B72CE934C6329706562F9DF633CB
-60829527809C5BC288954A5B3DE45C4E790187F4DD311A8258D0B72750CF4525
-5AA6430601A791CDFFEA68B1005B42E058FF931A599DD26F589A67ADFC4AAB0D
-3D386EF64DAA1C4705002356F6F397673CFE91B986B5E096488C33D76917DE24
-BB2B6CCD8B5B354679ADC57082F4F4E6D8644582AA7FF92BFF9EAD1B3184E516
-A57A8D9769BCF4B5CCBDFD58367CE0A16B89F04A2D6A4CBFBB247A3D2834CE99
-A059EE25B06B2A4C0FCCAFE83B3069C68BA2C21E266A6B4200179AEF4E27B597
-05317896A852B21FF1741D221F883643CA787E8F5D6BCF6715C44692D8C9FB7A
-067FE21003983E6DCC65699C630577E9C404C03EFBBEB52F816EFDBA9C5AA0BE
-AB085F87C606B12393688EDB31E1B435123ACBFB8F2634337FA7ACF64A49CE70
-3F22A94E9BB8E88C0D5FB2732D240E3BCEFD336D771A070F28D1D1AAC2F2BCE1
-CD4A4ACA524F2244EB57A5F20376BAEC0746F67FCCDBF89CC0BBA519170FB723
-E01E1301938E8D62919338DAAFBC076DAEADF678655C19EC360B9D524F379CA4
-6DFA85EDB67B9022F6435DE49C170DFF5F4749D5FF094DCE448A578C71FA7602
-A69B85F86AECAA5A1AF10BE65BBBDDAA9B2F793D7A1656A680A6CC7098546CD8
-B674B80DC63FAD7BFB477FB28F78880E676C64C1A71438A7D0E1D4E1B4B43B93
-50E5FE56DA8630A2829201E7DB7F77B0FD3DB8217D03ABB8320B951D4A3A92CF
-615DF2CD5F81FF7C2B74E35BCD132446472853C7786825CE86D890F1C5AE626D
-4F66008534E4E22A12AFF1C80BD12CDC2C42CBCD1734B0C83E2199908740150E
-E776820CA3F06A6BCBA6AD28BE7A6B36A11C29F383ECC46768CDC761975D83D8
-522360C996115BC1104AF67922AD898C69E4943C092E650DF7A3C0BB6E638B2F
-A1F7F4534B650A62D235247781F528C1604DBFF8DE48F99642481E1EF0DDFFFF
-B5AB519423F97EC02FCF0E971F7B62D9B642FE30A21DD4E0F08140C1BE15392C
-9657ADFAAD8F7EEA9E0865398FD99F3D1ABA7A2F9569E0A3801BB5ECE23826B7
-D7ABE78178796F687E998130377198B94266187D07DBC0E378592F91DDCE40B3
-2142D0098A7A1A7BE73DD4E0F5FB0204E365E7525808472E8F37B3F63D19C794
-6DDA9DAF83C1CC969625AABD0830824E4F46EA39CD88B76243CD77AD322189B7
-1BED56B79C21E71816D4B7D4F1BB698B0AAF9B7F9240D271C1B9720239B4D162
-CE01E408CDA837A04391985495EFD5A59044218C746C989B02DBC5A1B6FB9F41
-58DC69E0ABDC433FB513DE85CF3319A6A1CA8BF8DEFD42D8BF5203FC6713ED55
-A38104CF5F0665365349E374F39D336FABB60ED41ECCACE2A475D456DF59076E
-5A65D7A5E89E3756F384961CDF7D95280F170B9C9A3CAC609C05474A9D0B2266
-D9737E39BB23EBCDFBD31E06D8770CE0EE984722FE1F7A5FA0A9CC4EA90185F4
-D2EFBFBF78A6C77B07ECCC945BDD79EA7B197B7D5EF9E24ADE1F5835C07FDD64
-75F9AC9181A6C434512FCE73DB16047530525ABF878FE9EA63E19543526ACE2D
-DBC1BB8EFB608018384E347A67CF96F640ADE3475B784958649D9E0D490F93DF
-E973A51A05499AF6D6F66A91EDC9357AD7F4BCC3106817E8F6E8420A0C30CEC1
-B2BF71A2DCE0C6BE02563A2B8A703BBE365367C02F499FA384C35B01DAD11E2C
-33508F3B59F85CC8FB630132237FAB11EB04FAF11A6FECC2A3BC8BE31E9DC682
-A677EA9C181352E8EE8E99E45AB2BDB69D755FE3A19CBF0E048F5A9BD27A71DE
-3A9086323243B8684659F11703D4ADD41AA1284D49C4A68BB957E153EB0678EA
-A1C3A5EF79B519084E955A4156B6BC5A650733BE6FDD1BC244FD8F283C715465
-9782D4C0033C47CB71EF02DEAC260000692F5BD6B3A7BC0A16EA652D6F777073
-5D000386E8C397F0FA48EE337B3E04DB32767BA7E5558A60F8ADA667DCCB2C73
-D5C72EB9C65A40CDDF4682769FDF743EDCB5615B02EEC0653EC78DEAF06DBDAC
-036EC4A6DB4D8A974741AF62370E6BF25885F93C4ADA1D1A39C49F4097087987
-986720E3220E5D4CC919ACE44690A4E66E9CBA96DB1A99295E98C79DEF01473B
-AC8ABA603F5D72516FB146C7F6CD73224264347DBAD22A1F55C96E2566E13B3F
-587CB12C1DA732E76EE0AA3278AF58CEC869AA79647F1270DF5D56CF08F106B5
-8B23837637E9BEF5BE5EFA936BB0BE205DCE79F52C16CDE3FDD3C02DB284946F
-EAA3C8ADF447FF05F07C593564ED8B8106DA538501924CFA981F92FAEF3CBD59
-A43D91DFA4F28D584283E4619025F6041AE5DDAF3041D9FDACC0854F38FB0E47
-8B6368BCE8E6E57F8C80A8E59DAFB10C1D0CAC20BD41F2F3494B8E6BD60D5B01
-70CFD00377D83ED92533F322AF5091F265AF874302207DFA266A12BB07CCF7C3
-CE9D42CBA78F335A4AC4A8724A4B16404D1418474F3F5B9B4DD1751C59654AF0
-CB68E5BF4DF1A2DD06F5F1D6E60ABB973A0686651307F4235C630F14F473DC0D
-803A25DA2063FADB2052C30F1E0120C63F85CCE97DBC394316D392361D3C91FB
-FD0F368C6734BEFE9D22A0972B7EDD904C03DC255CB39576CE4488F04995F440
-522D97BD74838192838AA6A06861C80240CC11309FBB2841389AAF8AB551B88C
-78085BE74238CA90F9A8662816D7A05DAB7139C30D981EAB00B9BBAD841F3109
-BA01DF61F7EA32FD9B34D09CFB3B269553A1227DE368A4CA7AF007E8A895E5C3
-ABA1ABAB019C477599F823900CD4FC453C6A242F4C9795441B1A516D07527AC7
-FE69669F31B663E0252A4A4EEEC69554075F3E1E49239E83336AEA4DDE95D209
-1F4A8129FFE25A7412FDFAF21C0039B0878194ACFA6EFD7262CB54DE19C82DCB
-3BA026745507E0A0F4A887548A59801507DAC6565E4FD51AA72363DF0CE6AA9B
-FDE690DDD8A40497745F169E7D7FD9EE16D0B52E582B3CB2FCE7AE3C65277F70
-EF5B6D1D34EB02744CA94DE7C04E076C8591867EE0FE20F6BDB77374A34BEDFA
-6C2BE8DF2CA91125E383C0A5D00FEFBD9BCB61BD47E11EA5963C91FE0A8D1AB6
-2E08FB8CC70B286E84337D0025C69B15B84CCDC4E2ED161D95D13C2E00572459
-618D0349926E3D898157EDB5D3747EC80738BC664535A87F2F05AE52FCBE2AC6
-950A0397C17419E9849366CD5184184EEA283F103DD27C5AE6CD6AC2F8A222EB
-6B8A00DA47FE86C529265CA07D3DDC225D994636DD1698805ADA90E9EC85D2A2
-DA145AD5C62319DE4D593A1F7B48130BB218EAE8525B80D1B4BC8FF3118B81E1
-04F184B4B3053D194D285F86B1F397414CC366E7F06A8CADF988410CC3CF283C
-9AF11D6423E53EAB7AC3FC13B37CECA4E8E90965EF1A86EC66D7E67D476D0FEE
-A0EA6CAFFBFBC3C63AF1B14BE7A76F2332E78297E7E5CA532BE630C45C3A3DED
-1D6218E4E69FE4784411143AAE737FB57AF155C2489971A5171B96AD759A4CFF
-933D3547571D9E1D9E5A8717482439420454954E3159C286896C750F4AFB030B
-B1C0CEA5B6C620783716B93509E7380CC3576801B0CBBE325717B50A01F18559
-5E972E6B3AD8D3E9B519D0ABBFCB74CEFDB46D0630B2EC758E071BEC24B0396E
-82BEAFB7142E7A9255F17F799F221B6DCBDCFA01F76FB81EFEA7764EF7492A31
-CF6A27F0F0A883843349AA546DF9B650631E3D66F51819C4206CB45D9A0E7D62
-F80FE987DE9DB376F1D28137EBD8F6D3102516DAA040A187B71E9908B6C4D670
-9CDCDFF87BB96623F639AF348410CD8E09BDB88FCE87B0E6C0353B44D99075FE
-ACCECBB5BF05045C787378D91CDF862D9AAAACF6E7DCDB43F4D67785C90B2F18
-236EAAFF9DE9018BB0FF4D401E2BE5015F53DD5994514CFB8012519F86A5BA1F
-F01BC2B3C4584A5EE837271DF1181C41D86295388B4DAA5F96AF6E9CDF13DEBC
-DBAC1D91B8116E15779EFA2C1DCB9F8D60B0B9050D2F3A3DB09C27E0E8B2A60B
-0B7794840E894E760A7DC6457E8FAC06E7E85F075C31716D3F1485E2366DA367
-74F976101E9729DDD097218CE28A08DEB149ED91735F85FE24C2A0242BCABFBE
-545CBC9B37B885344E1FE7392DA7B3A0ADB4F647764CF5CD170F07DF5D979602
-3FCD58FDE1390FC739FCA366F93222C2B65A69530BDC2C3BAC4FD6A83755F45B
-1796C1F566A9A5C6106D16A51D789AF0FE0017E50B8B17E4DEB9CB3190778133
-D833F7D52E272FDAE6D013E0DCE9919A154015ECBBEB376336DE9B299E066E52
-5823C7833F6217080968F82C9222632878B059B56EA7E0DF5E97C897066048BA
-646ECC1A6258C9FD01394C94F33CC6BEB214026BA3071E21F19FEE323BC3DF79
-02450C247F51EF8789D3772886EFD0FE428503FEA22EA6DF61C121E829378E4F
-A20C4D68DB0E256D67C88953DDE55DAD0B342502A60CA0E485F5242AAA832139
-175311A3483C4817DEA43280D981591DFCDF80ACDB42F96587719CB669D70ED1
-3473BF49FE9CF631DDAB702886EFD4B61C04D57685EBC57ACC67EBD3D1FA2F76
-26B6098793C919C4867FF8C4566A4C3FDD4448ECCCBF6501F952010FEFCBB59D
-958BF47290B04706E6727908AC63C4D8F04D56C8CDA359FEE01983AAF82587AD
-76F094196786076851DFE2688F464727BE1C79416A5B5DBFD16637D8927CA49C
-15D876552878A3F66A7390E2BC9413D2E849F1798B3675D9DE6635C2235BE563
-54608B6944A6877FB34665A71DAA964E925D25B4D6FB7A4F43F64F7D944E10A1
-375D5834B698D3DB076C5698B8B5121AE1ACDAC8250AB79BA980DAADC6E543F7
-C9434654301BF25897253FBD86FF3620C36740FD9B75C90DF6252301104DFE24
-7F56256F9E28E118FA15CF9E7FF8A6B839DAF93D282045E3CAE0FF8ABB7B8AAD
-AA3A328353FBA6AA543CCAE1480DD315B3A9FCCB5CF718AE8FF9CD735F0AC04C
-0E23B27E32DF5D58EEFE22E16CF66FD461D49B9912A00956D1449388650452F7
-5B0BB2BED7064FB91F339F9B079346ABD7FB049E029F743E30A6E130B611B9BE
-7F59D359C188F87A74774EA827406F6E8EF9450CC9515BEC3FC6A9C371ABAB04
-0DE635B89B585254CC2B246FC1806944F8363D385B23D0334CE81356415B95AB
-DC24FADB8E210021106B62A29B458E75139DD87D7C40960E9DE94D0EBB0365D0
-F9098AFD4ABBE8D56CF27DF143A361489CACE810F6588F4926D2DBA06CB803B0
-429DE4AD526B20790A253B81E43EFB094D47833492CDD7322A16B88E88471BCC
-67BF55FEFF85AEFECDCD30492FA3B44BC097198B92DF86E277EB2FA4DFEFD0C7
-A3D7F2594655DCFE1DAEE9D088C4E0C8E72A596783B12007AFBBE50960CA7222
-5BC2A678818050E3BC068BF6845B0955616B2CEF8CA7ACF0CCCB7B180DC0F06C
-2EE31819E5C9F765EB7BA9B7AE9E9C868C543669BFE9ED6CFA79C18A81586C3F
-FDBEEA8E149B035A561C376465550750E74F895A03FFD4B37815CEEF7692E91B
-CCE27A05C1725269939049ABD3256452538F7C5E2CCD92DD2FFEC88BF74073E0
-1E3D5C2D543699AD88BCD2E9545ACB2829029C73E142B66F7E99DD06AE0D8BA7
-83CD3AD8737286F1BCE24538A04885ABAAF54AC3A1CDA59FE5A5A3469C9A3745
-71E6A900720FF5C6AD69B93E4605815168AF840F565FC45343408C055B193C72
-805AD576F4E700E2B1944A94B54D9900A5FC7CBF3AB139A9386F1E48496E816D
-30845204B909A8FF3F6291D918F9B9FA1619FCD12801AB4C7098D2D6A755E688
-4D2C81E91A41077E24337431FFDA99CE42434792A742C0054458822E30F62026
-E862F25B3E926EC4B15D651FA8B7207C02544554DA636E28B71320851230D8DC
-E7F8AAD9DD25CBD99D26BF43CE62EF02E40CF1C458B091F422E8C5D15DA27B29
-9593BD2534E9CF7D1723C4A0799021FCCDEA0E2DD60DACAB97FADE8CD7CA93A2
-160E8AF4869BE7AD9F6850CE17E12E87B21C7D7897E12DD14478BB1CC3BDE208
-E9E04D43B10D0682FCE4EF4CFCDC03121F61E3A0D431CDA495D2D33C5756FA58
-2F177CB2C22DFF5B6EDEAE03CAF82F64151414199808A8A5B930C7DE99CFE9F7
-0817A02ED8BB898F5C6A5A0B63B414D32AD1F8826942CFCAE7A748E089CE183D
-43118ED30D3D90A7B2500DD4B77E9B9505280125F6D3F06481FEA356602BE122
-B85369CB08BAA0A337036BB1D700A81D9A8D52F404EF0B379095457B3411533C
-A4B6BC8288DCD230DC86CAA0387F73A9259701F4F26362AB4D51DA1107CE5969
-20F275D3082183D51A95456ADA0961F4447566BA4607F7420FA05D025EA727D6
-018DB799F720ABABD7D24EEF4434A86FABC0246A25DCB51298CDEF85E5B9154D
-B68C2E08CDCF2B30748BD77113DE4B7E655A662F308194C55704EF3DCA63B79A
-C3353BF2A0D1F0E054C9B2FFEAF8325C3AFF9E97EA799FF3D0256785B051FC60
-9AF14973E9EA8ADFDF8828C178EBE82EB2EB520FBE25A2215E47D5862B599F0C
-1B60D70F5B9D1B9BD7C78B294D88A9C07A91749052A4547281C85146B6C2E68B
-16CE2B554608E157981DDA4262F79920A17A5E5C78A5C0D5031D2A0AEC3D9A30
-16D084A0AB1D186EBAA3030B56DD0524C782F67D661D681404D033EF70CD38A7
-7FF745BEE323D836A343FF79FF75A5F56CC21D0DB40DA0F8BADB6D2548AFB150
-7358999F9B48734B8C0DE94C4342906067BE5787EFB9E250542B7948E6E70640
-58BF0FAE37D068197C4968683CADA4972098402CA5765C79A4A0127871A771EC
-B2D833304D31F411C4CECB4E88FEECBE3D8FBC5C0D1111779C12BDB45A430723
-0C4F9EEE82DD99BB18A73402A90D5161A942923A7DB11E484ADC56E4CBD4F539
-B4E7DE5EDB6A8329211556F09E7CF190ACDF727A05EE7675B0E806BF46056A84
-F267CCA7EBD40365A2EEEA37CA16098B13F5160859E1A62DFA56DEFB52B0C42C
-BB5644E7C6AB561CDFFC7997387BE2CFDF14C5A094D8304142E5C51B18EB9E63
-F3C62F8B796692DE2BB25C5271E2E1FEC186A51A138E474C107BA6A4E70219B5
-0B7A002DE83263C896D1B79323E94082748962477040B61BD30990E94F45CA45
-8238AB29FD4ADBA72C7DEED0F19C1C78C383A75596551318CACC02F1560F424E
-C1A867AB7A3670B0F80114243B03FCA61AB76D523A9F63790FB9E4C15142056C
-9AD392B9AC3DD8AF4FE45F7DFA4919214711F888EC53970AB4336382A8B4C0B0
-DE55AADDF83948C9A260109C9CA76611355D1CC11728A5F974F6A41E4E5BFAE3
-8EFDEC80B347B9A2D48053C10780B21A31D4A0DEFDCEF21CCBDADBD506C598D1
-1D352A1D352E71CDA8E0AC562B47138497DCEFDD47BF628F092194D45FFF6474
-0DA8BF4657575C535B5A3878543CC54A7794D99286B36DA316EF5C963E2FAE2E
-5BF483BEBC28E86DAF5C89848E0A24003DFEEE2B43FD5BE0B19103064CF5FE9A
-E2F3928E1A0416F2688E759EA81D4BB7218C73C7B822AFF5F10565A88DB843AB
-4C6FDD0EC6E4AB6A2E278BF6389134B23FD9F93B1B78A54E89C19C0832E1B392
-2E913B5711DC8A1FECCBD243C783FE4EBB8890A74966BA04153E1426CA019B9F
-949AC6B0EF2BD34964D614FFCF36163000D649687ED706721219C9C0FD5D7B89
-7CD1FA7518E582EC0E6759774066A7440B67CA2FD2A9240C46E89C950358663F
-DA8F2922481EB7E637D39EC05B320E6D78BAA75800A29318F1C38677B07EB8DE
-B3910CC58C4436BC521A6A0FC8A314CEE7C49D246AFC0C62A78519B3A64CCAC7
-AA993C1C12DEB3DF9C29014523059572A40A1005F57F7ECC6E335C0CCED0F6A1
-9837230A89C294C3E918D381E8A793A9D10DE7A5D351C79F5FC59A673D549B07
-56E076099EE574D1882E19947453F95D1E03605DFCD367B51BABE281E8BFCEF9
-429CD39F7D87B89345DA38B9D37A44193E6FA2FBC9D8CF18D4F70107684F8DEC
-BA9CCF6B930A5F1488B5B5E0E9D766E0D7A0EC5E75FAB0236658B88746CBDB5A
-E1AC1129ABD0B8BE14D524EA8B10D27492E10120717F97631DF5D457C379DE5A
-317D92E5607FD2DCA0F19AA186CBBD1A6850E7C7DC9DA87B15A63D81D3561DA7
-DBCFC33519949D0F802BF8A7439B98884C232006B3844C3315BBAC1D205E2722
-D237AEAFA740A5D69CB9319A6EA1FD1B2C712C66C0B0BE91EF8F6C070679FC90
-0A97EB9731FC5AAACBCEA5F236CB657AEFAB4425F3D043DC51E8922885EFB063
-A48807F7D93C4EF506D88E32379E2C8FAEA242634C1B0F396499515BFF9402C2
-203F14C2810B9D5887C733207CD9EAA9225EC8D147DACD52A6416E9A8145E9DF
-65251D5FDF6C188610EA5D88955ACD294564551E06F0BB280028ECE417FC5611
-A57ADDA987AB18C85F64E71946A13245682ECEA6BC7AB01557A34E77BE97E13E
-36298D8F4F81A775A50EB7B062E326370F74C238321C68A224579D8D0FB3B50E
-0A3252080085BCEBF90BBB7DEA2AF9E422AB7B174467BDB96BF08040C991EB89
-105A473444D04F9F7F9827F37171C966B04BA71891DFD3BF0409EDEBBF5EDBAB
-A73BB9CE32AC9F01A9A9FEE2C14D707383762B3171EA7838CF6877381506E228
-B82104154144EE653757567ADDF78007B74E8FBE30181125998E8C2D5DBC4A9C
-94199B0AD303B866C44953806C2ECB71A6EC0BE47E31980F07A4276345DBF894
-630E84DF9B4CCDC5DBF0F628DA8664BBAA600B0E74AD5FF5E76AAC49FE36C6CC
-9F09A11E9C0C6F6D11E702E7665F8EC9C577866DF61A087601B5C091EEB7A076
-B55247B5EE7A61D73DDF58F774D9B9EEC6D5BD1B4386EC21783BE25287F4D8BE
-46A8A3F014F6274C0460AA50036DE1630527DC84C89C2E8CCB60D88860BC02E7
-F721ADDC9CDC1167673A8DA64B56E616B7769AB0673118F12D7665C58DDE171A
-C18AE32429F584112876C827E92A37569214CEE25649B379C42D283CE34223A9
-BEF3E8B02330426387356DCEA48E434FA4CBBF5A4AD4630FE7EFE6E2684F40C3
-3FCA5B357E8ECED6F94461FB7E6DCD886425AF49413BABAE1C8D7731FA736FF7
-7CFA0F0E79E2AC9337551F949D7A98DD4266B02B2BEA8D9DA9AC9EE91DE4BFDF
-17DFB3EA2A28208A8B9B6B3A98C340E019ECD245503079D36BB09B04B06362F4
-7E3E131FBCE0BB5F8AC8A013BE0D851B9CA98BACF1B296C8462A8A91EF165C85
-4EE252DA0D663F6F5D53F691A7289898546A7F4F96B63B08B69AAFB5DDA608B4
-DB07661BF8DB3A82412986BEE8A151F03955AC1BD4A132E3B862B8F49431B587
-85145BEE95ACB3A3C36BFF1E28D0010C5993652412BEB18D6B175D8C7D187A39
-F997725C940C0090CFD898501D27DAD12D293266299A61A04C7A07AF7972C7BC
-90285834E6CED72FAA8C37DF8A6CCF477D1D38D06786BE0637594D85641D5056
-EF86E811E8F20C2E31FDA0FAF9ED8D565717FBD12757712E7D615CCA591C3488
-88DEA9E06DF328C71ABDC681F60239A56CBDC919B83C3DA6C55658C440823608
-28B922DD2876689E6BBF4963986A634DCEBCE422E1B3901FA4C528D440906738
-CBF66482A80C9FA511D6EDC5888C75E81763E2DABFEF79337D225231EC3BE3F4
-0BA624886FFD9432788591A2E3F5E5406D937E7C7B6DB8EFC442AD6A5FB2DE9A
-B1227ED5E081D42F48565287BB2F037C8A8C6E7AD99F4F8D9C82E24FB7A26D4B
-A97F6763CFC06BD1DEB4379D2FD424D51F65BC0C191EC9B964C4AB2EDDF1ACCA
-181F18266B9F1A301A27F90DBFD1D6F16FCD0C19DC922FFF5AED9A50EAC8CD00
-19B10BF800043A8AC3FACEC83FDFF6C2D9E112BD6FD27ADB9257E46ABC9433E7
-B17397A981DA263B35D71996E9DEE899296FD341FD981A7B8C0126394C235C93
-0313114ACF04A2563085A1FC834F03A9D0CFEC629CF335BF68DEC0D9FFC3CE35
-65366783264D26AC81BD0E3CCC34F05A6D654D81D68845E09293632BDF132E09
-67660A960AF3914B0A396342DC68645B1E77B74E1BC80976B7E4079D47C6EE06
-78FE72E10A9E96D7E823A9AF7C27C09ADFBB39666E492826906A3090D6908FC0
-8FBC81B9B8AF3BFB50AFAB4B05989815276076C24C2BB155F9596CBB7B698825
-AB9BB62F1FBC5E8E6099ED8856FE77E986F4BBD73F33F4CD3178160391F69AD1
-7E1222600DA0C746AAB15D467572F746E796E469ECA39F21364D817733B6C425
-E6E70F2A9B553EF3E5903BBB2B1B7B9FF92CC01E06A1579EEBA674E19997F355
-55DE0C443FCD1AA49B8E2080C810EFF6D523089B73198CB56FADBD0F2494A262
-9BE3F414AE77C326AF74463D85181660F997A5A41EC589F85802403CA4339562
-06DC0E0D84EC71C4C4585843E672A613BF98352BEA682D0A2E2C0330C689ED03
-0F33255297252DE79032DABFFA715E1C5AD024A3B607D9D7E25306F991FA9666
-3433D03465B997A6DCFC6DC1CBF4407D6CEBD81791081205DE29A0A643AAF379
-328E6408C87804EF8DD17BA9F61138361E77C721C5FC2F33AE7275BF3C543498
-738610AE118FE4E60B6B97C75B70DF52FCC6753A5A6AD6AE55E3F23C5D81CD26
-F3BAAC5C279B47C221D661DAA0A931D399DEAAC264FCF5FBE4E0A4C1958B8071
-E9FD097597FBBE68E8D50AA71303F58A178F54FAF20B2BAE890AFD3F631BBD4A
-BED18F31DABA5CD1425DFD6800C400041F37236786EDD1E93559FCA2A61EED60
-11FA101719E390A56981215C04A6A30CA9293352CE82C76AF26E4029D05D8C46
-0ABB86F4F471E1B31FFCDEE5CF50D2F415A075F1226008EFFB2AFD3D6C9E852E
-4F9CF06D54E921983160D2608BF3A054AB9AAD1263330E13FB280B4C351293DC
-D02F18BF06B822D4BC4318A5836D68D5602777A7C17CADBEFB5AA60564B4BA23
-8D174BBB7BEBC55F58229D7A469A2E8DF493788CB59ADEDCAA49B09672ACAEE0
-D9492A80919A61A26989E42F4D2C4C25E9DCB198C9F0EC6E006EEE659737691E
-3F7EAF8564157090A784DDA65CD5C0108CCD2AE95602869FC2F3942B49A25465
-ACC0D5692D82EA57
+38F4A74D9676E4E99291D4420C57ADE4A8D5214D07B14916D83DF15114393048
+FBE0DB83223F609ABE120AB877FEF549B6E2389487BB7ECF1979BCB0785DAD1A
+2916961A1DA60AB491FC90BCD6578571226B4DFD204E75FF18FB5E72DFE8A028
+C66F8576254930567A877DBD22F8372E7BA4F23F9497ED653906F5F67A66A1B2
+51957AEB8D443550161075E5523F3D2AFF386E2640B276C3EC5EDAB74AC0DC94
+7D975D7F5781A652BD13AA7F97ADDBE68847167997ACDD038E74E930D8248F0C
+2CCBC094031C7147BD8D4DD664184695CF8C474845692540FE2B8A72CDF9DB62
+BE05E15A05F59D56E5EDBE7C371BE5CB3B276FC7A03B5942057EC3136591A1B9
+15E504DC497B663A9DD1729EFD1478C233B9317351D000DC0982F061BFF25A3A
+8983E560AE31E321DFB137C77C0AEC704F8DA99024232F26AA6920D58CB17DE3
+C1BC8E20988FBC4705E594569BEFC3F6666785B2FFA49367E3CC695F2A1EB846
+DEB37E120B0F4C0783C0D54655C143C4F74DA0690C6D08D07ED225F361BC0F86
+572D79540730791DCAC15823991FD5DF1AB8F25F84EF40C085B17C9070C59EE6
+31DCE45AFA78440BDE4C69A4D954C2006070A2C310179851F2D39B1B5D3EDBAA
+289570BE80F25D75116BBDA61F002B832F9EF2C32B53258B15A1174225168B28
+EC3324C6EC61E5711811E658A1BA65C8D2D47CEC6071CD88DBCDE9CFD2BC34DF
+1ECD2226AD588B50AF2399D171E99D8086DDE33E24640A767F249797B1B742CC
+F4E95A64E1AF8D88FB128194673CDEFD6A1672DD1D03B6749E729587C0CB7C6D
+13BFC785759F35578D611E924CD89FF87DFBC5C93FA7BE150624825F7D137CBB
+FBFB1238C1A397826B8D1DF0A39EBDABA5F10B37FE8C27568E1C088F279A0E28
+020DFD377694024FA154AB5C06EDC3CAAC3CB5A69297E1079F5C2F351D81614C
+D73ED708907A96F6F8FB0994D3247045E8D41028432E91C7ADB2F22066D6F8D2
+701298CC9FDA7928F99CA135B69808AF6FA1E0A3CCE1BFDE234E9218A565FE28
+96541CB9381E887182873FD7866F5F8415EBE92E51E7FF064D6CEB7BDBEE4DF9
+97633E53488AB11EE93137AA185AA7E4AA043BC73DF1739C92B4D3A8C46BA689
+B9F8FA73BE010D7C4F9007937AD0EE3EE4E3041C72A2C4DB92C6C5433DF33A10
+700F9E891885DAFDA44A00781BD019A9FFFDB6FDF9361520D50AA5037E654C8A
+ACD179511AF61BA10DB29A0535972DDE8B838091B5EC3F6C3408E02B8CBB3FD1
+E213E2C53DB7AB14D465CB0E4FE2A2CAFA20E74BF4601CC23687FA7921CB1B86
+6DB57E04C99BF7F56FED75A052362016840676DE91888490B4A1DFE0C079C88D
+C8C3BD3527F7C006E1403DABB47C3F9174208A379C221931724F06270985BDE6
+A53263227EDB00124C5677613BEA94BA029F9D6F8BD1F7B87C4426210AE554C0
+7BC707199BF6DB673E40D55741CE1F0853504A414099BA8E0BC7F5EBA5392684
+79552A5D4F7C0CD3A6D80B18014008AB011C8C66C74D32AAD748EF30C1AD484D
+B56BFB090C5BB937E81189912665F332911E11E83CCE75A79DEC2838E811D5B7
+DA85AD6ACB7D8A98D15DEC66504CF2131FF06AC9A8A4FBC4CF34EFB8455C231D
+0F73A50052AC8FCFB2B2ACB95033AF04078E9CB99551FBB1C46EE6C413D86C90
+AE8BD7FBDB7BA6E9087658C79C4758E242256C0546DB76A3857BC89F26A4DD9A
+F4A848104BF1ADB2DCDA25C79BBBDB66CE1C1A45C7427FE7CE5BDDA7CB599B4D
+B5D346B15414DC9688A9D00F0372DB98FD33E6164E5D78D6CCEEF0FEA60A7F5A
+9873AA7E2A7F98893AC5A9598B71BD06D13D2766489248190A262E5EAA459888
+6D0A38261697EBFA55180F3D416C2190B36C309202D1619A405764612BAA3506
+7D157F49FA1E0A7F252FCB0B8459A30975E02748AE1A891FD6BB288E0D7C144A
+1D348F1DDD145912678DAE1906796591E35012373AE01E18515F5CC3BB29A629
+F8B28B54376A9E10D0CFB29B81981E66F27B6AF44DDE0A3621B9ADADA9588201
+11A0362FEF840B200C84480177C9E3F0777350BE92707BA916A90AA81160D498
+6417DB6C7E15766EC5C9058CD51879041BDF2D2514B0D6B968CA0A300EE2E30B
+6AE41238D76DF324B0502BF79D58C2DA1FF7E384891182AA59918DC8EDF92299
+BA162134FC3DADB6FA5CEABB94D1CA9BE1635F769EAA88377AD96510A4DA8F8C
+5319E0C06CDBDA1BA9845302F716DECFF7B965BE413A7BCFF3C4EADC91626070
+9A5776EC64C67DDBDBBC66F16962306631D70E62616DE4997ECFE39DC6BC9A75
+D2297C2159066195F43B7002138456AE7EF69220925877C87405D06144D250E3
+55EEF1575DE8564BF98E2ED403591F2EA4F6AD71A126A9B1F5D350819058FE4A
+949B8C3A7907A725B463B752EB3B44B090C731EBB86FAFE24340D1A89D3FC0A6
+B89E64C3FA480C91DFCCE4922C000B0533A052FB9305EA3B58A38A3AC2688715
+A7C7418637C393439725F0509B3B08E07DE5E0350A005E4C5DB815CD317EDACF
+6460DADCF9281BC6523DC8FFFFE18CFFB2EC61884E7B324806851A91F7E0336C
+F86AF2C88F1EA1EAF0F87013AFC7DAB6F6BE426D92A406437E38C75614AAC461
+4EDBD8F129D985A1385B0F9F1A4E6D9936FEC600F4E431C653DFD1D56F694471
+FABDCEC7BAAA0C266D35D7380AEE587F61DA5CD1229D99F82BFA7B1A45A165FB
+658A4E7A741E11931D6E5C1358CF76056CC0DCF4B623C2A8CCED91694E46661F
+BCBA0225541BA9A58EA1F2E2B2402299EF2B691C39A87AB3D5C722DB2738EDC6
+8ADEB09750D714286EB392D198A55784AD908470517724B92849D539ACAE89E7
+A8E37CF20CA87635FF92F1140DDBAA76CD52BFC0B40FBFCA768F837D0AFBC7E9
+BBC89422CBD6429B284F67AD2DF917AF69346A5BFE8DA3DA8F9597C2265F3BC5
+A90CCE79572DB45176AED6E1A5FBADC98816F0E29BF58DBCEF62EF76A8D8C845
+4C7E9AB94A0EA43D2FA271BEA800890613D8247171938596CE4948BCBC7960AD
+5B2BA3E0A4384749A7D88F3DD515CC1DA7292EE9775B67F621E156020419D0D2
+1A6AF5B51E64D3EA7D182AA65AD1F663FB28739B86F9EE5880A5A96C3AE1C563
+7A002FD0ECE3AEE80AF18A0FBCA3EDD496C18C8974E856BA39226C382CF8541F
+F7E2C35B3CEB1DEE3BA8F346199944BE2F350E4C3DC89D789250C3C5192236AC
+513D1A3058230470BBA11E0B39141F48065B808B6FC459A897C304B749B5A656
+38B55950D6F379A535CE2816498DE36D03747FD07514C2DA1764217BF2DE17BF
+C8FB2F06382136D301953DC42EA0B429489275571F6B86AAF496E6A2EB196547
+B76BD6DFF6054DAFC9CDC11FBC541426DF0351ED027FE76128411F6F62DAD159
+C116B43AC59C885B3308B158EB74405541F2BD247BEED5D3B35554EABCC133F1
+B71EA3C7C7876661EEDC141818A3E8A9C519E7054E26DC023320A0166FED1C19
+DB1C3044D23E5BA7F039D86ACFBCB5F881A6FF9135E1F5DCF910A873E6F7DF8F
+11372C039D09A875DDACA3FFADB73504C1749932C3792CA80D78979CE0269AD7
+47CBE7CA39E26FCE1E71DB711D176644423FB964CF8CCDF16FBB686877B1B99B
+FC570BBEE55DC7F2AED8E81FF38DFD61322F1FB69E5CD6EEB8135128A35FC23A
+5ADD95D4F873B2EFD14A1FF76CD20454BD3BD2752C9A5F0C21F1E5F39C5865C6
+D4874580E6224B22FAB9240E0346C843AF0C495E7FD5B3310D90A6308D47E882
+EAF80772C87D3F7FB9DDA52F253FE4E3D1E56EBFCBDB9BB9A977DC7E9772428C
+47EDCE4D4F793F4DB9C66E65827109E83723E50424A87B36D6E74DD05B327128
+E407252F937ABE315B18312C8BE965E84ED9C895D275A331EBA6E872DBCEE1BB
+C6254960940B95F46CAB4F8469E7412F546E62683AA356366F454308367A789E
+B1E6F3A07B87829111DD17856727E948E0FAECA4EB00192F125C2331011AABA8
+F4067FD01D56853FA445ADEAE5901242DF460ED8AEF939332F87D81DBE9A30A4
+18884AFF8A7F00530BC7DDD3A1E6C40549BE3E567B225E7C8844F0AF3E19A4A7
+E61F818A5F1BC836012FBB9AC4A5AE737FFA908EBFC88B2EAA62877B05B1B1BB
+65062420B89BC4C3C4B7CFAD1148C6A373F26ABA9A8DDC74DBFE47937035DB49
+20F0B8E788C0AD02381732BEB2B9587D6B50E6F7B4E9DAD171B8C64B60A04776
+F70BDD9C6C8831AE39561701FB54D68810E4C3249C32E4D39BB40C500C8A735D
+F316A68985E3A0338D8CF730881326E2B76D75BD2566D7387C0DD8C5724592D5
+1FEE9798B269DE09387D3A1EDAB20063BA852726BC7EF07CED98E2DD1957F94F
+7E336F6047A935E128444DA8F525FF1E458ADBCB1B6D910B68955DCC59512591
+2F1228007F9524A0AA6113FC6805AC4ED806D5CE6E03AC9EB6830EA9A7AE975D
+99A4FDA50B92FB6977BCE8BCBE2D8EA44BCE9B39718584A452205C4349561CBC
+7B1E281C058D0BE636CDDE883E1C1AE3802A35C5426443AEB6FF705EC26AF94A
+2A7BC536F373C0EBAB41C780E56F5BD1CA645DCED5090CF32D4F0E5A780651A0
+477CB27558B2D0E2AE3D0A02565EE38D5F437D01308A6BEF55E80422F5B5B56F
+6DD11ED717B034083F9BB1536D76E321255A137E618B398875B5BB8F5AF02B6E
+B4DFFB173C424B2619F448F7CC3A206BBE5A6246CC152C59C909C600F63AE940
+60ACB023DEE119BF9575D15049B5DF6441715F68B7082B9444408864120F5EAC
+9AA03C7C0DC1FFE2C4F80F12B93F6735B9F0BFB8FD5009D8ECE097B08A198D7F
+0DD0D8F3F32E23EEBE92D456E6C19F095F70FB5A0A4EC5A0A28E2A1B48E97728
+18BB643C3174C5B882454561D9FB758B35D8D1AEB3C6323693353496BBBB7A21
+5DEDEBA1AEAC77D8189B2F2E67A9534E197055EDA86604E54A0692BDCD66B790
+068C176C2DC9F8C808E941210A9701E7036C6090536CC8E57D7930DAAB3810F8
+CA78AC8BA0583A692B3707D8EFF67852F1D10C2316CE94B0A86565F33AA21D95
+F10EB3AC20610AD3E994906B46C6341AEFFC14D68FA18DCD7F47031862B77761
+33AA4697C83E422B68E3088C75454BEED7F2B2683DEA162D64A2C13A6FB9AEA4
+805376FC30C38D71FEAB0270ADBCBAD2783F4EB5CBFE07B3C8092CFB44CAC100
+596981C49C201729363F55CB5BD83002BD6C48EB90BD0025D0DE37FA60BD65E2
+0471A4D7603AB24B35F54D8CBFB69C66F8B7479DC373EAF98E179445C3C75D83
+A4E3F5FAD36BDF55E1277757AEDF5C5E653CD8D20E88A4E2A35C3DD1B28EF3A6
+AE0BAF0B4EE0183528D3D4D477A37B1F1C8FA2ADC6AD45436B44E7DB3CDA336C
+21984BD90389BB4DDC946C5BB90DD36F3F2B717EE91AAE5DEDFCC61346445AAA
+20C69B691AE897BF37C4CD53E7EBBD2A688329980006FB57DDC23A76CC50319B
+664277FA194B7B3E6B367A64DA7EBE5C2F49BB2654E9F9E2F90DDAD323134ACD
+7E791DD8D54952927ABDF05859F1E7A261142BC8E3FEE76D68DE3D934A6CDEA9
+EE0EE9B475A5E0A8EDD62B373557B19FB378E20CAFF7E6D7B8971397651754F2
+0C1AA7352058FFFEDF2678D577786B0A1A8D0808B3E8730B61181173E1D303F1
+F7E76AD64859FF5174978587BD32367BE92A0BF88EAC6C6CD1F4C961C2042C3D
+2F30FB270135154DB5AA09BF613BB9E481B003006E230362A670175F08FC95A0
+9A04E761D19EBB5B5E35B178FA281E1F9D542012BE66BD263D5E0D33F5D9AA55
+65AA4E7455DC8DAA3B1282847D24867F1E2FFC0BD6FEB64EB3E24456C8D7BF03
+2E63825C24B8D6EB7CCE2D711A218FC3388321F35029B10C914A76A86A2979DF
+065AAE38A3F880BA047D4D1DC7FF83B27D5E0364CE9BF40618E9AF2079365F3D
+F3C3D03B6140A53DE5FDB0D85D448ED3EC184EBA2B807FB3013B3C1CA1A586FD
+ACDB00F8DB768ADA36F90005EAAE1A89E8E40DB045F2C1095F8958D9193CAB72
+ECFFB9AF10717656BA3B2E3D09B0E7911768AA2B661A2C87D66FBE26CA23F6FF
+EDEDBA40CD167F1442F4560EC101A605EF5A76972190424F0950923396C7E375
+D3B55F06B378166B6A2472B83F8E77810BA74FC39102DCA7DF768449EEDC53DF
+25FF749A0212C8E77E78B7C6E53F306FC870F71F07F7202CE18ED5A1D68B8B61
+E653DA69E05E6B2C0731B3D298AC63257B63B773CB51D9C9651C5D7DD655F503
+AEBC24932ABE55B9B2FAED40FF745685F0F7DAB850521F1F28934F151CE0E760
+3C95C6FC654D51E5F280BE0301EEABDC20A53CCD02D6EBB7C743DAE40684B157
+8E69DE455563628C63938D6E77E76FC488E905753D58A74E6059F3834EE88B5B
+E11BD205B63E7F44AED092763076166B8AE25CD12A3F2294B94C19724F97ADD8
+2E8FEAF5841F52D654A5E366454C625413D5D14069BDB1C02D34F8C1E04669FA
+50BAF7DF9FEDB9745D3C220886B78DE4B272C043F37D8A9B97C584B63FEDAF5B
+EA8FDE3A373DAE7C2C029C892C4501E140EF3ED7A1710ABD761BE6E39CB18F55
+21529A69844CD87C3E55284348E9297B5969A37FACE43C4E10870B61801CCEA4
+A236288DB3F6537F7E6EDB5A39B0BDDFB74523F3B78026A98C6C7F7647AE4005
+51F0B7333CF9DBEFAD223CF07D577F09D9E40E4DA34A7A91A6827D628FBEC964
+7BD672722BE1647A4A51ED1E53536958A13DF69165C10471CC39B939813DA837
+26506BD312569097CE4C542330127D8316574BC6B13F234B514B13B151F49F38
+5FCC1511A11B3E488E31E7EB29ED38D4D9A04D1606263ADCE796364A0E1EE611
+73145BA0ED50B329ED72DF373701AB8F83DDC0BE85D296C396C94471E617993F
+34C7F27E96963A3EFEDDE4E89BDBA7C606BC6FE2AB63CE2C8C52724C004924CD
+B284DBEE7559427559FC1A5C5EE739B150E03FAA4573E4FA0D16090679BEB417
+78621339D334002D01BBEFA8D4D8E02425105261E9B093CBB0337301155CC554
+7B4AFDBA72FF0D111D26AA6C89AE3D8BF0ED28CBA683301DE49049527C0F8618
+A1B48D9906D88475DF2F3A9657BEFCE34FAD0A4801B959221A49C6C7425F20E8
+889401BA118221E6196957A790C159360437D7852A27E752C05C01180F80F2E4
+5FB6D1A0B2B781546585A448E7D528769B554936849DB7AF7CDEB393B86CFE30
+0C4430F7859146D7A5E371F0C443AC6B5A6876245643A2E147806EF7E65470DC
+5BA1574A7849C14F51951453FB88BCA11C8B6D5B3BDA0DFE79B68B9C3AF7CAA6
+DB4412E0AE6D40004418B10DC55DCBEF8411D6A2B4238EA63B9C4B7B7210757E
+4B1148742AD2ECDD1F39E47826EB95E38F304BF507AEE75EA8F814C537FA1494
+FBF1E1177B98262B9C7B3E06028936A2BA5741F135FD20B32BC987CDAC91C6F2
+A528DE9C430ABE7B8A3DFE96B2C4B7453BD94595DDF7F726810143A8BD7F121D
+4E2745AA2A2CBAF48576476D8346D0637BD329FCD2D15D164A78B4A845421D98
+2E9B65C14E8810A2E4ECF05966B2DAFD9FFC2E23A27E74AD8A8F41964B206CF5
+46CAA9F0CB4F9302113C4B84EABE1C34EA1DA560286FB89D069E933AAA6CCC8F
+8AFC1A6D5CD46B2D3FC079C42A3CD448B724F859C71755DE746791E6D2663C62
+C801F5A3851EE07EC782DCB89CA9284302F1B238962F02A970221E248BA87485
+3352872C96DF0AE2A25125880852F9BC3FF3EC521E5377907E1A4823F6F71D8F
+4A00F6B64393895826FA8A795A22FF0ACDD7B434BC0B6B8CF644F277B5AFC638
+CD6110E69851E986261C4FEC776D9FF446F974F01DA8B66C29AE35FDD26287CC
+AFFEC304EF0F4B4D0207A48822373DB031BA5B0207A27C202B8E6A9225569269
+FF224E7A5C7952A2C9CA7C574877654F5A885AEB53157CD9E1F86FB8CE6BDEE6
+3B4B18BD0DF048CACAEB8B1653521B1CAC70674C8E0E0F52D1D20FDABF255735
+AE84F2460B88FAB55BDEBB0E92319BA90A6860DC939EAAF454D3A1E7CBB60ED9
+F94363F069F6A7209BC408E29C2769BCC287A634BCB8DA80836DCDFDDD265D6A
+BFA28CA76A1ADE69A8EAF62540903706ABE09BC0E91DD87EB38D1482BF79862F
+85E4131AD1B172EE0F47B627EA39F14BF808E2E7399E7A59886A48B57F06BF74
+2A81D5A429F8D96153B68EC82AFE4E3046B20CE5B56A6197196EB1BF5063E415
+F75969C72918F0FDBD0B6301A3582DF9089151515B021904659D1BE4B43B29D8
+A485C48F803C9F74186C527DCFC6322A48E4DA39A29A7DA79EC395AE61FF11BC
+9860E8036B67A06CE3ACAC15BD6F5E0BEA287EEE4F16EB3C905AD31BEB76E434
+028449F1FF147AF28F382929EC5AAC6F0528D4A5600895EF0852908D4BB6986A
+34BE0B0F5BFA99443441E4396ADF11820A37FD7EB079601CA692CB3C950447BA
+46AEC7F4BF6EA0787F9522A015D41C58DC0A9ED32103892D3071110EA6189FCC
+940C1F39290BBF3253CB42E015108018D91CA8EF5D52BAEF026FD1D20C395B55
+E0C6A8C0E199E9678594AEBADB4C7CA15CD16B1D97B9E9414077E4B9D7D37482
+A2153944B22860F6E736F0E3B88AE3B66C7FBAD2545E2867F7728A4E317360AA
+51EBA228CD7BD89C5CF33F50F00382E2F38A75837487AD9D5058423A5B0D4FC6
+C40ACF7D697AA00F8C0DE7B99855022B457C2268E5316F7F496326F3C86E7EE2
+83FFC6DC42BEB91978670559466F2918BA13C5E7BCD36D589100C292D0FC124B
+567BC886C60C646A20A0DA1E59620BC57F2CC3C7042C08FB6D992C2CEBAA45FC
+B81B5D09D8FF740CB6DD5E908D6821B32E0EDEF8660AAAFA262844D5213914D2
+828D12AB9EEEF9EA65078B05975B4625D5505518C08CE8C150F5CF933B17C7EC
+879D9839BD08BC38F84A0AC362C260CD0B56A504351AD2DEFDE3EF044F9312F5
+B9973552C834A293EE64C2BBA4D47B2A95DA434BECBF22D26624CEA215B6F364
+1902EB2150210540FF8B9678AA483FB1C3F103DD6DD86B0E3016A4DD00EB7B5A
+BA836EF9E9F26307F4648603AF92FD8B9EEA19125091C3F33F50D9EFA965B7AA
+E6D8F5EEA76A1874DB12C874162074F615A0C141647EBBD184AF5D53418BA286
+AA3A10106EF65F09511B26EA124725C81583B79351B96322257EA15583C600C6
+0E8307CAE7853FA002CADB2A90CDF98C8FEEA629A25037E718017B87B806145F
+F20E0057F9CD60F0133CB01BDC8E502D2C4B9100DBEDF93F955A35B70900EAD5
+C045B891E0CFA1F75031BA2B346D0CF632BD629A9C5D3258C1D7E0C9D1D1593A
+110BDEF6FB4B638AFC2F78DA1B4CB524A2B3502A4D62E7B13A3D55A68B00199F
+5687A3D259126CEAFADF2499D0133959B0BA9629D95668D7AF12D82A906236A4
+837635EE78F931B00EC1BEFCEBD8B97D468A0D38B449841947B4A772BBD5FD5F
+7B1B657B2520AAA600A439E395584E339DCBFD6D0256006F7C9D39904B55416D
+507548A98EACF534C4587595D6A9E276699BBF2BF016D4CEF438CA37052FDAF3
+DA3D2D3441E31A623D3CB143119FF95A1F04BA7D3A9B5E561C492658B3F5444A
+7DE7BDF42A7E211A6F624BAFFE91D61EE884FD84F06124ED9677A15B6131FF49
+205BF0B9F7CBA8D2A6BAF952F5022EBC8AC56567FBE269472A08FEA231219970
+B7A9D9842EAB692AEBDC37C749562680FB7953D8359D8307558B8624E048BDCF
+C45CCE9134E120F8EA1A4186E57821CD91DFDA1512200D0F1ED8844A13554EFA
+077E848618A426A480B82B4556079C11393F07F355AB53494B965A3B304DFE8B
+020CFCB4782C58065F0ABA591F4B807003ECFD955C73E38F37CFCE482B2A5A30
+D32D608A142EB964B6B66C3B6F0FDCF83BB5E36E45E43EB045A7BDAF0C75953F
+D382040EA2B54AD9AF2F7E9B582B19318D7987DDEA32280EAF70407FC80F3459
+F92A5F4627E229EF4ABAE598BD9C3324B07276B9E945CE4B74163B9DE723933F
+6BED2E0BE0B8E95ABDE2C4FD331CEB50944C8EA073AB32C0B7BCA5AD33455872
+08A32D4C25F67FFE0ABC8DA05DAF65F6886BDDA191B493BA7A1211CC98C7FCDC
+25F0A251CE379F378F73F9C3FED8DE5AEB3D4C8E2CCA39687138DFF0D1E26E96
+E9D3A4F6FBF5CB961911C0018F762BAF53CEFB2AF145C55E7AF367790D2BACB6
+411D6F5DCE3F27C4C490A9852ECF4C6A2659407FFD1FA16B5C8EA47A5BB00E34
+4BFA4446A6925E5D5752245AEDC5D4E5B2BF51908ACA64418DE64E3C1DD1A052
+BAD0CD6A1176091CF1A595BA13CF260ECE6375BA1A5ED68C0F21BF01A7EABC4C
+189E2FBA359BC17FFBE565628CD01662CD4EAEF2AE0836A742381B59E4770907
+0252C2B21CA6471173CCA084F38E1A10B5D38E4D609BF30BCA7FA4223A4B44CD
+8564002503E8C1FE7596CF9F3F6ED4497223A1AA2844ACD08BF7E7804BBF232A
+FC2B030F1126608707757B37F2BF295B3EEB61ACA417C12C877600DF9E412EC4
+22313D45B0A92903DBC36F336B9CDEADD122024E4E9EC1719A05AF161314CF59
+550518D598C1F432F6F619D68C47250AE9631837EEB52180E307237DBC0FCA5C
+D6445C5EA4284C0834AC268955B7084BA7D1384E8D4FBEFCAB3A1C8735FF57DF
+CC8FFE2BBF52AB9AC097C1AF30C46548BF5CD32D71502CBDEB3982F85793C229
+F72039A25336266E5BBEB3005FE48F771ED9AA3161E88121B62F8D03976FFE66
+4D40E1DB342A9DC540225796DB48828FC2FF676382AF3D3E70E75DE05D7AFD43
+DDD0A21B5F28209FBE9C0D1713595D17EC31F94D3AE98131E25663BEEEDD8D77
+ACE63ADA18690128517D2A9C1EF0EFD2F8BC2C68F4DB891B4B5BE0A0A647FC5C
+7248EC6256375DB235F48FE85AB575EB69EE092289102409A26E924F816408E9
+6A148480E3E0A426607D185993F36CCFB81468D01F25343F91969EB0C65C73AA
+2407EE10DD59CFF0DF9BE2FB4069D03CC036E4EFC709B039F529F6159A3FAADC
+95FA4993E57EC1DEEFC39131156A75BDC06A2659DCDC0A9FE78C4F6DF5ECFC77
+8D555E10336C4B9A873CE4F58A9607EAF7AD34C45A8C788864C39B9750E4CD30
+5BB52329B609780125FA6960DDB2CC21E368571785C1E61D4BA2CF57E996312D
+8785290A893183DB2B8590E4C65F25E6B67CF08DF9713FE785DE8956BF9F6E95
+C8D0BE11BB23DB038BEF4FFD7A5C3C41F88A72A64E3C0358228DDFAE06E428B5
+2ABF80AE2D3C194A4C31DA6F294E7B988AA655D3105C5E0A01CA3D2F073F1C09
+903CAB398F3E78BBEAEE9AA555B5867D1A577BE0B7CE7B92A9C2E418C156DD6D
+1C286A527A8345B852E6E364FD6DDAF9A350446AE32D8C195FB34D177BB12278
+03B0A4C993C2CC198476C3EB7E910FAA8441062670E619F06F543B4F0DBD92E8
+DDD0F9EAED33CC1717996FF3C961F1A31BC34351FE75CB3AE344D97D164C9C47
+EBC30F73E3782842FCCD01C64627602BD39C36EB76DE02AE3D71472C78112819
+A7B109DEE09357627A3AFC0D48BD43D322E9B8BF2C05EAAB45D3495B86A1E639
+5E43817B1ADCFD85BE0AE455EF4EFEF75A6C52CB8210AF749222124594646BB4
+5C6E89246CD90B89D60C2E141CD5093AAD78C31F724EB7C14F69AC451C68C700
+A520FEF0ACFFD8B4B2092A3D6534E2495D58B8AB3D76199A62EFDC2F12C39606
+EF7B0F73FB37BACDD3A3813220B4CBC66978AB207DF7164F05DEB3F9F7916F21
+647A6482D143482480CC14C7676CD04094C740EF0CCFC2AEA3B4E4DBE57DE61B
+B67188036B013E93EB47CB55BC96C4DFFD6D671602E53C7807D04597708FC7C9
+F56819B28BD7E2731F3A0C71F08CEED40C354946F5CA237467DCA92069CFD851
+7BA1C0E398C721E597D47024670F64EF00BCC74036C9FF94BA8DDA00E2B5F152
+8F6D8FD9C58CE4B32D1F9E17490B76FB107AE92E4BE09378E00ADE4C7E737D4B
+9B26672994CAFFA7B04EFDA7332AC5FDD175E996B4DF867A5A5B95CD40AEAF51
+5B91313A4ED9D4EE86EC9B5CAA594AB82F85D89B42AF50AACED0CA3046292E9A
+D8EA95CFD0F67259D21E1C6D9E3CA990C2B159205F34F270EDD783277FA33993
+5F8EB1163FEC6C2A627218BED8BA4C38120E46BF161E75B623811C1B2E1FE99A
+CF93CDF69995D628C6965CC12D5216C1A829CCC390DBB87D6FC5DCD0CBD188C7
+DFFFF86E17D5AA1162084DF13F51D139A3932B8107091A507E613F8FF9AAFC8E
+EC4FB236994E73D8277EE91FAB4DE51D88E0CBEBA66BF190372DC182C643228A
+9B6E7E0B61904496EF1646D7BE9BD12A49D78364706F4A2C494EE8B768230113
+80E61EC3F9A33A2BE64F7F82FBEC5A4537C4A10D7D4A902F7208572B6ED7E8EF
+0A70D05D876B5D1163AC5E8E179BD0015DCC0614DEA8185FE58C207B5B559291
+A44B5D6B43208F3BBCB61185498F9C2DD395A1E27180704BECFBDB2D2E7F3350
+3E41D557D930D0BB781057C9322F2A23AD4D362D316EA4E46FF98336C761E9B8
+C638AA52F5DE03FDC7FBA76FA91DFA604B811B60227CDAB0AFD7EBA04C7F5500
+E71F6B96E79EB210BFDB3C4E17F8DE361C46A55BAE38F520504B4049F4D3C0F7
+0552AC71AE9ECD8C35F49EFE8F446088AA12607F77A0A132B78E7CF4776532AF
+1B2218EA9138E76106341AD429D8609D77EB18796AF95E857EE12AE941DFD293
+2318DDB0112E3FC3916C38491E14D620033DCD1D2F568A06C120EB7694390AEE
+21F3CA365EE38DCC3D67790684697DC838DFEE3BF615B7CC620928366B8A2ACD
+CA3DA7A679F863BE6DA27245224DBD069AF51D28E7FC3925724903704F362772
+67A2D8C3B1E4C0F343BD5EAB5C821E9DD828A465A80A7DF48F5F1153DC56228A
+15F81915064028C561A7D9DC00504A12B5212A658A992388250771ED09B25619
+08473133667466EDE64986FF166FC705DF06F970716602DDB38AE398AB0EA5D3
+FE88D039FD3CEBEE13D999870890EFE9521E30A4C78C154B9F59D2C0DB526950
+F4C803889FF887377848979FD5A5C135E541EECB1D296B053CFF2BA6BA2CB48E
+137B678F06B1091389ED9E69CBE13A653E37A14A09B754B1430C265F503622EE
+F87B1C22C747C6622ABBD1C3C75A8A0D980651BFCA3712291C119DE5FCE60E02
+CCC0463AAB39B8EE681FF905B4FB35D7501F95D0A87B2587FA0E16ED8B773586
+CA262BEACA20E1D3F33E07B38C9609C780472B665D577A1F868D629D84B3C8B1
+CAA7861633380407324D4FB9F3047CC3E8642B4CD1A035E3C0A10B0F43FC24C4
+92273CBAA7144D6530A256B2DE5D15AD3341E28A6561C1DA1BA572EF8AC0DC84
+274111F1CDF068595A77DD907A8381204026EBEB0C230EB3C563FD62DC5DF9B5
+4B7FB4A788BE81CCF9B912A186AD5DD1B402A5E4668DA0A28AE3C3EDE128B4BE
+80DFC9DF0C000D812D932F80C2822B1640C8E3F46CEC9255FB2991EE1D3FC7C9
+F42669091B433190A5773AB2DE3B6A808EF33CE857D93D8B5DE09E2B864C1BBA
+0AF8E9411252D76FF921CB6E705539D2B773F752269BD3158A25999552415708
+BFDE7B4FAB16E3E511C90EB134511BD8B13FFA2C3D92AC07962A201EFA8A9BD0
+EB9B25A7512478C70BB4985620C8C92DA55060E18C70C03C5B54A1E48B39FFA2
+C06EF56825E934988061EC893E6163D4D4663D51835DC13F98C27C5E5A186AE8
+5C63668210386C7F90B5B227A1BA65988D5E7B74B2F18CA8B30C08F1148A8A5C
+7FA3F8C1047602BD4706725689C367B5024AAAB48E604AF5A54877571913672F
+7266C5ABAE9E1F15581D195A8BF6913E875AD4C58999B19367801BA52193025A
+B0AFFB630245F26A283A94170F1598CBDEE99DC2A1C07507BAABD4FA60039A7E
+8CB91728F69F2046680A8AF6679F902F71563A0657FD94BD029DA971BD4EE571
+7BBCF3C1527987CAF4C3CACCD502BC7653632532E139F0BD2BEE36E8D37E314B
+372B2F3752D3343581CCD5DEBFAE11A09BF4334F73D1FC50EEC98A00DC81E160
+E7DB6EC3916038DCB96700A607ACDDD929323DFD961CD5057F4472AB3BD98108
+6BA0C2708152EF29C77DE49615E1CD52153DC95D130758238977CCCAC94D3A16
+EF90CBACEA3BA3C4E3BB9AF83854AFEA1301F8EDEB4C448354F30F1CC469FB14
+2C85A552465AFFACE55115AA7AF3A7D7FA9F2B3186B9D0E2655F73F5FEDF7F80
+50A83D40D050E358F6904BD8FE102F19D707DB078A843AF32DF381E341FD3D4F
+3B75F547CB126F70EE4C36D8B8787F0ABCB2A190B0490F22FD304041B0E4DF8B
+35A64217EE77C40802292F7A4A0A92D249D789532F02A33B8CBF938381801FFB
+051D924F5A52A5C539C57C13683B1D335197F069F5D5D7A43CAB5FC1B6BCB27A
+FF820CB8FFAFE4425A11A3D1484B296CBD7BFD68596DAD18BFF8631B872C89E4
+E82BC21D71961677146744ECDBFFDA389AC3C1B4CEF371D02C3069788997B959
+7F56FC475657CEE7E1526829FC8EC8FEC33F5DD316A19F8F91E425A51606F987
+99495DBB3AA2EA3116BDDF6464ECE47EC9792F7A2CC58ED980DA3583C9EAF207
+FBA9912578E18A9461A42A0A7E192F83429F653E1C54CBDA83EFCE597259BD10
+EC8C15406E64E3FD1E62734462F66A1A8AA59F03C7E8D671BB2F71EF7CC9A235
+D0ACEEC8EA98B35DB4025AAF6627811B437A8E52F10AEA99FFB30C4A780450F3
+D6352D7DFDD0DC031675813F476BA4522EE91BE71BC655F2C390B56D36652058
+A203457679CFC54F75B515ECC64955A9B6F0818D835E33E8E3EC65040FF4DF88
+DB5DCC5D848557D88188161686F4195F26035B5C7E0B172A20EFABC8CBDD2E4C
+11A03C4FC4D73D7D5008D67F4118F3364D1144AC4042812FF53AE2421C9794C5
+4A8C2E21B1D674C1B842AE430854AA1EF951521BC95DB6A7811A6385AC19A61A
+86DFDEEBA2C8F9ABB91F6699F97A1DB7F943B49991650301C3FFBD7670E013F2
+54094C629A6819655A4C00B2A35E62D68DFDE02F682FA0341B1CA83C3CE9AC1A
+C10D170B957C239F911CE1126A92F84E7C79F37F9EAB542457D8CF1C90674ECC
+4F1CEAA8897E73746B4845C1AD7E7ABBEBD755AD1CEB3BF2E39B2C87A2CF45D5
+167D24FD7656A9AE53C0EB5B5F5493B9CB809DAF833CC6EF29F47AF82EF1759B
+36D0C527CB5B6BA3C80DF3D409A8BBAA6E837A14D959888467C7163C6296D920
+40629C57255C4C2F93380C1C4D894E9960D980FB07D85AF29956FB705195963E
+8C3B456CBE21B099EE0415EEA67C7F437CE777F1C94579890DE6639E39CADD67
+06D76B937312612E41B38016F3F4CE03D1E73064DDC7C6C9E970892A55DB007D
+30BC2C5CDA0580E2DF13A4EE79A298B5BE53F30100CFAFC23E578B8ADDBE3515
+485728E382359D114C1015DE055A6BA02462C8224D8D0DED58A54E06153E42A2
+EF0977CE9129C70776A6908A6E8B7E58A4358778DBAFD944277A92D12E6E27FA
+E6DAC6958F8507475AA3DA3883C5A6F3FA83324E37079E6B44A52313B3991940
+7CCD7FAFB690B86AA40A237347955E567F2370FB63CADB84FF1B9AC99FDC2355
+30A3B2C74B3F28F8F28FF30B9EC8112800AAD2419A982C3FD4480C45D91A3095
+B55FAB80ABCEFA4E1DEE7F7934D3D987BB9F2C842E8B54BF8C53615EAB170102
+4102F969A27A85B2D9059DD56B737E7A5FD13318C174ABBD72A4001093FE66C6
+4654BCD1C94C3EB35D3FE7ECE712DC781C2269530E395DA15402516F8689777B
+D80A5607EB8F1710896230C61F227B96B30D90F34F95F945578C6F57EBAB5754
+AF5B56938118D79E98C816C901CB7E489689E5C3D6DFE80234237EA96BF17F19
+E3595E614C3675EE55262BF288064A9599E7AB5E22718A5B3EC97BB7ADFC352C
+E3028FE22E3FCABB7717D4643AE4E291FDD07DB0015EAD90938D970ADF56660B
+07B35F3D5CA96200DD491826249E7244C30FEED75325D0DEA44D42584E3979FA
+BBCBA15A68B2BDB658D748D5A54FFC69E2F4777E2BC8FFD9B8222EE4AD0C7634
+E1E514FDE2A91445EF7A57F1DD74B041002A5679A0900617D776B704B82AF17D
+4A4F1F9D8C655EB6E7DF245AD4A21CA0709D78CC50D3BD8605BBA89B8326C87D
+08CEFFFAE3F4747E65D6166C2B77A8FF6CFF312D4997538390FF97E1F1324CB2
+D62575DDF37DAC2A5941B252AC6C53A1E4AFF31A478BDF1FA36E55DB8AF6EBBB
+4CDEE70E5CB4DD2A91E9B85F5E9A1FB125E91ACC965A0A1981646396D63B510C
+AB27EC3730CE29CB8B44A07696C026EF713B16A1976F981E9431D115B2FB9049
+C71DE7DBF37C93D92938518614C2F4E9027A5825812A8F8D89B44324A7072992
+9B2B3F9C5CACBA7E93C207BD6598349EBFD88ECE219BA69805109FF4A4F180DA
+725B221623F04D88C18540334A0F94160878089735A78DF3A9841157EC183725
+5ECCF645CC2CE98A372AE54EF603EBD99F7F8B4AD7885D2A139E0D777A098696
+58BBBFD322CC5C4BBB41A76B4939BEAD8E0FF9FF056FFE301D5CA626D5057988
+EFBD86845BF377C99A5B8C4F305448AE05E657DCC59C69AB96E73BDD82DDCD20
+75D6BF26FB34A4E304D164ED532FBB642D418F4031D77140EEC9D2EEA628E67F
+2A41A546105858D93779E8EAEAFC3C5E30B564993A65A6681A7B8F08F9A81F95
+3F1BEF143AEF54D16B69763E8699343C2DBA3B7B18F24516CC27DF4E6CFBFC51
+3D0ABFEA8661D21A8C6901AE8FAAE1C69DE48F797A4EF9E74E5D3AB4DDAB9A13
+6DA9597CAFDA19735E373C0CCB9AC00CBA8612ECE2FADB52402B5551C918ED17
+D6EE1A3271CC1BA38820A8B2277FC9082742F001FD3EB7580C12E4896F0E1FFB
+2662B7838342B9C59D6871CDF40DDF37C5CF9E9DABB50EDFBA071108A505DF75
+B7F80350BF7FC5952AADED7CDBE037763C946C41229697B99F8410EEF31561B6
+AAFA8ADFA46C1A323AF857116054C3C610A7C68DD9207CA1EEC49C65D61B45A3
+BFF5A1D9D8E550D21014C230E6FE8CCB8827D4C1E9275C24EA409B9DA6982A45
+87479ACBFF83EAB2407525CC9F7171F444350724F42BD668110559BE4A0FE069
+11CF8BE111D312377F9E7A299278F2BEF5D756E0716C47DB80230FAA44E80D19
+E33FCA90BAF261127367BFA5FCB439EF490B0BADDD6FEF9B7C662CFA4568C524
+04FED1E8E476C8F4D453B5CA08CB4C93F5C845E2D55D10C4AAE4F5341C57911C
+2B3AC4E44F8236F55938C35BF2209D0B0620D59E0D0959EEAE2336DCAF39E75B
+6D908FD1CD7AFE1351DD3608B00D30CC5C349ED51EC5844028A2E997FFDE6DD4
+140CB0BCFA6EF678E063B8E43F2FF63D0E5C0A2B6B102EBAD19F1E7465791063
+0A87230C289B36BA2AB6C45BFC4ECADF46D2D2A9AD636A3E1C441757B5435EAD
+0039B4BDD2FE49C8B274A9BC20C8C9279F66640B4CFC79B594262D8484C4DC15
+10B9C4CB8EDD33E4E4B2CA82E1EFE51F8F6474769204F442977DBF7FA93662B5
+7FB88B0FE3D01B0418C30E8CDB3A345586A77889F32C7D3B32D6CFD99D33FFBC
+87A496B3ADCCB0CFFBD6F0F8503BB431AC53CFBC9CD74CA839534B0904146B6F
+DA37C37E38BFD3018754C12F23CCAD2E8B9D785D0D991B6CCE7573D1A3CD11DE
+5C13279763F7C01CFC080ACC80DCD121BDDE7D753F9E7EA5B081A880A3ABF6D0
+2A9E99436DF4E0D1BF51DB50836885D2BDF679547C03D32CC24EC7AE525AFA60
+2F01519855F2710166ABB6524780517CBE6CA03613BCEC4F815A3F26A325A919
+E88298FAB2029FE4809801B9F34BA5DE4913FC8AD53C2C69DB0823D341EDF7A8
+0BDD5820C5320F83136F120C62E533616962B0AC1113F7C5FEA153E53DF8DD93
+6B1275A9EB69A1AAF094FB239EB39B0FCA7DEB28FDEA4F28DEEB8D036DCED361
+A73FF212ACF355846A1ADECEBCC3130259B23D01F51EAF1D98B7C5EF0E72000C
+0885CCB2229D7196EE55648E64212CB18BEF3292F638BDD0B05EF3787CC8A6E6
+B34FDDBF722CA2A4892DB03C1FEA5AFBC2BF9DE80533FCB41291E2B6B160827A
+326D5A32CF971BAC82760AD86C8AC025DC943E5BD2B02B012996A58A2D7371FB
+AA61478DF11B081A869AB6EB67694FDF49A60613ABD7C12AC62F19D3B7CB7F94
+9D8C61817B29DC2AE96F6A8715BAECAD56FFFFCF5D03905FDAFF3F8B9B319CB3
+25252AB3EBEB0C85C6817243E775859099B8B9CDA71851E35525DE464F6BC259
+459F6B4DDBDEBC31A1EEE64AFDA5B0D90B8E55872EE65CC571A513FD0CAE86FC
+5D690AD99B291F6D4FFFEDB3BAF7214F50CE37511566D7CA2766AA5704382270
+A41379495A953F247BF4C7A4DBBA37691ED9C7E2BF2462802C3522DD6364E59C
+90327ED2D7C89322361465B73A022FE3D27F35746F6E88C9B8A4F0311EE686D2
+F31D307C5F5A8F1E4723CCD8FC47E39D9FB4CD4BDC300084E2348D00E71A516D
+1C65DE9428E18A31BD9F71D99552BE2C55747D7A6E499B985101FD19CF584ED1
+B30DDB63008915336EC5375503C6B126575A1251B503473E4A0D4CDF23014DC7
+BD807BD934C74EF0CADA54A1E1D0705F3C1D8AFAAD5F4CFEF35DABD67B80BDD7
+5DF273B7B6BC19E131B1BB05DB694D121199416E9DBCA7A7DEB13E64FEC3BE53
+491DA79BFE22B4D76200C73935A4D588E0F48F1C991759E2451D04E2C30942D2
+B710FAA2C7E16471ED375D1369F606C591096086AA37E9BAD2B4DE2344199EAB
+1A9435041E4BEB8CE0FC53E78864E55EEE1A6E6CCE4E92B1C67D13D6D0FB1F93
+F628153EB9857ECEBF77415AE693593C57F3D4E76C56CA055799E6495E406A51
+073AA03085E104709B4DF3066ABCB45E7C3784480596E2853A512A772C576DE7
+1DB7056028D6874DA38CB6B4D00688D168D80F5E89D572921BEDCCE7FA4FC142
+1226F1F900872E91EAC1DC4427DF7F99C50BCF92B81638B2023927F92FC3A715
+A409298085299BC4BFD6EA8A97EE7F1E67DF740C08DE389FBD4AC1817C14F0F2
+919E73D99B5CF6209764D239955795B8B5F0761C092483FF96FD61E6530372D9
+222A0405937493CFE22D52B4526A45AFF7C3AB57153F802542E4AEE9E68A6FBE
+5149B20449EE4F4AA47FBC0CCA17A489B48CEFB85094854B5F4EEEF84C7E5E60
+D92CF9C46D5095B8AC73C8D97C8B0507B3573756379A457CDE744B7385EFCC21
+68CFAE2165378F8EC2516E71DD89A62B0075937BA1B4F84A0F010DF2E5E964A2
+6903EA13D2D17B7B35D19150AD66F8623DCB96D043C0277C80989E59CAF6ECFA
+D8BBF338EFAC34668D15B301110F7406ED65DB43B41DD438083F54897AB7B98F
+838D2279C49A48C6301E9C8B616D1426BABF1DD99598B233AD30A13B5BEB8DE4
+EF136163FCC5C3BBAE35FAB402C3036C54F46EC8F5266C02A96D885660EB7FFC
+E6A85A28F59F4473E1A3FB6B81664ECC7A35A73AC79D5089D5074C2D3A66026A
+307D9C73187D29CB652C4800C6413B4EA752A275ADCB432021620C4DFA082707
+352ADC437DF089DCB79C7AEB371D864DC0D16287A71CDA2A958E56D37B080002
+B532E5DCF010D3B1A26B855FD25359A10F84AD3644E5D600DBB78630FE4E39B6
+4868130A1FFD534B9A4D2BDED8B0795463DF705EEF22171BA3DC6DDD0B07153D
+2AAD6271E9EF6D80690E3CC1D958BC8BD09769805E7DCEDD1CC0A16CB4D824C7
+5D1EF88F46A08E53D67BC1D27204A185705972E9D9D23462A72CF60D2EBDC5CB
+33BB54AB90AD5ED13C4138E2E89AE8CB5BC9528D90780C1E235305DE7713ABB7
+A3EE834577C8A81F05BFCB0D4DC15FEE6F353E891E7C1BD7E605F40ECA4DDE1D
+A9DF8403483DD999FC11B68652830AC0BB8BF1346D056D52548D9F8180E01949
+3C4C5848CD5E5BEF564114D5429BACFD8035B80E19AD07D1460850618F18820F
+CEE2992EC77BC22EDCC6B5B78C8F37E3E722CB691F66F1E71F004B6CB3F8558E
+EE5E17E13A12FE5D59DAD2752A626A29B4AE021F9B6DB4B184EE9CA3F2BF7DA4
+0887D528AE93D547C4E7D8B1A3617F5A5DD8E067B29E88BCC5B646BE478835AD
+E40538658779B671AF3A2E2BBEED302F6D5F42CDB3E0669406B48E1D46C1BB79
+502981331DEF8E4B51AFEE0FF9491FF082375562F5292104691887219C209484
+7CB6DC824CF415CA3C9D96EDB34A01904F6880AA12BCF1E1F56DE7A10DD12D69
+83FA9D950A425175F69324D1352AC3CCB76B09BDFB2950E4462CC99820C53B1A
+CA33985BD0999C02DE84D9A348D25F9E361E57BA4CECDE862F7448DBA8213700
+F2C44015C4FE822F6CDFADB0B82D04F47AD18467195B3CDCB0959D60C00CEACF
+8A1D1950EDD1767B818A3F57B0FA17C0101A2DBC0500929A29FC28C50800F47A
+38043CCDB3F949C0D0C082929692858D08CFFD6E20652465A3CDE5E24D50DF4E
+C7212B2E9AEE131B0EDD0F2E09457867F196EC7BACFB68EC476FB91AFC3CB309
+FA19C4E79430F9C343FB4DF5F8E6BDCD8DB0A2BE0A753E2265FFCC3B08D345FE
+6AA038EF222E300A4707CA6F8F21DF2A9913E44C675712D5FBD6581A7718B67B
+A83C19EB4044E9E131C764C7B364BC095EDE2D9DCA582C7C710D7AFD70B845A6
+E5A8605D5D86CC06E8023188501B08CB9AAED731F6EECB38A3A1D7586E26AD39
+283120121054740C3F25FE464DC2D5D00D4ABBBE26CDAC7B510588810D20E2C4
+8F0F3DA2919532DFDBFEE036D750ED0289FF00D7E6C0AA09F052C4874309EADA
+EDCCA510BC3EFDD894EE7BC7E9F3539C6CCCAA3EA1D3DD6F305427B561C7552B
+A02C193E21D95E0B928CA4861278156D2B03DD5F61BFDA4C57F3F9FE2CF39304
+2BEB3ADCB2A0B07210FA8D4477DC4508D446D9B2056B87702A517D083E2686C3
+279406D4E723558E527A9BAB3201E3A6408DE34A608C004C34EFC6136EE01E7A
+7C52C5B48ED86BDC246979CC28A7D442C04530C9174EA9C125F0EF822C4D4A05
+A571C01B056D55AD5797D426D0813D8803E9E46630978B7712996C7F7E96CBE2
+A160E6F628CC27607B1BB5C5A76D61D0D0F8E93869B4479D63FE65CBC9F32F82
+E01C7DA4DFFA643305DF43544CEF4339F2248DEB0E1DD00728BAB0AE5251D05B
+3B856A5E333A462E91480F9ED5E6431F56043779BD85A94C0FBC674CEAE4BDAC
+006ADA1B24A3DA3FFFEE2DB573C43B3908707EA1F0F7DEF59E06C397F18FC328
+799423BC3508FAA5AABDC230039CDE2995B5B850228BD5EC32F5C5248F921C95
+0104E1FC2D1E59CE35F55884B6B60518AEC8FD81DA3878363C28C9FAF96019FB
+2822AE4DD80318F8701DD49CD5CCB07A8740E8496251D1D6D30496F2C568EAC4
+0AC3DB6CA871F289B824E82D42A8E95AF072A304D9896F570395F5A21DBE11C8
+F483783912992D5336734B95FDE53DA67AE91CB9D9AF29BB8A52CD54A39D2070
+B996AB101C8EBFE4A04D66F407F1A5A8D0330E3954114E41D71BC8D2FE85D805
+D12A4AD9700F64A0A42E308E0F41E943ED427830E6D1ECE5A2A4F4027FCA6BF7
+F2979E60AFF9F4E6F1CFFA81451D2B508431505096D29C1002F10CD0A2434691
+D643F9C54926F866DE4EA2932E9345272734001A60330B2313D73643589309C9
+FAFA0643A869033E1B79E532C439E6FECA577EFFC89A78CDB672ED7EDCA17101
+7EDC42CF01F2B0D483690566A2836A0B96A1E9F25732284D53DCC9E54136D164
+6EB7F0A246319431B33C510118B5E93BF96AA2EA91F8EA047254F9E67CE8F7DA
+7C5088149954EA430DE2BB41F40000C36913C521E6B9861D645981292CBF2558
+D14335C07BD02725418EFCE21927D10148F5ADA862A21938185F1DEE52D550ED
+120DE6644FB7E51C5AC063E3848E43117B522D95AD7BDEA29729A9E85709CFAD
+05A2A69CFA1544447D4B3F4A859C0FF96DC0DEFE78044A0FC85EE91D371D3204
+7937A2B9CAFC97219848E1A102A18682DCEF3D6FBA50C83D3D1F5CA6A06F1D05
+D965DD0BF0942C261D738A72D94D4ABE288E5AD81451B62456C01F1B568448A7
+533E20C38646A7B53119DF45A2E82AC51A5DDDE588DF23CDFFCD1E7DF01E6C80
+0E1DBD537D48269346A9FABEFB387845ABE11F5B951A3C9539DE4778946185F8
+86F3978D2A0FAB1CB1172BE2DE1CC2908872B03FEA2E71B6D0CCB8462E4FE5BE
+2954CEFEB2A7522CBCF7973B9BB5416CD051B289984D0CD60C8A8BC59F245349
+8365315EE000B8A7F1460B15130648E7BDEEB73C983A1F9000E8735589CBA965
+1B3B3216DC4594A6C99156DC64CBBC906E9D9B8A46802CF9589546A00717F4FE
+4DAEF735A0F6266FE8200B4B862FECE518B5A300BD9FFD01FD71272E3736B78D
+91842B53C27AFC216C014AD8F211D924E9D41427EEC27E24B5C7B947BFAA66C4
+1CD785D1012ED2A787A3612CA3111694728D85756D003E2C18B69B58901785A6
+FECCC6DD966336AFD8D6F2A524E46567AA13A00F27C2CC69208500C8BFE21716
+27188E8D93F36DF766A29811120BA00E413269E47F057C5EDF7B750785409CF2
+9F4ED976F82CA0411DD44F11B849626D12D320DA6F95B68504FEE499B64C0A4D
+14076179B9EA36B7EDCA5BD6442974C7B197F78B859E4F9F09095869AF7B44F0
+DF16566A0DF4142A2714C5F02B5A431D5B2ADAD0E0A5CCB7F425A19B15AB0CCB
+8A93C64739655E59E16A1D97B3E5B6056428048B4B01DC0C8CCAC8BFACFCF045
+140241AEDBEC878FAF85D7DDC3C99642A0F330B484E00927129B6AA97121639C
+6190F0EBD3BA37CEE372DD77A9F1FCBA93F45FA21E9AD8ACD837C780946AC54D
+A68E986BCEB6BD70E4DA8CA42F90994C3DECE3B35875C37C806B0CADF2C76EAD
+F594DFA26AB52008852E67C0BEE6AE5DA64859234BA355355DFC78065A83CB86
+194698E1CF8E13882A60A0D4B0D08D20BD80E310032843E5B441EF80BC4FEE11
+0ECC4B99F51116B65ED83F928881B0D1E0530FFAF622E99AA45D974FA7874CF4
+AF5FA16311486F0EE103BE0D70D28A76A9E4E1930F12CB9B0E43171EFFAFC4F5
+140F958EE7459E49456D3ABA60DC34AD716461A1468D9DD58D10DD5E5F915A9F
+90E4F73CEADDC166B3645B0039B2CF24E8DFCA2D4A9261C7B13406E12BED3959
+6AE277F9FA06D8C70E1EFA74906D15845B3FE13EAD56F26E7EA97E2041E5D05E
+283215EB8E5BAFAB596D43DCE4E7C9BA1BB5A4708CCFD769194390F104B1F209
+A1916A440E9500A4089566F29BEE23F9F93C0F3259A4B66141822394EAC11858
+A735368ADCABCB4896111445E253C49E3682641EE3470EBBA8FC08C55B8D540B
+7D8A9FCC205FE1ABD98934CD76E0F2E3C041EA680BA7869547A1F337B3AF2E7D
+1F293A6604B53760053B88DCAE2EE141946CEAE5D3B38554FBF17A6DA9B3FA0D
+CC9AF77867AFB98FBDDDEC71DA2B392C9685D98AE10162A0C5F74EB774CF8485
+DE1ECA689996FDA1F4BEBC93914BBA88C68CA9BC146A8FE198B73C77F2393B8C
+4B0718CC95051FAF56755A2EEB1D361151C1B861C8B5259713A8BE80159AAD1A
+80D342F1D9B1378C15DE0E3CECAB0003B8F35454BD40FD3BC629CD89AE4C3F47
+F03F084775A6908AC1E086F17B2803FF5CA178A43F21D0848CCBA17011CB1F23
+3969BE5517762825775A8092E3ACBE1DBE58804F67F689EF82D9351E2A2E70AE
+2E5B14041857F69C59CCB86C7A8C72DC54EF4485D6CB6D69B959D652BB5B7C32
+96F25817B29055302404CBDBB20C054B733C78D01A181D85F074FF168F837491
+C30F9857F4978A316771B26874946249144E9B897E097C7D54301F00E49FE807
+DE4AE0D39F5CF337DB4CF6A0B486D430864B8559CCEF874B2275D8C507C37F5B
+213BBEDA0A601D422537CAB32015D5B53188E27B30259B9CA3BBBE4D77EE56BF
+7AA6C092C5ACF3D3EE5564BD91E07D49C8B7C6E5A91B5E7AFD2CA6169CA23C55
+8FD406A70A7DADB1E8AF288AAB6C82790E797068552C8943D90EB9D40F5348CF
+29A6BF5C19487311B3C7AD762C7A834EBB3E40A0CABC55DA1BB28E1B6E22C9CB
+F8D2F1BBC00AA263894111A5C617D38A053903CBED807628BE9299848D5ADFB0
+630010AC64B48E362C9D69CD26BBD2FA5A9D6179C365195DA1815C9C8EA4E8AE
+72FFD695DB419F1CEA4FBC04086F686F71A19B51AB9782C05C8572DE63B06B86
+0CB8697C2050D629CDB2BBD50F53462EEA873D9BBD8453FEB75E791433E59446
+1685A92DA218EB49A2EFC7B7E44285FB960B52D13529FFB245224CAEAD531915
+74B583979FDEFBF9166F4D2B570F14E752244A892BB0EA06597A0A737728683C
+821EB7E4755AD7A59DB6983B8F721F7B1FE79316B3EB18ECCEE73D4883E69FE1
+48A58C9C2CFFE6545AA0186C1F75DD99AB87147B5FB7DED13A9E856585B1C221
+CDEB59AE15C737105FED64CF32F360C7685947703D5C727FB71AB789B4DC39B8
+F48DDD537D200589010DC21172878332B92096B9B9008028D52DC32D533D4570
+0BC551851ACAA9DEA8EE1FBD1281D2597C48386EF526D4AA194F6399C50E52A2
+447C82F5E9A963B8002126382ADE1D89143D7A210B8161D55180DC7257345554
+C951A4DDD81A586F2529EC7A34BC12434DD673B9BD775ECE74389BDF79CE3D50
+54FB70012B5C961497D01A8584E18AC73BAB2E3E958E765B5C0270D9DC6D80C7
+1E879E993825200221A13A818565248E0A6C7C192419E77DED057B081EBE725A
+A696E39B2B87B75A7DC6B5F0E83F343AB190F45782054A7F2EE822AC2704A641
+563EE2A5E8E04D13BA7FAD2EB13CF5361EAAA6973051FAA8A5DE4BFE9116EBE2
+3BBD30D0A39872E8A1D34A9AE37273D91E4453C098815A6178376C5CADEEAAC3
+7A492DF7823FA2198871ABD0E2FF87F55E475D51899E915EBD0A2451815154F1
+4A6C024D214F67762BD9DD483FA26B6BC81ADF3AF215939019313B8547D3A8E8
+69BEAA3B27D317A2446AB607CE40E067273E8456EA4B07FB2BB07FDAD36B463D
+F9398066AC18D59835B8585622414331EBC3925F6CF4421614D9ABD92E5FD3B9
+ACEEE36DFBA857EC8902D109B78BD6832EA9B3AFE43229EECBA30AEE9A9EED9A
+46F4898797A8DAE70923FBEE4F9D936B4AB30515CEA4346AE6F351F7C48897C9
+2234FC06DD4C9F57585B7355B817006ADC0482D5FEC8DD665192FEE0C3B7B126
+F08C6FD3881ADF43EC2642B202D59A9A98FF082753EBF391C690CCD5A0409F27
+10DEE1EBA0635A057011325266A9AB924E33F17538234E2BA96D98DBF049871C
+EE77458D506F6A354767EEA33D2412B16F0A3412D53FBB3AB420C1E6460AD70E
+6B85912FA9A4FC1A729119EC9609D038E8948E8846F118C9A12C8A03CD691680
+49D5C12C9AA4AA35E48E658C8B3262F4C56849DD84CF8744FB5734A39375533E
+390BE9CB7CDE8E04A212EAB8E58F9FCFE2C2D547F1B7964016971AC30BA2B8BC
+89E8898809DBEEC910F912D1EF195819931647021AD7DCD57B17D8850FAB41D7
+9E8F1142B4D067EE0B8C0D7C90476CE63076C832DC2972CDB3B9C22DE6AF8C59
+306FF6DD83A005AE5236B1BD42CD0E32FC44B156C47B0713B94D0E8D8D04C7D1
+C4E6CB68EFE67526B017A81A399C4A0A87F6CA0139D0BC414671B90B29C51601
+8CF69066AECB360D7A1513D56E5A673559EDF06B66E17256C0E5CD09F2386E7D
+937619EB018A4070F222959D217F89746478AB1568F60900367FC0BA3EA68919
+956D6990CB0114119F5015FFB3E788BFA9791AC03A2A954F8B026128BD2250EE
+7E47CE5236EB13B7F144927251B207B502AB7C0B7AD2530997F4B6CD0D10765E
+046CDA527F32B123BD3FF3B57FB5DD25D5FECB7D4030EDAA610B2975E7D1D539
+908E0A44A3CC6C5A35F5DC94A78158B1640C2BBB2590D2971728303E59FA956B
+7028C5025DD0666A66DCFA45959743504598092EAF64F346CAD55B0BEF469C42
+98340240AEF816317A05F5822FC52376CDDA0FD6A5D3ECDDDCF04AAB183BFDAC
+36774666B0E5E44B4EEDAB9B29B3CDB31A4FCE80F650018E17814E29BF6B5F08
+9332233436138D385E622EE570AEA29E4ADF8720CA0496DD517AF5F42E8C8A9B
+E2663BA6BED875914553E7830D1C176CB77224ACAF50CB81AB31B775B49358CD
+958A3A65618E26A660AFC91E79F3D670A6E3EBC0423A6B4C140F9A6247401C8E
+0F80E40B57
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
48 48 48 48 48 48 1[48 2[48 3[48 3[48 1[48 1[48 1[48
48 48 1[48 48 48 1[48 48 48 48 1[48 6[48 6[48 48 48 48
-2[48 2[48 2[48 39[{}50 90.9091 /CMSLTT10 rf /Fj 134[65
-65 89 65 68 48 48 50 65 68 61 68 102 34 65 1[34 68 61
-37 56 68 55 68 60 34 6[93 1[127 1[94 85 68 92 92 84 92
-96 116 74 96 1[46 96 96 77 81 94 89 87 93 1[58 5[61 61
-61 61 61 61 61 61 61 61 1[34 41 34 4[34 26[68 72 11[{}64
+2[48 5[48 39[{}49 90.9091 /CMSLTT10 rf /Fj 134[65 65
+89 65 68 48 48 50 65 68 61 68 102 34 65 1[34 68 61 37
+56 68 55 68 60 34 6[93 1[127 1[94 85 68 92 92 84 92 96
+116 74 96 1[46 96 96 77 81 94 89 87 93 1[58 5[61 61 61
+61 61 61 61 61 61 61 1[34 41 34 4[34 26[68 72 11[{}64
109.091 /CMBX12 rf /Fk 135[42 1[42 1[30 37 38 1[46 46
51 74 23 2[28 1[42 1[42 46 42 1[46 51[33 32[51 12[{}18
90.9091 /CMTI10 rf /Fl 135[56 2[56 1[42 55 1[51 58 56
51 76 25 48 28 25 51 45 28 40 51 40 51 45 25 2[25 45
25 56 68 68 93 68 68 66 51 67 71 62 71 68 83 57 71 47
33 68 71 59 62 69 66 64 68 1[43 1[71 1[25 25 45 45 45
-45 45 45 45 45 45 45 45 25 30 25 2[35 35 25 71 76 45
-1[45 25 18[76 51 51 53 11[{}88 90.9091 /CMR10 rf /Fu
+45 45 45 45 45 45 45 45 25 30 25 1[45 35 35 25 71 76
+45 1[45 25 18[76 51 51 53 11[{}89 90.9091 /CMR10 rf /Fu
138[108 1[76 79 3[108 1[54 3[108 1[59 88 1[86 1[94 14[144
4[184 10[138 66[{}13 172.154 /CMBX12 rf end
%%EndProlog
TeXDict begin 1 0 bop 150 1318 a Fu(Bash)64 b(Reference)j(Man)-5
b(ual)p 150 1385 3600 34 v 2361 1481 a Ft(Reference)31
b(Do)s(cumen)m(tation)i(for)d(Bash)2428 1589 y(Edition)h(4.2,)g(for)f
-Fs(Bash)g Ft(V)-8 b(ersion)31 b(4.2.)3218 1697 y(Jan)m(uary)f(2012)150
+Fs(Bash)g Ft(V)-8 b(ersion)31 b(4.2.)3367 1697 y(July)f(2012)150
4935 y Fr(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11 b(estern)46
b(Reserv)l(e)g(Univ)l(ersit)l(y)150 5068 y(Brian)f(F)-11
b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)-11
b(oundation)p 150 5141 3600 17 v eop end
%%Page: 2 2
-TeXDict begin 2 1 bop 150 2889 a Ft(This)35 b(text)h(is)g(a)g(brief)f
+TeXDict begin 2 1 bop 150 3352 a Ft(This)35 b(text)h(is)g(a)g(brief)f
(description)h(of)f(the)h(features)g(that)g(are)g(presen)m(t)g(in)f
-(the)h(Bash)f(shell)h(\(v)m(ersion)150 2999 y(4.2,)c(29)f(Jan)m(uary)f
-(2012\).)150 3133 y(This)35 b(is)h(Edition)f(4.2,)k(last)d(up)s(dated)f
-(29)h(Jan)m(uary)f(2012,)k(of)d Fq(The)f(GNU)i(Bash)e(Reference)i(Man)m
-(ual)p Ft(,)150 3243 y(for)30 b Fs(Bash)p Ft(,)g(V)-8
-b(ersion)31 b(4.2.)150 3377 y(Cop)m(yrigh)m(t)602 3374
-y(c)577 3377 y Fp(\015)f Ft(1988{2012)35 b(F)-8 b(ree)31
-b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)150 3512
+(the)h(Bash)f(shell)h(\(v)m(ersion)150 3462 y(4.2,)c(5)e(July)g
+(2012\).)150 3597 y(This)38 b(is)h(Edition)g(4.2,)j(last)d(up)s(dated)f
+(5)h(July)f(2012,)43 b(of)c Fq(The)f(GNU)i(Bash)f(Reference)g(Man)m
+(ual)p Ft(,)j(for)150 3706 y Fs(Bash)p Ft(,)29 b(V)-8
+b(ersion)31 b(4.2.)150 3841 y(Cop)m(yrigh)m(t)602 3838
+y(c)577 3841 y Fp(\015)f Ft(1988{2012)35 b(F)-8 b(ree)31
+b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)150 3975
y(P)m(ermission)h(is)h(gran)m(ted)g(to)f(mak)m(e)i(and)d(distribute)h
(v)m(erbatim)h(copies)g(of)f(this)g(man)m(ual)h(pro)m(vided)f(the)150
-3621 y(cop)m(yrigh)m(t)g(notice)f(and)f(this)g(p)s(ermission)g(notice)h
-(are)g(preserv)m(ed)f(on)h(all)g(copies.)390 3756 y(P)m(ermission)k(is)
-h(gran)m(ted)f(to)h(cop)m(y)-8 b(,)38 b(distribute)d(and/or)g(mo)s
-(dify)f(this)h(do)s(cumen)m(t)g(under)390 3866 y(the)j(terms)g(of)g
-(the)g(GNU)h(F)-8 b(ree)39 b(Do)s(cumen)m(tation)h(License,)g(V)-8
-b(ersion)39 b(1.3)g(or)f(an)m(y)g(later)390 3975 y(v)m(ersion)28
-b(published)d(b)m(y)j(the)f(F)-8 b(ree)29 b(Soft)m(w)m(are)f(F)-8
-b(oundation;)30 b(with)d(no)g(In)m(v)-5 b(arian)m(t)28
-b(Sections,)390 4085 y(with)i(the)h(F)-8 b(ron)m(t-Co)m(v)m(er)33
-b(texts)e(b)s(eing)g(\\A)g(GNU)g(Man)m(ual",)h(and)e(with)g(the)h(Bac)m
-(k-Co)m(v)m(er)390 4194 y(T)-8 b(exts)33 b(as)g(in)f(\(a\))h(b)s(elo)m
-(w.)47 b(A)33 b(cop)m(y)g(of)f(the)h(license)g(is)g(included)e(in)h
-(the)h(section)g(en)m(titled)390 4304 y(\\GNU)e(F)-8
-b(ree)32 b(Do)s(cumen)m(tation)g(License".)390 4438 y(\(a\))f(The)f
-(FSF's)g(Bac)m(k-Co)m(v)m(er)j(T)-8 b(ext)31 b(is:)41
-b(Y)-8 b(ou)31 b(are)f(free)h(to)f(cop)m(y)h(and)f(mo)s(dify)f(this)h
-(GNU)390 4548 y(man)m(ual.)41 b(Buying)30 b(copies)h(from)e(GNU)i
-(Press)f(supp)s(orts)e(the)i(FSF)g(in)g(dev)m(eloping)h(GNU)390
-4658 y(and)f(promoting)g(soft)m(w)m(are)i(freedom.")150
-4902 y(Published)d(b)m(y)h(the)h(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8
-b(oundation)150 5011 y(59)31 b(T)-8 b(emple)31 b(Place,)h(Suite)e(330,)
-150 5121 y(Boston,)i(MA)e(02111-1307)150 5230 y(USA)p
-eop end
+4085 y(cop)m(yrigh)m(t)g(notice)f(and)f(this)g(p)s(ermission)g(notice)h
+(are)g(preserv)m(ed)f(on)h(all)g(copies.)390 4219 y(P)m(ermission)21
+b(is)f(gran)m(ted)h(to)g(cop)m(y)-8 b(,)24 b(distribute)c(and/or)h(mo)s
+(dify)e(this)i(do)s(cumen)m(t)f(under)f(the)390 4329
+y(terms)25 b(of)h(the)f(GNU)h(F)-8 b(ree)27 b(Do)s(cumen)m(tation)g
+(License,)g(V)-8 b(ersion)26 b(1.3)g(or)f(an)m(y)h(later)g(v)m(ersion)
+390 4438 y(published)43 b(b)m(y)h(the)h(F)-8 b(ree)46
+b(Soft)m(w)m(are)g(F)-8 b(oundation;)53 b(with)44 b(no)g(In)m(v)-5
+b(arian)m(t)46 b(Sections,)j(no)390 4548 y(F)-8 b(ron)m(t-Co)m(v)m(er)
+31 b(T)-8 b(exts,)30 b(and)f(no)f(Bac)m(k-Co)m(v)m(er)k(T)-8
+b(exts.)41 b(A)29 b(cop)m(y)h(of)f(the)g(license)h(is)f(included)390
+4658 y(in)h(the)h(section)g(en)m(titled)h(\\GNU)f(F)-8
+b(ree)32 b(Do)s(cumen)m(tation)g(License".)150 4902 y(Published)d(b)m
+(y)h(the)h(F)-8 b(ree)31 b(Soft)m(w)m(are)h(F)-8 b(oundation)150
+5011 y(59)31 b(T)-8 b(emple)31 b(Place,)h(Suite)e(330,)150
+5121 y(Boston,)i(MA)e(02111-1307)150 5230 y(USA)p eop
+end
%%Page: -1 3
TeXDict begin -1 2 bop 3725 -116 a Ft(i)150 299 y Fo(T)-13
b(able)53 b(of)h(Con)l(ten)l(ts)150 641 y Fr(1)135 b(In)l(tro)t
3838 y(3.4.1)93 b(P)m(ositional)32 b(P)m(arameters)20
b Fm(:)d(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)50 b Ft(18)399 3948 y(3.4.2)93 b(Sp)s(ecial)30
+(:)f(:)50 b Ft(19)399 3948 y(3.4.2)93 b(Sp)s(ecial)30
b(P)m(arameters)16 b Fm(:)h(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)46 b Ft(19)275 4057
f(:)g(:)h(:)46 b Ft(20)399 4167 y(3.5.1)93 b(Brace)31
b(Expansion)21 b Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)50 b Ft(20)399
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)50 b Ft(21)399
4276 y(3.5.2)93 b(Tilde)30 b(Expansion)10 b Fm(:)15 b(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
48 b Ft(22)399 4496 y(3.5.4)93 b(Command)29 b(Substitution)12
b Fm(:)j(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)42 b Ft(25)399 4605 y(3.5.5)93 b(Arithmetic)31 b(Expansion)19
+(:)42 b Ft(27)399 4605 y(3.5.5)93 b(Arithmetic)31 b(Expansion)19
b Fm(:)c(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)48 b Ft(25)399 4715 y(3.5.6)93 b(Pro)s(cess)30
+(:)h(:)48 b Ft(28)399 4715 y(3.5.6)93 b(Pro)s(cess)30
b(Substitution)d Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)57 b Ft(25)399 4824 y(3.5.7)93
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)57 b Ft(28)399 4824 y(3.5.7)93
b(W)-8 b(ord)31 b(Splitting)20 b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)49
-b Ft(26)399 4934 y(3.5.8)93 b(Filename)32 b(Expansion)13
+b Ft(28)399 4934 y(3.5.8)93 b(Filename)32 b(Expansion)13
b Fm(:)i(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)43 b Ft(26)524 5044 y(3.5.8.1)93 b(P)m(attern)31
+(:)f(:)h(:)f(:)43 b Ft(29)524 5044 y(3.5.8.1)93 b(P)m(attern)31
b(Matc)m(hing)d Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)56 b Ft(27)399 5153 y(3.5.9)93 b(Quote)31
+h(:)f(:)g(:)h(:)f(:)56 b Ft(29)399 5153 y(3.5.9)93 b(Quote)31
b(Remo)m(v)-5 b(al)9 b Fm(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)39
-b Ft(28)275 5263 y(3.6)92 b(Redirections)26 b Fm(:)15
+b Ft(30)275 5263 y(3.6)92 b(Redirections)26 b Fm(:)15
b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)55
-b Ft(28)p eop end
+b Ft(31)p eop end
%%Page: -2 4
TeXDict begin -2 3 bop 150 -116 a Ft(ii)2612 b(Bash)31
b(Reference)g(Man)m(ual)399 83 y(3.6.1)93 b(Redirecting)31
b(Input)23 b Fm(:)14 b(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)52 b Ft(29)399 193
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)52 b Ft(32)399 193
y(3.6.2)93 b(Redirecting)31 b(Output)26 b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)56
-b Ft(30)399 302 y(3.6.3)93 b(App)s(ending)28 b(Redirected)k(Output)12
+b Ft(32)399 302 y(3.6.3)93 b(App)s(ending)28 b(Redirected)k(Output)12
b Fm(:)h(:)j(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)41 b Ft(30)399
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)41 b Ft(32)399
412 y(3.6.4)93 b(Redirecting)31 b(Standard)e(Output)h(and)f(Standard)h
-(Error)d Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)58 b Ft(30)399
+(Error)d Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)58 b Ft(32)399
521 y(3.6.5)93 b(App)s(ending)28 b(Standard)i(Output)f(and)h(Standard)f
(Error)19 b Fm(:)14 b(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)48
-b Ft(30)399 631 y(3.6.6)93 b(Here)31 b(Do)s(cumen)m(ts)c
+b Ft(33)399 631 y(3.6.6)93 b(Here)31 b(Do)s(cumen)m(ts)c
Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)56 b Ft(31)399 741 y(3.6.7)93
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)56 b Ft(33)399 741 y(3.6.7)93
b(Here)31 b(Strings)c Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58
-b Ft(31)399 850 y(3.6.8)93 b(Duplicating)32 b(File)f(Descriptors)16
+b Ft(33)399 850 y(3.6.8)93 b(Duplicating)32 b(File)f(Descriptors)16
b Fm(:)g(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)46
-b Ft(31)399 960 y(3.6.9)93 b(Mo)m(ving)32 b(File)f(Descriptors)19
+b Ft(33)399 960 y(3.6.9)93 b(Mo)m(ving)32 b(File)f(Descriptors)19
b Fm(:)d(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)49
-b Ft(32)399 1069 y(3.6.10)93 b(Op)s(ening)29 b(File)j(Descriptors)f
+b Ft(34)399 1069 y(3.6.10)93 b(Op)s(ening)29 b(File)j(Descriptors)f
(for)f(Reading)h(and)f(W)-8 b(riting)19 b Fm(:)e(:)e(:)h(:)f(:)h(:)f(:)
-49 b Ft(32)275 1179 y(3.7)92 b(Executing)31 b(Commands)17
+49 b Ft(34)275 1179 y(3.7)92 b(Executing)31 b(Commands)17
b Fm(:)d(:)h(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)46 b Ft(32)399 1289 y(3.7.1)93
+(:)h(:)f(:)g(:)h(:)f(:)h(:)46 b Ft(34)399 1289 y(3.7.1)93
b(Simple)30 b(Command)f(Expansion)23 b Fm(:)15 b(:)g(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)52 b Ft(32)399 1398 y(3.7.2)93 b(Command)29
+(:)g(:)h(:)f(:)h(:)52 b Ft(34)399 1398 y(3.7.2)93 b(Command)29
b(Searc)m(h)i(and)f(Execution)d Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)56
-b Ft(33)399 1508 y(3.7.3)93 b(Command)29 b(Execution)i(En)m(vironmen)m
+b Ft(35)399 1508 y(3.7.3)93 b(Command)29 b(Execution)i(En)m(vironmen)m
(t)8 b Fm(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)38 b Ft(33)399 1617
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)38 b Ft(36)399 1617
y(3.7.4)93 b(En)m(vironmen)m(t)18 b Fm(:)d(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)47 b Ft(34)399 1727 y(3.7.5)93 b(Exit)31 b(Status)c
+(:)h(:)47 b Ft(37)399 1727 y(3.7.5)93 b(Exit)31 b(Status)c
Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)57 b
-Ft(35)399 1836 y(3.7.6)93 b(Signals)15 b Fm(:)g(:)g(:)h(:)f(:)h(:)f(:)g
+Ft(37)399 1836 y(3.7.6)93 b(Signals)15 b Fm(:)g(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)44 b Ft(35)275 1946
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)44 b Ft(38)275 1946
y(3.8)92 b(Shell)30 b(Scripts)23 b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)g(:)h(:)53 b Ft(36)150 2188 y Fr(4)135
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)53 b Ft(38)150 2188 y Fr(4)135
b(Shell)45 b(Builtin)g(Commands)22 b Fn(:)e(:)g(:)f(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)67
-b Fr(37)275 2325 y Ft(4.1)92 b(Bourne)30 b(Shell)g(Builtins)e
+b Fr(41)275 2325 y Ft(4.1)92 b(Bourne)30 b(Shell)g(Builtins)e
Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)57 b Ft(37)275 2435 y(4.2)92
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)57 b Ft(41)275 2435 y(4.2)92
b(Bash)30 b(Builtin)h(Commands)24 b Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)54
-b Ft(44)275 2545 y(4.3)92 b(Mo)s(difying)30 b(Shell)g(Beha)m(vior)9
+b Ft(48)275 2545 y(4.3)92 b(Mo)s(difying)30 b(Shell)g(Beha)m(vior)9
b Fm(:)17 b(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)39 b Ft(54)399 2654 y(4.3.1)93 b(The)30
+h(:)f(:)h(:)f(:)39 b Ft(58)399 2654 y(4.3.1)93 b(The)30
b(Set)g(Builtin)c Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)55 b
-Ft(54)399 2764 y(4.3.2)93 b(The)30 b(Shopt)f(Builtin)13
+Ft(58)399 2764 y(4.3.2)93 b(The)30 b(Shopt)f(Builtin)13
b Fm(:)j(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)43 b Ft(58)275 2873 y(4.4)92 b(Sp)s(ecial)30
+(:)h(:)f(:)h(:)f(:)g(:)43 b Ft(62)275 2873 y(4.4)92 b(Sp)s(ecial)30
b(Builtins)21 b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)50
-b Ft(63)150 3116 y Fr(5)135 b(Shell)45 b(V)-11 b(ariables)19
+b Ft(67)150 3116 y Fr(5)135 b(Shell)45 b(V)-11 b(ariables)19
b Fn(:)h(:)g(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)64
-b Fr(65)275 3253 y Ft(5.1)92 b(Bourne)30 b(Shell)g(V)-8
+b Fr(69)275 3253 y Ft(5.1)92 b(Bourne)30 b(Shell)g(V)-8
b(ariables)22 b Fm(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)51 b Ft(65)275
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)51 b Ft(69)275
3362 y(5.2)92 b(Bash)30 b(V)-8 b(ariables)16 b Fm(:)h(:)f(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)46 b Ft(65)150 3605 y
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)46 b Ft(69)150 3605 y
Fr(6)135 b(Bash)44 b(F)-11 b(eatures)13 b Fn(:)20 b(:)g(:)f(:)g(:)h(:)f
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b Fr(75)275
+f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b Fr(79)275
3742 y Ft(6.1)92 b(In)m(v)m(oking)31 b(Bash)d Fm(:)16
b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b
-Ft(75)275 3851 y(6.2)92 b(Bash)30 b(Startup)g(Files)20
+Ft(79)275 3851 y(6.2)92 b(Bash)30 b(Startup)g(Files)20
b Fm(:)c(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)49 b Ft(77)275
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)49 b Ft(81)275
3961 y(6.3)92 b(In)m(teractiv)m(e)32 b(Shells)11 b Fm(:)16
b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)41 b Ft(78)399
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)41 b Ft(82)399
4071 y(6.3.1)93 b(What)31 b(is)f(an)h(In)m(teractiv)m(e)h(Shell?)17
b Fm(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)47 b
-Ft(79)399 4180 y(6.3.2)93 b(Is)30 b(this)g(Shell)g(In)m(teractiv)m(e?)
+Ft(83)399 4180 y(6.3.2)93 b(Is)30 b(this)g(Shell)g(In)m(teractiv)m(e?)
14 b Fm(:)k(:)e(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-44 b Ft(79)399 4290 y(6.3.3)93 b(In)m(teractiv)m(e)33
+44 b Ft(83)399 4290 y(6.3.3)93 b(In)m(teractiv)m(e)33
b(Shell)d(Beha)m(vior)23 b Fm(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)52 b Ft(79)275 4399 y(6.4)92 b(Bash)30
+(:)g(:)h(:)f(:)h(:)52 b Ft(83)275 4399 y(6.4)92 b(Bash)30
b(Conditional)h(Expressions)22 b Fm(:)14 b(:)i(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)g(:)h(:)51 b Ft(80)275 4509 y(6.5)92
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)51 b Ft(84)275 4509 y(6.5)92
b(Shell)30 b(Arithmetic)c Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)55 b Ft(82)275 4619 y(6.6)92 b(Aliases)12 b Fm(:)k(:)g(:)f(:)h(:)f
+(:)55 b Ft(86)275 4619 y(6.6)92 b(Aliases)12 b Fm(:)k(:)g(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)42
-b Ft(83)275 4728 y(6.7)92 b(Arra)m(ys)17 b Fm(:)e(:)h(:)f(:)h(:)f(:)g
+b Ft(87)275 4728 y(6.7)92 b(Arra)m(ys)17 b Fm(:)e(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)47
-b Ft(84)275 4838 y(6.8)92 b(The)29 b(Directory)j(Stac)m(k)e
+b Ft(88)275 4838 y(6.8)92 b(The)29 b(Directory)j(Stac)m(k)e
Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b Ft(85)399 4947 y(6.8.1)93
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b Ft(89)399 4947 y(6.8.1)93
b(Directory)32 b(Stac)m(k)f(Builtins)14 b Fm(:)i(:)g(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)44 b Ft(85)275
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)44 b Ft(89)275
5057 y(6.9)92 b(Con)m(trolling)31 b(the)g(Prompt)24 b
Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)54 b Ft(87)275 5166 y(6.10)92 b(The)30
+g(:)h(:)f(:)h(:)f(:)54 b Ft(91)275 5166 y(6.10)92 b(The)30
b(Restricted)h(Shell)23 b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)53
-b Ft(88)275 5276 y(6.11)92 b(Bash)31 b(POSIX)e(Mo)s(de)9
+b Ft(92)275 5276 y(6.11)92 b(Bash)31 b(POSIX)e(Mo)s(de)9
b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38 b Ft(88)p eop
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38 b Ft(92)p eop
end
%%Page: -3 5
TeXDict begin -3 4 bop 3674 -116 a Ft(iii)150 83 y Fr(7)135
b(Job)45 b(Con)l(trol)24 b Fn(:)c(:)g(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)69 b Fr(93)275 220 y
+f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)69 b Fr(97)275 220 y
Ft(7.1)92 b(Job)30 b(Con)m(trol)h(Basics)17 b Fm(:)f(:)g(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)47 b Ft(93)275 330 y(7.2)92 b(Job)30 b(Con)m(trol)h
+g(:)h(:)f(:)47 b Ft(97)275 330 y(7.2)92 b(Job)30 b(Con)m(trol)h
(Builtins)25 b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)55 b Ft(94)275
-439 y(7.3)92 b(Job)30 b(Con)m(trol)h(V)-8 b(ariables)19
-b Fm(:)e(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)49 b Ft(96)150 657 y Fr(8)135
-b(Command)45 b(Line)g(Editing)27 b Fn(:)20 b(:)g(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)72
-b Fr(97)275 794 y Ft(8.1)92 b(In)m(tro)s(duction)30 b(to)h(Line)f
-(Editing)d Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)56 b Ft(97)275 904 y(8.2)92 b(Readline)31
-b(In)m(teraction)8 b Fm(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)38
-b Ft(97)399 1013 y(8.2.1)93 b(Readline)31 b(Bare)g(Essen)m(tials)d
-Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)57
-b Ft(98)399 1123 y(8.2.2)93 b(Readline)31 b(Mo)m(v)m(emen)m(t)i
-(Commands)27 b Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)57
-b Ft(98)399 1233 y(8.2.3)93 b(Readline)31 b(Killing)g(Commands)19
-b Fm(:)14 b(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)49
-b Ft(99)399 1342 y(8.2.4)93 b(Readline)31 b(Argumen)m(ts)11
-b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)41 b Ft(99)399 1452 y(8.2.5)93 b(Searc)m(hing)31
-b(for)f(Commands)f(in)h(the)h(History)9 b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)38
-b Ft(99)275 1561 y(8.3)92 b(Readline)31 b(Init)f(File)20
-b Fm(:)d(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)55 b Ft(98)275
+439 y(7.3)92 b(Job)30 b(Con)m(trol)h(V)-8 b(ariables)17
+b Fm(:)f(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)47 b Ft(100)150 657 y Fr(8)135
+b(Command)45 b(Line)g(Editing)19 b Fn(:)i(:)e(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)63
+b Fr(101)275 794 y Ft(8.1)92 b(In)m(tro)s(duction)30
+b(to)h(Line)f(Editing)24 b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)50 b Ft(100)399
-1671 y(8.3.1)93 b(Readline)31 b(Init)f(File)i(Syn)m(tax)12
-b Fm(:)k(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)42
-b Ft(100)399 1781 y(8.3.2)93 b(Conditional)31 b(Init)f(Constructs)25
-b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)56
-b Ft(107)399 1890 y(8.3.3)93 b(Sample)30 b(Init)g(File)12
+(:)g(:)h(:)f(:)h(:)f(:)54 b Ft(101)275 904 y(8.2)92 b(Readline)31
+b(In)m(teraction)c Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)56 b Ft(101)399
+1013 y(8.2.1)93 b(Readline)31 b(Bare)g(Essen)m(tials)26
+b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)55
+b Ft(102)399 1123 y(8.2.2)93 b(Readline)31 b(Mo)m(v)m(emen)m(t)i
+(Commands)24 b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)55 b
+Ft(102)399 1233 y(8.2.3)93 b(Readline)31 b(Killing)g(Commands)16
+b Fm(:)f(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)46 b
+Ft(103)399 1342 y(8.2.4)93 b(Readline)31 b(Argumen)m(ts)9
+b Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)h(:)f(:)39 b Ft(103)399 1452 y(8.2.5)93 b(Searc)m(hing)31
+b(for)f(Commands)f(in)h(the)h(History)c Fm(:)15 b(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)57 b Ft(103)275
+1561 y(8.3)92 b(Readline)31 b(Init)f(File)20 b Fm(:)d(:)e(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)50 b Ft(104)399 1671 y(8.3.1)93 b(Readline)31
+b(Init)f(File)i(Syn)m(tax)12 b Fm(:)k(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)42 b Ft(104)399 1781 y(8.3.2)93 b(Conditional)31
+b(Init)f(Constructs)25 b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+g(:)56 b Ft(111)399 1890 y(8.3.3)93 b(Sample)30 b(Init)g(File)12
b Fm(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)42 b Ft(108)275 2000 y(8.4)92
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)42 b Ft(112)275 2000 y(8.4)92
b(Bindable)30 b(Readline)h(Commands)11 b Fm(:)k(:)g(:)g(:)h(:)f(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)g(:)h(:)41 b Ft(111)399 2109 y(8.4.1)93
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)41 b Ft(115)399 2109 y(8.4.1)93
b(Commands)29 b(F)-8 b(or)31 b(Mo)m(ving)e Fm(:)16 b(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b Ft(111)399
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b Ft(115)399
2219 y(8.4.2)93 b(Commands)29 b(F)-8 b(or)31 b(Manipulating)g(The)f
(History)17 b Fm(:)g(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)47 b Ft(112)399 2328 y(8.4.3)93 b(Commands)29 b(F)-8
+h(:)47 b Ft(116)399 2328 y(8.4.3)93 b(Commands)29 b(F)-8
b(or)31 b(Changing)f(T)-8 b(ext)21 b Fm(:)c(:)e(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-51 b Ft(113)399 2438 y(8.4.4)93 b(Killing)31 b(And)e(Y)-8
+51 b Ft(117)399 2438 y(8.4.4)93 b(Killing)31 b(And)e(Y)-8
b(anking)22 b Fm(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)52 b Ft(114)399 2548 y(8.4.5)93 b(Sp)s(ecifying)30
+f(:)g(:)h(:)f(:)h(:)52 b Ft(118)399 2548 y(8.4.5)93 b(Sp)s(ecifying)30
b(Numeric)g(Argumen)m(ts)17 b Fm(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)47
-b Ft(115)399 2657 y(8.4.6)93 b(Letting)31 b(Readline)g(T)m(yp)s(e)f(F)
+b Ft(119)399 2657 y(8.4.6)93 b(Letting)31 b(Readline)g(T)m(yp)s(e)f(F)
-8 b(or)31 b(Y)-8 b(ou)12 b Fm(:)k(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)42
-b Ft(116)399 2767 y(8.4.7)93 b(Keyb)s(oard)29 b(Macros)21
+b Ft(120)399 2767 y(8.4.7)93 b(Keyb)s(oard)29 b(Macros)21
b Fm(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)51 b Ft(117)399 2876 y(8.4.8)93 b(Some)30
+h(:)f(:)h(:)f(:)g(:)51 b Ft(121)399 2876 y(8.4.8)93 b(Some)30
b(Miscellaneous)j(Commands)24 b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)55
-b Ft(118)275 2986 y(8.5)92 b(Readline)31 b(vi)f(Mo)s(de)20
+b Ft(122)275 2986 y(8.5)92 b(Readline)31 b(vi)f(Mo)s(de)20
b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)50 b Ft(120)275
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)50 b Ft(124)275
3096 y(8.6)92 b(Programmable)30 b(Completion)16 b Fm(:)g(:)f(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)46
-b Ft(120)275 3205 y(8.7)92 b(Programmable)30 b(Completion)h(Builtins)c
+b Ft(124)275 3205 y(8.7)92 b(Programmable)30 b(Completion)h(Builtins)c
Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)56 b Ft(122)275
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)56 b Ft(126)275
3315 y(8.8)92 b(A)30 b(Programmable)h(Completion)g(Example)20
b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)50 b Ft(126)150 3533 y Fr(9)135
+(:)f(:)g(:)h(:)f(:)h(:)f(:)50 b Ft(130)150 3533 y Fr(9)135
b(Using)45 b(History)h(In)l(teractiv)l(ely)39 b Fn(:)19
b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)80
-b Fr(129)275 3670 y Ft(9.1)92 b(Bash)30 b(History)h(F)-8
+b Fr(133)275 3670 y Ft(9.1)92 b(Bash)30 b(History)h(F)-8
b(acilities)21 b Fm(:)d(:)e(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)51 b Ft(129)275 3779
+g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)51 b Ft(133)275 3779
y(9.2)92 b(Bash)30 b(History)h(Builtins)19 b Fm(:)d(:)g(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)49
-b Ft(129)275 3889 y(9.3)92 b(History)31 b(Expansion)21
+b Ft(133)275 3889 y(9.3)92 b(History)31 b(Expansion)21
b Fm(:)15 b(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)52 b Ft(131)399 3999
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)52 b Ft(135)399 3999
y(9.3.1)93 b(Ev)m(en)m(t)31 b(Designators)10 b Fm(:)18
b(:)d(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)40 b Ft(132)399 4108 y(9.3.2)93 b(W)-8 b(ord)31
+h(:)f(:)h(:)40 b Ft(136)399 4108 y(9.3.2)93 b(W)-8 b(ord)31
b(Designators)17 b Fm(:)g(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)47 b Ft(132)399 4218
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)47 b Ft(136)399 4218
y(9.3.3)93 b(Mo)s(di\014ers)26 b Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)57 b Ft(133)150 4436 y Fr(10)135 b(Installing)46
+(:)f(:)g(:)h(:)57 b Ft(137)150 4436 y Fr(10)135 b(Installing)46
b(Bash)24 b Fn(:)c(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)68
-b Fr(135)275 4573 y Ft(10.1)92 b(Basic)32 b(Installation)20
+b Fr(139)275 4573 y Ft(10.1)92 b(Basic)32 b(Installation)20
b Fm(:)d(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)50 b Ft(135)275 4682
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)50 b Ft(139)275 4682
y(10.2)92 b(Compilers)30 b(and)g(Options)8 b Fm(:)15
b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)38 b Ft(136)275 4792 y(10.3)92 b(Compiling)30
+f(:)h(:)38 b Ft(140)275 4792 y(10.3)92 b(Compiling)30
b(F)-8 b(or)32 b(Multiple)f(Arc)m(hitectures)21 b Fm(:)c(:)e(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)52 b Ft(136)275 4902 y(10.4)92 b(Installation)32 b(Names)13
+(:)52 b Ft(140)275 4902 y(10.4)92 b(Installation)32 b(Names)13
b Fm(:)j(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)43 b Ft(136)275 5011 y(10.5)92
+(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)43 b Ft(140)275 5011 y(10.5)92
b(Sp)s(ecifying)30 b(the)g(System)h(T)m(yp)s(e)12 b Fm(:)j(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)42 b Ft(136)275
+g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)42 b Ft(140)275
5121 y(10.6)92 b(Sharing)30 b(Defaults)15 b Fm(:)i(:)e(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)46 b Ft(137)275 5230 y(10.7)92 b(Op)s(eration)30
+(:)f(:)g(:)46 b Ft(141)275 5230 y(10.7)92 b(Op)s(eration)30
b(Con)m(trols)24 b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)54 b Ft(137)275
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)54 b Ft(141)275
5340 y(10.8)92 b(Optional)31 b(F)-8 b(eatures)10 b Fm(:)17
b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)40 b Ft(137)p eop end
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)40 b Ft(141)p eop end
%%Page: -4 6
TeXDict begin -4 5 bop 150 -116 a Ft(iv)2589 b(Bash)31
b(Reference)g(Man)m(ual)150 83 y Fr(App)t(endix)44 b(A)160
b(Rep)t(orting)46 b(Bugs)35 b Fn(:)20 b(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)80 b Fr(143)150 353 y(App)t(endix)44
+(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)80 b Fr(147)150 353 y(App)t(endix)44
b(B)166 b(Ma)7 b(jor)45 b(Di\013erences)i(F)-11 b(rom)44
b(The)419 486 y(Bourne)g(Shell)35 b Fn(:)19 b(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)78 b Fr(145)275 623 y Ft(B.1)92
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)78 b Fr(149)275 623 y Ft(B.1)92
b(Implemen)m(tation)31 b(Di\013erences)h(F)-8 b(rom)31
b(The)e(SVR4.2)j(Shell)13 b Fm(:)i(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)43
-b Ft(149)150 865 y Fr(App)t(endix)h(C)165 b(GNU)45 b(F)-11
+b Ft(153)150 865 y Fr(App)t(endix)h(C)165 b(GNU)45 b(F)-11
b(ree)45 b(Do)t(cumen)l(tation)h(License)439 998 y Fn(:)19
b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)64 b Fr(151)150
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)64 b Fr(155)150
1268 y(App)t(endix)44 b(D)159 b(Indexes)15 b Fn(:)20
b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)59 b Fr(159)275 1405
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)59 b Fr(163)275 1405
y Ft(D.1)92 b(Index)29 b(of)i(Shell)f(Builtin)h(Commands)16
b Fm(:)e(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)46 b Ft(159)275
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)46 b Ft(163)275
1514 y(D.2)92 b(Index)29 b(of)i(Shell)f(Reserv)m(ed)h(W)-8
b(ords)12 b Fm(:)j(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)42
-b Ft(160)275 1624 y(D.3)92 b(P)m(arameter)31 b(and)f(V)-8
+b Ft(164)275 1624 y(D.3)92 b(P)m(arameter)31 b(and)f(V)-8
b(ariable)32 b(Index)20 b Fm(:)14 b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)50 b Ft(160)275 1733 y(D.4)92 b(F)-8 b(unction)31
+f(:)h(:)f(:)50 b Ft(164)275 1733 y(D.4)92 b(F)-8 b(unction)31
b(Index)16 b Fm(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)47
-b Ft(162)275 1843 y(D.5)92 b(Concept)30 b(Index)d Fm(:)15
+b Ft(166)275 1843 y(D.5)92 b(Concept)30 b(Index)d Fm(:)15
b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)57 b Ft(164)p
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)57 b Ft(168)p
eop end
%%Page: 1 7
TeXDict begin 1 6 bop 150 -116 a Ft(Chapter)30 b(1:)41
b(referred)f(to)h(as)f(an)h Fs(identifier)p Ft(.)150
4186 y Fs(operator)96 b Ft(A)38 b Fs(control)28 b(operator)36
b Ft(or)h(a)i Fs(redirection)27 b(operator)p Ft(.)61
-b(See)38 b(Section)g(3.6)h([Redirec-)630 4295 y(tions],)f(page)f(28,)i
+b(See)38 b(Section)g(3.6)h([Redirec-)630 4295 y(tions],)f(page)f(31,)i
(for)d(a)g(list)h(of)f(redirection)h(op)s(erators.)58
b(Op)s(erators)35 b(con)m(tain)j(at)f(least)630 4405
y(one)31 b(unquoted)e Fs(metacharacter)p Ft(.)150 4570
(shell's)h(op)s(eration)f(when)f(it)i(reads)f(and)f(executes)j(a)150
3297 y(command.)h(Basically)-8 b(,)34 b(the)c(shell)h(do)s(es)f(the)h
(follo)m(wing:)199 3454 y(1.)61 b(Reads)42 b(its)h(input)e(from)h(a)g
-(\014le)h(\(see)g(Section)g(3.8)g([Shell)f(Scripts],)j(page)e(36\),)k
+(\014le)h(\(see)g(Section)g(3.8)g([Shell)f(Scripts],)j(page)e(38\),)k
(from)41 b(a)i(string)330 3564 y(supplied)26 b(as)i(an)f(argumen)m(t)g
(to)h(the)g(`)p Fs(-c)p Ft(')f(in)m(v)m(o)s(cation)i(option)f(\(see)g
-(Section)h(6.1)f([In)m(v)m(oking)g(Bash],)330 3673 y(page)j(75\),)h(or)
+(Section)h(6.1)f([In)m(v)m(oking)g(Bash],)330 3673 y(page)j(79\),)h(or)
e(from)g(the)h(user's)f(terminal.)199 3820 y(2.)61 b(Breaks)43
b(the)g(input)f(in)m(to)h(w)m(ords)f(and)g(op)s(erators,)k(ob)s(eying)d
(the)g(quoting)g(rules)f(describ)s(ed)f(in)330 3929 y(Section)27
b(3.1.2)i([Quoting],)f(page)f(6.)40 b(These)26 b(tok)m(ens)i(are)f
(separated)g(b)m(y)f Fs(metacharacters)p Ft(.)36 b(Alias)330
4039 y(expansion)30 b(is)h(p)s(erformed)d(b)m(y)j(this)f(step)g(\(see)i
-(Section)f(6.6)g([Aliases],)i(page)e(83\).)199 4185 y(3.)61
+(Section)f(6.6)g([Aliases],)i(page)e(87\).)199 4185 y(3.)61
b(P)m(arses)35 b(the)g(tok)m(ens)g(in)m(to)h(simple)e(and)g(comp)s
(ound)f(commands)h(\(see)h(Section)h(3.2)f([Shell)g(Com-)330
4294 y(mands],)30 b(page)h(8\).)199 4441 y(4.)61 b(P)m(erforms)40
([Shell)g(Expansions],)h(page)f(20\),)330 4550 y(breaking)35
b(the)g(expanded)g(tok)m(ens)h(in)m(to)g(lists)f(of)g(\014lenames)h
(\(see)g(Section)f(3.5.8)i([Filename)g(Ex-)330 4660 y(pansion],)30
-b(page)h(26\))h(and)e(commands)g(and)g(argumen)m(ts.)199
+b(page)h(29\))h(and)e(commands)g(and)g(argumen)m(ts.)199
4806 y(5.)61 b(P)m(erforms)36 b(an)m(y)i(necessary)f(redirections)g
-(\(see)h(Section)f(3.6)h([Redirections],)i(page)e(28\))g(and)e(re-)330
+(\(see)h(Section)f(3.6)h([Redirections],)i(page)e(31\))g(and)e(re-)330
4915 y(mo)m(v)m(es)c(the)e(redirection)h(op)s(erators)g(and)f(their)g
(op)s(erands)f(from)h(the)h(argumen)m(t)f(list.)199 5062
y(6.)61 b(Executes)31 b(the)g(command)f(\(see)h(Section)g(3.7)h
-([Executing)f(Commands],)f(page)h(32\).)199 5208 y(7.)61
+([Executing)f(Commands],)f(page)h(34\).)199 5208 y(7.)61
b(Optionally)40 b(w)m(aits)g(for)f(the)g(command)g(to)h(complete)g(and)
f(collects)i(its)f(exit)g(status)f(\(see)h(Sec-)330 5317
-y(tion)31 b(3.7.5)h([Exit)f(Status],)g(page)g(35\).)p
+y(tion)31 b(3.7.5)h([Exit)f(Status],)g(page)g(37\).)p
eop end
%%Page: 6 12
TeXDict begin 6 11 bop 150 -116 a Ft(6)2617 b(Bash)31
(b)s(e)g(quoted)g(if)h(it)g(is)f(to)h(represen)m(t)g(itself.)68
b(When)39 b(the)h(command)f(history)150 1012 y(expansion)i(facilities)j
(are)e(b)s(eing)f(used)g(\(see)h(Section)h(9.3)f([History)h(In)m
-(teraction],)j(page)c(131\),)47 b(the)150 1122 y Fq(history)30
+(teraction],)j(page)c(135\),)47 b(the)150 1122 y Fq(history)30
b(expansion)h Ft(c)m(haracter,)h(usually)f(`)p Fs(!)p
Ft(',)g(m)m(ust)f(b)s(e)g(quoted)h(to)g(prev)m(en)m(t)g(history)g
(expansion.)41 b(See)150 1231 y(Section)22 b(9.1)g([Bash)f(History)h(F)
--8 b(acilities],)26 b(page)c(129,)j(for)20 b(more)h(details)h
+-8 b(acilities],)26 b(page)c(133,)j(for)20 b(more)h(details)h
(concerning)g(history)f(expansion.)275 1359 y(There)36
b(are)i(three)f(quoting)g(mec)m(hanisms:)55 b(the)37
b Fq(escap)s(e)h(c)m(haracter)7 b Ft(,)40 b(single)d(quotes,)j(and)c
(teractiv)m(e)j(shell)d(in)g(whic)m(h)g(the)g Fs(interactive_comments)
16 b Ft(option)150 4902 y(to)40 b(the)f Fs(shopt)e Ft(builtin)h(is)h
(enabled)g(\(see)h(Section)g(4.3.2)g([The)f(Shopt)f(Builtin],)k(page)e
-(58\),)i(a)d(w)m(ord)150 5011 y(b)s(eginning)26 b(with)g(`)p
+(62\),)i(a)d(w)m(ord)150 5011 y(b)s(eginning)26 b(with)g(`)p
Fs(#)p Ft(')g(causes)h(that)f(w)m(ord)g(and)g(all)h(remaining)g(c)m
(haracters)g(on)f(that)h(line)g(to)g(b)s(e)f(ignored.)150
5121 y(An)43 b(in)m(teractiv)m(e)j(shell)e(without)f(the)g
(allo)m(w)150 5230 y(commen)m(ts.)56 b(The)34 b Fs
(interactive_comments)c Ft(option)35 b(is)g(on)g(b)m(y)g(default)g(in)g
(in)m(teractiv)m(e)j(shells.)55 b(See)150 5340 y(Section)30
-b(6.3)f([In)m(teractiv)m(e)j(Shells],)d(page)h(78,)g(for)e(a)i
+b(6.3)f([In)m(teractiv)m(e)j(Shells],)d(page)h(82,)g(for)e(a)i
(description)e(of)h(what)g(mak)m(es)h(a)f(shell)g(in)m(teractiv)m(e.)p
eop end
%%Page: 8 14
(eci\014es)g(a)g(command)f(to)h(b)s(e)f(executed,)j(with)150
1620 y(the)31 b(rest)f(of)h(the)f(w)m(ords)g(b)s(eing)g(that)h
(command's)f(argumen)m(ts.)275 1766 y(The)h(return)h(status)g(\(see)i
-(Section)f(3.7.5)h([Exit)f(Status],)h(page)f(35\))g(of)g(a)g(simple)f
+(Section)f(3.7.5)h([Exit)f(Status],)h(page)f(37\))g(of)g(a)g(simple)f
(command)g(is)h(its)150 1876 y(exit)38 b(status)f(as)g(pro)m(vided)f(b)
m(y)h(the)g Fl(posix)f Ft(1003.1)j Fs(waitpid)c Ft(function,)j(or)f
(128)p Fs(+)p Fq(n)g Ft(if)g(the)g(command)150 1986 y(w)m(as)31
f(output)g(format)g(to)150 3952 y(that)34 b(sp)s(eci\014ed)e(b)m(y)h
Fl(posix)p Ft(.)49 b(When)33 b(the)g(shell)g(is)h(in)e
Fl(posix)h Ft(mo)s(de)g(\(see)h(Section)g(6.11)g([Bash)g(POSIX)150
-4061 y(Mo)s(de],)40 b(page)f(88\),)i(it)d(do)s(es)f(not)h(recognize)i
+4061 y(Mo)s(de],)40 b(page)f(92\),)i(it)d(do)s(es)f(not)h(recognize)i
Fs(time)c Ft(as)i(a)g(reserv)m(ed)g(w)m(ord)f(if)h(the)g(next)g(tok)m
(en)g(b)s(egins)150 4171 y(with)33 b(a)g(`)p Fs(-)p Ft('.)49
b(The)33 b Fs(TIMEFORMAT)d Ft(v)-5 b(ariable)34 b(ma)m(y)g(b)s(e)f(set)
g(to)h(a)g(format)f(string)g(that)h(sp)s(eci\014es)f(ho)m(w)g(the)150
4280 y(timing)38 b(information)g(should)e(b)s(e)h(displa)m(y)m(ed.)62
b(See)38 b(Section)g(5.2)g([Bash)g(V)-8 b(ariables],)41
-b(page)d(65,)i(for)e(a)150 4390 y(description)27 b(of)g(the)h(a)m(v)-5
+b(page)d(69,)i(for)e(a)150 4390 y(description)27 b(of)g(the)h(a)m(v)-5
b(ailable)29 b(formats.)40 b(The)26 b(use)h(of)g Fs(time)f
Ft(as)i(a)f(reserv)m(ed)g(w)m(ord)g(p)s(ermits)f(the)h(timing)150
4499 y(of)38 b(shell)g(builtins,)i(shell)e(functions,)i(and)d(pip)s
(elines.)63 b(An)38 b(external)h Fs(time)e Ft(command)h(cannot)g(time)
150 4609 y(these)31 b(easily)-8 b(.)275 4755 y(When)29
b(the)h(shell)h(is)f(in)f Fl(posix)g Ft(mo)s(de)h(\(see)h(Section)f
-(6.11)i([Bash)e(POSIX)f(Mo)s(de],)i(page)g(88\),)g Fs(time)150
+(6.11)i([Bash)e(POSIX)f(Mo)s(de],)i(page)g(92\),)g Fs(time)150
4865 y Ft(ma)m(y)26 b(b)s(e)f(follo)m(w)m(ed)j(b)m(y)d(a)h(newline.)39
b(In)25 b(this)h(case,)i(the)d(shell)h(displa)m(ys)g(the)g(total)h
(user)e(and)g(system)h(time)150 4975 y(consumed)33 b(b)m(y)h(the)h
b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(9)275 299
y(Eac)m(h)25 b(command)g(in)g(a)g(pip)s(eline)g(is)g(executed)h(in)f
(its)g(o)m(wn)h(subshell)e(\(see)i(Section)g(3.7.3)h([Command)150
-408 y(Execution)36 b(En)m(vironmen)m(t],)i(page)e(33\).)58
+408 y(Execution)36 b(En)m(vironmen)m(t],)i(page)e(36\).)58
b(The)36 b(exit)g(status)g(of)g(a)g(pip)s(eline)g(is)f(the)h(exit)h
(status)f(of)g(the)150 518 y(last)27 b(command)f(in)f(the)i(pip)s
(eline,)f(unless)g(the)g Fs(pipefail)e Ft(option)i(is)g(enabled)g
(\(see)h(Section)g(4.3.1)h([The)150 628 y(Set)34 b(Builtin],)j(page)e
-(54\).)53 b(If)34 b Fs(pipefail)e Ft(is)i(enabled,)h(the)g(pip)s
+(58\).)53 b(If)34 b Fs(pipefail)e Ft(is)i(enabled,)h(the)g(pip)s
(eline's)f(return)f(status)h(is)h(the)f(v)-5 b(alue)35
b(of)150 737 y(the)d(last)h(\(righ)m(tmost\))h(command)e(to)h(exit)g
(with)e(a)i(non-zero)f(status,)h(or)f(zero)h(if)f(all)h(commands)f
(ait)g(for)f(the)h(command)f(to)i(\014nish,)d(and)h(the)h(return)e
(status)i(is)g(0)g(\(true\).)40 b(When)150 2464 y(job)g(con)m(trol)h
(is)g(not)f(activ)m(e)i(\(see)f(Chapter)f(7)h([Job)f(Con)m(trol],)j
-(page)e(93\),)j(the)d(standard)e(input)g(for)150 2574
+(page)e(97\),)j(the)d(standard)e(input)g(for)150 2574
y(async)m(hronous)k(commands,)k(in)d(the)f(absence)i(of)f(an)m(y)g
(explicit)h(redirections,)j(is)43 b(redirected)h(from)150
2684 y Fs(/dev/null)p Ft(.)275 2816 y(Commands)19 b(separated)j(b)m(y)f
4659 y(a)k(reserv)m(ed)f(w)m(ord)h(or)f(con)m(trol)i(op)s(erator)f(and)
f(is)g(terminated)h(b)m(y)f(a)h(corresp)s(onding)f(reserv)m(ed)g(w)m
(ord)150 4769 y(or)44 b(op)s(erator.)81 b(An)m(y)44 b(redirections)g
-(\(see)h(Section)g(3.6)g([Redirections],)j(page)d(28\))g(asso)s(ciated)
+(\(see)h(Section)g(3.6)g([Redirections],)j(page)d(31\))g(asso)s(ciated)
g(with)150 4878 y(a)g(comp)s(ound)e(command)i(apply)f(to)h(all)h
(commands)e(within)g(that)h(comp)s(ound)e(command)i(unless)150
4988 y(explicitly)32 b(o)m(v)m(erridden.)275 5121 y(In)20
(expression)e Fq(expr1)43 b Ft(is)36 b(ev)-5 b(aluated)38
b(according)f(to)g(the)g(rules)f(de-)630 3904 y(scrib)s(ed)41
b(b)s(elo)m(w)h(\(see)h(Section)g(6.5)g([Shell)g(Arithmetic],)j(page)d
-(82\).)77 b(The)42 b(arithmetic)630 4014 y(expression)33
+(86\).)77 b(The)42 b(arithmetic)630 4014 y(expression)33
b Fq(expr2)41 b Ft(is)34 b(then)f(ev)-5 b(aluated)35
b(rep)s(eatedly)f(un)m(til)g(it)g(ev)-5 b(aluates)35
b(to)g(zero.)51 b(Eac)m(h)630 4123 y(time)23 b Fq(expr2)30
4452 y Fq(commands)j Ft(that)d(is)f(executed,)i(or)e(false)h(if)f(an)m
(y)h(of)g(the)f(expressions)g(is)h(in)m(v)-5 b(alid.)275
4613 y(The)26 b Fs(break)g Ft(and)h Fs(continue)e Ft(builtins)i(\(see)h
-(Section)h(4.1)f([Bourne)g(Shell)f(Builtins],)i(page)f(37\))g(ma)m(y)
+(Section)h(4.1)f([Bourne)g(Shell)f(Builtins],)i(page)f(41\))g(ma)m(y)
150 4723 y(b)s(e)i(used)f(to)i(con)m(trol)h(lo)s(op)f(execution.)150
4923 y Fj(3.2.4.2)63 b(Conditional)42 b(Constructs)150
5095 y Fs(if)384 b Ft(The)30 b(syn)m(tax)h(of)f(the)h
y Fs([elif)46 b Fi(more-test-commands)11 b Fs(;)42 b(then)965
408 y Fi(more-consequents)11 b Fs(;])870 518 y([else)46
b Fi(alternate-consequents)11 b Fs(;])870 628 y(fi)630
-767 y Ft(The)53 b Fq(test-commands)58 b Ft(list)c(is)g(executed,)60
+757 y Ft(The)53 b Fq(test-commands)58 b Ft(list)c(is)g(executed,)60
b(and)53 b(if)g(its)h(return)e(status)i(is)f(zero,)61
-b(the)630 877 y Fq(consequen)m(t-commands)44 b Ft(list)d(is)f
+b(the)630 867 y Fq(consequen)m(t-commands)44 b Ft(list)d(is)f
(executed.)70 b(If)40 b Fq(test-commands)k Ft(returns)39
-b(a)h(non-zero)630 986 y(status,)45 b(eac)m(h)e Fs(elif)d
+b(a)h(non-zero)630 976 y(status,)45 b(eac)m(h)e Fs(elif)d
Ft(list)i(is)g(executed)h(in)e(turn,)j(and)d(if)g(its)h(exit)h(status)f
-(is)f(zero,)46 b(the)630 1096 y(corresp)s(onding)37 b
+(is)f(zero,)46 b(the)630 1086 y(corresp)s(onding)37 b
Fq(more-consequen)m(ts)42 b Ft(is)c(executed)g(and)f(the)h(command)g
-(completes.)63 b(If)630 1205 y(`)p Fs(else)29 b Fi
+(completes.)63 b(If)630 1196 y(`)p Fs(else)29 b Fi
(alternate-consequents)11 b Ft(')23 b(is)30 b(presen)m(t,)f(and)g(the)g
-(\014nal)g(command)f(in)h(the)g(\014nal)630 1315 y Fs(if)44
+(\014nal)g(command)f(in)h(the)g(\014nal)630 1305 y Fs(if)44
b Ft(or)g Fs(elif)f Ft(clause)i(has)f(a)h(non-zero)g(exit)g(status,)j
-(then)c Fq(alternate-consequen)m(ts)51 b Ft(is)630 1425
+(then)c Fq(alternate-consequen)m(ts)51 b Ft(is)630 1415
y(executed.)k(The)34 b(return)g(status)h(is)f(the)h(exit)h(status)f(of)
-g(the)g(last)g(command)g(executed,)630 1534 y(or)30 b(zero)i(if)e(no)g
-(condition)h(tested)g(true.)150 1704 y Fs(case)288 b
+g(the)g(last)g(command)g(executed,)630 1524 y(or)30 b(zero)i(if)e(no)g
+(condition)h(tested)g(true.)150 1674 y Fs(case)288 b
Ft(The)30 b(syn)m(tax)h(of)f(the)h Fs(case)e Ft(command)h(is:)870
-1843 y Fs(case)47 b Fi(word)57 b Fs(in)47 b([)g([\(])g
+1803 y Fs(case)47 b Fi(word)57 b Fs(in)47 b([)g([\(])g
Fi(pattern)57 b Fs([|)47 b Fi(pattern)11 b Fs(]...)l(\))48
-b Fi(command-list)55 b Fs(;;]...)46 b(esac)630 1983 y(case)20
+b Fi(command-list)55 b Fs(;;]...)46 b(esac)630 1933 y(case)20
b Ft(will)i(selectiv)m(ely)j(execute)e(the)e Fq(command-list)k
Ft(corresp)s(onding)20 b(to)i(the)g(\014rst)f Fq(pattern)630
-2092 y Ft(that)42 b(matc)m(hes)g Fq(w)m(ord)t Ft(.)71
+2042 y Ft(that)42 b(matc)m(hes)g Fq(w)m(ord)t Ft(.)71
b(If)41 b(the)g(shell)g(option)g Fs(nocasematch)d Ft(\(see)k(the)f
-(description)g(of)630 2202 y Fs(shopt)34 b Ft(in)h(Section)h(4.3.2)h
-([The)e(Shopt)f(Builtin],)k(page)e(58\))g(is)g(enabled,)g(the)g(matc)m
-(h)g(is)630 2311 y(p)s(erformed)29 b(without)i(regard)g(to)g(the)g
+(description)g(of)630 2152 y Fs(shopt)34 b Ft(in)h(Section)h(4.3.2)h
+([The)e(Shopt)f(Builtin],)k(page)e(62\))g(is)g(enabled,)g(the)g(matc)m
+(h)g(is)630 2262 y(p)s(erformed)29 b(without)i(regard)g(to)g(the)g
(case)h(of)f(alphab)s(etic)g(c)m(haracters.)44 b(The)30
-b(`)p Fs(|)p Ft(')h(is)g(used)630 2421 y(to)e(separate)g(m)m(ultiple)g
+b(`)p Fs(|)p Ft(')h(is)g(used)630 2371 y(to)e(separate)g(m)m(ultiple)g
(patterns,)g(and)e(the)i(`)p Fs(\))p Ft(')f(op)s(erator)g(terminates)h
-(a)g(pattern)f(list.)41 b(A)630 2531 y(list)31 b(of)g(patterns)f(and)g
+(a)g(pattern)f(list.)41 b(A)630 2481 y(list)31 b(of)g(patterns)f(and)g
(an)g(asso)s(ciated)i(command-list)f(is)f(kno)m(wn)g(as)h(a)g
-Fq(clause)5 b Ft(.)630 2670 y(Eac)m(h)42 b(clause)g(m)m(ust)f(b)s(e)g
+Fq(clause)5 b Ft(.)630 2610 y(Eac)m(h)42 b(clause)g(m)m(ust)f(b)s(e)g
(terminated)h(with)e(`)p Fs(;;)p Ft(',)45 b(`)p Fs(;&)p
Ft(',)f(or)d(`)p Fs(;;&)p Ft('.)73 b(The)41 b Fq(w)m(ord)j
-Ft(under-)630 2780 y(go)s(es)35 b(tilde)f(expansion,)h(parameter)g
+Ft(under-)630 2720 y(go)s(es)35 b(tilde)f(expansion,)h(parameter)g
(expansion,)g(command)f(substitution,)h(arithmetic)630
-2889 y(expansion,)47 b(and)d(quote)g(remo)m(v)-5 b(al)45
+2829 y(expansion,)47 b(and)d(quote)g(remo)m(v)-5 b(al)45
b(b)s(efore)f(matc)m(hing)h(is)f(attempted.)82 b(Eac)m(h)45
-b Fq(pattern)630 2999 y Ft(undergo)s(es)38 b(tilde)h(expansion,)i
+b Fq(pattern)630 2939 y Ft(undergo)s(es)38 b(tilde)h(expansion,)i
(parameter)e(expansion,)i(command)d(substitution,)j(and)630
-3108 y(arithmetic)32 b(expansion.)630 3248 y(There)e(ma)m(y)g(b)s(e)f
+3049 y(arithmetic)32 b(expansion.)630 3178 y(There)e(ma)m(y)g(b)s(e)f
(an)h(arbitrary)g(n)m(um)m(b)s(er)f(of)h Fs(case)f Ft(clauses,)i(eac)m
-(h)g(terminated)g(b)m(y)e(a)i(`)p Fs(;;)p Ft(',)630 3357
+(h)g(terminated)g(b)m(y)e(a)i(`)p Fs(;;)p Ft(',)630 3288
y(`)p Fs(;&)p Ft(',)c(or)e(`)p Fs(;;&)p Ft('.)39 b(The)25
b(\014rst)g(pattern)h(that)g(matc)m(hes)h(determines)e(the)h
-(command-list)g(that)630 3467 y(is)k(executed.)630 3606
-y(Here)35 b(is)g(an)g(example)h(using)e Fs(case)g Ft(in)g(a)h(script)g
-(that)h(could)f(b)s(e)f(used)g(to)h(describ)s(e)g(one)630
-3716 y(in)m(teresting)d(feature)f(of)f(an)g(animal:)870
-3856 y Fs(echo)47 b(-n)g("Enter)f(the)h(name)f(of)i(an)f(animal:)f(")
-870 3965 y(read)h(ANIMAL)870 4075 y(echo)g(-n)g("The)f($ANIMAL)g(has)h
-(")870 4184 y(case)g($ANIMAL)e(in)965 4294 y(horse)i(|)g(dog)g(|)h
-(cat\))e(echo)h(-n)g("four";;)965 4403 y(man)g(|)h(kangaroo)d(\))j
-(echo)e(-n)i("two";;)965 4513 y(*\))g(echo)e(-n)h("an)g(unknown)f
-(number)g(of";;)870 4623 y(esac)870 4732 y(echo)h(")g(legs.")630
-4902 y Ft(If)25 b(the)h(`)p Fs(;;)p Ft(')g(op)s(erator)g(is)g(used,)g
-(no)g(subsequen)m(t)f(matc)m(hes)i(are)f(attempted)h(after)g(the)f
-(\014rst)630 5011 y(pattern)g(matc)m(h.)40 b(Using)26
-b(`)p Fs(;&)p Ft(')f(in)h(place)g(of)g(`)p Fs(;;)p Ft(')g(causes)g
-(execution)h(to)f(con)m(tin)m(ue)h(with)f(the)630 5121
-y Fq(command-list)39 b Ft(asso)s(ciated)f(with)e(the)g(next)g(clause,)j
-(if)d(an)m(y)-8 b(.)59 b(Using)37 b(`)p Fs(;;&)p Ft(')f(in)g(place)h
-(of)630 5230 y(`)p Fs(;;)p Ft(')30 b(causes)g(the)g(shell)g(to)g(test)h
-(the)f(patterns)g(in)f(the)h(next)g(clause,)h(if)e(an)m(y)-8
+(command-list)g(that)630 3397 y(is)35 b(executed.)55
+b(It's)35 b(a)g(common)g(idiom)g(to)g(use)g(`)p Fs(*)p
+Ft(')g(as)g(the)g(\014nal)f(pattern)h(to)h(de\014ne)e(the)630
+3507 y(default)d(case,)g(since)g(that)g(pattern)f(will)h(alw)m(a)m(ys)h
+(matc)m(h.)630 3636 y(Here)j(is)g(an)g(example)h(using)e
+Fs(case)g Ft(in)g(a)h(script)g(that)h(could)f(b)s(e)f(used)g(to)h
+(describ)s(e)g(one)630 3746 y(in)m(teresting)d(feature)f(of)f(an)g
+(animal:)870 3875 y Fs(echo)47 b(-n)g("Enter)f(the)h(name)f(of)i(an)f
+(animal:)f(")870 3985 y(read)h(ANIMAL)870 4095 y(echo)g(-n)g("The)f
+($ANIMAL)g(has)h(")870 4204 y(case)g($ANIMAL)e(in)965
+4314 y(horse)i(|)g(dog)g(|)h(cat\))e(echo)h(-n)g("four";;)965
+4423 y(man)g(|)h(kangaroo)d(\))j(echo)e(-n)i("two";;)965
+4533 y(*\))g(echo)e(-n)h("an)g(unknown)f(number)g(of";;)870
+4643 y(esac)870 4752 y(echo)h(")g(legs.")630 4902 y Ft(If)25
+b(the)h(`)p Fs(;;)p Ft(')g(op)s(erator)g(is)g(used,)g(no)g(subsequen)m
+(t)f(matc)m(hes)i(are)f(attempted)h(after)g(the)f(\014rst)630
+5011 y(pattern)g(matc)m(h.)40 b(Using)26 b(`)p Fs(;&)p
+Ft(')f(in)h(place)g(of)g(`)p Fs(;;)p Ft(')g(causes)g(execution)h(to)f
+(con)m(tin)m(ue)h(with)f(the)630 5121 y Fq(command-list)39
+b Ft(asso)s(ciated)f(with)e(the)g(next)g(clause,)j(if)d(an)m(y)-8
+b(.)59 b(Using)37 b(`)p Fs(;;&)p Ft(')f(in)g(place)h(of)630
+5230 y(`)p Fs(;;)p Ft(')30 b(causes)g(the)g(shell)g(to)g(test)h(the)f
+(patterns)g(in)f(the)h(next)g(clause,)h(if)e(an)m(y)-8
b(,)31 b(and)f(execute)630 5340 y(an)m(y)h(asso)s(ciated)h
Fq(command-list)h Ft(on)d(a)h(successful)f(matc)m(h.)p
eop end
b Fs(\)\))630 3425 y Ft(The)33 b(arithmetic)i Fq(expression)f
Ft(is)f(ev)-5 b(aluated)35 b(according)g(to)f(the)g(rules)f(describ)s
(ed)g(b)s(elo)m(w)630 3535 y(\(see)j(Section)f(6.5)h([Shell)f
-(Arithmetic],)i(page)f(82\).)55 b(If)34 b(the)h(v)-5
+(Arithmetic],)i(page)f(86\).)55 b(If)34 b(the)h(v)-5
b(alue)35 b(of)g(the)g(expression)g(is)630 3644 y(non-zero,)27
b(the)f(return)e(status)i(is)g(0;)h(otherwise)f(the)g(return)e(status)i
(is)g(1.)39 b(This)25 b(is)g(exactly)630 3754 y(equiv)-5
b(alen)m(t)32 b(to)870 3886 y Fs(let)47 b(")p Fi(expression)11
b Fs(")630 4019 y Ft(See)25 b(Section)h(4.2)h([Bash)e(Builtins],)i
-(page)f(44,)i(for)c(a)i(full)f(description)g(of)g(the)h
+(page)f(48,)i(for)c(a)i(full)f(description)g(of)g(the)h
Fs(let)e Ft(builtin.)150 4175 y Fs([[...)o(]])870 4308
y([[)47 b Fi(expression)56 b Fs(]])630 4440 y Ft(Return)25
b(a)h(status)f(of)h(0)g(or)g(1)g(dep)s(ending)e(on)h(the)h(ev)-5
4550 y(sion)j Fq(expression)p Ft(.)41 b(Expressions)29
b(are)i(comp)s(osed)f(of)g(the)h(primaries)f(describ)s(ed)f(b)s(elo)m
(w)h(in)630 4659 y(Section)36 b(6.4)h([Bash)f(Conditional)g
-(Expressions],)h(page)f(80.)57 b(W)-8 b(ord)36 b(splitting)h(and)e
+(Expressions],)h(page)f(84.)57 b(W)-8 b(ord)36 b(splitting)h(and)e
(\014le-)630 4769 y(name)24 b(expansion)h(are)g(not)f(p)s(erformed)f
(on)h(the)h(w)m(ords)f(b)s(et)m(w)m(een)h(the)g(`)p Fs([[)p
Ft(')f(and)g(`)p Fs(]])p Ft(';)i(tilde)630 4879 y(expansion,)31
h(of)g(the)g(op)s(erator)630 408 y(is)31 b(considered)g(a)h(pattern)f
(and)g(matc)m(hed)h(according)g(to)g(the)g(rules)f(describ)s(ed)f(b)s
(elo)m(w)h(in)630 518 y(Section)37 b(3.5.8.1)i([P)m(attern)e(Matc)m
-(hing],)j(page)c(27.)59 b(If)36 b(the)g(shell)g(option)h
+(hing],)j(page)c(29.)59 b(If)36 b(the)g(shell)g(option)h
Fs(nocasematch)630 628 y Ft(\(see)42 b(the)f(description)g(of)h
Fs(shopt)d Ft(in)i(Section)h(4.3.2)h([The)e(Shopt)f(Builtin],)45
-b(page)d(58\))630 737 y(is)e(enabled,)i(the)e(matc)m(h)h(is)e(p)s
+b(page)d(62\))630 737 y(is)e(enabled,)i(the)e(matc)m(h)h(is)e(p)s
(erformed)g(without)g(regard)h(to)h(the)f(case)g(of)g(alphab)s(etic)630
847 y(c)m(haracters.)h(The)28 b(return)e(v)-5 b(alue)28
b(is)g(0)g(if)g(the)g(string)g(matc)m(hes)h(\(`)p Fs(==)p
(return)630 1755 y(v)-5 b(alue)40 b(is)g(2.)68 b(If)39
b(the)h(shell)f(option)h Fs(nocasematch)d Ft(\(see)j(the)g(description)
g(of)f Fs(shopt)f Ft(in)630 1864 y(Section)32 b(4.3.2)g([The)f(Shopt)f
-(Builtin],)i(page)g(58\))g(is)f(enabled,)g(the)g(matc)m(h)h(is)e(p)s
+(Builtin],)i(page)g(62\))g(is)f(enabled,)g(the)g(matc)m(h)h(is)e(p)s
(erformed)630 1974 y(without)36 b(regard)g(to)h(the)f(case)h(of)f
(alphab)s(etic)h(c)m(haracters.)59 b(An)m(y)36 b(part)g(of)h(the)f
(pattern)630 2084 y(ma)m(y)31 b(b)s(e)f(quoted)h(to)g(force)g(the)g
y Ft(Placing)30 b(a)f(list)g(of)g(commands)f(b)s(et)m(w)m(een)i(paren)m
(theses)e(causes)i(a)f(subshell)e(en)m(vironmen)m(t)630
4713 y(to)k(b)s(e)e(created)j(\(see)f(Section)g(3.7.3)h([Command)d
-(Execution)i(En)m(vironmen)m(t],)g(page)f(33\),)630 4823
+(Execution)i(En)m(vironmen)m(t],)g(page)f(36\),)630 4823
y(and)d(eac)m(h)i(of)e(the)h(commands)f(in)g Fq(list)j
Ft(to)f(b)s(e)e(executed)h(in)f(that)h(subshell.)39 b(Since)28
b(the)f Fq(list)630 4932 y Ft(is)i(executed)g(in)f(a)h(subshell,)g(v)-5
408 y(in)d(the)h(curren)m(t)g(shell)f(con)m(text.)42
b(No)27 b(subshell)f(is)g(created.)41 b(The)26 b(semicolon)i(\(or)f
(newline\))630 518 y(follo)m(wing)32 b Fq(list)h Ft(is)d(required.)275
-671 y(In)44 b(addition)h(to)h(the)f(creation)i(of)e(a)g(subshell,)j
+674 y(In)44 b(addition)h(to)h(the)f(creation)i(of)e(a)g(subshell,)j
(there)e(is)f(a)g(subtle)g(di\013erence)h(b)s(et)m(w)m(een)f(these)150
-781 y(t)m(w)m(o)c(constructs)e(due)g(to)g(historical)i(reasons.)67
+784 y(t)m(w)m(o)c(constructs)e(due)g(to)g(historical)i(reasons.)67
b(The)39 b(braces)g(are)h Fs(reserved)28 b(words)p Ft(,)40
-b(so)g(they)f(m)m(ust)150 891 y(b)s(e)d(separated)h(from)f(the)g
+b(so)g(they)f(m)m(ust)150 893 y(b)s(e)d(separated)h(from)f(the)g
Fq(list)j Ft(b)m(y)e Fs(blank)p Ft(s)e(or)h(other)h(shell)f(metac)m
-(haracters.)62 b(The)36 b(paren)m(theses)h(are)150 1000
+(haracters.)62 b(The)36 b(paren)m(theses)h(are)150 1003
y Fs(operators)p Ft(,)23 b(and)h(are)g(recognized)i(as)e(separate)i
(tok)m(ens)f(b)m(y)f(the)g(shell)h(ev)m(en)g(if)f(they)g(are)h(not)f
-(separated)150 1110 y(from)30 b(the)g Fq(list)j Ft(b)m(y)e(whitespace.)
-275 1241 y(The)e(exit)j(status)e(of)h(b)s(oth)f(of)g(these)h
+(separated)150 1112 y(from)30 b(the)g Fq(list)j Ft(b)m(y)e(whitespace.)
+275 1245 y(The)e(exit)j(status)e(of)h(b)s(oth)f(of)g(these)h
(constructs)g(is)f(the)h(exit)g(status)f(of)h Fq(list)r
-Ft(.)150 1434 y Fj(3.2.5)63 b(Copro)s(cesses)150 1581
+Ft(.)150 1441 y Fj(3.2.5)63 b(Copro)s(cesses)150 1588
y Ft(A)37 b Fs(coprocess)c Ft(is)k(a)g(shell)f(command)h(preceded)f(b)m
(y)g(the)h Fs(coproc)d Ft(reserv)m(ed)j(w)m(ord.)59 b(A)36
-b(copro)s(cess)h(is)150 1691 y(executed)g(async)m(hronously)g(in)f(a)h
+b(copro)s(cess)h(is)150 1697 y(executed)g(async)m(hronously)g(in)f(a)h
(subshell,)g(as)g(if)g(the)f(command)h(had)f(b)s(een)f(terminated)i
-(with)g(the)150 1800 y(`)p Fs(&)p Ft(')d(con)m(trol)h(op)s(erator,)g
+(with)g(the)150 1807 y(`)p Fs(&)p Ft(')d(con)m(trol)h(op)s(erator,)g
(with)f(a)g(t)m(w)m(o-w)m(a)m(y)i(pip)s(e)d(established)h(b)s(et)m(w)m
-(een)h(the)f(executing)h(shell)f(and)f(the)150 1910 y(copro)s(cess.)275
-2042 y(The)c(format)i(for)f(a)h(copro)s(cess)g(is:)390
-2173 y Fs(coproc)46 b([)p Fi(NAME)11 b Fs(])46 b Fi(command)56
-b Fs([)p Fi(redirections)11 b Fs(])150 2304 y Ft(This)41
+(een)h(the)f(executing)h(shell)f(and)f(the)150 1916 y(copro)s(cess.)275
+2049 y(The)c(format)i(for)f(a)h(copro)s(cess)g(is:)390
+2182 y Fs(coproc)46 b([)p Fi(NAME)11 b Fs(])46 b Fi(command)56
+b Fs([)p Fi(redirections)11 b Fs(])150 2315 y Ft(This)41
b(creates)i(a)g(copro)s(cess)f(named)f Fq(NAME)5 b Ft(.)43
b(If)f Fq(NAME)47 b Ft(is)42 b(not)g(supplied,)i(the)e(default)g(name)g
-(is)150 2414 y Fq(COPR)m(OC)8 b Ft(.)22 b Fq(NAME)29
+(is)150 2424 y Fq(COPR)m(OC)8 b Ft(.)22 b Fq(NAME)29
b Ft(m)m(ust)23 b(not)g(b)s(e)g(supplied)e(if)i Fq(command)k
Ft(is)c(a)g(simple)g(command)g(\(see)h(Section)g(3.2.1)150
-2524 y([Simple)39 b(Commands],)h(page)g(8\);)k(otherwise,)e(it)d(is)g
+2534 y([Simple)39 b(Commands],)h(page)g(8\);)k(otherwise,)e(it)d(is)g
(in)m(terpreted)h(as)f(the)g(\014rst)f(w)m(ord)h(of)g(the)g(simple)150
-2633 y(command.)275 2765 y(When)j(the)i(copro)s(cess)f(is)g(executed,)
+2643 y(command.)275 2776 y(When)j(the)i(copro)s(cess)f(is)g(executed,)
48 b(the)43 b(shell)g(creates)i(an)e(arra)m(y)g(v)-5
-b(ariable)44 b(\(see)g(Section)g(6.7)150 2874 y([Arra)m(ys],)32
-b(page)g(84\))h(named)e Fs(NAME)f Ft(in)h(the)h(con)m(text)h(of)e(the)h
+b(ariable)44 b(\(see)g(Section)g(6.7)150 2886 y([Arra)m(ys],)32
+b(page)g(88\))h(named)e Fs(NAME)f Ft(in)h(the)h(con)m(text)h(of)e(the)h
(executing)g(shell.)44 b(The)31 b(standard)f(output)150
-2984 y(of)g Fq(command)j Ft(is)d(connected)g(via)g(a)g(pip)s(e)f(to)i
+2995 y(of)g Fq(command)j Ft(is)d(connected)g(via)g(a)g(pip)s(e)f(to)i
(a)f(\014le)g(descriptor)f(in)g(the)h(executing)h(shell,)f(and)g(that)g
-(\014le)150 3093 y(descriptor)i(is)f(assigned)h(to)g
+(\014le)150 3105 y(descriptor)i(is)f(assigned)h(to)g
Fs(NAME)p Ft([0].)45 b(The)31 b(standard)g(input)f(of)i
Fq(command)j Ft(is)d(connected)h(via)f(a)g(pip)s(e)150
-3203 y(to)39 b(a)g(\014le)f(descriptor)g(in)g(the)g(executing)i(shell,)
+3215 y(to)39 b(a)g(\014le)f(descriptor)g(in)g(the)g(executing)i(shell,)
g(and)e(that)h(\014le)f(descriptor)g(is)g(assigned)h(to)g
-Fs(NAME)p Ft([1].)150 3313 y(This)31 b(pip)s(e)g(is)h(established)g(b)s
+Fs(NAME)p Ft([1].)150 3324 y(This)31 b(pip)s(e)g(is)h(established)g(b)s
(efore)g(an)m(y)g(redirections)g(sp)s(eci\014ed)g(b)m(y)f(the)i
-(command)e(\(see)i(Section)g(3.6)150 3422 y([Redirections],)25
-b(page)e(28\).)39 b(The)21 b(\014le)h(descriptors)g(can)g(b)s(e)f
+(command)e(\(see)i(Section)g(3.6)150 3434 y([Redirections],)25
+b(page)e(31\).)39 b(The)21 b(\014le)h(descriptors)g(can)g(b)s(e)f
(utilized)i(as)f(argumen)m(ts)h(to)f(shell)g(commands)150
-3532 y(and)30 b(redirections)h(using)f(standard)f(w)m(ord)h
-(expansions.)275 3663 y(The)d(pro)s(cess)h(ID)h(of)f(the)h(shell)f(spa)
-m(wned)g(to)h(execute)h(the)e(copro)s(cess)h(is)f(a)m(v)-5
-b(ailable)31 b(as)d(the)h(v)-5 b(alue)29 b(of)150 3773
-y(the)k(v)-5 b(ariable)33 b Fs(NAME)p 850 3773 28 4 v
-39 w Ft(PID.)g(The)f Fs(wait)f Ft(builtin)h(command)g(ma)m(y)h(b)s(e)f
-(used)g(to)h(w)m(ait)h(for)e(the)h(copro)s(cess)150 3882
-y(to)e(terminate.)275 4014 y(The)e(return)h(status)g(of)h(a)g(copro)s
-(cess)f(is)h(the)f(exit)i(status)e(of)h Fq(command)t
-Ft(.)150 4207 y Fj(3.2.6)63 b(GNU)41 b(P)m(arallel)150
-4354 y Ft(GNU)36 b(P)m(arallel,)k(as)c(its)g(name)g(suggests,)i(can)e
+3543 y(and)33 b(redirections)g(using)g(standard)f(w)m(ord)h
+(expansions.)49 b(The)33 b(\014le)g(descriptors)g(are)g(not)h(a)m(v)-5
+b(ailable)35 b(in)150 3653 y(subshells.)275 3786 y(The)27
+b(pro)s(cess)h(ID)h(of)f(the)h(shell)f(spa)m(wned)g(to)h(execute)h(the)
+e(copro)s(cess)h(is)f(a)m(v)-5 b(ailable)31 b(as)d(the)h(v)-5
+b(alue)29 b(of)150 3895 y(the)k(v)-5 b(ariable)33 b Fs(NAME)p
+850 3895 28 4 v 39 w Ft(PID.)g(The)f Fs(wait)f Ft(builtin)h(command)g
+(ma)m(y)h(b)s(e)f(used)g(to)h(w)m(ait)h(for)e(the)h(copro)s(cess)150
+4005 y(to)e(terminate.)275 4138 y(The)e(return)h(status)g(of)h(a)g
+(copro)s(cess)f(is)h(the)f(exit)i(status)e(of)h Fq(command)t
+Ft(.)150 4333 y Fj(3.2.6)63 b(GNU)41 b(P)m(arallel)150
+4480 y Ft(GNU)36 b(P)m(arallel,)k(as)c(its)g(name)g(suggests,)i(can)e
(b)s(e)f(used)g(to)h(build)f(and)g(run)g(commands)g(in)h(parallel.)150
-4464 y(Y)-8 b(ou)41 b(ma)m(y)g(run)e(the)h(same)h(command)f(with)g
+4590 y(Y)-8 b(ou)41 b(ma)m(y)g(run)e(the)h(same)h(command)f(with)g
(di\013eren)m(t)h(argumen)m(ts,)j(whether)39 b(they)i(are)g
-(\014lenames,)150 4573 y(usernames,)30 b(hostnames,)h(or)f(lines)h
-(read)f(from)g(\014les.)275 4705 y(F)-8 b(or)33 b(a)g(complete)h
+(\014lenames,)150 4699 y(usernames,)30 b(hostnames,)h(or)f(lines)h
+(read)f(from)g(\014les.)275 4832 y(F)-8 b(or)33 b(a)g(complete)h
(description,)g(refer)e(to)i(the)f(GNU)g(P)m(arallel)i(do)s(cumen)m
-(tation.)48 b(A)33 b(few)f(examples)150 4814 y(should)d(pro)m(vide)i(a)
-g(brief)e(in)m(tro)s(duction)i(to)g(its)g(use.)275 4946
+(tation.)48 b(A)33 b(few)f(examples)150 4942 y(should)d(pro)m(vide)i(a)
+g(brief)e(in)m(tro)s(duction)i(to)g(its)g(use.)275 5075
y(F)-8 b(or)31 b(example,)g(it)g(is)f(easy)h(to)g(pre\014x)f(eac)m(h)h
(line)g(in)f(a)h(text)g(\014le)g(with)f(a)g(sp)s(eci\014ed)g(string:)
-390 5077 y Fs(cat)47 b(file)g(|)g(parallel)f(-k)h(echo)f(prefix_string)
-150 5209 y Ft(The)30 b(`)p Fs(-k)p Ft(')g(option)h(is)f(required)g(to)h
-(preserv)m(e)g(the)f(lines')h(order.)275 5340 y(Similarly)-8
-b(,)31 b(y)m(ou)g(can)f(app)s(end)f(a)i(sp)s(eci\014ed)e(string)i(to)g
-(eac)m(h)g(line)g(in)f(a)h(text)g(\014le:)p eop end
+390 5207 y Fs(cat)47 b(file)g(|)g(parallel)f(-k)h(echo)f(prefix_string)
+150 5340 y Ft(The)30 b(`)p Fs(-k)p Ft(')g(option)h(is)f(required)g(to)h
+(preserv)m(e)g(the)f(lines')h(order.)p eop end
%%Page: 16 22
TeXDict begin 16 21 bop 150 -116 a Ft(16)2572 b(Bash)31
-b(Reference)g(Man)m(ual)390 299 y Fs(cat)47 b(file)g(|)g(parallel)f(-k)
-h(echo)f({})i(append_string)275 432 y Ft(Y)-8 b(ou)34
-b(can)g(use)f(P)m(arallel)j(to)e(mo)m(v)m(e)h(\014les)f(from)f(the)h
-(curren)m(t)f(directory)h(when)f(the)h(n)m(um)m(b)s(er)e(of)i(\014les)
-150 541 y(is)c(to)s(o)i(large)f(to)g(pro)s(cess)f(with)g(one)h
-Fs(mv)f Ft(in)m(v)m(o)s(cation:)390 674 y Fs(ls)47 b(|)h(parallel)d(mv)
-i({})h(destdir)275 807 y Ft(As)35 b(y)m(ou)h(can)f(see,)j(the)d
-Fs({})g Ft(is)g(replaced)h(with)f(eac)m(h)i(line)f(read)f(from)g
-(standard)f(input.)55 b(This)35 b(will)150 917 y(run)f(as)h(man)m(y)g
-Fs(mv)g Ft(commands)g(as)g(there)h(are)f(\014les)g(in)g(the)h(curren)m
-(t)f(directory)-8 b(.)56 b(Y)-8 b(ou)35 b(can)h(em)m(ulate)h(a)150
-1026 y(parallel)31 b Fs(xargs)e Ft(b)m(y)i(adding)f(the)g(`)p
-Fs(-X)p Ft(')g(option:)390 1159 y Fs(ls)47 b(|)h(parallel)d(-X)i(mv)h
-({})f(destdir)275 1292 y Ft(GNU)31 b(P)m(arallel)i(can)e(replace)h
+b(Reference)g(Man)m(ual)275 299 y(Similarly)-8 b(,)31
+b(y)m(ou)g(can)f(app)s(end)f(a)i(sp)s(eci\014ed)e(string)i(to)g(eac)m
+(h)g(line)g(in)f(a)h(text)g(\014le:)390 431 y Fs(cat)47
+b(file)g(|)g(parallel)f(-k)h(echo)f({})i(append_string)275
+563 y Ft(Y)-8 b(ou)34 b(can)g(use)f(P)m(arallel)j(to)e(mo)m(v)m(e)h
+(\014les)f(from)f(the)h(curren)m(t)f(directory)h(when)f(the)h(n)m(um)m
+(b)s(er)e(of)i(\014les)150 672 y(is)c(to)s(o)i(large)f(to)g(pro)s(cess)
+f(with)g(one)h Fs(mv)f Ft(in)m(v)m(o)s(cation:)390 804
+y Fs(ls)47 b(|)h(parallel)d(mv)i({})h(destdir)275 936
+y Ft(As)35 b(y)m(ou)h(can)f(see,)j(the)d Fs({})g Ft(is)g(replaced)h
+(with)f(eac)m(h)i(line)f(read)f(from)g(standard)f(input.)55
+b(This)35 b(will)150 1046 y(run)f(as)h(man)m(y)g Fs(mv)g
+Ft(commands)g(as)g(there)h(are)f(\014les)g(in)g(the)h(curren)m(t)f
+(directory)-8 b(.)56 b(Y)-8 b(ou)35 b(can)h(em)m(ulate)h(a)150
+1155 y(parallel)31 b Fs(xargs)e Ft(b)m(y)i(adding)f(the)g(`)p
+Fs(-X)p Ft(')g(option:)390 1287 y Fs(ls)47 b(|)h(parallel)d(-X)i(mv)h
+({})f(destdir)275 1419 y Ft(GNU)31 b(P)m(arallel)i(can)e(replace)h
(certain)g(common)g(idioms)f(that)g(op)s(erate)h(on)f(lines)g(read)g
-(from)f(a)i(\014le)150 1401 y(\(in)e(this)h(case,)g(\014lenames\):)390
-1534 y Fs(for)47 b(x)g(in)h($\(cat)e(list\);)g(do)390
-1644 y(do-something1)e($x)j(config-$x)390 1753 y(do-something2)d(<)k
-($x)390 1863 y(done)f(|)g(process-output)150 1996 y Ft(with)30
+(from)f(a)i(\014le)150 1528 y(\(in)e(this)h(case,)g(\014lenames\):)390
+1660 y Fs(for)47 b(x)g(in)h($\(cat)e(list\);)g(do)390
+1770 y(do-something1)e($x)j(config-$x)390 1879 y(do-something2)d(<)k
+($x)390 1989 y(done)f(|)g(process-output)150 2121 y Ft(with)30
b(a)h(more)f(compact)i(syn)m(tax)f(reminiscen)m(t)g(of)g(lam)m(b)s
-(das:)390 2129 y Fs(cat)47 b(list)g(|)g(parallel)f("do-something1)d({})
+(das:)390 2253 y Fs(cat)47 b(list)g(|)g(parallel)f("do-something1)d({})
48 b(config-{})d(;)i(do-something2)e(<)i({}")g(|)g(process-output)275
-2262 y Ft(P)m(arallel)31 b(pro)m(vides)e(a)h(built-in)g(mec)m(hanism)g
+2385 y Ft(P)m(arallel)31 b(pro)m(vides)e(a)h(built-in)g(mec)m(hanism)g
(to)g(remo)m(v)m(e)h(\014lename)e(extensions,)i(whic)m(h)e(lends)g
-(itself)150 2371 y(to)i(batc)m(h)g(\014le)g(transformations)f(or)g
-(renaming:)390 2504 y Fs(ls)47 b(*.gz)g(|)g(parallel)f(-j+0)g("zcat)h
-({})g(|)g(bzip2)g(>{.}.bz2)e(&&)j(rm)f({}")150 2637 y
+(itself)150 2494 y(to)i(batc)m(h)g(\014le)g(transformations)f(or)g
+(renaming:)390 2626 y Fs(ls)47 b(*.gz)g(|)g(parallel)f(-j+0)g("zcat)h
+({})g(|)g(bzip2)g(>{.}.bz2)e(&&)j(rm)f({}")150 2758 y
Ft(This)28 b(will)i(recompress)e(all)i(\014les)f(in)g(the)g(curren)m(t)
g(directory)g(with)g(names)g(ending)f(in)h(.gz)h(using)f(bzip2,)150
-2746 y(running)g(one)h(job)g(p)s(er)g(CPU)g(\(-j)p Fs(+)p
-Ft(0\))h(in)f(parallel.)275 2879 y(If)24 b(a)i(command)f(generates)h
+2868 y(running)g(one)h(job)g(p)s(er)g(CPU)g(\(-j)p Fs(+)p
+Ft(0\))h(in)f(parallel.)275 2999 y(If)24 b(a)i(command)f(generates)h
(output,)g(y)m(ou)g(ma)m(y)f(w)m(an)m(t)h(to)g(preserv)m(e)g(the)f
-(input)f(order)h(in)g(the)g(output.)150 2989 y(F)-8 b(or)31
-b(instance,)g(the)g(follo)m(wing)h(command)390 3122 y
+(input)f(order)h(in)g(the)g(output.)150 3109 y(F)-8 b(or)31
+b(instance,)g(the)g(follo)m(wing)h(command)390 3241 y
Fs({)47 b(echo)g(foss.org.my)e(;)i(echo)g(debian.org;)e(echo)h
(freenetproject.org;)d(})k(|)h(parallel)d(traceroute)150
-3254 y Ft(will)28 b(displa)m(y)g(as)f(output)g(the)h(traceroute)h(in)m
+3373 y Ft(will)28 b(displa)m(y)g(as)f(output)g(the)h(traceroute)h(in)m
(v)m(o)s(cation)h(that)e(\014nishes)e(\014rst.)39 b(Using)28
-b(the)g(`)p Fs(-k)p Ft(')f(option,)i(as)150 3364 y(w)m(e)i(sa)m(w)g(ab)
-s(o)m(v)m(e)390 3497 y Fs({)47 b(echo)g(foss.org.my)e(;)i(echo)g
+b(the)g(`)p Fs(-k)p Ft(')f(option,)i(as)150 3482 y(w)m(e)i(sa)m(w)g(ab)
+s(o)m(v)m(e)390 3614 y Fs({)47 b(echo)g(foss.org.my)e(;)i(echo)g
(debian.org;)e(echo)h(freenetproject.org;)d(})k(|)h(parallel)d(-k)i
-(traceroute)150 3630 y Ft(will)31 b(ensure)e(that)i(the)g(output)f(of)g
+(traceroute)150 3746 y Ft(will)31 b(ensure)e(that)i(the)g(output)f(of)g
Fs(traceroute)e(foss.org.my)f Ft(is)k(displa)m(y)m(ed)g(\014rst.)150
-3859 y Fr(3.3)68 b(Shell)45 b(F)-11 b(unctions)150 4018
+3973 y Fr(3.3)68 b(Shell)45 b(F)-11 b(unctions)150 4133
y Ft(Shell)35 b(functions)h(are)g(a)g(w)m(a)m(y)g(to)h(group)e
(commands)g(for)h(later)g(execution)h(using)e(a)h(single)g(name)g(for)
-150 4128 y(the)f(group.)55 b(They)35 b(are)g(executed)h(just)f(lik)m(e)
+150 4242 y(the)f(group.)55 b(They)35 b(are)g(executed)h(just)f(lik)m(e)
h(a)g Fs(")p Ft(regular)p Fs(")f Ft(command.)54 b(When)35
-b(the)h(name)f(of)g(a)h(shell)150 4237 y(function)j(is)g(used)f(as)h(a)
+b(the)h(name)f(of)g(a)h(shell)150 4352 y(function)j(is)g(used)f(as)h(a)
h(simple)f(command)g(name,)i(the)e(list)h(of)f(commands)g(asso)s
-(ciated)i(with)d(that)150 4347 y(function)25 b(name)h(is)g(executed.)40
+(ciated)i(with)d(that)150 4461 y(function)25 b(name)h(is)g(executed.)40
b(Shell)25 b(functions)g(are)i(executed)f(in)f(the)h(curren)m(t)g
-(shell)g(con)m(text;)j(no)c(new)150 4457 y(pro)s(cess)30
-b(is)g(created)i(to)f(in)m(terpret)g(them.)275 4589 y(F)-8
+(shell)g(con)m(text;)j(no)c(new)150 4571 y(pro)s(cess)30
+b(is)g(created)i(to)f(in)m(terpret)g(them.)275 4703 y(F)-8
b(unctions)30 b(are)h(declared)g(using)f(this)g(syn)m(tax:)390
-4722 y Fi(name)57 b Fs(\(\))47 b Fi(compound-command)54
-b Fs([)48 b Fi(redirections)55 b Fs(])275 4855 y Ft(or)390
-4988 y Fs(function)46 b Fi(name)57 b Fs([\(\)])46 b Fi
+4835 y Fi(name)57 b Fs(\(\))47 b Fi(compound-command)54
+b Fs([)48 b Fi(redirections)55 b Fs(])275 4967 y Ft(or)390
+5099 y Fs(function)46 b Fi(name)57 b Fs([\(\)])46 b Fi
(compound-command)54 b Fs([)48 b Fi(redirections)55 b
-Fs(])275 5121 y Ft(This)31 b(de\014nes)h(a)g(shell)h(function)f(named)g
+Fs(])275 5230 y Ft(This)31 b(de\014nes)h(a)g(shell)h(function)f(named)g
Fq(name)5 b Ft(.)47 b(The)32 b(reserv)m(ed)h(w)m(ord)f
-Fs(function)e Ft(is)i(optional.)48 b(If)150 5230 y(the)39
+Fs(function)e Ft(is)i(optional.)48 b(If)150 5340 y(the)39
b Fs(function)f Ft(reserv)m(ed)h(w)m(ord)g(is)g(supplied,)i(the)e
(paren)m(theses)h(are)f(optional.)69 b(The)39 b Fq(b)s(o)s(dy)45
-b Ft(of)40 b(the)150 5340 y(function)h(is)h(the)g(comp)s(ound)e
-(command)h Fq(comp)s(ound-command)j Ft(\(see)e(Section)h(3.2.4)g([Comp)
-s(ound)p eop end
+b Ft(of)40 b(the)p eop end
%%Page: 17 23
TeXDict begin 17 22 bop 150 -116 a Ft(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(17)150 299
-y(Commands],)33 b(page)g(9\).)48 b(That)33 b(command)g(is)f(usually)h
-(a)g Fq(list)i Ft(enclosed)e(b)s(et)m(w)m(een)h Fs({)e
-Ft(and)g Fs(})p Ft(,)h(but)f(ma)m(y)150 408 y(b)s(e)27
+y(function)41 b(is)h(the)g(comp)s(ound)e(command)h Fq(comp)s
+(ound-command)j Ft(\(see)e(Section)h(3.2.4)g([Comp)s(ound)150
+408 y(Commands],)33 b(page)g(9\).)48 b(That)33 b(command)g(is)f
+(usually)h(a)g Fq(list)i Ft(enclosed)e(b)s(et)m(w)m(een)h
+Fs({)e Ft(and)g Fs(})p Ft(,)h(but)f(ma)m(y)150 518 y(b)s(e)27
b(an)m(y)h(comp)s(ound)e(command)h(listed)h(ab)s(o)m(v)m(e.)41
b Fq(comp)s(ound-command)30 b Ft(is)e(executed)g(whenev)m(er)g
-Fq(name)150 518 y Ft(is)j(sp)s(eci\014ed)f(as)g(the)h(name)g(of)g(a)g
+Fq(name)150 628 y Ft(is)j(sp)s(eci\014ed)f(as)g(the)h(name)g(of)g(a)g
(command.)41 b(When)31 b(the)f(shell)h(is)g(in)f Fl(posix)g
-Ft(mo)s(de)g(\(see)i(Section)f(6.11)150 628 y([Bash)36
-b(POSIX)f(Mo)s(de],)j(page)e(88\),)j Fq(name)i Ft(ma)m(y)36
+Ft(mo)s(de)g(\(see)i(Section)f(6.11)150 737 y([Bash)36
+b(POSIX)f(Mo)s(de],)j(page)e(92\),)j Fq(name)i Ft(ma)m(y)36
b(not)h(b)s(e)e(the)h(same)g(as)g(one)g(of)g(the)g(sp)s(ecial)h
-(builtins)150 737 y(\(see)24 b(Section)g(4.4)g([Sp)s(ecial)g
-(Builtins],)h(page)f(63\).)40 b(An)m(y)23 b(redirections)h(\(see)g
-(Section)g(3.6)g([Redirections],)150 847 y(page)31 b(28\))h(asso)s
+(builtins)150 847 y(\(see)24 b(Section)g(4.4)g([Sp)s(ecial)g
+(Builtins],)h(page)f(67\).)40 b(An)m(y)23 b(redirections)h(\(see)g
+(Section)g(3.6)g([Redirections],)150 956 y(page)31 b(31\))h(asso)s
(ciated)g(with)e(the)g(shell)h(function)f(are)h(p)s(erformed)d(when)i
-(the)g(function)g(is)h(executed.)275 981 y(A)41 b(function)f
+(the)g(function)g(is)h(executed.)275 1090 y(A)41 b(function)f
(de\014nition)h(ma)m(y)g(b)s(e)g(deleted)g(using)g(the)g(`)p
Fs(-f)p Ft(')g(option)g(to)h(the)f Fs(unset)e Ft(builtin)i(\(see)150
-1090 y(Section)31 b(4.1)h([Bourne)e(Shell)g(Builtins],)h(page)h(37\).)
-275 1224 y(The)26 b(exit)i(status)g(of)f(a)h(function)f(de\014nition)g
+1200 y(Section)31 b(4.1)h([Bourne)e(Shell)g(Builtins],)h(page)h(41\).)
+275 1334 y(The)26 b(exit)i(status)g(of)f(a)h(function)f(de\014nition)g
(is)g(zero)h(unless)f(a)g(syn)m(tax)h(error)f(o)s(ccurs)g(or)g(a)h
-(readonly)150 1334 y(function)k(with)f(the)i(same)f(name)g(already)h
+(readonly)150 1443 y(function)k(with)f(the)i(same)f(name)g(already)h
(exists.)46 b(When)32 b(executed,)h(the)f(exit)h(status)g(of)f(a)g
-(function)150 1443 y(is)e(the)h(exit)g(status)g(of)f(the)h(last)g
+(function)150 1553 y(is)e(the)h(exit)g(status)g(of)f(the)h(last)g
(command)f(executed)i(in)e(the)g(b)s(o)s(dy)-8 b(.)275
-1577 y(Note)22 b(that)f(for)f(historical)i(reasons,)h(in)e(the)g(most)g
+1687 y(Note)22 b(that)f(for)f(historical)i(reasons,)h(in)e(the)g(most)g
(common)g(usage)g(the)g(curly)f(braces)h(that)g(surround)150
-1687 y(the)38 b(b)s(o)s(dy)d(of)j(the)f(function)g(m)m(ust)g(b)s(e)g
+1797 y(the)38 b(b)s(o)s(dy)d(of)j(the)f(function)g(m)m(ust)g(b)s(e)g
(separated)h(from)f(the)g(b)s(o)s(dy)f(b)m(y)h Fs(blank)p
-Ft(s)f(or)h(newlines.)62 b(This)150 1797 y(is)38 b(b)s(ecause)g(the)h
+Ft(s)f(or)h(newlines.)62 b(This)150 1906 y(is)38 b(b)s(ecause)g(the)h
(braces)f(are)h(reserv)m(ed)f(w)m(ords)g(and)f(are)i(only)f(recognized)
-i(as)e(suc)m(h)g(when)f(they)i(are)150 1906 y(separated)26
+i(as)e(suc)m(h)g(when)f(they)i(are)150 2016 y(separated)26
b(from)f(the)h(command)f(list)i(b)m(y)e(whitespace)h(or)g(another)g
-(shell)g(metac)m(haracter.)41 b(Also,)28 b(when)150 2016
+(shell)g(metac)m(haracter.)41 b(Also,)28 b(when)150 2125
y(using)i(the)g(braces,)h(the)g Fq(list)i Ft(m)m(ust)d(b)s(e)g
(terminated)h(b)m(y)f(a)h(semicolon,)h(a)e(`)p Fs(&)p
-Ft(',)h(or)g(a)f(newline.)275 2150 y(When)i(a)i(function)f(is)g
+Ft(',)h(or)g(a)f(newline.)275 2259 y(When)i(a)i(function)f(is)g
(executed,)i(the)e(argumen)m(ts)h(to)g(the)f(function)g(b)s(ecome)g
-(the)h(p)s(ositional)g(pa-)150 2259 y(rameters)42 b(during)e(its)i
+(the)h(p)s(ositional)g(pa-)150 2369 y(rameters)42 b(during)e(its)i
(execution)h(\(see)f(Section)g(3.4.1)h([P)m(ositional)h(P)m
-(arameters],)i(page)c(18\).)75 b(The)150 2369 y(sp)s(ecial)37
+(arameters],)i(page)c(19\).)75 b(The)150 2478 y(sp)s(ecial)37
b(parameter)f(`)p Fs(#)p Ft(')g(that)h(expands)e(to)i(the)f(n)m(um)m(b)
s(er)f(of)h(p)s(ositional)h(parameters)f(is)g(up)s(dated)f(to)150
-2478 y(re\015ect)h(the)f(c)m(hange.)56 b(Sp)s(ecial)35
+2588 y(re\015ect)h(the)f(c)m(hange.)56 b(Sp)s(ecial)35
b(parameter)h Fs(0)f Ft(is)g(unc)m(hanged.)54 b(The)35
-b(\014rst)f(elemen)m(t)j(of)e(the)g Fs(FUNCNAME)150 2588
+b(\014rst)f(elemen)m(t)j(of)e(the)g Fs(FUNCNAME)150 2698
y Ft(v)-5 b(ariable)31 b(is)g(set)f(to)i(the)e(name)h(of)f(the)h
(function)f(while)g(the)h(function)f(is)g(executing.)275
-2722 y(All)25 b(other)g(asp)s(ects)g(of)g(the)g(shell)g(execution)h(en)
+2832 y(All)25 b(other)g(asp)s(ects)g(of)g(the)g(shell)g(execution)h(en)
m(vironmen)m(t)g(are)f(iden)m(tical)h(b)s(et)m(w)m(een)g(a)f(function)g
-(and)150 2832 y(its)35 b(caller)i(with)d(these)i(exceptions:)50
+(and)150 2941 y(its)35 b(caller)i(with)d(these)i(exceptions:)50
b(the)36 b Fs(DEBUG)d Ft(and)h Fs(RETURN)g Ft(traps)g(are)i(not)f
-(inherited)f(unless)h(the)150 2941 y(function)26 b(has)g(b)s(een)f(giv)
+(inherited)f(unless)h(the)150 3051 y(function)26 b(has)g(b)s(een)f(giv)
m(en)i(the)g Fs(trace)d Ft(attribute)j(using)f(the)g
Fs(declare)e Ft(builtin)i(or)g(the)h Fs(-o)i(functrace)150
-3051 y Ft(option)f(has)e(b)s(een)h(enabled)g(with)g(the)g
+3160 y Ft(option)f(has)e(b)s(een)h(enabled)g(with)g(the)g
Fs(set)f Ft(builtin,)i(\(in)f(whic)m(h)f(case)j(all)f(functions)e
-(inherit)h(the)g Fs(DEBUG)150 3160 y Ft(and)33 b Fs(RETURN)f
+(inherit)h(the)g Fs(DEBUG)150 3270 y Ft(and)33 b Fs(RETURN)f
Ft(traps\),)j(and)e(the)h Fs(ERR)f Ft(trap)h(is)g(not)g(inherited)f
(unless)g(the)h Fs(-o)c(errtrace)h Ft(shell)j(option)150
-3270 y(has)h(b)s(een)f(enabled.)55 b(See)35 b(Section)h(4.1)g([Bourne)f
-(Shell)g(Builtins],)i(page)f(37,)i(for)c(the)i(description)f(of)150
-3380 y(the)c Fs(trap)e Ft(builtin.)275 3513 y(The)38
+3380 y(has)h(b)s(een)f(enabled.)55 b(See)35 b(Section)h(4.1)g([Bourne)f
+(Shell)g(Builtins],)i(page)f(41,)i(for)c(the)i(description)f(of)150
+3489 y(the)c Fs(trap)e Ft(builtin.)275 3623 y(The)38
b Fs(FUNCNEST)f Ft(v)-5 b(ariable,)42 b(if)d(set)h(to)g(a)g(n)m(umeric)
f(v)-5 b(alue)39 b(greater)h(than)f(0,)j(de\014nes)d(a)g(maxim)m(um)150
-3623 y(function)24 b(nesting)h(lev)m(el.)40 b(F)-8 b(unction)25
+3733 y(function)24 b(nesting)h(lev)m(el.)40 b(F)-8 b(unction)25
b(in)m(v)m(o)s(cations)i(that)e(exceed)g(the)g(limit)g(cause)g(the)g
-(en)m(tire)g(command)150 3733 y(to)31 b(ab)s(ort.)275
-3867 y(If)37 b(the)g(builtin)g(command)h Fs(return)d
+(en)m(tire)g(command)150 3842 y(to)31 b(ab)s(ort.)275
+3976 y(If)37 b(the)g(builtin)g(command)h Fs(return)d
Ft(is)j(executed)g(in)g(a)g(function,)h(the)e(function)h(completes)h
-(and)150 3976 y(execution)25 b(resumes)e(with)h(the)g(next)g(command)f
+(and)150 4086 y(execution)25 b(resumes)e(with)h(the)g(next)g(command)f
(after)i(the)f(function)f(call.)40 b(An)m(y)24 b(command)f(asso)s
-(ciated)150 4086 y(with)36 b(the)h Fs(RETURN)d Ft(trap)i(is)h(executed)
+(ciated)150 4195 y(with)36 b(the)h Fs(RETURN)d Ft(trap)i(is)h(executed)
g(b)s(efore)f(execution)i(resumes.)57 b(When)37 b(a)f(function)g
-(completes,)150 4195 y(the)h(v)-5 b(alues)38 b(of)f(the)g(p)s
+(completes,)150 4305 y(the)h(v)-5 b(alues)38 b(of)f(the)g(p)s
(ositional)h(parameters)f(and)g(the)g(sp)s(ecial)h(parameter)f(`)p
-Fs(#)p Ft(')g(are)h(restored)f(to)h(the)150 4305 y(v)-5
+Fs(#)p Ft(')g(are)h(restored)f(to)h(the)150 4415 y(v)-5
b(alues)26 b(they)f(had)g(prior)f(to)i(the)g(function's)f(execution.)40
b(If)25 b(a)h(n)m(umeric)f(argumen)m(t)h(is)f(giv)m(en)h(to)g
-Fs(return)p Ft(,)150 4415 y(that)j(is)g(the)f(function's)h(return)e
+Fs(return)p Ft(,)150 4524 y(that)j(is)g(the)f(function's)h(return)e
(status;)j(otherwise)f(the)f(function's)h(return)e(status)i(is)f(the)h
-(exit)h(status)150 4524 y(of)h(the)f(last)h(command)f(executed)i(b)s
-(efore)e(the)g Fs(return)p Ft(.)275 4658 y(V)-8 b(ariables)31
+(exit)h(status)150 4634 y(of)h(the)f(last)h(command)f(executed)i(b)s
+(efore)e(the)g Fs(return)p Ft(.)275 4768 y(V)-8 b(ariables)31
b(lo)s(cal)g(to)f(the)g(function)f(ma)m(y)i(b)s(e)e(declared)h(with)f
(the)h Fs(local)f Ft(builtin.)40 b(These)29 b(v)-5 b(ariables)150
-4768 y(are)31 b(visible)g(only)f(to)h(the)g(function)f(and)g(the)g
-(commands)g(it)h(in)m(v)m(ok)m(es.)275 4902 y(F)-8 b(unction)47
+4877 y(are)31 b(visible)g(only)f(to)h(the)g(function)f(and)g(the)g
+(commands)g(it)h(in)m(v)m(ok)m(es.)275 5011 y(F)-8 b(unction)47
b(names)g(and)f(de\014nitions)g(ma)m(y)h(b)s(e)f(listed)i(with)e(the)h
(`)p Fs(-f)p Ft(')f(option)i(to)f(the)g Fs(declare)150
-5011 y Ft(\()p Fs(typeset)p Ft(\))39 b(builtin)i(command)f(\(see)i
-(Section)f(4.2)h([Bash)f(Builtins],)j(page)d(44\).)73
-b(The)40 b(`)p Fs(-F)p Ft(')g(option)150 5121 y(to)29
+5121 y Ft(\()p Fs(typeset)p Ft(\))39 b(builtin)i(command)f(\(see)i
+(Section)f(4.2)h([Bash)f(Builtins],)j(page)d(48\).)73
+b(The)40 b(`)p Fs(-F)p Ft(')g(option)150 5230 y(to)29
b Fs(declare)d Ft(or)i Fs(typeset)f Ft(will)h(list)h(the)f(function)g
(names)h(only)f(\(and)g(optionally)h(the)g(source)f(\014le)h(and)150
-5230 y(line)k(n)m(um)m(b)s(er,)g(if)f(the)h Fs(extdebug)e
+5340 y(line)k(n)m(um)m(b)s(er,)g(if)f(the)h Fs(extdebug)e
Ft(shell)i(option)g(is)g(enabled\).)49 b(F)-8 b(unctions)33
-b(ma)m(y)h(b)s(e)e(exp)s(orted)g(so)h(that)150 5340 y(subshells)f
-(automatically)37 b(ha)m(v)m(e)d(them)g(de\014ned)e(with)h(the)g(`)p
-Fs(-f)p Ft(')h(option)g(to)g(the)f Fs(export)f Ft(builtin)h(\(see)p
-eop end
+b(ma)m(y)h(b)s(e)e(exp)s(orted)g(so)h(that)p eop end
%%Page: 18 24
TeXDict begin 18 23 bop 150 -116 a Ft(18)2572 b(Bash)31
-b(Reference)g(Man)m(ual)150 299 y(Section)i(4.1)g([Bourne)f(Shell)g
-(Builtins],)i(page)f(37\).)47 b(Note)33 b(that)g(shell)f(functions)g
-(and)f(v)-5 b(ariables)33 b(with)150 408 y(the)d(same)g(name)g(ma)m(y)g
-(result)g(in)g(m)m(ultiple)g(iden)m(tically-named)i(en)m(tries)f(in)e
-(the)h(en)m(vironmen)m(t)g(passed)150 518 y(to)h(the)g(shell's)f(c)m
-(hildren.)41 b(Care)30 b(should)g(b)s(e)f(tak)m(en)j(in)e(cases)h
-(where)f(this)g(ma)m(y)h(cause)g(a)g(problem.)275 664
-y(F)-8 b(unctions)33 b(ma)m(y)g(b)s(e)g(recursiv)m(e.)48
-b(The)32 b Fs(FUNCNEST)f Ft(v)-5 b(ariable)34 b(ma)m(y)f(b)s(e)f(used)g
-(to)i(limit)g(the)f(depth)f(of)150 774 y(the)27 b(function)f(call)i
-(stac)m(k)h(and)d(restrict)h(the)g(n)m(um)m(b)s(er)f(of)h(function)f
-(in)m(v)m(o)s(cations.)42 b(By)27 b(default,)g(no)g(limit)150
-883 y(is)j(placed)h(on)g(the)f(n)m(um)m(b)s(er)f(of)i(recursiv)m(e)f
-(calls.)150 1133 y Fr(3.4)68 b(Shell)45 b(P)l(arameters)150
-1293 y Ft(A)23 b Fq(parameter)31 b Ft(is)23 b(an)g(en)m(tit)m(y)i(that)
+b(Reference)g(Man)m(ual)150 299 y(subshells)h(automatically)37
+b(ha)m(v)m(e)d(them)g(de\014ned)e(with)h(the)g(`)p Fs(-f)p
+Ft(')h(option)g(to)g(the)f Fs(export)f Ft(builtin)h(\(see)150
+408 y(Section)g(4.1)g([Bourne)f(Shell)g(Builtins],)i(page)f(41\).)47
+b(Note)33 b(that)g(shell)f(functions)g(and)f(v)-5 b(ariables)33
+b(with)150 518 y(the)d(same)g(name)g(ma)m(y)g(result)g(in)g(m)m
+(ultiple)g(iden)m(tically-named)i(en)m(tries)f(in)e(the)h(en)m
+(vironmen)m(t)g(passed)150 628 y(to)h(the)g(shell's)f(c)m(hildren.)41
+b(Care)30 b(should)g(b)s(e)f(tak)m(en)j(in)e(cases)h(where)f(this)g(ma)
+m(y)h(cause)g(a)g(problem.)275 760 y(F)-8 b(unctions)33
+b(ma)m(y)g(b)s(e)g(recursiv)m(e.)48 b(The)32 b Fs(FUNCNEST)f
+Ft(v)-5 b(ariable)34 b(ma)m(y)f(b)s(e)f(used)g(to)i(limit)g(the)f
+(depth)f(of)150 870 y(the)27 b(function)f(call)i(stac)m(k)h(and)d
+(restrict)h(the)g(n)m(um)m(b)s(er)f(of)h(function)f(in)m(v)m(o)s
+(cations.)42 b(By)27 b(default,)g(no)g(limit)150 979
+y(is)j(placed)h(on)g(the)f(n)m(um)m(b)s(er)f(of)i(recursiv)m(e)f
+(calls.)150 1208 y Fr(3.4)68 b(Shell)45 b(P)l(arameters)150
+1367 y Ft(A)23 b Fq(parameter)31 b Ft(is)23 b(an)g(en)m(tit)m(y)i(that)
f(stores)g(v)-5 b(alues.)39 b(It)23 b(can)h(b)s(e)f(a)g
Fs(name)p Ft(,)h(a)g(n)m(um)m(b)s(er,)f(or)h(one)f(of)h(the)f(sp)s
-(ecial)150 1402 y(c)m(haracters)i(listed)f(b)s(elo)m(w.)39
+(ecial)150 1477 y(c)m(haracters)i(listed)f(b)s(elo)m(w.)39
b(A)24 b Fq(v)-5 b(ariable)29 b Ft(is)24 b(a)g(parameter)g(denoted)f(b)
m(y)h(a)g Fs(name)p Ft(.)37 b(A)24 b(v)-5 b(ariable)24
-b(has)f(a)h Fq(v)-5 b(alue)150 1512 y Ft(and)33 b(zero)i(or)e(more)h
+b(has)f(a)h Fq(v)-5 b(alue)150 1586 y Ft(and)33 b(zero)i(or)e(more)h
Fq(attributes)t Ft(.)51 b(A)m(ttributes)34 b(are)g(assigned)g(using)f
-(the)h Fs(declare)e Ft(builtin)h(command)150 1621 y(\(see)e(the)g
+(the)h Fs(declare)e Ft(builtin)h(command)150 1696 y(\(see)e(the)g
(description)f(of)h(the)f Fs(declare)f Ft(builtin)h(in)g(Section)h(4.2)
-g([Bash)g(Builtins],)g(page)g(44\).)275 1768 y(A)d(parameter)h(is)g
+g([Bash)g(Builtins],)g(page)g(48\).)275 1828 y(A)d(parameter)h(is)g
(set)g(if)f(it)h(has)f(b)s(een)g(assigned)h(a)g(v)-5
b(alue.)40 b(The)28 b(n)m(ull)h(string)f(is)h(a)g(v)-5
-b(alid)28 b(v)-5 b(alue.)41 b(Once)150 1877 y(a)31 b(v)-5
+b(alid)28 b(v)-5 b(alue.)41 b(Once)150 1938 y(a)31 b(v)-5
b(ariable)31 b(is)f(set,)i(it)e(ma)m(y)h(b)s(e)f(unset)g(only)h(b)m(y)f
-(using)g(the)g Fs(unset)f Ft(builtin)h(command.)275 2023
+(using)g(the)g Fs(unset)f Ft(builtin)h(command.)275 2070
y(A)g(v)-5 b(ariable)31 b(ma)m(y)g(b)s(e)f(assigned)g(to)i(b)m(y)e(a)h
-(statemen)m(t)h(of)e(the)h(form)390 2169 y Fi(name)11
-b Fs(=[)p Fi(value)g Fs(])150 2315 y Ft(If)34 b Fq(v)-5
+(statemen)m(t)h(of)e(the)h(form)390 2203 y Fi(name)11
+b Fs(=[)p Fi(value)g Fs(])150 2335 y Ft(If)34 b Fq(v)-5
b(alue)40 b Ft(is)35 b(not)g(giv)m(en,)h(the)f(v)-5 b(ariable)35
b(is)g(assigned)g(the)f(n)m(ull)h(string.)53 b(All)35
b Fq(v)-5 b(alue)5 b Ft(s)35 b(undergo)f(tilde)h(ex-)150
-2425 y(pansion,)h(parameter)f(and)f(v)-5 b(ariable)36
+2445 y(pansion,)h(parameter)f(and)f(v)-5 b(ariable)36
b(expansion,)f(command)g(substitution,)h(arithmetic)g(expansion,)150
-2535 y(and)k(quote)h(remo)m(v)-5 b(al)42 b(\(detailed)h(b)s(elo)m(w\).)
+2554 y(and)k(quote)h(remo)m(v)-5 b(al)42 b(\(detailed)h(b)s(elo)m(w\).)
72 b(If)40 b(the)h(v)-5 b(ariable)41 b(has)g(its)g Fs(integer)e
-Ft(attribute)i(set,)j(then)150 2644 y Fq(v)-5 b(alue)38
+Ft(attribute)i(set,)j(then)150 2664 y Fq(v)-5 b(alue)38
b Ft(is)33 b(ev)-5 b(aluated)34 b(as)f(an)g(arithmetic)h(expression)f
(ev)m(en)h(if)e(the)h Fs($\(\(...)o(\)\))f Ft(expansion)h(is)g(not)g
-(used)150 2754 y(\(see)e(Section)g(3.5.5)i([Arithmetic)e(Expansion],)f
-(page)h(25\).)42 b(W)-8 b(ord)31 b(splitting)g(is)g(not)f(p)s
-(erformed,)f(with)150 2863 y(the)35 b(exception)h(of)f
+(used)150 2774 y(\(see)e(Section)g(3.5.5)i([Arithmetic)e(Expansion],)f
+(page)h(28\).)42 b(W)-8 b(ord)31 b(splitting)g(is)g(not)f(p)s
+(erformed,)f(with)150 2883 y(the)35 b(exception)h(of)f
Fs("$@")f Ft(as)h(explained)g(b)s(elo)m(w.)54 b(Filename)36
b(expansion)f(is)g(not)g(p)s(erformed.)53 b(Assign-)150
-2973 y(men)m(t)33 b(statemen)m(ts)h(ma)m(y)f(also)g(app)s(ear)f(as)g
+2993 y(men)m(t)33 b(statemen)m(ts)h(ma)m(y)f(also)g(app)s(ear)f(as)g
(argumen)m(ts)h(to)g(the)g Fs(alias)p Ft(,)e Fs(declare)p
-Ft(,)g Fs(typeset)p Ft(,)g Fs(export)p Ft(,)150 3083
+Ft(,)g Fs(typeset)p Ft(,)g Fs(export)p Ft(,)150 3102
y Fs(readonly)p Ft(,)41 b(and)f Fs(local)f Ft(builtin)h(commands.)71
b(When)40 b(in)h Fl(posix)e Ft(mo)s(de)i(\(see)g(Section)g(6.11)i
-([Bash)150 3192 y(POSIX)36 b(Mo)s(de],)k(page)e(88\),)i(these)e
+([Bash)150 3212 y(POSIX)36 b(Mo)s(de],)k(page)e(92\),)i(these)e
(builtins)f(ma)m(y)h(app)s(ear)e(in)h(a)h(command)f(after)h(one)f(or)h
-(more)f(in-)150 3302 y(stances)31 b(of)g(the)f Fs(command)f
+(more)f(in-)150 3322 y(stances)31 b(of)g(the)f Fs(command)f
Ft(builtin)h(and)f(retain)i(these)g(assignmen)m(t)g(statemen)m(t)h
-(prop)s(erties.)275 3448 y(In)d(the)h(con)m(text)i(where)d(an)h
+(prop)s(erties.)275 3454 y(In)d(the)h(con)m(text)i(where)d(an)h
(assignmen)m(t)h(statemen)m(t)h(is)e(assigning)g(a)h(v)-5
b(alue)30 b(to)h(a)f(shell)g(v)-5 b(ariable)31 b(or)150
-3557 y(arra)m(y)f(index)g(\(see)h(Section)g(6.7)g([Arra)m(ys],)g(page)g
-(84\),)g(the)f(`)p Fs(+=)p Ft(')g(op)s(erator)g(can)h(b)s(e)e(used)g
-(to)i(app)s(end)d(to)150 3667 y(or)36 b(add)g(to)h(the)f(v)-5
+3564 y(arra)m(y)f(index)g(\(see)h(Section)g(6.7)g([Arra)m(ys],)g(page)g
+(88\),)g(the)f(`)p Fs(+=)p Ft(')g(op)s(erator)g(can)h(b)s(e)e(used)g
+(to)i(app)s(end)d(to)150 3673 y(or)36 b(add)g(to)h(the)f(v)-5
b(ariable's)37 b(previous)f(v)-5 b(alue.)59 b(When)36
b(`)p Fs(+=)p Ft(')g(is)g(applied)g(to)h(a)g(v)-5 b(ariable)37
-b(for)f(whic)m(h)g(the)150 3777 y Fq(in)m(teger)46 b
+b(for)f(whic)m(h)g(the)150 3783 y Fq(in)m(teger)46 b
Ft(attribute)38 b(has)f(b)s(een)g(set,)k Fq(v)-5 b(alue)43
b Ft(is)38 b(ev)-5 b(aluated)39 b(as)f(an)f(arithmetic)i(expression)f
-(and)f(added)150 3886 y(to)f(the)f(v)-5 b(ariable's)36
+(and)f(added)150 3892 y(to)f(the)f(v)-5 b(ariable's)36
b(curren)m(t)f(v)-5 b(alue,)37 b(whic)m(h)e(is)g(also)h(ev)-5
b(aluated.)56 b(When)35 b(`)p Fs(+=)p Ft(')g(is)h(applied)f(to)g(an)g
-(arra)m(y)150 3996 y(v)-5 b(ariable)26 b(using)e(comp)s(ound)f
-(assignmen)m(t)j(\(see)f(Section)h(6.7)f([Arra)m(ys],)i(page)f(84\),)h
-(the)e(v)-5 b(ariable's)25 b(v)-5 b(alue)150 4105 y(is)32
+(arra)m(y)150 4002 y(v)-5 b(ariable)26 b(using)e(comp)s(ound)f
+(assignmen)m(t)j(\(see)f(Section)h(6.7)f([Arra)m(ys],)i(page)f(88\),)h
+(the)e(v)-5 b(ariable's)25 b(v)-5 b(alue)150 4112 y(is)32
b(not)f(unset)h(\(as)g(it)g(is)f(when)g(using)g(`)p Fs(=)p
Ft('\),)i(and)e(new)g(v)-5 b(alues)32 b(are)g(app)s(ended)d(to)k(the)f
-(arra)m(y)g(b)s(eginning)150 4215 y(at)27 b(one)f(greater)i(than)e(the)
+(arra)m(y)g(b)s(eginning)150 4221 y(at)27 b(one)f(greater)i(than)e(the)
g(arra)m(y's)h(maxim)m(um)f(index)g(\(for)g(indexed)g(arra)m(ys\),)i
-(or)e(added)g(as)g(additional)150 4325 y(k)m(ey-v)-5
+(or)e(added)g(as)g(additional)150 4331 y(k)m(ey-v)-5
b(alue)35 b(pairs)e(in)g(an)g(asso)s(ciativ)m(e)j(arra)m(y)-8
b(.)51 b(When)33 b(applied)g(to)h(a)g(string-v)-5 b(alued)34
b(v)-5 b(ariable,)35 b Fq(v)-5 b(alue)39 b Ft(is)150
-4434 y(expanded)30 b(and)f(app)s(ended)g(to)i(the)g(v)-5
-b(ariable's)31 b(v)-5 b(alue.)150 4645 y Fj(3.4.1)63
-b(P)m(ositional)41 b(P)m(arameters)150 4792 y Ft(A)28
-b Fq(p)s(ositional)h(parameter)35 b Ft(is)28 b(a)g(parameter)g(denoted)
-g(b)m(y)g(one)g(or)g(more)g(digits,)h(other)g(than)e(the)h(single)150
-4902 y(digit)34 b Fs(0)p Ft(.)48 b(P)m(ositional)36 b(parameters)d(are)
-g(assigned)h(from)e(the)i(shell's)f(argumen)m(ts)g(when)f(it)i(is)f(in)
-m(v)m(ok)m(ed,)150 5011 y(and)38 b(ma)m(y)i(b)s(e)e(reassigned)i(using)
-e(the)h Fs(set)g Ft(builtin)f(command.)67 b(P)m(ositional)41
-b(parameter)e Fs(N)g Ft(ma)m(y)h(b)s(e)150 5121 y(referenced)34
+4440 y(expanded)30 b(and)f(app)s(ended)g(to)i(the)g(v)-5
+b(ariable's)31 b(v)-5 b(alue.)275 4573 y(A)37 b(v)-5
+b(ariable)38 b(can)g(b)s(e)f(assigned)h(the)f Fq(nameref)55
+b Ft(attribute)38 b(using)f(the)h(`)p Fs(-n)p Ft(')f(option)h(to)g(the)
+g Fs(\\)p Ft(fBde-)150 4682 y(clare)p Fs(\\)p Ft(fP)44
+b(or)f Fs(\\)p Ft(fBlo)s(cal)p Fs(\\)p Ft(fP)h(builtin)e(commands)h
+(\(see)h(Section)h(4.2)f([Bash)g(Builtins],)j(page)d(48\))g(to)150
+4792 y(create)36 b(a)e Fq(nameref)17 b Ft(,)35 b(or)f(a)h(reference)f
+(to)h(another)f(v)-5 b(ariable.)53 b(This)33 b(allo)m(ws)i(v)-5
+b(ariables)35 b(to)f(b)s(e)g(manipu-)150 4902 y(lated)d(indirectly)-8
+b(.)43 b(Whenev)m(er)31 b(the)g(nameref)f(v)-5 b(ariable)32
+b(is)e(referenced)h(or)f(assigned)h(to,)h(the)e(op)s(eration)150
+5011 y(is)i(actually)h(p)s(erformed)d(on)i(the)g(v)-5
+b(ariable)33 b(sp)s(eci\014ed)e(b)m(y)g(the)h(nameref)g(v)-5
+b(ariable's)33 b(v)-5 b(alue.)45 b(A)32 b(nameref)150
+5121 y(is)h(commonly)g(used)e(within)h(shell)h(functions)f(to)h(refer)f
+(to)i(a)f(v)-5 b(ariable)33 b(whose)f(name)h(is)f(passed)g(as)h(an)150
+5230 y(argumen)m(t)g(to)g(the)g(function.)46 b(F)-8 b(or)33
+b(instance,)h(if)e(a)h(v)-5 b(ariable)33 b(name)g(is)f(passed)g(to)h(a)
+g(shell)g(function)f(as)150 5340 y(its)f(\014rst)e(argumen)m(t,)i
+(running)p eop end
+%%Page: 19 25
+TeXDict begin 19 24 bop 150 -116 a Ft(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(19)390 299
+y Fs(declare)46 b(-n)h(ref=$1)150 425 y Ft(inside)31
+b(the)h(function)f(creates)i(a)g(nameref)e(v)-5 b(ariable)32
+b Fq(ref)49 b Ft(whose)32 b(v)-5 b(alue)32 b(is)g(the)f(v)-5
+b(ariable)33 b(name)e(passed)150 535 y(as)42 b(the)g(\014rst)f(argumen)
+m(t.)74 b(References)43 b(and)e(assignmen)m(ts)h(to)g
+Fq(ref)59 b Ft(are)42 b(treated)h(as)f(references)g(and)150
+644 y(assignmen)m(ts)31 b(to)g(the)g(v)-5 b(ariable)31
+b(whose)f(name)g(w)m(as)h(passed)f(as)h Fs($1)p Ft(.)275
+771 y(If)38 b(the)i(con)m(trol)g(v)-5 b(ariable)40 b(in)f(a)g
+Fs(for)g Ft(lo)s(op)g(has)g(the)g(nameref)g(attribute,)k(the)c(list)h
+(of)f(w)m(ords)g(can)150 880 y(b)s(e)c(a)i(list)f(of)g(shell)h(v)-5
+b(ariables,)38 b(and)d(a)h(name)g(reference)h(will)f(b)s(e)f
+(established)i(for)e(eac)m(h)j(w)m(ord)d(in)h(the)150
+990 y(list,)30 b(in)f(turn,)g(when)f(the)i(lo)s(op)f(is)g(executed.)41
+b(Arra)m(y)30 b(v)-5 b(ariables)30 b(cannot)g(b)s(e)e(giv)m(en)i(the)g
+(`)p Fs(-n)p Ft(')f(attribute.)150 1099 y(Ho)m(w)m(ev)m(er,)39
+b(nameref)d(v)-5 b(ariables)36 b(can)g(reference)g(arra)m(y)g(v)-5
+b(ariables)37 b(and)e(subscripted)f(arra)m(y)i(v)-5 b(ariables.)150
+1209 y(Namerefs)32 b(can)h(b)s(e)e(unset)h(using)f(the)h(`)p
+Fs(-n)p Ft(')g(option)h(to)g(the)f Fs(unset)e Ft(builtin)i(\(see)h
+(Section)g(4.1)g([Bourne)150 1319 y(Shell)43 b(Builtins],)j(page)e
+(41\).)79 b(Otherwise,)45 b(if)e Fs(unset)e Ft(is)i(executed)h(with)e
+(the)h(name)g(of)g(a)g(nameref)150 1428 y(v)-5 b(ariable)31
+b(as)g(an)f(argumen)m(t,)h(the)g(v)-5 b(ariable)31 b(referenced)f(b)m
+(y)g(the)h(nameref)f(v)-5 b(ariable)31 b(will)g(b)s(e)f(unset.)150
+1611 y Fj(3.4.1)63 b(P)m(ositional)41 b(P)m(arameters)150
+1758 y Ft(A)28 b Fq(p)s(ositional)h(parameter)35 b Ft(is)28
+b(a)g(parameter)g(denoted)g(b)m(y)g(one)g(or)g(more)g(digits,)h(other)g
+(than)e(the)h(single)150 1868 y(digit)34 b Fs(0)p Ft(.)48
+b(P)m(ositional)36 b(parameters)d(are)g(assigned)h(from)e(the)i
+(shell's)f(argumen)m(ts)g(when)f(it)i(is)f(in)m(v)m(ok)m(ed,)150
+1977 y(and)38 b(ma)m(y)i(b)s(e)e(reassigned)i(using)e(the)h
+Fs(set)g Ft(builtin)f(command.)67 b(P)m(ositional)41
+b(parameter)e Fs(N)g Ft(ma)m(y)h(b)s(e)150 2087 y(referenced)34
b(as)h Fs(${N})p Ft(,)g(or)f(as)h Fs($N)e Ft(when)h Fs(N)g
Ft(consists)h(of)f(a)h(single)g(digit.)54 b(P)m(ositional)37
-b(parameters)d(ma)m(y)150 5230 y(not)j(b)s(e)f(assigned)h(to)g(with)f
+b(parameters)d(ma)m(y)150 2196 y(not)j(b)s(e)f(assigned)h(to)g(with)f
(assignmen)m(t)i(statemen)m(ts.)61 b(The)36 b Fs(set)g
Ft(and)g Fs(shift)f Ft(builtins)h(are)h(used)f(to)150
-5340 y(set)k(and)f(unset)f(them)i(\(see)g(Chapter)f(4)g([Shell)h
-(Builtin)g(Commands],)h(page)f(37\).)68 b(The)39 b(p)s(ositional)p
-eop end
-%%Page: 19 25
-TeXDict begin 19 24 bop 150 -116 a Ft(Chapter)30 b(3:)41
-b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(19)150 299
-y(parameters)44 b(are)g(temp)s(orarily)g(replaced)h(when)e(a)h(shell)g
-(function)g(is)g(executed)g(\(see)h(Section)g(3.3)150
-408 y([Shell)30 b(F)-8 b(unctions],)32 b(page)f(16\).)275
-546 y(When)c(a)i(p)s(ositional)g(parameter)g(consisting)f(of)h(more)f
+2306 y(set)k(and)f(unset)f(them)i(\(see)g(Chapter)f(4)g([Shell)h
+(Builtin)g(Commands],)h(page)f(41\).)68 b(The)39 b(p)s(ositional)150
+2416 y(parameters)44 b(are)g(temp)s(orarily)g(replaced)h(when)e(a)h
+(shell)g(function)g(is)g(executed)g(\(see)h(Section)g(3.3)150
+2525 y([Shell)30 b(F)-8 b(unctions],)32 b(page)f(16\).)275
+2651 y(When)c(a)i(p)s(ositional)g(parameter)g(consisting)f(of)h(more)f
(than)g(a)g(single)h(digit)g(is)f(expanded,)g(it)h(m)m(ust)150
-656 y(b)s(e)h(enclosed)h(in)f(braces.)150 859 y Fj(3.4.2)63
-b(Sp)s(ecial)41 b(P)m(arameters)150 1006 y Ft(The)d(shell)g(treats)h
+2761 y(b)s(e)h(enclosed)h(in)f(braces.)150 2944 y Fj(3.4.2)63
+b(Sp)s(ecial)41 b(P)m(arameters)150 3091 y Ft(The)d(shell)g(treats)h
(sev)m(eral)g(parameters)f(sp)s(ecially)-8 b(.)65 b(These)38
b(parameters)h(ma)m(y)f(only)g(b)s(e)g(referenced;)150
-1115 y(assignmen)m(t)31 b(to)g(them)g(is)f(not)h(allo)m(w)m(ed.)150
-1280 y Fs(*)432 b Ft(Expands)29 b(to)h(the)h(p)s(ositional)f
+3200 y(assignmen)m(t)31 b(to)g(them)g(is)f(not)h(allo)m(w)m(ed.)150
+3343 y Fs(*)432 b Ft(Expands)29 b(to)h(the)h(p)s(ositional)f
(parameters,)h(starting)g(from)e(one.)41 b(When)30 b(the)g(expansion)
-630 1389 y(o)s(ccurs)e(within)f(double)h(quotes,)h(it)g(expands)e(to)i
+630 3453 y(o)s(ccurs)e(within)f(double)h(quotes,)h(it)g(expands)e(to)i
(a)f(single)h(w)m(ord)f(with)g(the)g(v)-5 b(alue)29 b(of)f(eac)m(h)630
-1499 y(parameter)i(separated)g(b)m(y)f(the)g(\014rst)g(c)m(haracter)i
+3563 y(parameter)i(separated)g(b)m(y)f(the)g(\014rst)g(c)m(haracter)i
(of)e(the)h Fs(IFS)e Ft(sp)s(ecial)i(v)-5 b(ariable.)41
-b(That)30 b(is,)630 1609 y Fs("$*")h Ft(is)i(equiv)-5
+b(That)30 b(is,)630 3672 y Fs("$*")h Ft(is)i(equiv)-5
b(alen)m(t)33 b(to)h Fs("$1)p Fi(c)11 b Fs($2)p Fi(c)g
Fs(...)l(")p Ft(,)33 b(where)f Fq(c)38 b Ft(is)32 b(the)h(\014rst)e(c)m
-(haracter)j(of)f(the)f(v)-5 b(alue)630 1718 y(of)30 b(the)g
+(haracter)j(of)f(the)f(v)-5 b(alue)630 3782 y(of)30 b(the)g
Fs(IFS)g Ft(v)-5 b(ariable.)41 b(If)30 b Fs(IFS)f Ft(is)h(unset,)g(the)
g(parameters)g(are)h(separated)f(b)m(y)g(spaces.)41 b(If)630
-1828 y Fs(IFS)29 b Ft(is)i(n)m(ull,)f(the)h(parameters)g(are)f(joined)h
-(without)f(in)m(terv)m(ening)i(separators.)150 1991 y
+3891 y Fs(IFS)29 b Ft(is)i(n)m(ull,)f(the)h(parameters)g(are)f(joined)h
+(without)f(in)m(terv)m(ening)i(separators.)150 4034 y
Fs(@)432 b Ft(Expands)29 b(to)h(the)h(p)s(ositional)f(parameters,)h
(starting)g(from)e(one.)41 b(When)30 b(the)g(expansion)630
-2100 y(o)s(ccurs)c(within)g(double)f(quotes,)j(eac)m(h)f(parameter)g
+4144 y(o)s(ccurs)c(within)g(double)f(quotes,)j(eac)m(h)f(parameter)g
(expands)e(to)i(a)g(separate)g(w)m(ord.)39 b(That)630
-2210 y(is,)29 b Fs("$@")e Ft(is)i(equiv)-5 b(alen)m(t)30
+4253 y(is,)29 b Fs("$@")e Ft(is)i(equiv)-5 b(alen)m(t)30
b(to)f Fs("$1")g("$2")h(...)o Ft(.)40 b(If)28 b(the)g(double-quoted)h
-(expansion)f(o)s(ccurs)630 2319 y(within)d(a)h(w)m(ord,)g(the)g
+(expansion)f(o)s(ccurs)630 4363 y(within)d(a)h(w)m(ord,)g(the)g
(expansion)f(of)h(the)g(\014rst)f(parameter)h(is)f(joined)h(with)f(the)
-h(b)s(eginning)630 2429 y(part)f(of)g(the)g(original)g(w)m(ord,)h(and)e
+h(b)s(eginning)630 4473 y(part)f(of)g(the)g(original)g(w)m(ord,)h(and)e
(the)h(expansion)g(of)g(the)g(last)h(parameter)f(is)g(joined)f(with)630
-2539 y(the)37 b(last)g(part)g(of)f(the)h(original)h(w)m(ord.)59
+4582 y(the)37 b(last)g(part)g(of)f(the)h(original)h(w)m(ord.)59
b(When)36 b(there)h(are)g(no)f(p)s(ositional)h(parameters,)630
-2648 y Fs("$@")29 b Ft(and)h Fs($@)g Ft(expand)f(to)j(nothing)e
-(\(i.e.,)i(they)e(are)h(remo)m(v)m(ed\).)150 2811 y Fs(#)432
+4692 y Fs("$@")29 b Ft(and)h Fs($@)g Ft(expand)f(to)j(nothing)e
+(\(i.e.,)i(they)e(are)h(remo)m(v)m(ed\).)150 4835 y Fs(#)432
b Ft(Expands)29 b(to)i(the)g(n)m(um)m(b)s(er)e(of)h(p)s(ositional)h
-(parameters)g(in)f(decimal.)150 2974 y Fs(?)432 b Ft(Expands)29
+(parameters)g(in)f(decimal.)150 4978 y Fs(?)432 b Ft(Expands)29
b(to)i(the)g(exit)g(status)g(of)f(the)h(most)f(recen)m(tly)i(executed)f
-(foreground)f(pip)s(eline.)150 3137 y Fs(-)432 b Ft(\(A)31
+(foreground)f(pip)s(eline.)150 5121 y Fs(-)432 b Ft(\(A)31
b(h)m(yphen.\))42 b(Expands)30 b(to)h(the)g(curren)m(t)g(option)h
(\015ags)f(as)g(sp)s(eci\014ed)f(up)s(on)g(in)m(v)m(o)s(cation,)630
-3246 y(b)m(y)35 b(the)h Fs(set)e Ft(builtin)h(command,)h(or)g(those)g
+5230 y(b)m(y)35 b(the)h Fs(set)e Ft(builtin)h(command,)h(or)g(those)g
(set)f(b)m(y)h(the)f(shell)h(itself)g(\(suc)m(h)f(as)h(the)f(`)p
-Fs(-i)p Ft(')630 3356 y(option\).)150 3519 y Fs($)432
-b Ft(Expands)39 b(to)j(the)f(pro)s(cess)f Fl(id)h Ft(of)g(the)g(shell.)
-73 b(In)40 b(a)h Fs(\(\))f Ft(subshell,)j(it)e(expands)f(to)i(the)630
-3628 y(pro)s(cess)30 b Fl(id)g Ft(of)h(the)g(in)m(v)m(oking)g(shell,)g
-(not)g(the)f(subshell.)150 3791 y Fs(!)432 b Ft(Expands)39
+Fs(-i)p Ft(')630 5340 y(option\).)p eop end
+%%Page: 20 26
+TeXDict begin 20 25 bop 150 -116 a Ft(20)2572 b(Bash)31
+b(Reference)g(Man)m(ual)150 299 y Fs($)432 b Ft(Expands)39
+b(to)j(the)f(pro)s(cess)f Fl(id)h Ft(of)g(the)g(shell.)73
+b(In)40 b(a)h Fs(\(\))f Ft(subshell,)j(it)e(expands)f(to)i(the)630
+408 y(pro)s(cess)30 b Fl(id)g Ft(of)h(the)g(in)m(v)m(oking)g(shell,)g
+(not)g(the)f(subshell.)150 596 y Fs(!)432 b Ft(Expands)39
b(to)i(the)g(pro)s(cess)e Fl(id)i Ft(of)f(the)h(most)g(recen)m(tly)g
-(executed)g(bac)m(kground)g(\(asyn-)630 3901 y(c)m(hronous\))30
-b(command.)150 4064 y Fs(0)432 b Ft(Expands)20 b(to)j(the)f(name)g(of)g
+(executed)g(bac)m(kground)g(\(asyn-)630 706 y(c)m(hronous\))30
+b(command.)150 893 y Fs(0)432 b Ft(Expands)20 b(to)j(the)f(name)g(of)g
(the)g(shell)g(or)f(shell)h(script.)38 b(This)21 b(is)h(set)g(at)h
-(shell)f(initialization.)630 4173 y(If)44 b(Bash)g(is)g(in)m(v)m(ok)m
+(shell)f(initialization.)630 1003 y(If)44 b(Bash)g(is)g(in)m(v)m(ok)m
(ed)i(with)e(a)g(\014le)g(of)h(commands)e(\(see)j(Section)f(3.8)g
-([Shell)f(Scripts],)630 4283 y(page)39 b(36\),)i Fs($0)d
+([Shell)f(Scripts],)630 1112 y(page)39 b(38\),)i Fs($0)d
Ft(is)g(set)g(to)h(the)f(name)g(of)g(that)h(\014le.)64
b(If)37 b(Bash)i(is)f(started)g(with)g(the)g(`)p Fs(-c)p
-Ft(')630 4392 y(option)i(\(see)g(Section)h(6.1)f([In)m(v)m(oking)h
-(Bash],)h(page)e(75\),)j(then)d Fs($0)e Ft(is)i(set)g(to)g(the)g
-(\014rst)630 4502 y(argumen)m(t)31 b(after)g(the)g(string)g(to)g(b)s(e)
+Ft(')630 1222 y(option)i(\(see)g(Section)h(6.1)f([In)m(v)m(oking)h
+(Bash],)h(page)e(79\),)j(then)d Fs($0)e Ft(is)i(set)g(to)g(the)g
+(\014rst)630 1331 y(argumen)m(t)31 b(after)g(the)g(string)g(to)g(b)s(e)
f(executed,)i(if)f(one)g(is)f(presen)m(t.)42 b(Otherwise,)31
-b(it)g(is)f(set)630 4612 y(to)h(the)g(\014lename)f(used)g(to)h(in)m(v)m
+b(it)g(is)f(set)630 1441 y(to)h(the)g(\014lename)f(used)g(to)h(in)m(v)m
(ok)m(e)h(Bash,)f(as)g(giv)m(en)g(b)m(y)f(argumen)m(t)h(zero.)150
-4774 y Fs(_)432 b Ft(\(An)27 b(underscore.\))39 b(A)m(t)29
+1629 y Fs(_)432 b Ft(\(An)27 b(underscore.\))39 b(A)m(t)29
b(shell)e(startup,)h(set)f(to)h(the)g(absolute)g(pathname)f(used)f(to)i
-(in)m(v)m(ok)m(e)630 4884 y(the)22 b(shell)g(or)g(shell)g(script)f(b)s
+(in)m(v)m(ok)m(e)630 1738 y(the)22 b(shell)g(or)g(shell)g(script)f(b)s
(eing)h(executed)h(as)f(passed)f(in)g(the)h(en)m(vironmen)m(t)h(or)e
-(argumen)m(t)630 4994 y(list.)72 b(Subsequen)m(tly)-8
+(argumen)m(t)630 1848 y(list.)72 b(Subsequen)m(tly)-8
b(,)43 b(expands)c(to)j(the)e(last)i(argumen)m(t)f(to)g(the)g(previous)
-f(command,)630 5103 y(after)35 b(expansion.)54 b(Also)36
+f(command,)630 1957 y(after)35 b(expansion.)54 b(Also)36
b(set)f(to)h(the)f(full)f(pathname)h(used)f(to)h(in)m(v)m(ok)m(e)i(eac)
-m(h)f(command)630 5213 y(executed)42 b(and)e(placed)i(in)e(the)h(en)m
+m(h)f(command)630 2067 y(executed)42 b(and)e(placed)i(in)e(the)h(en)m
(vironmen)m(t)h(exp)s(orted)f(to)g(that)h(command.)72
-b(When)630 5322 y(c)m(hec)m(king)32 b(mail,)f(this)g(parameter)g(holds)
-e(the)i(name)f(of)h(the)g(mail)g(\014le.)p eop end
-%%Page: 20 26
-TeXDict begin 20 25 bop 150 -116 a Ft(20)2572 b(Bash)31
-b(Reference)g(Man)m(ual)150 299 y Fr(3.5)68 b(Shell)45
-b(Expansions)150 458 y Ft(Expansion)27 b(is)i(p)s(erformed)d(on)i(the)g
-(command)g(line)h(after)f(it)h(has)f(b)s(een)f(split)h(in)m(to)i
-Fs(token)p Ft(s.)38 b(There)28 b(are)150 568 y(sev)m(en)j(kinds)e(of)i
-(expansion)f(p)s(erformed:)225 711 y Fp(\017)60 b Ft(brace)31
-b(expansion)225 850 y Fp(\017)60 b Ft(tilde)31 b(expansion)225
-988 y Fp(\017)60 b Ft(parameter)31 b(and)f(v)-5 b(ariable)31
-b(expansion)225 1127 y Fp(\017)60 b Ft(command)30 b(substitution)225
-1266 y Fp(\017)60 b Ft(arithmetic)32 b(expansion)225
-1405 y Fp(\017)60 b Ft(w)m(ord)30 b(splitting)225 1544
-y Fp(\017)60 b Ft(\014lename)31 b(expansion)275 1716
-y(The)i(order)g(of)h(expansions)g(is:)47 b(brace)34 b(expansion,)h
-(tilde)g(expansion,)f(parameter,)i(v)-5 b(ariable,)36
-b(and)150 1825 y(arithmetic)46 b(expansion)f(and)g(command)f
-(substitution)h(\(done)g(in)g(a)g(left-to-righ)m(t)j(fashion\),)h(w)m
-(ord)150 1935 y(splitting,)31 b(and)f(\014lename)h(expansion.)275
-2078 y(On)42 b(systems)h(that)h(can)g(supp)s(ort)e(it,)47
-b(there)d(is)f(an)h(additional)g(expansion)f(a)m(v)-5
-b(ailable:)69 b Fq(pro)s(cess)150 2188 y(substitution)p
+b(When)630 2176 y(c)m(hec)m(king)32 b(mail,)f(this)g(parameter)g(holds)
+e(the)i(name)f(of)h(the)g(mail)g(\014le.)150 2451 y Fr(3.5)68
+b(Shell)45 b(Expansions)150 2610 y Ft(Expansion)27 b(is)i(p)s(erformed)
+d(on)i(the)g(command)g(line)h(after)f(it)h(has)f(b)s(een)f(split)h(in)m
+(to)i Fs(token)p Ft(s.)38 b(There)28 b(are)150 2720 y(sev)m(en)j(kinds)
+e(of)i(expansion)f(p)s(erformed:)225 2883 y Fp(\017)60
+b Ft(brace)31 b(expansion)225 3031 y Fp(\017)60 b Ft(tilde)31
+b(expansion)225 3180 y Fp(\017)60 b Ft(parameter)31 b(and)f(v)-5
+b(ariable)31 b(expansion)225 3328 y Fp(\017)60 b Ft(command)30
+b(substitution)225 3477 y Fp(\017)60 b Ft(arithmetic)32
+b(expansion)225 3625 y Fp(\017)60 b Ft(w)m(ord)30 b(splitting)225
+3774 y Fp(\017)60 b Ft(\014lename)31 b(expansion)275
+3975 y(The)i(order)g(of)h(expansions)g(is:)47 b(brace)34
+b(expansion,)h(tilde)g(expansion,)f(parameter,)i(v)-5
+b(ariable,)36 b(and)150 4085 y(arithmetic)46 b(expansion)f(and)g
+(command)f(substitution)h(\(done)g(in)g(a)g(left-to-righ)m(t)j
+(fashion\),)h(w)m(ord)150 4195 y(splitting,)31 b(and)f(\014lename)h
+(expansion.)275 4357 y(On)42 b(systems)h(that)h(can)g(supp)s(ort)e(it,)
+47 b(there)d(is)f(an)h(additional)g(expansion)f(a)m(v)-5
+b(ailable:)69 b Fq(pro)s(cess)150 4467 y(substitution)p
Ft(.)61 b(This)36 b(is)h(p)s(erformed)f(at)i(the)f(same)h(time)f(as)h
(parameter,)h(v)-5 b(ariable,)40 b(and)d(arithmetic)150
-2297 y(expansion)30 b(and)g(command)g(substitution.)275
-2440 y(Only)35 b(brace)i(expansion,)h(w)m(ord)e(splitting,)j(and)d
+4576 y(expansion)30 b(and)g(command)g(substitution.)275
+4739 y(Only)35 b(brace)i(expansion,)h(w)m(ord)e(splitting,)j(and)d
(\014lename)g(expansion)g(can)h(c)m(hange)h(the)e(n)m(um)m(b)s(er)150
-2550 y(of)h(w)m(ords)f(of)g(the)h(expansion;)i(other)e(expansions)f
+4849 y(of)h(w)m(ords)f(of)g(the)h(expansion;)i(other)e(expansions)f
(expand)g(a)h(single)g(w)m(ord)f(to)h(a)g(single)g(w)m(ord.)58
-b(The)150 2660 y(only)32 b(exceptions)i(to)f(this)f(are)h(the)f
+b(The)150 4958 y(only)32 b(exceptions)i(to)f(this)f(are)h(the)f
(expansions)g(of)h Fs("$@")e Ft(\(see)i(Section)g(3.4.2)h([Sp)s(ecial)f
-(P)m(arameters],)150 2769 y(page)e(19\))h(and)d Fs("${)p
+(P)m(arameters],)150 5068 y(page)e(19\))h(and)d Fs("${)p
Fi(name)11 b Fs([@]}")27 b Ft(\(see)k(Section)h(6.7)f([Arra)m(ys],)g
-(page)g(84\).)275 2912 y(After)41 b(all)i(expansions,)h
+(page)g(88\).)275 5230 y(After)41 b(all)i(expansions,)h
Fs(quote)29 b(removal)40 b Ft(\(see)i(Section)h(3.5.9)g([Quote)f(Remo)m
-(v)-5 b(al],)47 b(page)42 b(28\))h(is)150 3022 y(p)s(erformed.)150
-3230 y Fj(3.5.1)63 b(Brace)40 b(Expansion)150 3377 y
-Ft(Brace)32 b(expansion)f(is)f(a)i(mec)m(hanism)f(b)m(y)f(whic)m(h)h
-(arbitrary)f(strings)h(ma)m(y)g(b)s(e)f(generated.)43
-b(This)30 b(mec)m(h-)150 3486 y(anism)35 b(is)h(similar)f(to)h
-Fq(\014lename)g(expansion)f Ft(\(see)i(Section)f(3.5.8)h([Filename)g
-(Expansion],)f(page)g(26\),)150 3596 y(but)26 b(the)h(\014lenames)g
-(generated)h(need)f(not)g(exist.)40 b(P)m(atterns)28
-b(to)f(b)s(e)g(brace)g(expanded)f(tak)m(e)i(the)f(form)g(of)150
-3705 y(an)i(optional)i Fq(pream)m(ble)5 b Ft(,)30 b(follo)m(w)m(ed)i(b)
-m(y)d(either)h(a)g(series)g(of)g(comma-separated)h(strings)e(or)h(a)g
-(sequence)150 3815 y(expression)36 b(b)s(et)m(w)m(een)g(a)g(pair)g(of)g
-(braces,)i(follo)m(w)m(ed)f(b)m(y)f(an)g(optional)h Fq(p)s(ostscript)r
-Ft(.)56 b(The)36 b(pream)m(ble)g(is)150 3924 y(pre\014xed)28
+(v)-5 b(al],)47 b(page)42 b(30\))h(is)150 5340 y(p)s(erformed.)p
+eop end
+%%Page: 21 27
+TeXDict begin 21 26 bop 150 -116 a Ft(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(21)150 299
+y Fj(3.5.1)63 b(Brace)40 b(Expansion)150 446 y Ft(Brace)32
+b(expansion)f(is)f(a)i(mec)m(hanism)f(b)m(y)f(whic)m(h)h(arbitrary)f
+(strings)h(ma)m(y)g(b)s(e)f(generated.)43 b(This)30 b(mec)m(h-)150
+555 y(anism)35 b(is)h(similar)f(to)h Fq(\014lename)g(expansion)f
+Ft(\(see)i(Section)f(3.5.8)h([Filename)g(Expansion],)f(page)g(29\),)150
+665 y(but)26 b(the)h(\014lenames)g(generated)h(need)f(not)g(exist.)40
+b(P)m(atterns)28 b(to)f(b)s(e)g(brace)g(expanded)f(tak)m(e)i(the)f
+(form)g(of)150 775 y(an)i(optional)i Fq(pream)m(ble)5
+b Ft(,)30 b(follo)m(w)m(ed)i(b)m(y)d(either)h(a)g(series)g(of)g
+(comma-separated)h(strings)e(or)h(a)g(sequence)150 884
+y(expression)36 b(b)s(et)m(w)m(een)g(a)g(pair)g(of)g(braces,)i(follo)m
+(w)m(ed)f(b)m(y)f(an)g(optional)h Fq(p)s(ostscript)r
+Ft(.)56 b(The)36 b(pream)m(ble)g(is)150 994 y(pre\014xed)28
b(to)h(eac)m(h)h(string)f(con)m(tained)h(within)e(the)h(braces,)g(and)g
(the)g(p)s(ostscript)f(is)h(then)f(app)s(ended)f(to)150
-4034 y(eac)m(h)32 b(resulting)e(string,)h(expanding)e(left)j(to)f(righ)
-m(t.)275 4177 y(Brace)37 b(expansions)f(ma)m(y)h(b)s(e)f(nested.)59
+1103 y(eac)m(h)32 b(resulting)e(string,)h(expanding)e(left)j(to)f(righ)
+m(t.)275 1240 y(Brace)37 b(expansions)f(ma)m(y)h(b)s(e)f(nested.)59
b(The)36 b(results)g(of)h(eac)m(h)g(expanded)f(string)g(are)h(not)g
-(sorted;)150 4287 y(left)31 b(to)g(righ)m(t)g(order)f(is)g(preserv)m
-(ed.)41 b(F)-8 b(or)31 b(example,)390 4430 y Fs(bash$)46
-b(echo)h(a{d,c,b}e)390 4539 y(ade)g(ace)g(abe)275 4682
+(sorted;)150 1350 y(left)31 b(to)g(righ)m(t)g(order)f(is)g(preserv)m
+(ed.)41 b(F)-8 b(or)31 b(example,)390 1486 y Fs(bash$)46
+b(echo)h(a{d,c,b}e)390 1596 y(ade)g(ace)g(abe)275 1733
y Ft(A)20 b(sequence)h(expression)g(tak)m(es)h(the)f(form)f
Fs({)p Fi(x)11 b Fs(..)p Fi(y)g Fs([..)p Fi(incr)g Fs(]})p
Ft(,)18 b(where)i Fq(x)27 b Ft(and)20 b Fq(y)28 b Ft(are)22
-b(either)f(in)m(tegers)150 4792 y(or)42 b(single)h(c)m(haracters,)j
+b(either)f(in)m(tegers)150 1842 y(or)42 b(single)h(c)m(haracters,)j
(and)c Fq(incr)7 b Ft(,)44 b(an)e(optional)h(incremen)m(t,)j(is)c(an)g
-(in)m(teger.)77 b(When)41 b(in)m(tegers)j(are)150 4902
+(in)m(teger.)77 b(When)41 b(in)m(tegers)j(are)150 1952
y(supplied,)e(the)f(expression)g(expands)f(to)h(eac)m(h)h(n)m(um)m(b)s
(er)e(b)s(et)m(w)m(een)h Fq(x)47 b Ft(and)40 b Fq(y)8
-b Ft(,)44 b(inclusiv)m(e.)73 b(Supplied)150 5011 y(in)m(tegers)33
+b Ft(,)44 b(inclusiv)m(e.)73 b(Supplied)150 2062 y(in)m(tegers)33
b(ma)m(y)e(b)s(e)g(pre\014xed)f(with)h(`)p Fs(0)p Ft(')h(to)g(force)g
(eac)m(h)g(term)g(to)g(ha)m(v)m(e)g(the)g(same)g(width.)42
-b(When)31 b(either)150 5121 y Fq(x)43 b Ft(or)36 b Fq(y)44
+b(When)31 b(either)150 2171 y Fq(x)43 b Ft(or)36 b Fq(y)44
b Ft(b)s(egins)36 b(with)g(a)h(zero,)i(the)e(shell)g(attempts)g(to)g
(force)g(all)h(generated)f(terms)g(to)g(con)m(tain)h(the)150
-5230 y(same)e(n)m(um)m(b)s(er)e(of)i(digits,)i(zero-padding)d(where)h
+2281 y(same)e(n)m(um)m(b)s(er)e(of)i(digits,)i(zero-padding)d(where)h
(necessary)-8 b(.)57 b(When)35 b(c)m(haracters)i(are)f(supplied,)g(the)
-150 5340 y(expression)h(expands)f(to)i(eac)m(h)g(c)m(haracter)g
+150 2390 y(expression)h(expands)f(to)i(eac)m(h)g(c)m(haracter)g
(lexicographically)i(b)s(et)m(w)m(een)e Fq(x)43 b Ft(and)37
-b Fq(y)8 b Ft(,)38 b(inclusiv)m(e.)62 b(Note)p eop end
-%%Page: 21 27
-TeXDict begin 21 26 bop 150 -116 a Ft(Chapter)30 b(3:)41
-b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(21)150 299
+b Fq(y)8 b Ft(,)38 b(inclusiv)m(e.)62 b(Note)150 2500
y(that)30 b(b)s(oth)e Fq(x)35 b Ft(and)28 b Fq(y)37 b
Ft(m)m(ust)29 b(b)s(e)f(of)h(the)g(same)g(t)m(yp)s(e.)41
b(When)28 b(the)i(incremen)m(t)f(is)g(supplied,)f(it)i(is)f(used)f(as)
-150 408 y(the)j(di\013erence)f(b)s(et)m(w)m(een)h(eac)m(h)h(term.)41
+150 2610 y(the)j(di\013erence)f(b)s(et)m(w)m(een)h(eac)m(h)h(term.)41
b(The)30 b(default)g(incremen)m(t)h(is)g(1)f(or)h(-1)g(as)f
-(appropriate.)275 544 y(Brace)36 b(expansion)g(is)f(p)s(erformed)f(b)s
+(appropriate.)275 2746 y(Brace)36 b(expansion)g(is)f(p)s(erformed)f(b)s
(efore)h(an)m(y)h(other)g(expansions,)h(and)e(an)m(y)g(c)m(haracters)i
-(sp)s(ecial)150 654 y(to)32 b(other)g(expansions)g(are)g(preserv)m(ed)f
-(in)h(the)f(result.)45 b(It)32 b(is)g(strictly)g(textual.)46
-b(Bash)32 b(do)s(es)f(not)h(apply)150 764 y(an)m(y)27
+(sp)s(ecial)150 2856 y(to)32 b(other)g(expansions)g(are)g(preserv)m(ed)
+f(in)h(the)f(result.)45 b(It)32 b(is)g(strictly)g(textual.)46
+b(Bash)32 b(do)s(es)f(not)h(apply)150 2965 y(an)m(y)27
b(syn)m(tactic)i(in)m(terpretation)g(to)f(the)f(con)m(text)i(of)e(the)g
(expansion)g(or)g(the)h(text)g(b)s(et)m(w)m(een)f(the)h(braces.)150
-873 y(T)-8 b(o)37 b(a)m(v)m(oid)g(con\015icts)g(with)f(parameter)h
+3075 y(T)-8 b(o)37 b(a)m(v)m(oid)g(con\015icts)g(with)f(parameter)h
(expansion,)g(the)g(string)f(`)p Fs(${)p Ft(')g(is)g(not)g(considered)g
-(eligible)i(for)150 983 y(brace)31 b(expansion.)275 1119
-y(A)e(correctly-formed)i(brace)f(expansion)f(m)m(ust)h(con)m(tain)h
-(unquoted)e(op)s(ening)g(and)g(closing)i(braces,)150
-1228 y(and)h(at)i(least)g(one)f(unquoted)g(comma)g(or)g(a)h(v)-5
+(eligible)i(for)150 3185 y(brace)31 b(expansion.)275
+3321 y(A)e(correctly-formed)i(brace)f(expansion)f(m)m(ust)h(con)m(tain)
+h(unquoted)e(op)s(ening)g(and)g(closing)i(braces,)150
+3431 y(and)h(at)i(least)g(one)f(unquoted)g(comma)g(or)g(a)h(v)-5
b(alid)33 b(sequence)g(expression.)48 b(An)m(y)33 b(incorrectly)h
-(formed)150 1338 y(brace)d(expansion)f(is)g(left)h(unc)m(hanged.)275
-1474 y(A)25 b Fs({)g Ft(or)g(`)p Fs(,)p Ft(')g(ma)m(y)h(b)s(e)f(quoted)
+(formed)150 3541 y(brace)d(expansion)f(is)g(left)h(unc)m(hanged.)275
+3677 y(A)25 b Fs({)g Ft(or)g(`)p Fs(,)p Ft(')g(ma)m(y)h(b)s(e)f(quoted)
g(with)g(a)h(bac)m(kslash)f(to)h(prev)m(en)m(t)g(its)g(b)s(eing)f
-(considered)g(part)g(of)g(a)h(brace)150 1583 y(expression.)51
+(considered)g(part)g(of)g(a)h(brace)150 3787 y(expression.)51
b(T)-8 b(o)34 b(a)m(v)m(oid)i(con\015icts)e(with)g(parameter)g
(expansion,)h(the)f(string)g(`)p Fs(${)p Ft(')g(is)g(not)g(considered)
-150 1693 y(eligible)e(for)e(brace)h(expansion.)275 1829
+150 3897 y(eligible)e(for)e(brace)h(expansion.)275 4033
y(This)f(construct)h(is)g(t)m(ypically)i(used)d(as)h(shorthand)f(when)g
(the)h(common)g(pre\014x)f(of)h(the)g(strings)g(to)150
-1939 y(b)s(e)f(generated)h(is)g(longer)g(than)f(in)g(the)g(ab)s(o)m(v)m
-(e)i(example:)390 2074 y Fs(mkdir)46 b(/usr/local/src/bash/{old,n)o
-(ew,)o(dist)o(,bug)o(s})275 2210 y Ft(or)390 2346 y Fs(chown)g(root)h
+4143 y(b)s(e)f(generated)h(is)g(longer)g(than)f(in)g(the)g(ab)s(o)m(v)m
+(e)i(example:)390 4280 y Fs(mkdir)46 b(/usr/local/src/bash/{old,n)o
+(ew,)o(dist)o(,bug)o(s})275 4416 y Ft(or)390 4553 y Fs(chown)g(root)h
(/usr/{ucb/{ex,edit},lib/)o({ex?)o(.?*,)o(how)o(_ex})o(})150
-2547 y Fj(3.5.2)63 b(Tilde)41 b(Expansion)150 2694 y
+4755 y Fj(3.5.2)63 b(Tilde)41 b(Expansion)150 4902 y
Ft(If)29 b(a)h(w)m(ord)g(b)s(egins)f(with)g(an)h(unquoted)f(tilde)h(c)m
(haracter)h(\(`)p Fs(~)p Ft('\),)g(all)g(of)f(the)g(c)m(haracters)h(up)
-d(to)j(the)f(\014rst)150 2804 y(unquoted)23 b(slash)h(\(or)h(all)g(c)m
+d(to)j(the)f(\014rst)150 5011 y(unquoted)23 b(slash)h(\(or)h(all)g(c)m
(haracters,)i(if)d(there)g(is)h(no)f(unquoted)f(slash\))h(are)h
-(considered)f(a)g Fq(tilde-pre\014x)6 b Ft(.)150 2913
+(considered)f(a)g Fq(tilde-pre\014x)6 b Ft(.)150 5121
y(If)38 b(none)g(of)g(the)h(c)m(haracters)g(in)f(the)h(tilde-pre\014x)f
(are)h(quoted,)h(the)f(c)m(haracters)h(in)d(the)i(tilde-pre\014x)150
-3023 y(follo)m(wing)28 b(the)f(tilde)g(are)g(treated)h(as)f(a)g(p)s
+5230 y(follo)m(wing)28 b(the)f(tilde)g(are)g(treated)h(as)f(a)g(p)s
(ossible)f Fq(login)i(name)5 b Ft(.)40 b(If)26 b(this)g(login)i(name)f
-(is)f(the)h(n)m(ull)g(string,)150 3132 y(the)35 b(tilde)g(is)g
+(is)f(the)h(n)m(ull)g(string,)150 5340 y(the)35 b(tilde)g(is)g
(replaced)g(with)f(the)h(v)-5 b(alue)35 b(of)g(the)g
Fs(HOME)e Ft(shell)i(v)-5 b(ariable.)54 b(If)34 b Fs(HOME)g
-Ft(is)h(unset,)g(the)g(home)150 3242 y(directory)e(of)g(the)f(user)g
+Ft(is)h(unset,)g(the)g(home)p eop end
+%%Page: 22 28
+TeXDict begin 22 27 bop 150 -116 a Ft(22)2572 b(Bash)31
+b(Reference)g(Man)m(ual)150 299 y(directory)i(of)g(the)f(user)g
(executing)i(the)e(shell)h(is)f(substituted)g(instead.)47
-b(Otherwise,)33 b(the)g(tilde-pre\014x)150 3352 y(is)d(replaced)h(with)
-f(the)h(home)f(directory)h(asso)s(ciated)h(with)e(the)h(sp)s(eci\014ed)
-e(login)j(name.)275 3487 y(If)g(the)h(tilde-pre\014x)f(is)h(`)p
+b(Otherwise,)33 b(the)g(tilde-pre\014x)150 408 y(is)d(replaced)h(with)f
+(the)h(home)f(directory)h(asso)s(ciated)h(with)e(the)h(sp)s(eci\014ed)e
+(login)j(name.)275 545 y(If)g(the)h(tilde-pre\014x)f(is)h(`)p
Fs(~+)p Ft(',)g(the)g(v)-5 b(alue)33 b(of)g(the)g(shell)g(v)-5
b(ariable)34 b Fs(PWD)d Ft(replaces)j(the)f(tilde-pre\014x.)47
-b(If)150 3597 y(the)31 b(tilde-pre\014x)f(is)g(`)p Fs(~-)p
+b(If)150 655 y(the)31 b(tilde-pre\014x)f(is)g(`)p Fs(~-)p
Ft(',)h(the)f(v)-5 b(alue)31 b(of)g(the)f(shell)h(v)-5
b(ariable)31 b Fs(OLDPWD)p Ft(,)e(if)h(it)h(is)g(set,)g(is)f
-(substituted.)275 3733 y(If)e(the)i(c)m(haracters)g(follo)m(wing)h(the)
-e(tilde)h(in)f(the)g(tilde-pre\014x)h(consist)f(of)h(a)f(n)m(um)m(b)s
-(er)f Fq(N)10 b Ft(,)30 b(optionally)150 3843 y(pre\014xed)22
+(substituted.)275 792 y(If)e(the)i(c)m(haracters)g(follo)m(wing)h(the)e
+(tilde)h(in)f(the)g(tilde-pre\014x)h(consist)f(of)h(a)f(n)m(um)m(b)s
+(er)f Fq(N)10 b Ft(,)30 b(optionally)150 901 y(pre\014xed)22
b(b)m(y)h(a)h(`)p Fs(+)p Ft(')f(or)h(a)f(`)p Fs(-)p Ft(',)j(the)d
(tilde-pre\014x)g(is)h(replaced)f(with)g(the)h(corresp)s(onding)e
-(elemen)m(t)j(from)e(the)150 3952 y(directory)36 b(stac)m(k,)i(as)e(it)
+(elemen)m(t)j(from)e(the)150 1011 y(directory)36 b(stac)m(k,)i(as)e(it)
g(w)m(ould)f(b)s(e)g(displa)m(y)m(ed)h(b)m(y)g(the)f
Fs(dirs)g Ft(builtin)g(in)m(v)m(ok)m(ed)i(with)e(the)g(c)m(haracters)
-150 4062 y(follo)m(wing)40 b(tilde)f(in)g(the)f(tilde-pre\014x)h(as)g
+150 1121 y(follo)m(wing)40 b(tilde)f(in)g(the)f(tilde-pre\014x)h(as)g
(an)f(argumen)m(t)h(\(see)h(Section)f(6.8)h([The)e(Directory)i(Stac)m
-(k],)150 4171 y(page)c(85\).)57 b(If)35 b(the)g(tilde-pre\014x,)i(sans)
+(k],)150 1230 y(page)c(89\).)57 b(If)35 b(the)g(tilde-pre\014x,)i(sans)
e(the)h(tilde,)h(consists)f(of)g(a)f(n)m(um)m(b)s(er)f(without)i(a)f
-(leading)h(`)p Fs(+)p Ft(')g(or)150 4281 y(`)p Fs(-)p
-Ft(',)31 b(`)p Fs(+)p Ft(')f(is)h(assumed.)275 4417 y(If)e(the)i(login)
+(leading)h(`)p Fs(+)p Ft(')g(or)150 1340 y(`)p Fs(-)p
+Ft(',)31 b(`)p Fs(+)p Ft(')f(is)h(assumed.)275 1477 y(If)e(the)i(login)
g(name)g(is)f(in)m(v)-5 b(alid,)31 b(or)g(the)f(tilde)h(expansion)f
(fails,)i(the)e(w)m(ord)g(is)h(left)g(unc)m(hanged.)275
-4553 y(Eac)m(h)38 b(v)-5 b(ariable)38 b(assignmen)m(t)h(is)e(c)m(hec)m
+1614 y(Eac)m(h)38 b(v)-5 b(ariable)38 b(assignmen)m(t)h(is)e(c)m(hec)m
(k)m(ed)j(for)d(unquoted)g(tilde-pre\014xes)h(immediately)g(follo)m
-(wing)150 4662 y(a)d(`)p Fs(:)p Ft(')g(or)g(the)g(\014rst)f(`)p
+(wing)150 1723 y(a)d(`)p Fs(:)p Ft(')g(or)g(the)g(\014rst)f(`)p
Fs(=)p Ft('.)54 b(In)34 b(these)h(cases,)i(tilde)e(expansion)g(is)g
(also)h(p)s(erformed.)52 b(Consequen)m(tly)-8 b(,)37
-b(one)150 4772 y(ma)m(y)29 b(use)e(\014lenames)h(with)g(tildes)g(in)g
+b(one)150 1833 y(ma)m(y)29 b(use)e(\014lenames)h(with)g(tildes)g(in)g
(assignmen)m(ts)g(to)h Fs(PATH)p Ft(,)f Fs(MAILPATH)p
Ft(,)e(and)h Fs(CDPATH)p Ft(,)g(and)h(the)g(shell)150
-4882 y(assigns)j(the)f(expanded)g(v)-5 b(alue.)275 5018
+1942 y(assigns)j(the)f(expanded)g(v)-5 b(alue.)275 2079
y(The)29 b(follo)m(wing)j(table)g(sho)m(ws)e(ho)m(w)g(Bash)h(treats)g
-(unquoted)e(tilde-pre\014xes:)150 5179 y Fs(~)432 b Ft(The)30
-b(v)-5 b(alue)31 b(of)f Fs($HOME)150 5340 y(~/foo)240
-b Ft(`)p Fs($HOME/foo)p Ft(')p eop end
-%%Page: 22 28
-TeXDict begin 22 27 bop 150 -116 a Ft(22)2572 b(Bash)31
-b(Reference)g(Man)m(ual)150 299 y Fs(~fred/foo)630 408
-y Ft(The)f(sub)s(directory)f Fs(foo)h Ft(of)g(the)h(home)f(directory)h
-(of)g(the)f(user)g Fs(fred)150 580 y(~+/foo)192 b Ft(`)p
-Fs($PWD/foo)p Ft(')150 752 y Fs(~-/foo)g Ft(`)p Fs(${OLDPWD-'~-'}/foo)p
-Ft(')150 924 y Fs(~)p Fi(N)384 b Ft(The)30 b(string)g(that)h(w)m(ould)f
-(b)s(e)g(displa)m(y)m(ed)h(b)m(y)f(`)p Fs(dirs)g(+)p
-Fi(N)11 b Ft(')150 1096 y Fs(~+)p Fi(N)336 b Ft(The)30
-b(string)g(that)h(w)m(ould)f(b)s(e)g(displa)m(y)m(ed)h(b)m(y)f(`)p
-Fs(dirs)g(+)p Fi(N)11 b Ft(')150 1267 y Fs(~-)p Fi(N)336
+(unquoted)e(tilde-pre\014xes:)150 2242 y Fs(~)432 b Ft(The)30
+b(v)-5 b(alue)31 b(of)f Fs($HOME)150 2404 y(~/foo)240
+b Ft(`)p Fs($HOME/foo)p Ft(')150 2566 y Fs(~fred/foo)630
+2676 y Ft(The)30 b(sub)s(directory)f Fs(foo)h Ft(of)g(the)h(home)f
+(directory)h(of)g(the)f(user)g Fs(fred)150 2837 y(~+/foo)192
+b Ft(`)p Fs($PWD/foo)p Ft(')150 2999 y Fs(~-/foo)g Ft(`)p
+Fs(${OLDPWD-'~-'}/foo)p Ft(')150 3161 y Fs(~)p Fi(N)384
b Ft(The)30 b(string)g(that)h(w)m(ould)f(b)s(e)g(displa)m(y)m(ed)h(b)m
-(y)f(`)p Fs(dirs)g(-)p Fi(N)11 b Ft(')150 1479 y Fj(3.5.3)63
-b(Shell)41 b(P)m(arameter)f(Expansion)150 1626 y Ft(The)g(`)p
-Fs($)p Ft(')h(c)m(haracter)i(in)m(tro)s(duces)d(parameter)h(expansion,)
-j(command)d(substitution,)i(or)e(arithmetic)150 1735
-y(expansion.)d(The)22 b(parameter)h(name)f(or)g(sym)m(b)s(ol)h(to)g(b)s
-(e)e(expanded)h(ma)m(y)h(b)s(e)f(enclosed)h(in)f(braces,)i(whic)m(h)150
-1845 y(are)31 b(optional)g(but)f(serv)m(e)h(to)h(protect)f(the)g(v)-5
-b(ariable)31 b(to)g(b)s(e)f(expanded)g(from)g(c)m(haracters)i
-(immediately)150 1955 y(follo)m(wing)g(it)f(whic)m(h)f(could)g(b)s(e)g
-(in)m(terpreted)h(as)f(part)h(of)f(the)h(name.)275 2101
+(y)f(`)p Fs(dirs)g(+)p Fi(N)11 b Ft(')150 3323 y Fs(~+)p
+Fi(N)336 b Ft(The)30 b(string)g(that)h(w)m(ould)f(b)s(e)g(displa)m(y)m
+(ed)h(b)m(y)f(`)p Fs(dirs)g(+)p Fi(N)11 b Ft(')150 3485
+y Fs(~-)p Fi(N)336 b Ft(The)30 b(string)g(that)h(w)m(ould)f(b)s(e)g
+(displa)m(y)m(ed)h(b)m(y)f(`)p Fs(dirs)g(-)p Fi(N)11
+b Ft(')150 3686 y Fj(3.5.3)63 b(Shell)41 b(P)m(arameter)f(Expansion)150
+3833 y Ft(The)g(`)p Fs($)p Ft(')h(c)m(haracter)i(in)m(tro)s(duces)d
+(parameter)h(expansion,)j(command)d(substitution,)i(or)e(arithmetic)150
+3943 y(expansion.)d(The)22 b(parameter)h(name)f(or)g(sym)m(b)s(ol)h(to)
+g(b)s(e)e(expanded)h(ma)m(y)h(b)s(e)f(enclosed)h(in)f(braces,)i(whic)m
+(h)150 4053 y(are)31 b(optional)g(but)f(serv)m(e)h(to)h(protect)f(the)g
+(v)-5 b(ariable)31 b(to)g(b)s(e)f(expanded)g(from)g(c)m(haracters)i
+(immediately)150 4162 y(follo)m(wing)g(it)f(whic)m(h)f(could)g(b)s(e)g
+(in)m(terpreted)h(as)f(part)h(of)f(the)h(name.)275 4299
y(When)44 b(braces)i(are)f(used,)j(the)e(matc)m(hing)g(ending)f(brace)g
(is)g(the)g(\014rst)g(`)p Fs(})p Ft(')g(not)g(escap)s(ed)h(b)m(y)f(a)
-150 2211 y(bac)m(kslash)40 b(or)f(within)g(a)g(quoted)g(string,)j(and)c
+150 4409 y(bac)m(kslash)40 b(or)f(within)g(a)g(quoted)g(string,)j(and)c
(not)i(within)e(an)h(em)m(b)s(edded)f(arithmetic)j(expansion,)150
-2321 y(command)30 b(substitution,)g(or)h(parameter)g(expansion.)275
-2468 y(The)40 b(basic)h(form)g(of)g(parameter)h(expansion)e(is)h($)p
+4518 y(command)30 b(substitution,)g(or)h(parameter)g(expansion.)275
+4655 y(The)40 b(basic)h(form)g(of)g(parameter)h(expansion)e(is)h($)p
Fs({)p Fq(parameter)7 b Fs(})p Ft(.)73 b(The)40 b(v)-5
-b(alue)42 b(of)f Fq(parameter)48 b Ft(is)150 2577 y(substituted.)43
-b(The)31 b(braces)g(are)h(required)e(when)h Fq(parameter)38
-b Ft(is)31 b(a)h(p)s(ositional)g(parameter)g(with)f(more)150
-2687 y(than)h(one)g(digit,)i(or)e(when)g Fq(parameter)39
-b Ft(is)32 b(follo)m(w)m(ed)i(b)m(y)e(a)h(c)m(haracter)h(that)e(is)h
-(not)f(to)h(b)s(e)f(in)m(terpreted)150 2796 y(as)f(part)f(of)g(its)h
-(name.)275 2943 y(If)c(the)g(\014rst)g(c)m(haracter)i(of)f
-Fq(parameter)35 b Ft(is)27 b(an)h(exclamation)i(p)s(oin)m(t)d(\(!\),)i
-(a)f(lev)m(el)i(of)d(v)-5 b(ariable)29 b(indirec-)150
-3053 y(tion)e(is)f(in)m(tro)s(duced.)39 b(Bash)27 b(uses)e(the)i(v)-5
-b(alue)27 b(of)f(the)h(v)-5 b(ariable)27 b(formed)f(from)g(the)g(rest)h
-(of)f Fq(parameter)34 b Ft(as)150 3162 y(the)e(name)h(of)f(the)h(v)-5
-b(ariable;)34 b(this)e(v)-5 b(ariable)33 b(is)g(then)f(expanded)f(and)h
-(that)h(v)-5 b(alue)32 b(is)h(used)e(in)h(the)h(rest)150
-3272 y(of)h(the)f(substitution,)i(rather)e(than)g(the)h(v)-5
-b(alue)34 b(of)g Fq(parameter)40 b Ft(itself.)51 b(This)33
-b(is)g(kno)m(wn)g(as)h Fs(indirect)150 3381 y(expansion)p
-Ft(.)k(The)30 b(exceptions)h(to)h(this)e(are)h(the)f(expansions)g(of)h
-($)p Fs({)p Ft(!)p Fq(pre\014x)150 3491 y Fs(})36 b Ft(and)f($)p
-Fs({)p Ft(!)p Fq(name)5 b Ft([)p Fs(@)p Ft(])p Fs(})37
-b Ft(describ)s(ed)e(b)s(elo)m(w.)58 b(The)36 b(exclamation)i(p)s(oin)m
-(t)e(m)m(ust)g(immediately)h(follo)m(w)h(the)150 3601
-y(left)31 b(brace)g(in)f(order)g(to)h(in)m(tro)s(duce)f(indirection.)
-275 3748 y(In)39 b(eac)m(h)i(of)g(the)f(cases)h(b)s(elo)m(w,)i
-Fq(w)m(ord)h Ft(is)c(sub)5 b(ject)40 b(to)h(tilde)f(expansion,)j
-(parameter)e(expansion,)150 3857 y(command)30 b(substitution,)g(and)g
-(arithmetic)i(expansion.)275 4004 y(When)h(not)h(p)s(erforming)e
-(substring)h(expansion,)h(using)f(the)h(form)f(describ)s(ed)g(b)s(elo)m
-(w,)h(Bash)g(tests)150 4114 y(for)44 b(a)i(parameter)f(that)g(is)g
-(unset)f(or)h(n)m(ull.)84 b(Omitting)45 b(the)g(colon)h(results)e(in)g
-(a)i(test)f(only)g(for)g(a)150 4223 y(parameter)36 b(that)f(is)g
-(unset.)55 b(Put)34 b(another)i(w)m(a)m(y)-8 b(,)38 b(if)d(the)g(colon)
-h(is)f(included,)h(the)f(op)s(erator)g(tests)h(for)150
-4333 y(b)s(oth)22 b Fq(parameter)7 b Ft('s)22 b(existence)i(and)e(that)
-h(its)g(v)-5 b(alue)23 b(is)g(not)f(n)m(ull;)k(if)c(the)h(colon)g(is)g
-(omitted,)i(the)e(op)s(erator)150 4442 y(tests)31 b(only)g(for)f
-(existence.)150 4620 y Fs(${)p Fi(parameter)11 b Fs(:)p
-Fp(\000)p Fi(word)g Fs(})630 4730 y Ft(If)30 b Fq(parameter)37
-b Ft(is)30 b(unset)g(or)h(n)m(ull,)f(the)h(expansion)f(of)g
-Fq(w)m(ord)k Ft(is)c(substituted.)40 b(Otherwise,)630
-4839 y(the)31 b(v)-5 b(alue)30 b(of)h Fq(parameter)37
-b Ft(is)31 b(substituted.)150 5011 y Fs(${)p Fi(parameter)11
-b Fs(:=)p Fi(word)g Fs(})630 5121 y Ft(If)32 b Fq(parameter)40
-b Ft(is)32 b(unset)g(or)h(n)m(ull,)g(the)f(expansion)h(of)f
-Fq(w)m(ord)k Ft(is)d(assigned)f(to)i Fq(parameter)7 b
-Ft(.)630 5230 y(The)30 b(v)-5 b(alue)32 b(of)f Fq(parameter)38
-b Ft(is)31 b(then)g(substituted.)42 b(P)m(ositional)33
-b(parameters)e(and)f(sp)s(ecial)630 5340 y(parameters)h(ma)m(y)g(not)f
-(b)s(e)g(assigned)h(to)g(in)f(this)g(w)m(a)m(y)-8 b(.)p
-eop end
+b(alue)42 b(of)f Fq(parameter)48 b Ft(is)150 4765 y(substituted.)43
+b(The)31 b Fq(parameter)39 b Ft(is)31 b(a)h(shell)f(parameter)h(as)g
+(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)g(3.4)h([Shell)150
+4874 y(P)m(arameters],)e(page)f(18\))h(or)e(an)g(arra)m(y)h(reference)f
+(\(see)i(Section)f(6.7)g([Arra)m(ys],)g(page)g(88\).)42
+b(The)29 b(braces)150 4984 y(are)j(required)g(when)f
+Fq(parameter)39 b Ft(is)32 b(a)h(p)s(ositional)f(parameter)h(with)f
+(more)g(than)g(one)g(digit,)i(or)e(when)150 5093 y Fq(parameter)37
+b Ft(is)31 b(follo)m(w)m(ed)h(b)m(y)e(a)h(c)m(haracter)h(that)f(is)f
+(not)h(to)g(b)s(e)f(in)m(terpreted)g(as)h(part)f(of)h(its)f(name.)275
+5230 y(If)36 b(the)h(\014rst)f(c)m(haracter)i(of)f Fq(parameter)44
+b Ft(is)37 b(an)f(exclamation)j(p)s(oin)m(t)e(\(!\),)i(it)f(in)m(tro)s
+(duces)e(a)h(lev)m(el)i(of)150 5340 y(v)-5 b(ariable)31
+b(indirection.)41 b(Bash)30 b(uses)f(the)h(v)-5 b(alue)31
+b(of)f(the)g(v)-5 b(ariable)30 b(formed)g(from)f(the)h(rest)g(of)g
+Fq(parameter)p eop end
%%Page: 23 29
TeXDict begin 23 28 bop 150 -116 a Ft(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(23)150 299
-y Fs(${)p Fi(parameter)11 b Fs(:?)p Fi(word)g Fs(})630
-408 y Ft(If)26 b Fq(parameter)33 b Ft(is)26 b(n)m(ull)g(or)g(unset,)h
-(the)f(expansion)g(of)g Fq(w)m(ord)k Ft(\(or)c(a)h(message)g(to)g(that)
-f(e\013ect)630 518 y(if)i Fq(w)m(ord)j Ft(is)d(not)g(presen)m(t\))h(is)
-f(written)g(to)h(the)f(standard)f(error)h(and)f(the)h(shell,)h(if)f(it)
-h(is)f(not)630 628 y(in)m(teractiv)m(e,)33 b(exits.)42
-b(Otherwise,)30 b(the)h(v)-5 b(alue)31 b(of)f Fq(parameter)38
-b Ft(is)30 b(substituted.)150 774 y Fs(${)p Fi(parameter)11
-b Fs(:+)p Fi(word)g Fs(})630 883 y Ft(If)35 b Fq(parameter)42
+y(as)26 b(the)g(name)g(of)g(the)h(v)-5 b(ariable;)28
+b(this)e(v)-5 b(ariable)27 b(is)f(then)f(expanded)g(and)h(that)g(v)-5
+b(alue)27 b(is)f(used)f(in)h(the)g(rest)150 408 y(of)34
+b(the)f(substitution,)i(rather)e(than)g(the)h(v)-5 b(alue)34
+b(of)g Fq(parameter)40 b Ft(itself.)51 b(This)33 b(is)g(kno)m(wn)g(as)h
+Fs(indirect)150 518 y(expansion)p Ft(.)81 b(The)44 b(exceptions)i(to)f
+(this)g(are)g(the)g(expansions)f(of)h($)p Fs({)p Ft(!)p
+Fq(pre\014x)6 b Ft(*)p Fs(})44 b Ft(and)g($)p Fs({)p
+Ft(!)p Fq(name)5 b Ft([)p Fs(@)p Ft(])p Fs(})150 628
+y Ft(describ)s(ed)28 b(b)s(elo)m(w.)41 b(The)28 b(exclamation)j(p)s
+(oin)m(t)f(m)m(ust)f(immediately)h(follo)m(w)g(the)g(left)f(brace)h(in)
+f(order)f(to)150 737 y(in)m(tro)s(duce)i(indirection.)275
+870 y(In)39 b(eac)m(h)i(of)g(the)f(cases)h(b)s(elo)m(w,)i
+Fq(w)m(ord)h Ft(is)c(sub)5 b(ject)40 b(to)h(tilde)f(expansion,)j
+(parameter)e(expansion,)150 980 y(command)30 b(substitution,)g(and)g
+(arithmetic)i(expansion.)275 1113 y(When)h(not)h(p)s(erforming)e
+(substring)h(expansion,)h(using)g(the)f(form)h(describ)s(ed)e(b)s(elo)m
+(w)i(\(e.g.,)i(`)p Fs(:-)p Ft('\),)150 1223 y(Bash)d(tests)h(for)e(a)i
+(parameter)f(that)h(is)e(unset)h(or)g(n)m(ull.)48 b(Omitting)33
+b(the)h(colon)f(results)g(in)g(a)g(test)h(only)150 1332
+y(for)c(a)i(parameter)f(that)g(is)g(unset.)41 b(Put)31
+b(another)f(w)m(a)m(y)-8 b(,)33 b(if)e(the)f(colon)i(is)f(included,)f
+(the)h(op)s(erator)g(tests)150 1442 y(for)36 b(b)s(oth)g
+Fq(parameter)7 b Ft('s)37 b(existence)h(and)e(that)i(its)f(v)-5
+b(alue)37 b(is)g(not)f(n)m(ull;)k(if)d(the)g(colon)h(is)e(omitted,)k
+(the)150 1551 y(op)s(erator)31 b(tests)g(only)f(for)g(existence.)150
+1708 y Fs(${)p Fi(parameter)11 b Fs(:)p Fp(\000)p Fi(word)g
+Fs(})630 1817 y Ft(If)30 b Fq(parameter)37 b Ft(is)30
+b(unset)g(or)h(n)m(ull,)f(the)h(expansion)f(of)g Fq(w)m(ord)k
+Ft(is)c(substituted.)40 b(Otherwise,)630 1927 y(the)31
+b(v)-5 b(alue)30 b(of)h Fq(parameter)37 b Ft(is)31 b(substituted.)150
+2084 y Fs(${)p Fi(parameter)11 b Fs(:=)p Fi(word)g Fs(})630
+2193 y Ft(If)32 b Fq(parameter)40 b Ft(is)32 b(unset)g(or)h(n)m(ull,)g
+(the)f(expansion)h(of)f Fq(w)m(ord)k Ft(is)d(assigned)f(to)i
+Fq(parameter)7 b Ft(.)630 2303 y(The)30 b(v)-5 b(alue)32
+b(of)f Fq(parameter)38 b Ft(is)31 b(then)g(substituted.)42
+b(P)m(ositional)33 b(parameters)e(and)f(sp)s(ecial)630
+2412 y(parameters)h(ma)m(y)g(not)f(b)s(e)g(assigned)h(to)g(in)f(this)g
+(w)m(a)m(y)-8 b(.)150 2569 y Fs(${)p Fi(parameter)11
+b Fs(:?)p Fi(word)g Fs(})630 2679 y Ft(If)26 b Fq(parameter)33
+b Ft(is)26 b(n)m(ull)g(or)g(unset,)h(the)f(expansion)g(of)g
+Fq(w)m(ord)k Ft(\(or)c(a)h(message)g(to)g(that)f(e\013ect)630
+2788 y(if)i Fq(w)m(ord)j Ft(is)d(not)g(presen)m(t\))h(is)f(written)g
+(to)h(the)f(standard)f(error)h(and)f(the)h(shell,)h(if)f(it)h(is)f(not)
+630 2898 y(in)m(teractiv)m(e,)33 b(exits.)42 b(Otherwise,)30
+b(the)h(v)-5 b(alue)31 b(of)f Fq(parameter)38 b Ft(is)30
+b(substituted.)150 3054 y Fs(${)p Fi(parameter)11 b Fs(:+)p
+Fi(word)g Fs(})630 3164 y Ft(If)35 b Fq(parameter)42
b Ft(is)36 b(n)m(ull)f(or)h(unset,)g(nothing)g(is)f(substituted,)i
-(otherwise)e(the)h(expansion)630 993 y(of)31 b Fq(w)m(ord)i
-Ft(is)e(substituted.)150 1139 y Fs(${)p Fi(parameter)11
-b Fs(:)p Fi(offset)g Fs(})150 1249 y(${)p Fi(parameter)g
+(otherwise)e(the)h(expansion)630 3273 y(of)31 b Fq(w)m(ord)i
+Ft(is)e(substituted.)150 3430 y Fs(${)p Fi(parameter)11
+b Fs(:)p Fi(offset)g Fs(})150 3540 y(${)p Fi(parameter)g
Fs(:)p Fi(offset)g Fs(:)p Fi(le)o(ngt)o(h)g Fs(})630
-1358 y Ft(Expands)44 b(to)i(up)e(to)i Fq(length)g Ft(c)m(haracters)h
-(of)e Fq(parameter)53 b Ft(starting)46 b(at)g(the)f(c)m(haracter)630
-1468 y(sp)s(eci\014ed)30 b(b)m(y)g Fq(o\013set)r Ft(.)43
-b(If)30 b Fq(length)h Ft(is)g(omitted,)g(expands)f(to)h(the)g
-(substring)f(of)g Fq(parameter)630 1577 y Ft(starting)38
-b(at)g(the)f(c)m(haracter)i(sp)s(eci\014ed)d(b)m(y)h
-Fq(o\013set)r Ft(.)62 b Fq(length)38 b Ft(and)e Fq(o\013set)k
-Ft(are)e(arithmetic)630 1687 y(expressions)30 b(\(see)i(Section)g(6.5)g
-([Shell)f(Arithmetic],)h(page)g(82\).)43 b(This)30 b(is)h(referred)f
-(to)i(as)630 1797 y(Substring)d(Expansion.)630 1924 y(If)c
-Fq(o\013set)k Ft(ev)-5 b(aluates)27 b(to)g(a)f(n)m(um)m(b)s(er)e(less)i
-(than)g(zero,)h(the)f(v)-5 b(alue)26 b(is)g(used)f(as)h(an)g(o\013set)g
-(from)630 2034 y(the)c(end)e(of)i(the)f(v)-5 b(alue)22
-b(of)g Fq(parameter)7 b Ft(.)38 b(If)20 b Fq(length)i
-Ft(ev)-5 b(aluates)23 b(to)f(a)g(n)m(um)m(b)s(er)e(less)i(than)f(zero,)
-630 2144 y(and)g Fq(parameter)29 b Ft(is)21 b(not)h(`)p
-Fs(@)p Ft(')g(and)f(not)h(an)g(indexed)f(or)h(asso)s(ciativ)m(e)i(arra)
-m(y)-8 b(,)25 b(it)d(is)g(in)m(terpreted)630 2253 y(as)37
-b(an)f(o\013set)i(from)e(the)h(end)f(of)h(the)f(v)-5
-b(alue)37 b(of)g Fq(parameter)44 b Ft(rather)36 b(than)h(a)f(n)m(um)m
-(b)s(er)g(of)630 2363 y(c)m(haracters,)49 b(and)42 b(the)i(expansion)f
-(is)h(the)g(c)m(haracters)h(b)s(et)m(w)m(een)f(the)g(t)m(w)m(o)g
-(o\013sets.)81 b(If)630 2472 y Fq(parameter)37 b Ft(is)31
-b(`)p Fs(@)p Ft(',)g(the)g(result)f(is)h Fq(length)g
-Ft(p)s(ositional)g(parameters)g(b)s(eginning)e(at)j Fq(o\013set)r
-Ft(.)630 2582 y(If)k Fq(parameter)43 b Ft(is)36 b(an)g(indexed)g(arra)m
-(y)g(name)g(subscripted)f(b)m(y)h(`)p Fs(@)p Ft(')g(or)h(`)p
-Fs(*)p Ft(',)h(the)e(result)g(is)630 2692 y(the)h Fq(length)g
+3649 y Ft(This)30 b(is)h(referred)f(to)h(as)g(Substring)f(Expansion.)41
+b(It)31 b(expands)f(to)h(up)f(to)h Fq(length)g Ft(c)m(harac-)630
+3759 y(ters)k(of)g(the)g(v)-5 b(alue)35 b(of)h Fq(parameter)41
+b Ft(starting)36 b(at)g(the)f(c)m(haracter)h(sp)s(eci\014ed)e(b)m(y)h
+Fq(o\013set)r Ft(.)55 b(If)630 3868 y Fq(parameter)32
+b Ft(is)26 b(`)p Fs(@)p Ft(',)g(an)f(indexed)g(arra)m(y)h(subscripted)e
+(b)m(y)h(`)p Fs(@)p Ft(')g(or)h(`)p Fs(*)p Ft(',)g(or)g(an)f(asso)s
+(ciativ)m(e)j(ar-)630 3978 y(ra)m(y)g(name,)h(the)f(results)g(di\013er)
+g(as)g(describ)s(ed)f(b)s(elo)m(w.)40 b(If)28 b Fq(length)g
+Ft(is)g(omitted,)i(it)f(expands)630 4088 y(to)e(the)g(substring)f(of)g
+(the)h(v)-5 b(alue)27 b(of)g Fq(parameter)33 b Ft(starting)28
+b(at)f(the)g(c)m(haracter)h(sp)s(eci\014ed)e(b)m(y)630
+4197 y Fq(o\013set)37 b Ft(and)d(extending)g(to)h(the)f(end)g(of)g(the)
+g(v)-5 b(alue.)53 b Fq(length)34 b Ft(and)g Fq(o\013set)j
+Ft(are)e(arithmetic)630 4307 y(expressions)30 b(\(see)h(Section)g(6.5)h
+([Shell)e(Arithmetic],)i(page)f(86\).)630 4440 y(If)39
+b Fq(o\013set)k Ft(ev)-5 b(aluates)41 b(to)f(a)g(n)m(um)m(b)s(er)f
+(less)h(than)f(zero,)k(the)d(v)-5 b(alue)40 b(is)g(used)e(as)i(an)g
+(o\013set)630 4549 y(in)33 b(c)m(haracters)i(from)d(the)i(end)e(of)i
+(the)f(v)-5 b(alue)34 b(of)f Fq(parameter)7 b Ft(.)49
+b(If)33 b Fq(length)h Ft(ev)-5 b(aluates)35 b(to)f(a)630
+4659 y(n)m(um)m(b)s(er)23 b(less)h(than)g(zero,)j(it)d(is)h(in)m
+(terpreted)f(as)g(an)h(o\013set)g(in)f(c)m(haracters)h(from)f(the)g
+(end)g(of)630 4769 y(the)31 b(v)-5 b(alue)31 b(of)g Fq(parameter)38
+b Ft(rather)30 b(than)h(a)g(n)m(um)m(b)s(er)f(of)g(c)m(haracters,)j
+(and)d(the)h(expansion)630 4878 y(is)39 b(the)g(c)m(haracters)i(b)s(et)
+m(w)m(een)f Fq(o\013set)i Ft(and)c(that)i(result.)67
+b(Note)40 b(that)g(a)g(negativ)m(e)h(o\013set)630 4988
+y(m)m(ust)27 b(b)s(e)g(separated)g(from)g(the)g(colon)i(b)m(y)e(at)h
+(least)g(one)f(space)h(to)g(a)m(v)m(oid)h(b)s(eing)e(confused)630
+5097 y(with)j(the)h(`)p Fs(:-)p Ft(')f(expansion.)630
+5230 y(Here)43 b(are)g(some)f(examples)h(illustrating)g(substring)f
+(expansion)g(on)g(parameters)h(and)630 5340 y(subscripted)29
+b(arra)m(ys:)p eop end
+%%Page: 24 30
+TeXDict begin 24 29 bop 150 -116 a Ft(24)2572 b(Bash)31
+b(Reference)g(Man)m(ual)630 299 y Fs($)47 b(string=01234567890abcdefgh)
+630 408 y($)g(echo)g(${string:7})630 518 y(7890abcdefgh)630
+628 y($)g(echo)g(${string:7:0})630 847 y($)g(echo)g(${string:7:2})630
+956 y(78)630 1066 y($)g(echo)g(${string:7:-2})630 1176
+y(7890abcdef)630 1285 y($)g(echo)g(${string:)e(-7})630
+1395 y(bcdefgh)630 1504 y($)i(echo)g(${string:)e(-7:0})630
+1724 y($)i(echo)g(${string:)e(-7:2})630 1833 y(bc)630
+1943 y($)i(echo)g(${string:)e(-7:-2})630 2052 y(bcdef)630
+2162 y($)i(set)g(--)h(01234567890abcdefgh)630 2271 y($)f(echo)g(${1:7})
+630 2381 y(7890abcdefgh)630 2491 y($)g(echo)g(${1:7:0})630
+2710 y($)g(echo)g(${1:7:2})630 2819 y(78)630 2929 y($)g(echo)g
+(${1:7:-2})630 3039 y(7890abcdef)630 3148 y($)g(echo)g(${1:)g(-7})630
+3258 y(bcdefgh)630 3367 y($)g(echo)g(${1:)g(-7:0})630
+3587 y($)g(echo)g(${1:)g(-7:2})630 3696 y(bc)630 3806
+y($)g(echo)g(${1:)g(-7:-2})630 3915 y(bcdef)630 4025
+y($)g(array[0]=01234567890abcdef)o(gh)630 4134 y($)g(echo)g
+(${array[0]:7})630 4244 y(7890abcdefgh)630 4354 y($)g(echo)g
+(${array[0]:7:0})630 4573 y($)g(echo)g(${array[0]:7:2})630
+4682 y(78)630 4792 y($)g(echo)g(${array[0]:7:-2})630
+4902 y(7890abcdef)630 5011 y($)g(echo)g(${array[0]:)e(-7})630
+5121 y(bcdefgh)630 5230 y($)i(echo)g(${array[0]:)e(-7:0})p
+eop end
+%%Page: 25 31
+TeXDict begin 25 30 bop 150 -116 a Ft(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(25)630 299
+y Fs($)47 b(echo)g(${array[0]:)e(-7:2})630 408 y(bc)630
+518 y($)i(echo)g(${array[0]:)e(-7:-2})630 628 y(bcdef)630
+756 y Ft(If)22 b Fq(parameter)30 b Ft(is)23 b(`)p Fs(@)p
+Ft(',)i(the)e(result)f(is)h Fq(length)g Ft(p)s(ositional)h(parameters)f
+(b)s(eginning)f(at)i Fq(o\013set)r Ft(.)630 865 y(A)36
+b(negativ)m(e)j Fq(o\013set)g Ft(is)e(tak)m(en)g(relativ)m(e)i(to)e
+(one)g(greater)g(than)f(the)h(greatest)h(p)s(ositional)630
+975 y(parameter,)29 b(so)f(an)g(o\013set)h(of)f(-1)g(ev)-5
+b(aluates)30 b(to)e(the)g(last)h(p)s(ositional)g(parameter.)40
+b(It)28 b(is)g(an)630 1084 y(expansion)i(error)g(if)h
+Fq(length)f Ft(ev)-5 b(aluates)32 b(to)f(a)g(n)m(um)m(b)s(er)e(less)i
+(than)f(zero.)630 1212 y(The)i(follo)m(wing)i(examples)f(illustrate)h
+(substring)d(expansion)i(using)f(p)s(ositional)h(param-)630
+1322 y(eters:)630 1450 y Fs($)47 b(set)g(--)h(1)f(2)g(3)h(4)f(5)h(6)f
+(7)h(8)f(9)h(0)f(a)h(b)f(c)g(d)h(e)f(f)h(g)f(h)630 1559
+y($)g(echo)g(${@:7})630 1669 y(7)g(8)h(9)f(0)h(a)f(b)h(c)f(d)h(e)f(f)h
+(g)f(h)630 1778 y($)g(echo)g(${@:7:0})630 1998 y($)g(echo)g(${@:7:2})
+630 2107 y(7)g(8)630 2217 y($)g(echo)g(${@:7:-2})630
+2326 y(bash:)f(-2:)h(substring)f(expression)f(<)i(0)630
+2436 y($)g(echo)g(${@:)g(-7:2})630 2545 y(b)g(c)630 2655
+y($)g(echo)g(${@:0})630 2765 y(./bash)f(1)i(2)f(3)g(4)h(5)f(6)h(7)f(8)h
+(9)f(0)h(a)f(b)h(c)f(d)g(e)h(f)f(g)h(h)630 2874 y($)f(echo)g(${@:0:2})
+630 2984 y(./bash)f(1)630 3093 y($)h(echo)g(${@:)g(-7:0})630
+3331 y Ft(If)36 b Fq(parameter)43 b Ft(is)36 b(an)g(indexed)g(arra)m(y)
+g(name)g(subscripted)f(b)m(y)h(`)p Fs(@)p Ft(')g(or)h(`)p
+Fs(*)p Ft(',)h(the)e(result)g(is)630 3440 y(the)h Fq(length)g
Ft(mem)m(b)s(ers)f(of)h(the)g(arra)m(y)g(b)s(eginning)f(with)h
Fs(${)p Fi(parameter)11 b Fs([)p Fi(offset)g Fs(])o(})p
-Ft(.)54 b(A)630 2801 y(negativ)m(e)33 b Fq(o\013set)g
+Ft(.)54 b(A)630 3550 y(negativ)m(e)33 b Fq(o\013set)g
Ft(is)e(tak)m(en)h(relativ)m(e)g(to)g(one)f(greater)g(than)g(the)f
-(maxim)m(um)h(index)f(of)h(the)630 2911 y(sp)s(eci\014ed)k(arra)m(y)-8
-b(.)57 b(Substring)34 b(expansion)i(applied)f(to)h(an)g(asso)s(ciativ)m
-(e)i(arra)m(y)e(pro)s(duces)630 3020 y(unde\014ned)28
-b(results.)630 3148 y(Note)37 b(that)f(a)g(negativ)m(e)i(o\013set)f(m)m
-(ust)f(b)s(e)f(separated)h(from)f(the)h(colon)h(b)m(y)e(at)i(least)g
-(one)630 3258 y(space)g(to)g(a)m(v)m(oid)g(b)s(eing)f(confused)f(with)h
-(the)h(`)p Fs(:-)p Ft(')f(expansion.)57 b(Substring)35
-b(indexing)h(is)630 3367 y(zero-based)24 b(unless)f(the)h(p)s
-(ositional)g(parameters)g(are)g(used,)g(in)g(whic)m(h)f(case)h(the)g
-(indexing)630 3477 y(starts)30 b(at)g(1)f(b)m(y)h(default.)40
-b(If)29 b Fq(o\013set)j Ft(is)e(0,)g(and)f(the)g(p)s(ositional)h
-(parameters)g(are)g(used,)f Fs($@)630 3587 y Ft(is)h(pre\014xed)g(to)h
-(the)f(list.)150 3733 y Fs(${!)p Fi(prefix)11 b Fs(*})150
-3842 y(${!)p Fi(prefix)g Fs(@})630 3952 y Ft(Expands)23
+(maxim)m(um)h(index)f(of)h(the)630 3660 y(sp)s(eci\014ed)38
+b(arra)m(y)-8 b(.)65 b(It)38 b(is)g(an)h(expansion)f(error)f(if)i
+Fq(length)f Ft(ev)-5 b(aluates)40 b(to)f(a)g(n)m(um)m(b)s(er)e(less)630
+3769 y(than)30 b(zero.)630 3897 y(These)23 b(examples)i(sho)m(w)e(ho)m
+(w)h(y)m(ou)g(can)g(use)f(substring)f(expansion)i(with)f(indexed)g
+(arra)m(ys:)630 4025 y Fs($)47 b(array=\(0)f(1)h(2)h(3)f(4)h(5)f(6)h(7)
+f(8)h(9)f(0)h(a)f(b)g(c)h(d)f(e)h(f)f(g)h(h\))630 4134
+y($)f(echo)g(${array[@]:7})630 4244 y(7)g(8)h(9)f(0)h(a)f(b)h(c)f(d)h
+(e)f(f)h(g)f(h)630 4354 y($)g(echo)g(${array[@]:7:2})630
+4463 y(7)g(8)630 4573 y($)g(echo)g(${array[@]:)e(-7:2})630
+4682 y(b)i(c)630 4792 y($)g(echo)g(${array[@]:)e(-7:-2})630
+4902 y(bash:)h(-2:)h(substring)f(expression)f(<)i(0)630
+5011 y($)g(echo)g(${array[@]:0})630 5121 y(0)g(1)h(2)f(3)h(4)f(5)h(6)f
+(7)h(8)f(9)h(0)f(a)g(b)h(c)f(d)h(e)f(f)h(g)f(h)630 5230
+y($)g(echo)g(${array[@]:0:2})630 5340 y(0)g(1)p eop end
+%%Page: 26 32
+TeXDict begin 26 31 bop 150 -116 a Ft(26)2572 b(Bash)31
+b(Reference)g(Man)m(ual)630 299 y Fs($)47 b(echo)g(${array[@]:)e(-7:0})
+630 536 y Ft(Substring)25 b(expansion)g(applied)h(to)h(an)f(asso)s
+(ciativ)m(e)j(arra)m(y)d(pro)s(duces)f(unde\014ned)f(results.)630
+664 y(Substring)32 b(indexing)i(is)f(zero-based)i(unless)e(the)h(p)s
+(ositional)g(parameters)g(are)g(used,)g(in)630 774 y(whic)m(h)29
+b(case)i(the)f(indexing)g(starts)g(at)g(1)g(b)m(y)g(default.)41
+b(If)29 b Fq(o\013set)k Ft(is)d(0,)g(and)f(the)h(p)s(ositional)630
+883 y(parameters)h(are)f(used,)g Fs($@)g Ft(is)g(pre\014xed)g(to)h(the)
+f(list.)150 1029 y Fs(${!)p Fi(prefix)11 b Fs(*})150
+1139 y(${!)p Fi(prefix)g Fs(@})630 1249 y Ft(Expands)23
b(to)i(the)g(names)f(of)h(v)-5 b(ariables)25 b(whose)f(names)g(b)s
(egin)g(with)g Fq(pre\014x)6 b Ft(,)25 b(separated)g(b)m(y)630
-4061 y(the)k(\014rst)f(c)m(haracter)j(of)e(the)g Fs(IFS)f
+1358 y(the)k(\014rst)f(c)m(haracter)j(of)e(the)g Fs(IFS)f
Ft(sp)s(ecial)i(v)-5 b(ariable.)41 b(When)29 b(`)p Fs(@)p
-Ft(')g(is)g(used)f(and)h(the)g(expan-)630 4171 y(sion)35
+Ft(')g(is)g(used)f(and)h(the)g(expan-)630 1468 y(sion)35
b(app)s(ears)g(within)f(double)h(quotes,)i(eac)m(h)f(v)-5
b(ariable)36 b(name)f(expands)g(to)g(a)h(separate)630
-4281 y(w)m(ord.)150 4427 y Fs(${!)p Fi(name)11 b Fs([@]})150
-4536 y(${!)p Fi(name)g Fs([*]})630 4646 y Ft(If)26 b
+1577 y(w)m(ord.)150 1724 y Fs(${!)p Fi(name)11 b Fs([@]})150
+1833 y(${!)p Fi(name)g Fs([*]})630 1943 y Ft(If)26 b
Fq(name)32 b Ft(is)27 b(an)f(arra)m(y)h(v)-5 b(ariable,)29
b(expands)d(to)h(the)g(list)g(of)g(arra)m(y)g(indices)g(\(k)m(eys\))h
-(assigned)630 4756 y(in)c Fq(name)5 b Ft(.)39 b(If)23
+(assigned)630 2052 y(in)c Fq(name)5 b Ft(.)39 b(If)23
b Fq(name)30 b Ft(is)24 b(not)g(an)g(arra)m(y)-8 b(,)27
b(expands)c(to)i(0)f(if)h Fq(name)k Ft(is)24 b(set)h(and)e(n)m(ull)h
-(otherwise.)630 4865 y(When)39 b(`)p Fs(@)p Ft(')h(is)f(used)g(and)f
+(otherwise.)630 2162 y(When)39 b(`)p Fs(@)p Ft(')h(is)f(used)g(and)f
(the)i(expansion)f(app)s(ears)g(within)f(double)h(quotes,)k(eac)m(h)d
-(k)m(ey)630 4975 y(expands)30 b(to)h(a)f(separate)i(w)m(ord.)150
-5121 y Fs(${#)p Fi(parameter)11 b Fs(})630 5230 y Ft(The)40
+(k)m(ey)630 2271 y(expands)30 b(to)h(a)f(separate)i(w)m(ord.)150
+2418 y Fs(${#)p Fi(parameter)11 b Fs(})630 2527 y Ft(The)40
b(length)g(in)g(c)m(haracters)i(of)e(the)h(expanded)e(v)-5
b(alue)41 b(of)f Fq(parameter)47 b Ft(is)40 b(substituted.)630
-5340 y(If)i Fq(parameter)50 b Ft(is)43 b(`)p Fs(*)p Ft(')g(or)g(`)p
+2637 y(If)i Fq(parameter)50 b Ft(is)43 b(`)p Fs(*)p Ft(')g(or)g(`)p
Fs(@)p Ft(',)k(the)c(v)-5 b(alue)43 b(substituted)f(is)h(the)g(n)m(um)m
-(b)s(er)f(of)h(p)s(ositional)p eop end
-%%Page: 24 30
-TeXDict begin 24 29 bop 150 -116 a Ft(24)2572 b(Bash)31
-b(Reference)g(Man)m(ual)630 299 y(parameters.)45 b(If)32
+(b)s(er)f(of)h(p)s(ositional)630 2746 y(parameters.)i(If)32
b Fq(parameter)38 b Ft(is)32 b(an)g(arra)m(y)g(name)g(subscripted)f(b)m
(y)g(`)p Fs(*)p Ft(')h(or)g(`)p Fs(@)p Ft(',)g(the)g(v)-5
-b(alue)630 408 y(substituted)30 b(is)g(the)h(n)m(um)m(b)s(er)e(of)h
-(elemen)m(ts)i(in)e(the)h(arra)m(y)-8 b(.)150 573 y Fs(${)p
-Fi(parameter)11 b Fs(#)p Fi(word)g Fs(})150 682 y(${)p
-Fi(parameter)g Fs(##)p Fi(word)g Fs(})630 792 y Ft(The)31
-b Fq(w)m(ord)k Ft(is)d(expanded)f(to)i(pro)s(duce)e(a)h(pattern)g(just)
-f(as)i(in)e(\014lename)h(expansion)g(\(see)630 902 y(Section)k(3.5.8)h
-([Filename)g(Expansion],)g(page)f(26\).)56 b(If)35 b(the)h(pattern)f
-(matc)m(hes)i(the)e(b)s(e-)630 1011 y(ginning)g(of)g(the)g(expanded)f
-(v)-5 b(alue)36 b(of)f Fq(parameter)7 b Ft(,)36 b(then)f(the)g(result)g
-(of)g(the)g(expansion)630 1121 y(is)28 b(the)g(expanded)e(v)-5
-b(alue)28 b(of)g Fq(parameter)35 b Ft(with)27 b(the)h(shortest)g(matc)m
-(hing)h(pattern)f(\(the)g(`)p Fs(#)p Ft(')630 1230 y(case\))e(or)f(the)
-g(longest)g(matc)m(hing)h(pattern)f(\(the)g(`)p Fs(##)p
+b(alue)630 2856 y(substituted)30 b(is)g(the)h(n)m(um)m(b)s(er)e(of)h
+(elemen)m(ts)i(in)e(the)h(arra)m(y)-8 b(.)150 3002 y
+Fs(${)p Fi(parameter)11 b Fs(#)p Fi(word)g Fs(})150 3112
+y(${)p Fi(parameter)g Fs(##)p Fi(word)g Fs(})630 3221
+y Ft(The)31 b Fq(w)m(ord)k Ft(is)d(expanded)f(to)i(pro)s(duce)e(a)h
+(pattern)g(just)f(as)i(in)e(\014lename)h(expansion)g(\(see)630
+3331 y(Section)k(3.5.8)h([Filename)g(Expansion],)g(page)f(29\).)56
+b(If)35 b(the)h(pattern)f(matc)m(hes)i(the)e(b)s(e-)630
+3440 y(ginning)g(of)g(the)g(expanded)f(v)-5 b(alue)36
+b(of)f Fq(parameter)7 b Ft(,)36 b(then)f(the)g(result)g(of)g(the)g
+(expansion)630 3550 y(is)28 b(the)g(expanded)e(v)-5 b(alue)28
+b(of)g Fq(parameter)35 b Ft(with)27 b(the)h(shortest)g(matc)m(hing)h
+(pattern)f(\(the)g(`)p Fs(#)p Ft(')630 3660 y(case\))e(or)f(the)g
+(longest)g(matc)m(hing)h(pattern)f(\(the)g(`)p Fs(##)p
Ft(')g(case\))h(deleted.)39 b(If)24 b Fq(parameter)32
-b Ft(is)25 b(`)p Fs(@)p Ft(')630 1340 y(or)j(`)p Fs(*)p
+b Ft(is)25 b(`)p Fs(@)p Ft(')630 3769 y(or)j(`)p Fs(*)p
Ft(',)i(the)e(pattern)h(remo)m(v)-5 b(al)29 b(op)s(eration)g(is)f
(applied)h(to)g(eac)m(h)g(p)s(ositional)g(parameter)g(in)630
-1450 y(turn,)i(and)g(the)h(expansion)g(is)g(the)g(resultan)m(t)g(list.)
+3879 y(turn,)i(and)g(the)h(expansion)g(is)g(the)g(resultan)m(t)g(list.)
45 b(If)32 b Fq(parameter)38 b Ft(is)32 b(an)g(arra)m(y)g(v)-5
-b(ariable)630 1559 y(subscripted)39 b(with)g(`)p Fs(@)p
+b(ariable)630 3988 y(subscripted)39 b(with)g(`)p Fs(@)p
Ft(')h(or)g(`)p Fs(*)p Ft(',)j(the)d(pattern)h(remo)m(v)-5
b(al)41 b(op)s(eration)f(is)g(applied)g(to)h(eac)m(h)630
-1669 y(mem)m(b)s(er)30 b(of)g(the)h(arra)m(y)g(in)f(turn,)f(and)h(the)h
-(expansion)f(is)g(the)h(resultan)m(t)g(list.)150 1833
+4098 y(mem)m(b)s(er)30 b(of)g(the)h(arra)m(y)g(in)f(turn,)f(and)h(the)h
+(expansion)f(is)g(the)h(resultan)m(t)g(list.)150 4244
y Fs(${)p Fi(parameter)11 b Fs(\045)p Fi(word)g Fs(})150
-1943 y(${)p Fi(parameter)g Fs(\045\045)p Fi(word)g Fs(})630
-2052 y Ft(The)35 b Fq(w)m(ord)k Ft(is)c(expanded)g(to)h(pro)s(duce)e(a)
+4354 y(${)p Fi(parameter)g Fs(\045\045)p Fi(word)g Fs(})630
+4463 y Ft(The)35 b Fq(w)m(ord)k Ft(is)c(expanded)g(to)h(pro)s(duce)e(a)
i(pattern)f(just)g(as)h(in)f(\014lename)h(expansion.)55
-b(If)630 2162 y(the)43 b(pattern)f(matc)m(hes)i(a)e(trailing)i(p)s
+b(If)630 4573 y(the)43 b(pattern)f(matc)m(hes)i(a)e(trailing)i(p)s
(ortion)e(of)g(the)h(expanded)e(v)-5 b(alue)43 b(of)g
-Fq(parameter)7 b Ft(,)630 2271 y(then)39 b(the)g(result)g(of)h(the)f
+Fq(parameter)7 b Ft(,)630 4682 y(then)39 b(the)g(result)g(of)h(the)f
(expansion)g(is)h(the)f(v)-5 b(alue)40 b(of)f Fq(parameter)46
-b Ft(with)39 b(the)h(shortest)630 2381 y(matc)m(hing)31
+b Ft(with)39 b(the)h(shortest)630 4792 y(matc)m(hing)31
b(pattern)e(\(the)h(`)p Fs(\045)p Ft(')g(case\))h(or)e(the)h(longest)h
(matc)m(hing)f(pattern)g(\(the)g(`)p Fs(\045\045)p Ft(')g(case\))630
-2491 y(deleted.)49 b(If)32 b Fq(parameter)40 b Ft(is)33
+4902 y(deleted.)49 b(If)32 b Fq(parameter)40 b Ft(is)33
b(`)p Fs(@)p Ft(')g(or)g(`)p Fs(*)p Ft(',)h(the)f(pattern)g(remo)m(v)-5
-b(al)34 b(op)s(eration)g(is)f(applied)f(to)630 2600 y(eac)m(h)38
+b(al)34 b(op)s(eration)g(is)f(applied)f(to)630 5011 y(eac)m(h)38
b(p)s(ositional)g(parameter)g(in)f(turn,)h(and)e(the)h(expansion)g(is)h
-(the)f(resultan)m(t)h(list.)61 b(If)630 2710 y Fq(parameter)38
+(the)f(resultan)m(t)h(list.)61 b(If)630 5121 y Fq(parameter)38
b Ft(is)32 b(an)f(arra)m(y)h(v)-5 b(ariable)32 b(subscripted)e(with)h
(`)p Fs(@)p Ft(')g(or)h(`)p Fs(*)p Ft(',)g(the)f(pattern)h(remo)m(v)-5
-b(al)630 2819 y(op)s(eration)30 b(is)g(applied)f(to)i(eac)m(h)g(mem)m
+b(al)630 5230 y(op)s(eration)30 b(is)g(applied)f(to)i(eac)m(h)g(mem)m
(b)s(er)e(of)h(the)g(arra)m(y)g(in)f(turn,)g(and)g(the)h(expansion)g
-(is)630 2929 y(the)h(resultan)m(t)g(list.)150 3093 y
-Fs(${)p Fi(parameter)11 b Fs(/)p Fi(pattern)g Fs(/)p
-Fi(s)o(tri)o(ng)f Fs(})630 3203 y Ft(The)37 b Fq(pattern)g
+(is)630 5340 y(the)h(resultan)m(t)g(list.)p eop end
+%%Page: 27 33
+TeXDict begin 27 32 bop 150 -116 a Ft(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(27)150 299
+y Fs(${)p Fi(parameter)11 b Fs(/)p Fi(pattern)g Fs(/)p
+Fi(s)o(tri)o(ng)f Fs(})630 408 y Ft(The)37 b Fq(pattern)g
Ft(is)g(expanded)g(to)h(pro)s(duce)e(a)h(pattern)g(just)g(as)h(in)e
-(\014lename)i(expansion.)630 3313 y Fq(P)m(arameter)46
+(\014lename)i(expansion.)630 518 y Fq(P)m(arameter)46
b Ft(is)38 b(expanded)f(and)g(the)i(longest)g(matc)m(h)g(of)f
Fq(pattern)g Ft(against)h(its)f(v)-5 b(alue)39 b(is)630
-3422 y(replaced)33 b(with)f Fq(string)8 b Ft(.)47 b(If)33
+628 y(replaced)33 b(with)f Fq(string)8 b Ft(.)47 b(If)33
b Fq(pattern)f Ft(b)s(egins)g(with)h(`)p Fs(/)p Ft(',)g(all)h(matc)m
-(hes)f(of)g Fq(pattern)g Ft(are)g(re-)630 3532 y(placed)27
+(hes)f(of)g Fq(pattern)g Ft(are)g(re-)630 737 y(placed)27
b(with)f Fq(string)8 b Ft(.)40 b(Normally)27 b(only)g(the)g(\014rst)f
(matc)m(h)h(is)g(replaced.)40 b(If)26 b Fq(pattern)g
-Ft(b)s(egins)630 3641 y(with)33 b(`)p Fs(#)p Ft(',)i(it)f(m)m(ust)f
+Ft(b)s(egins)630 847 y(with)33 b(`)p Fs(#)p Ft(',)i(it)f(m)m(ust)f
(matc)m(h)i(at)f(the)g(b)s(eginning)f(of)g(the)h(expanded)f(v)-5
-b(alue)34 b(of)g Fq(parameter)7 b Ft(.)630 3751 y(If)34
+b(alue)34 b(of)g Fq(parameter)7 b Ft(.)630 956 y(If)34
b Fq(pattern)g Ft(b)s(egins)g(with)g(`)p Fs(\045)p Ft(',)h(it)g(m)m
(ust)f(matc)m(h)h(at)g(the)f(end)g(of)g(the)h(expanded)e(v)-5
-b(alue)35 b(of)630 3861 y Fq(parameter)7 b Ft(.)40 b(If)29
+b(alue)35 b(of)630 1066 y Fq(parameter)7 b Ft(.)40 b(If)29
b Fq(string)36 b Ft(is)29 b(n)m(ull,)h(matc)m(hes)g(of)f
Fq(pattern)g Ft(are)g(deleted)h(and)e(the)h Fs(/)f Ft(follo)m(wing)630
-3970 y Fq(pattern)34 b Ft(ma)m(y)g(b)s(e)f(omitted.)51
+1176 y Fq(pattern)34 b Ft(ma)m(y)g(b)s(e)f(omitted.)51
b(If)33 b Fq(parameter)41 b Ft(is)33 b(`)p Fs(@)p Ft(')h(or)g(`)p
Fs(*)p Ft(',)g(the)g(substitution)f(op)s(eration)630
-4080 y(is)38 b(applied)g(to)g(eac)m(h)h(p)s(ositional)g(parameter)f(in)
+1285 y(is)38 b(applied)g(to)g(eac)m(h)h(p)s(ositional)g(parameter)f(in)
g(turn,)h(and)e(the)h(expansion)g(is)g(the)g(re-)630
-4189 y(sultan)m(t)f(list.)59 b(If)36 b Fq(parameter)43
+1395 y(sultan)m(t)f(list.)59 b(If)36 b Fq(parameter)43
b Ft(is)36 b(an)g(arra)m(y)h(v)-5 b(ariable)37 b(subscripted)e(with)h
-(`)p Fs(@)p Ft(')g(or)h(`)p Fs(*)p Ft(',)h(the)630 4299
+(`)p Fs(@)p Ft(')g(or)h(`)p Fs(*)p Ft(',)h(the)630 1504
y(substitution)30 b(op)s(eration)h(is)f(applied)g(to)h(eac)m(h)g(mem)m
(b)s(er)f(of)g(the)h(arra)m(y)g(in)f(turn,)f(and)h(the)630
-4408 y(expansion)g(is)h(the)f(resultan)m(t)h(list.)150
-4573 y Fs(${)p Fi(parameter)11 b Fs(^)p Fi(pattern)g
-Fs(})150 4682 y(${)p Fi(parameter)g Fs(^^)p Fi(pattern)g
-Fs(})150 4792 y(${)p Fi(parameter)g Fs(,)p Fi(pattern)g
-Fs(})150 4902 y(${)p Fi(parameter)g Fs(,,)p Fi(pattern)g
-Fs(})630 5011 y Ft(This)35 b(expansion)h(mo)s(di\014es)f(the)h(case)h
+1614 y(expansion)g(is)h(the)f(resultan)m(t)h(list.)150
+1793 y Fs(${)p Fi(parameter)11 b Fs(^)p Fi(pattern)g
+Fs(})150 1903 y(${)p Fi(parameter)g Fs(^^)p Fi(pattern)g
+Fs(})150 2012 y(${)p Fi(parameter)g Fs(,)p Fi(pattern)g
+Fs(})150 2122 y(${)p Fi(parameter)g Fs(,,)p Fi(pattern)g
+Fs(})630 2231 y Ft(This)35 b(expansion)h(mo)s(di\014es)f(the)h(case)h
(of)f(alphab)s(etic)h(c)m(haracters)g(in)f Fq(parameter)7
-b Ft(.)57 b(The)630 5121 y Fq(pattern)33 b Ft(is)g(expanded)e(to)j(pro)
+b Ft(.)57 b(The)630 2341 y Fq(pattern)33 b Ft(is)g(expanded)e(to)j(pro)
s(duce)d(a)j(pattern)e(just)g(as)h(in)g(\014lename)g(expansion.)47
-b(Eac)m(h)630 5230 y(c)m(haracter)32 b(in)e(the)g(expanded)f(v)-5
+b(Eac)m(h)630 2450 y(c)m(haracter)32 b(in)e(the)g(expanded)f(v)-5
b(alue)31 b(of)f Fq(parameter)37 b Ft(is)30 b(tested)h(against)h
-Fq(pattern)p Ft(,)e(and,)g(if)630 5340 y(it)j(matc)m(hes)h(the)g
+Fq(pattern)p Ft(,)e(and,)g(if)630 2560 y(it)j(matc)m(hes)h(the)g
(pattern,)f(its)h(case)g(is)f(con)m(v)m(erted.)49 b(The)33
-b(pattern)g(should)f(not)h(attempt)p eop end
-%%Page: 25 31
-TeXDict begin 25 30 bop 150 -116 a Ft(Chapter)30 b(3:)41
-b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(25)630 299
-y(to)32 b(matc)m(h)g(more)f(than)g(one)g(c)m(haracter.)44
-b(The)30 b(`)p Fs(^)p Ft(')i(op)s(erator)f(con)m(v)m(erts)h(lo)m(w)m
-(ercase)i(letters)630 408 y(matc)m(hing)i Fq(pattern)f
-Ft(to)h(upp)s(ercase;)h(the)e(`)p Fs(,)p Ft(')g(op)s(erator)g(con)m(v)m
-(erts)i(matc)m(hing)f(upp)s(ercase)630 518 y(letters)e(to)f(lo)m(w)m
-(ercase.)50 b(The)32 b(`)p Fs(^^)p Ft(')h(and)f(`)p Fs(,,)p
-Ft(')g(expansions)h(con)m(v)m(ert)h(eac)m(h)g(matc)m(hed)f(c)m(har-)630
-628 y(acter)c(in)f(the)h(expanded)e(v)-5 b(alue;)30 b(the)e(`)p
-Fs(^)p Ft(')g(and)g(`)p Fs(,)p Ft(')g(expansions)g(matc)m(h)h(and)f
-(con)m(v)m(ert)i(only)630 737 y(the)37 b(\014rst)g(c)m(haracter)i(in)e
-(the)g(expanded)g(v)-5 b(alue.)61 b(If)37 b Fq(pattern)g
-Ft(is)h(omitted,)i(it)e(is)f(treated)630 847 y(lik)m(e)h(a)f(`)p
-Fs(?)p Ft(',)i(whic)m(h)d(matc)m(hes)i(ev)m(ery)f(c)m(haracter.)61
-b(If)37 b Fq(parameter)43 b Ft(is)37 b(`)p Fs(@)p Ft(')g(or)f(`)p
-Fs(*)p Ft(',)j(the)e(case)630 956 y(mo)s(di\014cation)29
-b(op)s(eration)f(is)g(applied)g(to)h(eac)m(h)h(p)s(ositional)f
-(parameter)f(in)g(turn,)g(and)g(the)630 1066 y(expansion)38
-b(is)g(the)g(resultan)m(t)h(list.)65 b(If)37 b Fq(parameter)46
-b Ft(is)38 b(an)g(arra)m(y)g(v)-5 b(ariable)39 b(subscripted)630
-1176 y(with)26 b(`)p Fs(@)p Ft(')f(or)h(`)p Fs(*)p Ft(',)h(the)f(case)h
-(mo)s(di\014cation)f(op)s(eration)h(is)e(applied)h(to)h(eac)m(h)g(mem)m
-(b)s(er)e(of)h(the)630 1285 y(arra)m(y)31 b(in)f(turn,)f(and)h(the)h
-(expansion)f(is)g(the)h(resultan)m(t)g(list.)150 1487
-y Fj(3.5.4)63 b(Command)41 b(Substitution)150 1633 y
-Ft(Command)f(substitution)h(allo)m(ws)i(the)e(output)g(of)h(a)f
-(command)g(to)h(replace)g(the)g(command)f(itself.)150
-1743 y(Command)29 b(substitution)h(o)s(ccurs)h(when)e(a)i(command)f(is)
-g(enclosed)h(as)g(follo)m(ws:)390 1880 y Fs($\()p Fi(command)11
-b Fs(\))150 2016 y Ft(or)390 2153 y Fs(`)p Fi(command)g
-Fs(`)150 2289 y Ft(Bash)45 b(p)s(erforms)f(the)h(expansion)f(b)m(y)h
+b(pattern)g(should)f(not)h(attempt)630 2670 y(to)f(matc)m(h)g(more)f
+(than)g(one)g(c)m(haracter.)44 b(The)30 b(`)p Fs(^)p
+Ft(')i(op)s(erator)f(con)m(v)m(erts)h(lo)m(w)m(ercase)i(letters)630
+2779 y(matc)m(hing)i Fq(pattern)f Ft(to)h(upp)s(ercase;)h(the)e(`)p
+Fs(,)p Ft(')g(op)s(erator)g(con)m(v)m(erts)i(matc)m(hing)f(upp)s
+(ercase)630 2889 y(letters)e(to)f(lo)m(w)m(ercase.)50
+b(The)32 b(`)p Fs(^^)p Ft(')h(and)f(`)p Fs(,,)p Ft(')g(expansions)h
+(con)m(v)m(ert)h(eac)m(h)g(matc)m(hed)f(c)m(har-)630
+2998 y(acter)c(in)f(the)h(expanded)e(v)-5 b(alue;)30
+b(the)e(`)p Fs(^)p Ft(')g(and)g(`)p Fs(,)p Ft(')g(expansions)g(matc)m
+(h)h(and)f(con)m(v)m(ert)i(only)630 3108 y(the)37 b(\014rst)g(c)m
+(haracter)i(in)e(the)g(expanded)g(v)-5 b(alue.)61 b(If)37
+b Fq(pattern)g Ft(is)h(omitted,)i(it)e(is)f(treated)630
+3218 y(lik)m(e)h(a)f(`)p Fs(?)p Ft(',)i(whic)m(h)d(matc)m(hes)i(ev)m
+(ery)f(c)m(haracter.)61 b(If)37 b Fq(parameter)43 b Ft(is)37
+b(`)p Fs(@)p Ft(')g(or)f(`)p Fs(*)p Ft(',)j(the)e(case)630
+3327 y(mo)s(di\014cation)29 b(op)s(eration)f(is)g(applied)g(to)h(eac)m
+(h)h(p)s(ositional)f(parameter)f(in)g(turn,)g(and)g(the)630
+3437 y(expansion)38 b(is)g(the)g(resultan)m(t)h(list.)65
+b(If)37 b Fq(parameter)46 b Ft(is)38 b(an)g(arra)m(y)g(v)-5
+b(ariable)39 b(subscripted)630 3546 y(with)26 b(`)p Fs(@)p
+Ft(')f(or)h(`)p Fs(*)p Ft(',)h(the)f(case)h(mo)s(di\014cation)f(op)s
+(eration)h(is)e(applied)h(to)h(eac)m(h)g(mem)m(b)s(er)e(of)h(the)630
+3656 y(arra)m(y)31 b(in)f(turn,)f(and)h(the)h(expansion)f(is)g(the)h
+(resultan)m(t)g(list.)150 3875 y Fj(3.5.4)63 b(Command)41
+b(Substitution)150 4022 y Ft(Command)f(substitution)h(allo)m(ws)i(the)e
+(output)g(of)h(a)f(command)g(to)h(replace)g(the)g(command)f(itself.)150
+4131 y(Command)29 b(substitution)h(o)s(ccurs)h(when)e(a)i(command)f(is)
+g(enclosed)h(as)g(follo)m(ws:)390 4285 y Fs($\()p Fi(command)11
+b Fs(\))150 4439 y Ft(or)390 4593 y Fs(`)p Fi(command)g
+Fs(`)150 4748 y Ft(Bash)45 b(p)s(erforms)f(the)h(expansion)f(b)m(y)h
(executing)i Fq(command)h Ft(and)c(replacing)i(the)f(command)g(sub-)150
-2399 y(stitution)c(with)f(the)g(standard)g(output)g(of)g(the)g
+4857 y(stitution)c(with)f(the)g(standard)g(output)g(of)g(the)g
(command,)j(with)d(an)m(y)h(trailing)g(newlines)f(deleted.)150
-2509 y(Em)m(b)s(edded)30 b(newlines)h(are)h(not)f(deleted,)i(but)e
+4967 y(Em)m(b)s(edded)30 b(newlines)h(are)h(not)f(deleted,)i(but)e
(they)g(ma)m(y)h(b)s(e)f(remo)m(v)m(ed)i(during)d(w)m(ord)h(splitting.)
-44 b(The)150 2618 y(command)21 b(substitution)g Fs($\(cat)29
+44 b(The)150 5076 y(command)21 b(substitution)g Fs($\(cat)29
b Fi(file)11 b Fs(\))20 b Ft(can)i(b)s(e)f(replaced)g(b)m(y)h(the)g
(equiv)-5 b(alen)m(t)22 b(but)f(faster)h Fs($\(<)30 b
-Fi(file)11 b Fs(\))p Ft(.)275 2755 y(When)33 b(the)i(old-st)m(yle)h
+Fi(file)11 b Fs(\))p Ft(.)275 5230 y(When)33 b(the)i(old-st)m(yle)h
(bac)m(kquote)f(form)f(of)g(substitution)g(is)g(used,)h(bac)m(kslash)f
-(retains)h(its)f(literal)150 2864 y(meaning)k(except)h(when)e(follo)m
+(retains)h(its)f(literal)150 5340 y(meaning)k(except)h(when)e(follo)m
(w)m(ed)j(b)m(y)e(`)p Fs($)p Ft(',)j(`)p Fs(`)p Ft(',)f(or)e(`)p
Fs(\\)p Ft('.)64 b(The)38 b(\014rst)f(bac)m(kquote)j(not)e(preceded)g
-(b)m(y)g(a)150 2974 y(bac)m(kslash)j(terminates)g(the)f(command)g
-(substitution.)69 b(When)40 b(using)g(the)g Fs($\()p
-Fi(command)11 b Fs(\))37 b Ft(form,)42 b(all)150 3084
-y(c)m(haracters)32 b(b)s(et)m(w)m(een)f(the)f(paren)m(theses)h(mak)m(e)
-g(up)f(the)g(command;)h(none)f(are)h(treated)g(sp)s(ecially)-8
-b(.)275 3220 y(Command)22 b(substitutions)g(ma)m(y)i(b)s(e)e(nested.)39
+(b)m(y)g(a)p eop end
+%%Page: 28 34
+TeXDict begin 28 33 bop 150 -116 a Ft(28)2572 b(Bash)31
+b(Reference)g(Man)m(ual)150 299 y(bac)m(kslash)41 b(terminates)g(the)f
+(command)g(substitution.)69 b(When)40 b(using)g(the)g
+Fs($\()p Fi(command)11 b Fs(\))37 b Ft(form,)42 b(all)150
+408 y(c)m(haracters)32 b(b)s(et)m(w)m(een)f(the)f(paren)m(theses)h(mak)
+m(e)g(up)f(the)g(command;)h(none)f(are)h(treated)g(sp)s(ecially)-8
+b(.)275 543 y(Command)22 b(substitutions)g(ma)m(y)i(b)s(e)e(nested.)39
b(T)-8 b(o)23 b(nest)g(when)f(using)h(the)g(bac)m(kquoted)h(form,)g
-(escap)s(e)150 3330 y(the)31 b(inner)e(bac)m(kquotes)j(with)e(bac)m
-(kslashes.)275 3466 y(If)e(the)i(substitution)e(app)s(ears)h(within)g
+(escap)s(e)150 653 y(the)31 b(inner)e(bac)m(kquotes)j(with)e(bac)m
+(kslashes.)275 787 y(If)e(the)i(substitution)e(app)s(ears)h(within)g
(double)f(quotes,)i(w)m(ord)f(splitting)h(and)f(\014lename)g(expansion)
-150 3576 y(are)i(not)f(p)s(erformed)f(on)h(the)h(results.)150
-3777 y Fj(3.5.5)63 b(Arithmetic)40 b(Expansion)150 3924
+150 897 y(are)i(not)f(p)s(erformed)f(on)h(the)h(results.)150
+1096 y Fj(3.5.5)63 b(Arithmetic)40 b(Expansion)150 1243
y Ft(Arithmetic)25 b(expansion)g(allo)m(ws)g(the)g(ev)-5
b(aluation)26 b(of)f(an)f(arithmetic)i(expression)e(and)g(the)g
-(substitution)150 4034 y(of)31 b(the)f(result.)41 b(The)30
-b(format)g(for)g(arithmetic)i(expansion)e(is:)390 4171
-y Fs($\(\()47 b Fi(expression)55 b Fs(\)\))275 4307 y
+(substitution)150 1353 y(of)31 b(the)f(result.)41 b(The)30
+b(format)g(for)g(arithmetic)i(expansion)e(is:)390 1488
+y Fs($\(\()47 b Fi(expression)55 b Fs(\)\))275 1622 y
Ft(The)33 b(expression)g(is)h(treated)g(as)g(if)g(it)g(w)m(ere)g
(within)f(double)h(quotes,)h(but)e(a)h(double)f(quote)h(inside)150
-4417 y(the)27 b(paren)m(theses)g(is)g(not)g(treated)h(sp)s(ecially)-8
+1732 y(the)27 b(paren)m(theses)g(is)g(not)g(treated)h(sp)s(ecially)-8
b(.)41 b(All)27 b(tok)m(ens)h(in)e(the)h(expression)g(undergo)f
-(parameter)h(ex-)150 4526 y(pansion,)h(command)f(substitution,)h(and)f
+(parameter)h(ex-)150 1841 y(pansion,)h(command)f(substitution,)h(and)f
(quote)i(remo)m(v)-5 b(al.)41 b(Arithmetic)28 b(expansions)g(ma)m(y)g
-(b)s(e)f(nested.)275 4663 y(The)34 b(ev)-5 b(aluation)37
+(b)s(e)f(nested.)275 1976 y(The)34 b(ev)-5 b(aluation)37
b(is)f(p)s(erformed)e(according)i(to)g(the)g(rules)f(listed)h(b)s(elo)m
-(w)g(\(see)g(Section)g(6.5)h([Shell)150 4772 y(Arithmetic],)32
-b(page)f(82\).)42 b(If)30 b(the)h(expression)f(is)g(in)m(v)-5
+(w)g(\(see)g(Section)g(6.5)h([Shell)150 2086 y(Arithmetic],)32
+b(page)f(86\).)42 b(If)30 b(the)h(expression)f(is)g(in)m(v)-5
b(alid,)32 b(Bash)e(prin)m(ts)g(a)h(message)g(indicating)h(failure)150
-4882 y(to)f(the)g(standard)e(error)h(and)g(no)g(substitution)g(o)s
-(ccurs.)150 5083 y Fj(3.5.6)63 b(Pro)s(cess)42 b(Substitution)150
-5230 y Ft(Pro)s(cess)i(substitution)g(is)g(supp)s(orted)f(on)h(systems)
+2195 y(to)f(the)g(standard)e(error)h(and)g(no)g(substitution)g(o)s
+(ccurs.)150 2395 y Fj(3.5.6)63 b(Pro)s(cess)42 b(Substitution)150
+2542 y Ft(Pro)s(cess)i(substitution)g(is)g(supp)s(orted)f(on)h(systems)
g(that)h(supp)s(ort)d(named)i(pip)s(es)f(\()p Fl(fif)n(o)p
-Ft(s\))i(or)f(the)150 5340 y(`)p Fs(/dev/fd)p Ft(')29
+Ft(s\))i(or)f(the)150 2651 y(`)p Fs(/dev/fd)p Ft(')29
b(metho)s(d)h(of)g(naming)g(op)s(en)g(\014les.)41 b(It)30
-b(tak)m(es)i(the)f(form)f(of)p eop end
-%%Page: 26 32
-TeXDict begin 26 31 bop 150 -116 a Ft(26)2572 b(Bash)31
-b(Reference)g(Man)m(ual)390 299 y Fs(<\()p Fi(list)11
-b Fs(\))150 432 y Ft(or)390 565 y Fs(>\()p Fi(list)g
-Fs(\))150 699 y Ft(The)23 b(pro)s(cess)g Fq(list)j Ft(is)d(run)f(with)h
-(its)h(input)f(or)g(output)g(connected)h(to)h(a)e Fl(fif)n(o)g
+b(tak)m(es)i(the)f(form)f(of)390 2786 y Fs(<\()p Fi(list)11
+b Fs(\))150 2921 y Ft(or)390 3055 y Fs(>\()p Fi(list)g
+Fs(\))150 3190 y Ft(The)23 b(pro)s(cess)g Fq(list)j Ft(is)d(run)f(with)
+h(its)h(input)f(or)g(output)g(connected)h(to)h(a)e Fl(fif)n(o)g
Ft(or)h(some)g(\014le)f(in)g(`)p Fs(/dev/fd)p Ft('.)150
-808 y(The)28 b(name)h(of)g(this)f(\014le)h(is)g(passed)f(as)h(an)f
+3300 y(The)28 b(name)h(of)g(this)f(\014le)h(is)g(passed)f(as)h(an)f
(argumen)m(t)h(to)h(the)f(curren)m(t)f(command)h(as)f(the)h(result)g
-(of)g(the)150 918 y(expansion.)40 b(If)28 b(the)h Fs(>\()p
+(of)g(the)150 3409 y(expansion.)40 b(If)28 b(the)h Fs(>\()p
Fi(list)11 b Fs(\))26 b Ft(form)h(is)i(used,)f(writing)h(to)g(the)f
(\014le)h(will)g(pro)m(vide)f(input)g(for)g Fq(list)r
-Ft(.)41 b(If)28 b(the)150 1027 y Fs(<\()p Fi(list)11
+Ft(.)41 b(If)28 b(the)150 3519 y Fs(<\()p Fi(list)11
b Fs(\))23 b Ft(form)h(is)i(used,)f(the)h(\014le)f(passed)g(as)g(an)g
(argumen)m(t)h(should)e(b)s(e)h(read)g(to)h(obtain)g(the)f(output)g(of)
-150 1137 y Fq(list)r Ft(.)41 b(Note)31 b(that)f(no)f(space)h(ma)m(y)g
+150 3628 y Fq(list)r Ft(.)41 b(Note)31 b(that)f(no)f(space)h(ma)m(y)g
(app)s(ear)f(b)s(et)m(w)m(een)h(the)g Fs(<)f Ft(or)h
Fs(>)f Ft(and)g(the)g(left)h(paren)m(thesis,)h(otherwise)150
-1247 y(the)g(construct)f(w)m(ould)g(b)s(e)g(in)m(terpreted)h(as)f(a)h
-(redirection.)275 1380 y(When)36 b(a)m(v)-5 b(ailable,)40
+3738 y(the)g(construct)f(w)m(ould)g(b)s(e)g(in)m(terpreted)h(as)f(a)h
+(redirection.)275 3873 y(When)36 b(a)m(v)-5 b(ailable,)40
b(pro)s(cess)c(substitution)h(is)f(p)s(erformed)f(sim)m(ultaneously)i
-(with)g(parameter)g(and)150 1489 y(v)-5 b(ariable)31
+(with)g(parameter)g(and)150 3982 y(v)-5 b(ariable)31
b(expansion,)g(command)f(substitution,)g(and)g(arithmetic)i(expansion.)
-150 1686 y Fj(3.5.7)63 b(W)-10 b(ord)41 b(Splitting)150
-1833 y Ft(The)30 b(shell)h(scans)g(the)g(results)f(of)h(parameter)g
+150 4182 y Fj(3.5.7)63 b(W)-10 b(ord)41 b(Splitting)150
+4329 y Ft(The)30 b(shell)h(scans)g(the)g(results)f(of)h(parameter)g
(expansion,)g(command)g(substitution,)g(and)f(arithmetic)150
-1943 y(expansion)g(that)h(did)f(not)g(o)s(ccur)h(within)e(double)h
-(quotes)h(for)f(w)m(ord)g(splitting.)275 2076 y(The)43
+4438 y(expansion)g(that)h(did)f(not)g(o)s(ccur)h(within)e(double)h
+(quotes)h(for)f(w)m(ord)g(splitting.)275 4573 y(The)43
b(shell)h(treats)h(eac)m(h)h(c)m(haracter)f(of)g Fs($IFS)e
Ft(as)h(a)g(delimiter,)49 b(and)43 b(splits)h(the)h(results)e(of)i(the)
-150 2186 y(other)40 b(expansions)f(in)m(to)i(w)m(ords)e(on)h(these)g(c)
+150 4682 y(other)40 b(expansions)f(in)m(to)i(w)m(ords)e(on)h(these)g(c)
m(haracters.)70 b(If)39 b Fs(IFS)g Ft(is)h(unset,)i(or)d(its)h(v)-5
-b(alue)40 b(is)g(exactly)150 2295 y Fs(<space><tab><newline>)p
+b(alue)40 b(is)g(exactly)150 4792 y Fs(<space><tab><newline>)p
Ft(,)26 b(the)32 b(default,)g(then)f(sequences)h(of)62
b Fs(<space>)p Ft(,)30 b Fs(<tab>)p Ft(,)h(and)f Fs(<newline>)150
-2405 y Ft(at)39 b(the)f(b)s(eginning)g(and)f(end)h(of)g(the)h(results)f
+4902 y Ft(at)39 b(the)f(b)s(eginning)g(and)f(end)h(of)g(the)h(results)f
(of)g(the)g(previous)g(expansions)g(are)g(ignored,)j(and)d(an)m(y)150
-2514 y(sequence)31 b(of)g Fs(IFS)f Ft(c)m(haracters)j(not)e(at)g(the)g
+5011 y(sequence)31 b(of)g Fs(IFS)f Ft(c)m(haracters)j(not)e(at)g(the)g
(b)s(eginning)g(or)f(end)h(serv)m(es)g(to)h(delimit)f(w)m(ords.)42
-b(If)30 b Fs(IFS)g Ft(has)150 2624 y(a)g(v)-5 b(alue)30
+b(If)30 b Fs(IFS)g Ft(has)150 5121 y(a)g(v)-5 b(alue)30
b(other)g(than)g(the)g(default,)g(then)f(sequences)h(of)g(the)g
(whitespace)g(c)m(haracters)h Fs(space)e Ft(and)g Fs(tab)150
-2733 y Ft(are)36 b(ignored)g(at)g(the)g(b)s(eginning)f(and)g(end)g(of)h
+5230 y Ft(are)36 b(ignored)g(at)g(the)g(b)s(eginning)f(and)g(end)g(of)h
(the)g(w)m(ord,)h(as)f(long)g(as)g(the)g(whitespace)h(c)m(haracter)g
-(is)150 2843 y(in)f(the)g(v)-5 b(alue)36 b(of)g Fs(IFS)f
+(is)150 5340 y(in)f(the)g(v)-5 b(alue)36 b(of)g Fs(IFS)f
Ft(\(an)h Fs(IFS)f Ft(whitespace)h(c)m(haracter\).)60
b(An)m(y)35 b(c)m(haracter)j(in)d Fs(IFS)g Ft(that)i(is)f(not)g
-Fs(IFS)150 2953 y Ft(whitespace,)27 b(along)f(with)f(an)m(y)g(adjacen)m
-(t)h Fs(IFS)e Ft(whitespace)i(c)m(haracters,)i(delimits)e(a)f(\014eld.)
-38 b(A)26 b(sequence)150 3062 y(of)35 b Fs(IFS)f Ft(whitespace)h(c)m
+Fs(IFS)p eop end
+%%Page: 29 35
+TeXDict begin 29 34 bop 150 -116 a Ft(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(29)150 299
+y(whitespace,)27 b(along)f(with)f(an)m(y)g(adjacen)m(t)h
+Fs(IFS)e Ft(whitespace)i(c)m(haracters,)i(delimits)e(a)f(\014eld.)38
+b(A)26 b(sequence)150 408 y(of)35 b Fs(IFS)f Ft(whitespace)h(c)m
(haracters)i(is)d(also)i(treated)g(as)f(a)g(delimiter.)55
b(If)34 b(the)h(v)-5 b(alue)35 b(of)g Fs(IFS)f Ft(is)h(n)m(ull,)h(no)
-150 3172 y(w)m(ord)30 b(splitting)h(o)s(ccurs.)275 3305
+150 518 y(w)m(ord)30 b(splitting)h(o)s(ccurs.)275 648
y(Explicit)44 b(n)m(ull)f(argumen)m(ts)g(\()p Fs("")g
Ft(or)h Fs('')p Ft(\))f(are)g(retained.)80 b(Unquoted)43
-b(implicit)h(n)m(ull)f(argumen)m(ts,)150 3415 y(resulting)24
+b(implicit)h(n)m(ull)f(argumen)m(ts,)150 758 y(resulting)24
b(from)f(the)g(expansion)g(of)h(parameters)g(that)g(ha)m(v)m(e)h(no)e
(v)-5 b(alues,)25 b(are)f(remo)m(v)m(ed.)40 b(If)23 b(a)g(parameter)150
-3524 y(with)30 b(no)g(v)-5 b(alue)31 b(is)g(expanded)e(within)h(double)
-g(quotes,)h(a)g(n)m(ull)f(argumen)m(t)h(results)f(and)g(is)g(retained.)
-275 3658 y(Note)h(that)g(if)g(no)f(expansion)g(o)s(ccurs,)g(no)h
-(splitting)g(is)f(p)s(erformed.)150 3854 y Fj(3.5.8)63
-b(Filename)41 b(Expansion)150 4001 y Ft(After)26 b(w)m(ord)g
+867 y(with)30 b(no)g(v)-5 b(alue)31 b(is)g(expanded)e(within)h(double)g
+(quotes,)h(a)g(n)m(ull)f(argumen)m(t)h(results)f(and)g(is)g(retained.)
+275 997 y(Note)h(that)g(if)g(no)f(expansion)g(o)s(ccurs,)g(no)h
+(splitting)g(is)f(p)s(erformed.)150 1187 y Fj(3.5.8)63
+b(Filename)41 b(Expansion)150 1334 y Ft(After)26 b(w)m(ord)g
(splitting,)i(unless)d(the)i(`)p Fs(-f)p Ft(')f(option)g(has)g(b)s(een)
f(set)i(\(see)g(Section)g(4.3.1)h([The)e(Set)g(Builtin],)150
-4111 y(page)h(54\),)i(Bash)d(scans)h(eac)m(h)h(w)m(ord)e(for)g(the)h(c)
+1444 y(page)h(58\),)i(Bash)d(scans)h(eac)m(h)h(w)m(ord)e(for)g(the)h(c)
m(haracters)g(`)p Fs(*)p Ft(',)h(`)p Fs(?)p Ft(',)g(and)e(`)p
Fs([)p Ft('.)39 b(If)26 b(one)h(of)g(these)f(c)m(haracters)150
-4220 y(app)s(ears,)h(then)f(the)h(w)m(ord)f(is)h(regarded)g(as)g(a)g
+1553 y(app)s(ears,)h(then)f(the)h(w)m(ord)f(is)h(regarded)g(as)g(a)g
Fq(pattern)p Ft(,)g(and)g(replaced)g(with)f(an)h(alphab)s(etically)h
-(sorted)150 4330 y(list)k(of)f(\014lenames)g(matc)m(hing)h(the)f
+(sorted)150 1663 y(list)k(of)f(\014lenames)g(matc)m(hing)h(the)f
(pattern)g(\(see)h(Section)f(3.5.8.1)j([P)m(attern)e(Matc)m(hing],)h
-(page)f(27\).)43 b(If)150 4440 y(no)26 b(matc)m(hing)i(\014lenames)e
+(page)f(29\).)43 b(If)150 1772 y(no)26 b(matc)m(hing)i(\014lenames)e
(are)h(found,)f(and)g(the)h(shell)f(option)h Fs(nullglob)d
-Ft(is)j(disabled,)g(the)g(w)m(ord)f(is)g(left)150 4549
+Ft(is)j(disabled,)g(the)g(w)m(ord)f(is)g(left)150 1882
y(unc)m(hanged.)40 b(If)30 b(the)g Fs(nullglob)e Ft(option)i(is)h(set,)
f(and)g(no)g(matc)m(hes)h(are)g(found,)e(the)h(w)m(ord)g(is)g(remo)m(v)
-m(ed.)150 4659 y(If)i(the)g Fs(failglob)e Ft(shell)i(option)h(is)f
+m(ed.)150 1991 y(If)i(the)g Fs(failglob)e Ft(shell)i(option)h(is)f
(set,)h(and)f(no)g(matc)m(hes)h(are)g(found,)e(an)h(error)g(message)h
-(is)f(prin)m(ted)150 4768 y(and)e(the)g(command)g(is)h(not)f(executed.)
+(is)f(prin)m(ted)150 2101 y(and)e(the)g(command)g(is)h(not)f(executed.)
42 b(If)30 b(the)g(shell)h(option)g Fs(nocaseglob)c Ft(is)k(enabled,)f
-(the)h(matc)m(h)g(is)150 4878 y(p)s(erformed)e(without)h(regard)h(to)g
+(the)h(matc)m(h)g(is)150 2211 y(p)s(erformed)e(without)h(regard)h(to)g
(the)f(case)i(of)e(alphab)s(etic)h(c)m(haracters.)275
-5011 y(When)23 b(a)h(pattern)f(is)h(used)f(for)g(\014lename)h
+2341 y(When)23 b(a)h(pattern)f(is)h(used)f(for)g(\014lename)h
(expansion,)h(the)e(c)m(haracter)i(`)p Fs(.)p Ft(')f(at)g(the)g(start)g
-(of)g(a)g(\014lename)150 5121 y(or)f(immediately)i(follo)m(wing)g(a)f
+(of)g(a)g(\014lename)150 2450 y(or)f(immediately)i(follo)m(wing)g(a)f
(slash)f(m)m(ust)h(b)s(e)f(matc)m(hed)h(explicitly)-8
b(,)27 b(unless)c(the)g(shell)h(option)g Fs(dotglob)150
-5230 y Ft(is)33 b(set.)51 b(When)33 b(matc)m(hing)h(a)g(\014lename,)h
+2560 y Ft(is)33 b(set.)51 b(When)33 b(matc)m(hing)h(a)g(\014lename,)h
(the)e(slash)h(c)m(haracter)h(m)m(ust)e(alw)m(a)m(ys)i(b)s(e)e(matc)m
-(hed)h(explicitly)-8 b(.)150 5340 y(In)30 b(other)g(cases,)i(the)e(`)p
+(hed)h(explicitly)-8 b(.)150 2669 y(In)30 b(other)g(cases,)i(the)e(`)p
Fs(.)p Ft(')h(c)m(haracter)h(is)e(not)h(treated)g(sp)s(ecially)-8
-b(.)p eop end
-%%Page: 27 33
-TeXDict begin 27 32 bop 150 -116 a Ft(Chapter)30 b(3:)41
-b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(27)275 299
-y(See)28 b(the)g(description)g(of)g Fs(shopt)e Ft(in)i(Section)g(4.3.2)
-i([The)e(Shopt)f(Builtin],)i(page)g(58,)g(for)f(a)g(descrip-)150
-408 y(tion)j(of)f(the)h Fs(nocaseglob)p Ft(,)d Fs(nullglob)p
-Ft(,)g Fs(failglob)p Ft(,)h(and)g Fs(dotglob)g Ft(options.)275
-536 y(The)j Fs(GLOBIGNORE)f Ft(shell)i(v)-5 b(ariable)34
-b(ma)m(y)g(b)s(e)f(used)f(to)i(restrict)g(the)g(set)f(of)h(\014lenames)
-f(matc)m(hing)i(a)150 646 y(pattern.)k(If)25 b Fs(GLOBIGNORE)e
-Ft(is)j(set,)h(eac)m(h)g(matc)m(hing)g(\014lename)f(that)g(also)h(matc)
-m(hes)f(one)g(of)g(the)g(patterns)150 755 y(in)33 b Fs(GLOBIGNORE)d
-Ft(is)j(remo)m(v)m(ed)h(from)e(the)i(list)f(of)g(matc)m(hes.)50
-b(The)33 b(\014lenames)g(`)p Fs(.)p Ft(')g(and)f(`)p
-Fs(..)p Ft(')h(are)g(alw)m(a)m(ys)150 865 y(ignored)g(when)e
-Fs(GLOBIGNORE)f Ft(is)j(set)g(and)f(not)h(n)m(ull.)48
-b(Ho)m(w)m(ev)m(er,)35 b(setting)f Fs(GLOBIGNORE)c Ft(to)j(a)g(non-n)m
-(ull)150 974 y(v)-5 b(alue)34 b(has)f(the)h(e\013ect)h(of)f(enabling)g
-(the)g Fs(dotglob)e Ft(shell)h(option,)j(so)e(all)g(other)g
-(\014lenames)g(b)s(eginning)150 1084 y(with)43 b(a)h(`)p
-Fs(.)p Ft(')f(will)h(matc)m(h.)80 b(T)-8 b(o)44 b(get)h(the)e(old)h(b)s
-(eha)m(vior)f(of)h(ignoring)f(\014lenames)h(b)s(eginning)f(with)g(a)150
-1194 y(`)p Fs(.)p Ft(',)c(mak)m(e)g(`)p Fs(.*)p Ft(')e(one)g(of)g(the)h
-(patterns)f(in)g Fs(GLOBIGNORE)p Ft(.)58 b(The)37 b Fs(dotglob)e
-Ft(option)j(is)f(disabled)g(when)150 1303 y Fs(GLOBIGNORE)28
-b Ft(is)i(unset.)150 1489 y Fj(3.5.8.1)63 b(P)m(attern)40
-b(Matc)m(hing)150 1635 y Ft(An)m(y)24 b(c)m(haracter)h(that)f(app)s
-(ears)f(in)g(a)h(pattern,)i(other)e(than)f(the)h(sp)s(ecial)g(pattern)g
-(c)m(haracters)h(describ)s(ed)150 1745 y(b)s(elo)m(w,)31
-b(matc)m(hes)g(itself.)42 b(The)29 b Fl(nul)h Ft(c)m(haracter)i(ma)m(y)
-e(not)h(o)s(ccur)f(in)g(a)h(pattern.)40 b(A)31 b(bac)m(kslash)g(escap)s
-(es)150 1855 y(the)38 b(follo)m(wing)g(c)m(haracter;)43
-b(the)37 b(escaping)i(bac)m(kslash)e(is)h(discarded)f(when)f(matc)m
-(hing.)63 b(The)36 b(sp)s(ecial)150 1964 y(pattern)30
-b(c)m(haracters)i(m)m(ust)f(b)s(e)e(quoted)i(if)f(they)h(are)f(to)i(b)s
-(e)d(matc)m(hed)i(literally)-8 b(.)275 2092 y(The)29
-b(sp)s(ecial)i(pattern)g(c)m(haracters)h(ha)m(v)m(e)f(the)g(follo)m
-(wing)h(meanings:)150 2237 y Fs(*)432 b Ft(Matc)m(hes)31
-b(an)m(y)e(string,)h(including)f(the)g(n)m(ull)g(string.)41
-b(When)29 b(the)g Fs(globstar)e Ft(shell)i(option)630
-2347 y(is)37 b(enabled,)h(and)e(`)p Fs(*)p Ft(')h(is)g(used)f(in)g(a)h
+b(.)275 2799 y(See)28 b(the)g(description)g(of)g Fs(shopt)e
+Ft(in)i(Section)g(4.3.2)i([The)e(Shopt)f(Builtin],)i(page)g(62,)g(for)f
+(a)g(descrip-)150 2909 y(tion)j(of)f(the)h Fs(nocaseglob)p
+Ft(,)d Fs(nullglob)p Ft(,)g Fs(failglob)p Ft(,)h(and)g
+Fs(dotglob)g Ft(options.)275 3039 y(The)j Fs(GLOBIGNORE)f
+Ft(shell)i(v)-5 b(ariable)34 b(ma)m(y)g(b)s(e)f(used)f(to)i(restrict)g
+(the)g(set)f(of)h(\014lenames)f(matc)m(hing)i(a)150 3148
+y(pattern.)k(If)25 b Fs(GLOBIGNORE)e Ft(is)j(set,)h(eac)m(h)g(matc)m
+(hing)g(\014lename)f(that)g(also)h(matc)m(hes)f(one)g(of)g(the)g
+(patterns)150 3258 y(in)33 b Fs(GLOBIGNORE)d Ft(is)j(remo)m(v)m(ed)h
+(from)e(the)i(list)f(of)g(matc)m(hes.)50 b(The)33 b(\014lenames)g(`)p
+Fs(.)p Ft(')g(and)f(`)p Fs(..)p Ft(')h(are)g(alw)m(a)m(ys)150
+3367 y(ignored)g(when)e Fs(GLOBIGNORE)f Ft(is)j(set)g(and)f(not)h(n)m
+(ull.)48 b(Ho)m(w)m(ev)m(er,)35 b(setting)f Fs(GLOBIGNORE)c
+Ft(to)j(a)g(non-n)m(ull)150 3477 y(v)-5 b(alue)34 b(has)f(the)h
+(e\013ect)h(of)f(enabling)g(the)g Fs(dotglob)e Ft(shell)h(option,)j(so)
+e(all)g(other)g(\014lenames)g(b)s(eginning)150 3587 y(with)43
+b(a)h(`)p Fs(.)p Ft(')f(will)h(matc)m(h.)80 b(T)-8 b(o)44
+b(get)h(the)e(old)h(b)s(eha)m(vior)f(of)h(ignoring)f(\014lenames)h(b)s
+(eginning)f(with)g(a)150 3696 y(`)p Fs(.)p Ft(',)c(mak)m(e)g(`)p
+Fs(.*)p Ft(')e(one)g(of)g(the)h(patterns)f(in)g Fs(GLOBIGNORE)p
+Ft(.)58 b(The)37 b Fs(dotglob)e Ft(option)j(is)f(disabled)g(when)150
+3806 y Fs(GLOBIGNORE)28 b Ft(is)i(unset.)150 3996 y Fj(3.5.8.1)63
+b(P)m(attern)40 b(Matc)m(hing)150 4143 y Ft(An)m(y)24
+b(c)m(haracter)h(that)f(app)s(ears)f(in)g(a)h(pattern,)i(other)e(than)f
+(the)h(sp)s(ecial)g(pattern)g(c)m(haracters)h(describ)s(ed)150
+4252 y(b)s(elo)m(w,)31 b(matc)m(hes)g(itself.)42 b(The)29
+b Fl(nul)h Ft(c)m(haracter)i(ma)m(y)e(not)h(o)s(ccur)f(in)g(a)h
+(pattern.)40 b(A)31 b(bac)m(kslash)g(escap)s(es)150 4362
+y(the)38 b(follo)m(wing)g(c)m(haracter;)43 b(the)37 b(escaping)i(bac)m
+(kslash)e(is)h(discarded)f(when)f(matc)m(hing.)63 b(The)36
+b(sp)s(ecial)150 4471 y(pattern)30 b(c)m(haracters)i(m)m(ust)f(b)s(e)e
+(quoted)i(if)f(they)h(are)f(to)i(b)s(e)d(matc)m(hed)i(literally)-8
+b(.)275 4601 y(The)29 b(sp)s(ecial)i(pattern)g(c)m(haracters)h(ha)m(v)m
+(e)f(the)g(follo)m(wing)h(meanings:)150 4751 y Fs(*)432
+b Ft(Matc)m(hes)31 b(an)m(y)e(string,)h(including)f(the)g(n)m(ull)g
+(string.)41 b(When)29 b(the)g Fs(globstar)e Ft(shell)i(option)630
+4861 y(is)37 b(enabled,)h(and)e(`)p Fs(*)p Ft(')h(is)g(used)f(in)g(a)h
(\014lename)g(expansion)g(con)m(text,)j(t)m(w)m(o)e(adjacen)m(t)g(`)p
-Fs(*)p Ft('s)630 2457 y(used)f(as)g(a)h(single)g(pattern)g(will)f(matc)
+Fs(*)p Ft('s)630 4971 y(used)f(as)g(a)h(single)g(pattern)g(will)f(matc)
m(h)i(all)f(\014les)f(and)g(zero)h(or)g(more)f(directories)i(and)630
-2566 y(sub)s(directories.)g(If)25 b(follo)m(w)m(ed)j(b)m(y)e(a)g(`)p
+5080 y(sub)s(directories.)g(If)25 b(follo)m(w)m(ed)j(b)m(y)e(a)g(`)p
Fs(/)p Ft(',)h(t)m(w)m(o)g(adjacen)m(t)h(`)p Fs(*)p Ft('s)e(will)g
-(matc)m(h)h(only)f(directories)630 2676 y(and)k(sub)s(directories.)150
-2821 y Fs(?)432 b Ft(Matc)m(hes)32 b(an)m(y)f(single)g(c)m(haracter.)
-150 2967 y Fs([...)o(])241 b Ft(Matc)m(hes)27 b(an)m(y)e(one)g(of)g
-(the)g(enclosed)g(c)m(haracters.)41 b(A)25 b(pair)f(of)h(c)m(haracters)
-i(separated)e(b)m(y)g(a)630 3076 y(h)m(yphen)i(denotes)h(a)g
-Fq(range)g(expression)p Ft(;)g(an)m(y)h(c)m(haracter)g(that)f(sorts)g
-(b)s(et)m(w)m(een)g(those)h(t)m(w)m(o)630 3186 y(c)m(haracters,)f
-(inclusiv)m(e,)f(using)d(the)h(curren)m(t)f(lo)s(cale's)j(collating)g
-(sequence)e(and)f(c)m(haracter)630 3295 y(set,)31 b(is)f(matc)m(hed.)42
-b(If)30 b(the)g(\014rst)g(c)m(haracter)i(follo)m(wing)g(the)e(`)p
-Fs([)p Ft(')h(is)f(a)h(`)p Fs(!)p Ft(')f(or)g(a)h(`)p
-Fs(^)p Ft(')g(then)f(an)m(y)630 3405 y(c)m(haracter)c(not)f(enclosed)g
-(is)g(matc)m(hed.)40 b(A)25 b(`)p Fp(\000)p Ft(')f(ma)m(y)i(b)s(e)e
-(matc)m(hed)h(b)m(y)f(including)h(it)g(as)g(the)630 3515
-y(\014rst)32 b(or)h(last)h(c)m(haracter)h(in)e(the)g(set.)50
-b(A)33 b(`)p Fs(])p Ft(')g(ma)m(y)h(b)s(e)e(matc)m(hed)i(b)m(y)f
-(including)g(it)g(as)h(the)630 3624 y(\014rst)25 b(c)m(haracter)i(in)e
-(the)h(set.)40 b(The)25 b(sorting)h(order)f(of)h(c)m(haracters)h(in)f
-(range)g(expressions)f(is)630 3734 y(determined)h(b)m(y)h(the)g(curren)
-m(t)f(lo)s(cale)j(and)d(the)h(v)-5 b(alues)27 b(of)g(the)g
-Fs(LC_COLLATE)d Ft(and)i Fs(LC_ALL)630 3843 y Ft(shell)31
-b(v)-5 b(ariables,)31 b(if)f(set.)630 3971 y(F)-8 b(or)34
+(matc)m(h)h(only)f(directories)630 5190 y(and)k(sub)s(directories.)150
+5340 y Fs(?)432 b Ft(Matc)m(hes)32 b(an)m(y)f(single)g(c)m(haracter.)p
+eop end
+%%Page: 30 36
+TeXDict begin 30 35 bop 150 -116 a Ft(30)2572 b(Bash)31
+b(Reference)g(Man)m(ual)150 299 y Fs([...)o(])241 b Ft(Matc)m(hes)27
+b(an)m(y)e(one)g(of)g(the)g(enclosed)g(c)m(haracters.)41
+b(A)25 b(pair)f(of)h(c)m(haracters)i(separated)e(b)m(y)g(a)630
+408 y(h)m(yphen)i(denotes)h(a)g Fq(range)g(expression)p
+Ft(;)g(an)m(y)h(c)m(haracter)g(that)f(sorts)g(b)s(et)m(w)m(een)g(those)
+h(t)m(w)m(o)630 518 y(c)m(haracters,)f(inclusiv)m(e,)f(using)d(the)h
+(curren)m(t)f(lo)s(cale's)j(collating)g(sequence)e(and)f(c)m(haracter)
+630 628 y(set,)31 b(is)f(matc)m(hed.)42 b(If)30 b(the)g(\014rst)g(c)m
+(haracter)i(follo)m(wing)g(the)e(`)p Fs([)p Ft(')h(is)f(a)h(`)p
+Fs(!)p Ft(')f(or)g(a)h(`)p Fs(^)p Ft(')g(then)f(an)m(y)630
+737 y(c)m(haracter)c(not)f(enclosed)g(is)g(matc)m(hed.)40
+b(A)25 b(`)p Fp(\000)p Ft(')f(ma)m(y)i(b)s(e)e(matc)m(hed)h(b)m(y)f
+(including)h(it)g(as)g(the)630 847 y(\014rst)32 b(or)h(last)h(c)m
+(haracter)h(in)e(the)g(set.)50 b(A)33 b(`)p Fs(])p Ft(')g(ma)m(y)h(b)s
+(e)e(matc)m(hed)i(b)m(y)f(including)g(it)g(as)h(the)630
+956 y(\014rst)25 b(c)m(haracter)i(in)e(the)h(set.)40
+b(The)25 b(sorting)h(order)f(of)h(c)m(haracters)h(in)f(range)g
+(expressions)f(is)630 1066 y(determined)h(b)m(y)h(the)g(curren)m(t)f
+(lo)s(cale)j(and)d(the)h(v)-5 b(alues)27 b(of)g(the)g
+Fs(LC_COLLATE)d Ft(and)i Fs(LC_ALL)630 1176 y Ft(shell)31
+b(v)-5 b(ariables,)31 b(if)f(set.)630 1303 y(F)-8 b(or)34
b(example,)g(in)f(the)g(default)g(C)f(lo)s(cale,)k(`)p
Fs([a-dx-z])p Ft(')31 b(is)i(equiv)-5 b(alen)m(t)34 b(to)g(`)p
-Fs([abcdxyz])p Ft('.)630 4081 y(Man)m(y)68 b(lo)s(cales)h(sort)f(c)m
+Fs([abcdxyz])p Ft('.)630 1413 y(Man)m(y)68 b(lo)s(cales)h(sort)f(c)m
(haracters)h(in)e(dictionary)i(order,)76 b(and)67 b(in)g(these)h(lo)s
-(cales)630 4190 y(`)p Fs([a-dx-z])p Ft(')36 b(is)i(t)m(ypically)i(not)e
+(cales)630 1522 y(`)p Fs([a-dx-z])p Ft(')36 b(is)i(t)m(ypically)i(not)e
(equiv)-5 b(alen)m(t)39 b(to)g(`)p Fs([abcdxyz])p Ft(';)g(it)g(migh)m
-(t)f(b)s(e)f(equiv)-5 b(alen)m(t)630 4300 y(to)34 b(`)p
+(t)f(b)s(e)f(equiv)-5 b(alen)m(t)630 1632 y(to)34 b(`)p
Fs([aBbCcDdxXyYz])p Ft(',)c(for)j(example.)49 b(T)-8
b(o)33 b(obtain)h(the)f(traditional)h(in)m(terpretation)h(of)630
-4409 y(ranges)e(in)f(brac)m(k)m(et)i(expressions,)g(y)m(ou)f(can)g
+1742 y(ranges)e(in)f(brac)m(k)m(et)i(expressions,)g(y)m(ou)f(can)g
(force)g(the)g(use)f(of)h(the)g(C)f(lo)s(cale)i(b)m(y)f(setting)630
-4519 y(the)c Fs(LC_COLLATE)e Ft(or)i Fs(LC_ALL)f Ft(en)m(vironmen)m(t)i
+1851 y(the)c Fs(LC_COLLATE)e Ft(or)i Fs(LC_ALL)f Ft(en)m(vironmen)m(t)i
(v)-5 b(ariable)30 b(to)g(the)f(v)-5 b(alue)30 b(`)p
-Fs(C)p Ft(',)g(or)f(enable)h(the)630 4629 y Fs(globasciiranges)c
-Ft(shell)31 b(option.)630 4756 y(Within)23 b(`)p Fs([)p
+Fs(C)p Ft(',)g(or)f(enable)h(the)630 1961 y Fs(globasciiranges)c
+Ft(shell)31 b(option.)630 2088 y(Within)23 b(`)p Fs([)p
Ft(')h(and)e(`)p Fs(])p Ft(',)j Fq(c)m(haracter)g(classes)j
Ft(can)c(b)s(e)e(sp)s(eci\014ed)h(using)f(the)i(syn)m(tax)f
-Fs([:)p Fq(class)t Fs(:])p Ft(,)630 4866 y(where)30 b
+Fs([:)p Fq(class)t Fs(:])p Ft(,)630 2198 y(where)30 b
Fq(class)35 b Ft(is)30 b(one)h(of)f(the)h(follo)m(wing)h(classes)f
-(de\014ned)e(in)h(the)h Fl(posix)f Ft(standard:)870 4993
+(de\014ned)e(in)h(the)h Fl(posix)f Ft(standard:)870 2326
y Fs(alnum)142 b(alpha)g(ascii)f(blank)h(cntrl)g(digit)g(graph)g(lower)
-870 5103 y(print)g(punct)g(space)f(upper)h(word)190 b(xdigit)630
-5230 y Ft(A)42 b(c)m(haracter)h(class)f(matc)m(hes)h(an)m(y)f(c)m
+870 2435 y(print)g(punct)g(space)f(upper)h(word)190 b(xdigit)630
+2563 y Ft(A)42 b(c)m(haracter)h(class)f(matc)m(hes)h(an)m(y)f(c)m
(haracter)h(b)s(elonging)f(to)g(that)g(class.)75 b(The)41
-b Fs(word)630 5340 y Ft(c)m(haracter)32 b(class)f(matc)m(hes)h
+b Fs(word)630 2672 y Ft(c)m(haracter)32 b(class)f(matc)m(hes)h
(letters,)f(digits,)h(and)d(the)i(c)m(haracter)h(`)p
-Fs(_)p Ft('.)p eop end
-%%Page: 28 34
-TeXDict begin 28 33 bop 150 -116 a Ft(28)2572 b(Bash)31
-b(Reference)g(Man)m(ual)630 299 y(Within)25 b(`)p Fs([)p
-Ft(')f(and)g(`)p Fs(])p Ft(',)i(an)e Fq(equiv)-5 b(alence)26
-b(class)j Ft(can)24 b(b)s(e)g(sp)s(eci\014ed)g(using)g(the)g(syn)m(tax)
-h Fs([=)p Fq(c)6 b Fs(=])p Ft(,)630 408 y(whic)m(h)29
+Fs(_)p Ft('.)630 2800 y(Within)25 b(`)p Fs([)p Ft(')f(and)g(`)p
+Fs(])p Ft(',)i(an)e Fq(equiv)-5 b(alence)26 b(class)j
+Ft(can)24 b(b)s(e)g(sp)s(eci\014ed)g(using)g(the)g(syn)m(tax)h
+Fs([=)p Fq(c)6 b Fs(=])p Ft(,)630 2910 y(whic)m(h)29
b(matc)m(hes)i(all)f(c)m(haracters)h(with)e(the)h(same)g(collation)h(w)
-m(eigh)m(t)g(\(as)f(de\014ned)e(b)m(y)i(the)630 518 y(curren)m(t)g(lo)s
-(cale\))j(as)d(the)h(c)m(haracter)h Fq(c)6 b Ft(.)630
-655 y(Within)21 b(`)p Fs([)p Ft(')h(and)e(`)p Fs(])p
-Ft(',)j(the)f(syn)m(tax)f Fs([.)p Fq(sym)m(b)s(ol)t Fs(.])f
-Ft(matc)m(hes)i(the)f(collating)j(sym)m(b)s(ol)c Fq(sym)m(b)s(ol)t
-Ft(.)275 823 y(If)29 b(the)g Fs(extglob)f Ft(shell)h(option)h(is)g
-(enabled)f(using)g(the)h Fs(shopt)e Ft(builtin,)h(sev)m(eral)i
-(extended)f(pattern)150 932 y(matc)m(hing)37 b(op)s(erators)e(are)h
-(recognized.)58 b(In)35 b(the)g(follo)m(wing)i(description,)g(a)f
-Fq(pattern-list)j Ft(is)d(a)g(list)g(of)150 1042 y(one)d(or)f(more)h
-(patterns)f(separated)h(b)m(y)f(a)h(`)p Fs(|)p Ft('.)47
-b(Comp)s(osite)33 b(patterns)f(ma)m(y)i(b)s(e)d(formed)h(using)g(one)h
-(or)150 1151 y(more)e(of)f(the)h(follo)m(wing)g(sub-patterns:)150
-1319 y Fs(?\()p Fi(pattern-list)11 b Fs(\))630 1428 y
+m(eigh)m(t)g(\(as)f(de\014ned)e(b)m(y)i(the)630 3019
+y(curren)m(t)g(lo)s(cale\))j(as)d(the)h(c)m(haracter)h
+Fq(c)6 b Ft(.)630 3147 y(Within)21 b(`)p Fs([)p Ft(')h(and)e(`)p
+Fs(])p Ft(',)j(the)f(syn)m(tax)f Fs([.)p Fq(sym)m(b)s(ol)t
+Fs(.])f Ft(matc)m(hes)i(the)f(collating)j(sym)m(b)s(ol)c
+Fq(sym)m(b)s(ol)t Ft(.)275 3293 y(If)29 b(the)g Fs(extglob)f
+Ft(shell)h(option)h(is)g(enabled)f(using)g(the)h Fs(shopt)e
+Ft(builtin,)h(sev)m(eral)i(extended)f(pattern)150 3402
+y(matc)m(hing)37 b(op)s(erators)e(are)h(recognized.)58
+b(In)35 b(the)g(follo)m(wing)i(description,)g(a)f Fq(pattern-list)j
+Ft(is)d(a)g(list)g(of)150 3512 y(one)d(or)f(more)h(patterns)f
+(separated)h(b)m(y)f(a)h(`)p Fs(|)p Ft('.)47 b(Comp)s(osite)33
+b(patterns)f(ma)m(y)i(b)s(e)d(formed)h(using)g(one)h(or)150
+3621 y(more)e(of)f(the)h(follo)m(wing)g(sub-patterns:)150
+3767 y Fs(?\()p Fi(pattern-list)11 b Fs(\))630 3877 y
Ft(Matc)m(hes)32 b(zero)f(or)g(one)f(o)s(ccurrence)h(of)f(the)h(giv)m
-(en)g(patterns.)150 1593 y Fs(*\()p Fi(pattern-list)11
-b Fs(\))630 1703 y Ft(Matc)m(hes)32 b(zero)f(or)g(more)f(o)s
-(ccurrences)h(of)f(the)h(giv)m(en)g(patterns.)150 1867
-y Fs(+\()p Fi(pattern-list)11 b Fs(\))630 1977 y Ft(Matc)m(hes)32
+(en)g(patterns.)150 4022 y Fs(*\()p Fi(pattern-list)11
+b Fs(\))630 4132 y Ft(Matc)m(hes)32 b(zero)f(or)g(more)f(o)s
+(ccurrences)h(of)f(the)h(giv)m(en)g(patterns.)150 4278
+y Fs(+\()p Fi(pattern-list)11 b Fs(\))630 4387 y Ft(Matc)m(hes)32
b(one)f(or)f(more)h(o)s(ccurrences)f(of)h(the)f(giv)m(en)i(patterns.)
-150 2142 y Fs(@\()p Fi(pattern-list)11 b Fs(\))630 2251
+150 4533 y Fs(@\()p Fi(pattern-list)11 b Fs(\))630 4643
y Ft(Matc)m(hes)32 b(one)f(of)f(the)h(giv)m(en)g(patterns.)150
-2416 y Fs(!\()p Fi(pattern-list)11 b Fs(\))630 2525 y
+4788 y Fs(!\()p Fi(pattern-list)11 b Fs(\))630 4898 y
Ft(Matc)m(hes)32 b(an)m(ything)f(except)g(one)g(of)f(the)h(giv)m(en)g
-(patterns.)150 2730 y Fj(3.5.9)63 b(Quote)41 b(Remo)m(v)-7
-b(al)150 2877 y Ft(After)32 b(the)g(preceding)g(expansions,)h(all)f
+(patterns.)150 5083 y Fj(3.5.9)63 b(Quote)41 b(Remo)m(v)-7
+b(al)150 5230 y Ft(After)32 b(the)g(preceding)g(expansions,)h(all)f
(unquoted)f(o)s(ccurrences)h(of)g(the)h(c)m(haracters)g(`)p
Fs(\\)p Ft(',)g(`)p Fs(')p Ft(',)f(and)g(`)p Fs(")p Ft(')150
-2987 y(that)f(did)f(not)g(result)g(from)g(one)h(of)g(the)f(ab)s(o)m(v)m
-(e)i(expansions)e(are)h(remo)m(v)m(ed.)150 3227 y Fr(3.6)68
-b(Redirections)150 3386 y Ft(Before)32 b(a)f(command)f(is)h(executed,)h
-(its)f(input)e(and)h(output)h(ma)m(y)g(b)s(e)f Fq(redirected)k
-Ft(using)c(a)i(sp)s(ecial)f(no-)150 3496 y(tation)d(in)m(terpreted)f(b)
-m(y)f(the)h(shell.)40 b(Redirection)27 b(allo)m(ws)h(commands')f
-(\014le)f(handles)g(to)i(b)s(e)e(duplicated,)150 3606
-y(op)s(ened,)i(closed,)i(made)e(to)h(refer)f(to)h(di\013eren)m(t)f
-(\014les,)h(and)f(can)g(c)m(hange)h(the)g(\014les)f(the)g(command)g
-(reads)150 3715 y(from)39 b(and)g(writes)h(to.)69 b(Redirection)40
+5340 y(that)f(did)f(not)g(result)g(from)g(one)h(of)g(the)f(ab)s(o)m(v)m
+(e)i(expansions)e(are)h(remo)m(v)m(ed.)p eop end
+%%Page: 31 37
+TeXDict begin 31 36 bop 150 -116 a Ft(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(31)150 299
+y Fr(3.6)68 b(Redirections)150 458 y Ft(Before)32 b(a)f(command)f(is)h
+(executed,)h(its)f(input)e(and)h(output)h(ma)m(y)g(b)s(e)f
+Fq(redirected)k Ft(using)c(a)i(sp)s(ecial)f(no-)150 568
+y(tation)d(in)m(terpreted)f(b)m(y)f(the)h(shell.)40 b(Redirection)27
+b(allo)m(ws)h(commands')f(\014le)f(handles)g(to)i(b)s(e)e(duplicated,)
+150 677 y(op)s(ened,)i(closed,)i(made)e(to)h(refer)f(to)h(di\013eren)m
+(t)f(\014les,)h(and)f(can)g(c)m(hange)h(the)g(\014les)f(the)g(command)g
+(reads)150 787 y(from)39 b(and)g(writes)h(to.)69 b(Redirection)40
b(ma)m(y)g(also)h(b)s(e)e(used)g(to)h(mo)s(dify)f(\014le)g(handles)g
-(in)g(the)h(curren)m(t)150 3825 y(shell)e(execution)h(en)m(vironmen)m
+(in)g(the)h(curren)m(t)150 897 y(shell)e(execution)h(en)m(vironmen)m
(t.)65 b(The)37 b(follo)m(wing)j(redirection)f(op)s(erators)f(ma)m(y)g
-(precede)h(or)f(app)s(ear)150 3934 y(an)m(ywhere)30 b(within)f(a)h
+(precede)h(or)f(app)s(ear)150 1006 y(an)m(ywhere)30 b(within)f(a)h
(simple)f(command)h(or)f(ma)m(y)i(follo)m(w)g(a)f(command.)40
-b(Redirections)30 b(are)g(pro)s(cessed)150 4044 y(in)g(the)h(order)f
+b(Redirections)30 b(are)g(pro)s(cessed)150 1116 y(in)g(the)h(order)f
(they)g(app)s(ear,)g(from)g(left)h(to)g(righ)m(t.)275
-4184 y(Eac)m(h)45 b(redirection)h(that)f(ma)m(y)h(b)s(e)e(preceded)g(b)
+1260 y(Eac)m(h)45 b(redirection)h(that)f(ma)m(y)h(b)s(e)e(preceded)g(b)
m(y)h(a)h(\014le)f(descriptor)f(n)m(um)m(b)s(er)g(ma)m(y)h(instead)h(b)
-s(e)150 4293 y(preceded)41 b(b)m(y)g(a)g(w)m(ord)g(of)g(the)g(form)g
+s(e)150 1369 y(preceded)41 b(b)m(y)g(a)g(w)m(ord)g(of)g(the)g(form)g
Fs({)p Fq(v)-5 b(arname)5 b Fs(})p Ft(.)72 b(In)40 b(this)h(case,)k
-(for)c(eac)m(h)h(redirection)g(op)s(erator)150 4403 y(except)30
+(for)c(eac)m(h)h(redirection)g(op)s(erator)150 1479 y(except)30
b Fs(>)p Ft(&-)f(and)f Fs(<)p Ft(&-,)h(the)g(shell)g(will)h(allo)s
(cate)h(a)e(\014le)h(descriptor)e(greater)j(than)d(10)i(and)e(assign)i
-(it)f(to)150 4512 y Fs({)p Fq(v)-5 b(arname)5 b Fs(})p
+(it)f(to)150 1588 y Fs({)p Fq(v)-5 b(arname)5 b Fs(})p
Ft(.)42 b(If)31 b Fs(>)p Ft(&-)f(or)h Fs(<)p Ft(&-)g(is)g(preceded)g(b)
m(y)g Fs({)p Fq(v)-5 b(arname)5 b Fs(})p Ft(,)31 b(the)g(v)-5
b(alue)31 b(of)g Fq(v)-5 b(arname)37 b Ft(de\014nes)30
-b(the)h(\014le)150 4622 y(descriptor)f(to)h(close.)275
-4762 y(In)c(the)i(follo)m(wing)h(descriptions,)g(if)e(the)h(\014le)g
+b(the)h(\014le)150 1698 y(descriptor)f(to)h(close.)275
+1842 y(In)c(the)i(follo)m(wing)h(descriptions,)g(if)e(the)h(\014le)g
(descriptor)f(n)m(um)m(b)s(er)g(is)g(omitted,)i(and)f(the)f(\014rst)g
-(c)m(har-)150 4871 y(acter)42 b(of)f(the)g(redirection)g(op)s(erator)g
+(c)m(har-)150 1951 y(acter)42 b(of)f(the)g(redirection)g(op)s(erator)g
(is)g(`)p Fs(<)p Ft(',)i(the)e(redirection)g(refers)g(to)g(the)g
-(standard)f(input)f(\(\014le)150 4981 y(descriptor)33
+(standard)f(input)f(\(\014le)150 2061 y(descriptor)33
b(0\).)49 b(If)33 b(the)g(\014rst)f(c)m(haracter)i(of)g(the)f
(redirection)g(op)s(erator)h(is)f(`)p Fs(>)p Ft(',)h(the)f(redirection)
-g(refers)150 5091 y(to)e(the)g(standard)e(output)h(\(\014le)h
-(descriptor)f(1\).)275 5230 y(The)h(w)m(ord)h(follo)m(wing)i(the)f
+g(refers)150 2170 y(to)e(the)g(standard)e(output)h(\(\014le)h
+(descriptor)f(1\).)275 2314 y(The)h(w)m(ord)h(follo)m(wing)i(the)f
(redirection)g(op)s(erator)f(in)g(the)h(follo)m(wing)h(descriptions,)f
-(unless)e(other-)150 5340 y(wise)21 b(noted,)i(is)e(sub)5
+(unless)e(other-)150 2424 y(wise)21 b(noted,)i(is)e(sub)5
b(jected)21 b(to)h(brace)f(expansion,)i(tilde)f(expansion,)h(parameter)
-e(expansion,)i(command)p eop end
-%%Page: 29 35
-TeXDict begin 29 34 bop 150 -116 a Ft(Chapter)30 b(3:)41
-b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(29)150 299
-y(substitution,)31 b(arithmetic)h(expansion,)f(quote)h(remo)m(v)-5
-b(al,)33 b(\014lename)e(expansion,)g(and)f(w)m(ord)h(splitting.)150
-408 y(If)f(it)h(expands)e(to)i(more)g(than)f(one)h(w)m(ord,)f(Bash)h
-(rep)s(orts)e(an)h(error.)275 571 y(Note)h(that)g(the)g(order)f(of)g
-(redirections)h(is)g(signi\014can)m(t.)41 b(F)-8 b(or)31
-b(example,)h(the)e(command)390 734 y Fs(ls)47 b(>)h Fi(dirlist)56
-b Fs(2>&1)150 896 y Ft(directs)28 b(b)s(oth)f(standard)g(output)g
-(\(\014le)h(descriptor)f(1\))i(and)e(standard)f(error)i(\(\014le)g
-(descriptor)f(2\))h(to)h(the)150 1006 y(\014le)h Fq(dirlist)r
-Ft(,)h(while)f(the)h(command)390 1168 y Fs(ls)47 b(2>&1)g(>)g
-Fi(dirlist)150 1331 y Ft(directs)28 b(only)f(the)g(standard)g(output)g
-(to)h(\014le)f Fq(dirlist)r Ft(,)h(b)s(ecause)g(the)f(standard)g(error)
-g(w)m(as)g(made)h(a)f(cop)m(y)150 1441 y(of)k(the)f(standard)g(output)g
-(b)s(efore)g(the)g(standard)g(output)g(w)m(as)g(redirected)h(to)g
-Fq(dirlist)r Ft(.)275 1603 y(Bash)26 b(handles)f(sev)m(eral)j
-(\014lenames)e(sp)s(ecially)h(when)f(they)g(are)g(used)g(in)g
-(redirections,)i(as)e(describ)s(ed)150 1713 y(in)k(the)h(follo)m(wing)g
-(table:)150 1914 y Fs(/dev/fd/)p Fi(fd)630 2024 y Ft(If)f
-Fq(fd)j Ft(is)d(a)h(v)-5 b(alid)31 b(in)m(teger,)h(\014le)e(descriptor)
-h Fq(fd)i Ft(is)d(duplicated.)150 2211 y Fs(/dev/stdin)630
-2321 y Ft(File)i(descriptor)e(0)h(is)f(duplicated.)150
-2508 y Fs(/dev/stdout)630 2618 y Ft(File)i(descriptor)e(1)h(is)f
-(duplicated.)150 2806 y Fs(/dev/stderr)630 2915 y Ft(File)i(descriptor)
-e(2)h(is)f(duplicated.)150 3103 y Fs(/dev/tcp/)p Fi(host)11
-b Fs(/)p Fi(port)630 3212 y Ft(If)41 b Fq(host)i Ft(is)f(a)g(v)-5
+e(expansion,)i(command)150 2533 y(substitution,)31 b(arithmetic)h
+(expansion,)f(quote)h(remo)m(v)-5 b(al,)33 b(\014lename)e(expansion,)g
+(and)f(w)m(ord)h(splitting.)150 2643 y(If)f(it)h(expands)e(to)i(more)g
+(than)f(one)h(w)m(ord,)f(Bash)h(rep)s(orts)e(an)h(error.)275
+2787 y(Note)h(that)g(the)g(order)f(of)g(redirections)h(is)g
+(signi\014can)m(t.)41 b(F)-8 b(or)31 b(example,)h(the)e(command)390
+2931 y Fs(ls)47 b(>)h Fi(dirlist)56 b Fs(2>&1)150 3074
+y Ft(directs)28 b(b)s(oth)f(standard)g(output)g(\(\014le)h(descriptor)f
+(1\))i(and)e(standard)f(error)i(\(\014le)g(descriptor)f(2\))h(to)h(the)
+150 3184 y(\014le)h Fq(dirlist)r Ft(,)h(while)f(the)h(command)390
+3328 y Fs(ls)47 b(2>&1)g(>)g Fi(dirlist)150 3471 y Ft(directs)28
+b(only)f(the)g(standard)g(output)g(to)h(\014le)f Fq(dirlist)r
+Ft(,)h(b)s(ecause)g(the)f(standard)g(error)g(w)m(as)g(made)h(a)f(cop)m
+(y)150 3581 y(of)k(the)f(standard)g(output)g(b)s(efore)g(the)g
+(standard)g(output)g(w)m(as)g(redirected)h(to)g Fq(dirlist)r
+Ft(.)275 3725 y(Bash)26 b(handles)f(sev)m(eral)j(\014lenames)e(sp)s
+(ecially)h(when)f(they)g(are)g(used)g(in)g(redirections,)i(as)e
+(describ)s(ed)150 3834 y(in)k(the)h(follo)m(wing)g(table:)150
+4008 y Fs(/dev/fd/)p Fi(fd)630 4117 y Ft(If)f Fq(fd)j
+Ft(is)d(a)h(v)-5 b(alid)31 b(in)m(teger,)h(\014le)e(descriptor)h
+Fq(fd)i Ft(is)d(duplicated.)150 4286 y Fs(/dev/stdin)630
+4396 y Ft(File)i(descriptor)e(0)h(is)f(duplicated.)150
+4564 y Fs(/dev/stdout)630 4674 y Ft(File)i(descriptor)e(1)h(is)f
+(duplicated.)150 4843 y Fs(/dev/stderr)630 4952 y Ft(File)i(descriptor)
+e(2)h(is)f(duplicated.)150 5121 y Fs(/dev/tcp/)p Fi(host)11
+b Fs(/)p Fi(port)630 5230 y Ft(If)41 b Fq(host)i Ft(is)f(a)g(v)-5
b(alid)41 b(hostname)h(or)f(In)m(ternet)h(address,)i(and)c
-Fq(p)s(ort)j Ft(is)f(an)f(in)m(teger)i(p)s(ort)630 3322
-y(n)m(um)m(b)s(er)h(or)h(service)h(name,)j(Bash)c(attempts)h(to)g(op)s
-(en)f(a)g(TCP)g(connection)h(to)g(the)630 3431 y(corresp)s(onding)29
-b(so)s(c)m(k)m(et.)150 3619 y Fs(/dev/udp/)p Fi(host)11
-b Fs(/)p Fi(port)630 3728 y Ft(If)41 b Fq(host)i Ft(is)f(a)g(v)-5
+Fq(p)s(ort)j Ft(is)f(an)f(in)m(teger)i(p)s(ort)630 5340
+y(n)m(um)m(b)s(er)23 b(or)i(service)h(name,)g(Bash)f(attempts)h(to)f
+(op)s(en)f(the)h(corresp)s(onding)f(TCP)g(so)s(c)m(k)m(et.)p
+eop end
+%%Page: 32 38
+TeXDict begin 32 37 bop 150 -116 a Ft(32)2572 b(Bash)31
+b(Reference)g(Man)m(ual)150 299 y Fs(/dev/udp/)p Fi(host)11
+b Fs(/)p Fi(port)630 408 y Ft(If)41 b Fq(host)i Ft(is)f(a)g(v)-5
b(alid)41 b(hostname)h(or)f(In)m(ternet)h(address,)i(and)c
-Fq(p)s(ort)j Ft(is)f(an)f(in)m(teger)i(p)s(ort)630 3838
-y(n)m(um)m(b)s(er)g(or)i(service)g(name,)k(Bash)c(attempts)g(to)h(op)s
-(en)e(a)h(UDP)g(connection)g(to)h(the)630 3948 y(corresp)s(onding)29
-b(so)s(c)m(k)m(et.)275 4149 y(A)h(failure)h(to)g(op)s(en)e(or)i(create)
-h(a)e(\014le)h(causes)g(the)f(redirection)h(to)g(fail.)275
-4312 y(Redirections)f(using)e(\014le)i(descriptors)f(greater)h(than)f
-(9)h(should)e(b)s(e)h(used)f(with)h(care,)h(as)g(they)f(ma)m(y)150
-4421 y(con\015ict)i(with)f(\014le)h(descriptors)f(the)g(shell)h(uses)f
-(in)m(ternally)-8 b(.)150 4649 y Fj(3.6.1)63 b(Redirecting)40
-b(Input)150 4796 y Ft(Redirection)35 b(of)f(input)f(causes)i(the)f
-(\014le)g(whose)g(name)g(results)g(from)g(the)g(expansion)g(of)g
-Fq(w)m(ord)k Ft(to)d(b)s(e)150 4905 y(op)s(ened)d(for)g(reading)g(on)g
-(\014le)h(descriptor)f Fs(n)p Ft(,)h(or)f(the)g(standard)g(input)f
-(\(\014le)i(descriptor)f(0\))h(if)f Fs(n)g Ft(is)h(not)150
-5015 y(sp)s(eci\014ed.)275 5177 y(The)c(general)j(format)e(for)h
-(redirecting)g(input)e(is:)390 5340 y Fs([)p Fi(n)11
-b Fs(]<)p Fi(word)p eop end
-%%Page: 30 36
-TeXDict begin 30 35 bop 150 -116 a Ft(30)2572 b(Bash)31
-b(Reference)g(Man)m(ual)150 299 y Fj(3.6.2)63 b(Redirecting)40
-b(Output)150 446 y Ft(Redirection)31 b(of)g(output)f(causes)h(the)f
+Fq(p)s(ort)j Ft(is)f(an)f(in)m(teger)i(p)s(ort)630 518
+y(n)m(um)m(b)s(er)23 b(or)h(service)h(name,)h(Bash)e(attempts)h(to)g
+(op)s(en)f(the)g(corresp)s(onding)f(UDP)i(so)s(c)m(k)m(et.)275
+695 y(A)30 b(failure)h(to)g(op)s(en)e(or)i(create)h(a)e(\014le)h
+(causes)g(the)f(redirection)h(to)g(fail.)275 841 y(Redirections)f
+(using)e(\014le)i(descriptors)f(greater)h(than)f(9)h(should)e(b)s(e)h
+(used)f(with)h(care,)h(as)g(they)f(ma)m(y)150 950 y(con\015ict)i(with)f
+(\014le)h(descriptors)f(the)g(shell)h(uses)f(in)m(ternally)-8
+b(.)150 1161 y Fj(3.6.1)63 b(Redirecting)40 b(Input)150
+1308 y Ft(Redirection)35 b(of)f(input)f(causes)i(the)f(\014le)g(whose)g
+(name)g(results)g(from)g(the)g(expansion)g(of)g Fq(w)m(ord)k
+Ft(to)d(b)s(e)150 1418 y(op)s(ened)d(for)g(reading)g(on)g(\014le)h
+(descriptor)f Fs(n)p Ft(,)h(or)f(the)g(standard)g(input)f(\(\014le)i
+(descriptor)f(0\))h(if)f Fs(n)g Ft(is)h(not)150 1527
+y(sp)s(eci\014ed.)275 1674 y(The)c(general)j(format)e(for)h
+(redirecting)g(input)e(is:)390 1820 y Fs([)p Fi(n)11
+b Fs(]<)p Fi(word)150 2030 y Fj(3.6.2)63 b(Redirecting)40
+b(Output)150 2177 y Ft(Redirection)31 b(of)g(output)f(causes)h(the)f
(\014le)h(whose)f(name)g(results)h(from)e(the)i(expansion)f(of)h
-Fq(w)m(ord)i Ft(to)f(b)s(e)150 555 y(op)s(ened)d(for)g(writing)g(on)g
+Fq(w)m(ord)i Ft(to)f(b)s(e)150 2287 y(op)s(ened)d(for)g(writing)g(on)g
(\014le)h(descriptor)f Fq(n)p Ft(,)g(or)g(the)h(standard)e(output)h
(\(\014le)h(descriptor)f(1\))h(if)g Fq(n)e Ft(is)i(not)150
-665 y(sp)s(eci\014ed.)40 b(If)30 b(the)g(\014le)h(do)s(es)f(not)h
+2397 y(sp)s(eci\014ed.)40 b(If)30 b(the)g(\014le)h(do)s(es)f(not)h
(exist)g(it)g(is)f(created;)i(if)e(it)h(do)s(es)f(exist)h(it)g(is)g
-(truncated)f(to)h(zero)g(size.)275 812 y(The)e(general)j(format)e(for)h
-(redirecting)g(output)f(is:)390 959 y Fs([)p Fi(n)11
-b Fs(]>[|])p Fi(word)275 1107 y Ft(If)30 b(the)h(redirection)g(op)s
+(truncated)f(to)h(zero)g(size.)275 2543 y(The)e(general)j(format)e(for)
+h(redirecting)g(output)f(is:)390 2689 y Fs([)p Fi(n)11
+b Fs(]>[|])p Fi(word)275 2835 y Ft(If)30 b(the)h(redirection)g(op)s
(erator)g(is)g(`)p Fs(>)p Ft(',)g(and)f(the)h Fs(noclobber)d
Ft(option)j(to)g(the)g Fs(set)f Ft(builtin)g(has)h(b)s(een)150
-1216 y(enabled,)i(the)f(redirection)h(will)f(fail)h(if)f(the)g(\014le)g
+2944 y(enabled,)i(the)f(redirection)h(will)f(fail)h(if)f(the)g(\014le)g
(whose)g(name)g(results)g(from)g(the)g(expansion)g(of)g
-Fq(w)m(ord)150 1326 y Ft(exists)f(and)f(is)g(a)h(regular)g(\014le.)41
+Fq(w)m(ord)150 3054 y Ft(exists)f(and)f(is)g(a)h(regular)g(\014le.)41
b(If)30 b(the)h(redirection)g(op)s(erator)g(is)f(`)p
Fs(>|)p Ft(',)h(or)f(the)h(redirection)g(op)s(erator)g(is)150
-1435 y(`)p Fs(>)p Ft(')36 b(and)f(the)g Fs(noclobber)e
+3164 y(`)p Fs(>)p Ft(')36 b(and)f(the)g Fs(noclobber)e
Ft(option)j(is)g(not)g(enabled,)h(the)e(redirection)h(is)g(attempted)g
-(ev)m(en)h(if)e(the)h(\014le)150 1545 y(named)30 b(b)m(y)g
-Fq(w)m(ord)k Ft(exists.)150 1757 y Fj(3.6.3)63 b(App)s(ending)42
-b(Redirected)e(Output)150 1904 y Ft(Redirection)23 b(of)e(output)h(in)f
+(ev)m(en)h(if)e(the)h(\014le)150 3273 y(named)30 b(b)m(y)g
+Fq(w)m(ord)k Ft(exists.)150 3484 y Fj(3.6.3)63 b(App)s(ending)42
+b(Redirected)e(Output)150 3631 y Ft(Redirection)23 b(of)e(output)h(in)f
(this)h(fashion)f(causes)h(the)g(\014le)g(whose)f(name)h(results)f
-(from)g(the)h(expansion)g(of)150 2013 y Fq(w)m(ord)28
+(from)g(the)h(expansion)g(of)150 3741 y Fq(w)m(ord)28
b Ft(to)e(b)s(e)e(op)s(ened)g(for)h(app)s(ending)e(on)i(\014le)g
(descriptor)g Fq(n)p Ft(,)g(or)g(the)g(standard)f(output)h(\(\014le)g
-(descriptor)150 2123 y(1\))31 b(if)f Fq(n)g Ft(is)h(not)f(sp)s
+(descriptor)150 3850 y(1\))31 b(if)f Fq(n)g Ft(is)h(not)f(sp)s
(eci\014ed.)40 b(If)30 b(the)h(\014le)f(do)s(es)g(not)h(exist)g(it)g
-(is)f(created.)275 2270 y(The)f(general)j(format)e(for)h(app)s(ending)e
-(output)h(is:)390 2417 y Fs([)p Fi(n)11 b Fs(]>>)p Fi(word)150
-2629 y Fj(3.6.4)63 b(Redirecting)40 b(Standard)h(Output)g(and)g
-(Standard)g(Error)150 2776 y Ft(This)33 b(construct)i(allo)m(ws)g(b)s
+(is)f(created.)275 3996 y(The)f(general)j(format)e(for)h(app)s(ending)e
+(output)h(is:)390 4142 y Fs([)p Fi(n)11 b Fs(]>>)p Fi(word)150
+4353 y Fj(3.6.4)63 b(Redirecting)40 b(Standard)h(Output)g(and)g
+(Standard)g(Error)150 4500 y Ft(This)33 b(construct)i(allo)m(ws)g(b)s
(oth)f(the)g(standard)g(output)f(\(\014le)i(descriptor)f(1\))h(and)f
-(the)g(standard)f(error)150 2886 y(output)d(\(\014le)h(descriptor)f
+(the)g(standard)f(error)150 4610 y(output)d(\(\014le)h(descriptor)f
(2\))h(to)g(b)s(e)f(redirected)h(to)g(the)f(\014le)h(whose)f(name)h(is)
-f(the)g(expansion)h(of)f Fq(w)m(ord)t Ft(.)275 3033 y(There)f(are)i(t)m
+f(the)g(expansion)h(of)f Fq(w)m(ord)t Ft(.)275 4756 y(There)f(are)i(t)m
(w)m(o)h(formats)e(for)h(redirecting)g(standard)e(output)h(and)g
-(standard)f(error:)390 3180 y Fs(&>)p Fi(word)150 3328
-y Ft(and)390 3475 y Fs(>&)p Fi(word)150 3622 y Ft(Of)h(the)g(t)m(w)m(o)
+(standard)f(error:)390 4902 y Fs(&>)p Fi(word)150 5048
+y Ft(and)390 5194 y Fs(>&)p Fi(word)150 5340 y Ft(Of)h(the)g(t)m(w)m(o)
i(forms,)e(the)h(\014rst)e(is)i(preferred.)39 b(This)30
-b(is)g(seman)m(tically)j(equiv)-5 b(alen)m(t)32 b(to)390
-3769 y Fs(>)p Fi(word)57 b Fs(2>&1)275 3916 y Ft(When)41
-b(using)g(the)h(second)f(form,)k Fq(w)m(ord)f Ft(ma)m(y)e(not)g(expand)
-f(to)h(a)g(n)m(um)m(b)s(er)f(or)g(`)p Fs(-)p Ft('.)75
-b(If)41 b(it)h(do)s(es,)150 4026 y(other)27 b(redirection)g(op)s
-(erators)f(apply)h(\(see)g(Duplicating)h(File)f(Descriptors)h(b)s(elo)m
-(w\))f(for)f(compatibilit)m(y)150 4135 y(reasons.)150
-4347 y Fj(3.6.5)63 b(App)s(ending)42 b(Standard)f(Output)g(and)g
-(Standard)g(Error)150 4494 y Ft(This)33 b(construct)i(allo)m(ws)g(b)s
-(oth)f(the)g(standard)g(output)f(\(\014le)i(descriptor)f(1\))h(and)f
-(the)g(standard)f(error)150 4604 y(output)d(\(\014le)h(descriptor)f
-(2\))h(to)g(b)s(e)f(app)s(ended)f(to)i(the)f(\014le)h(whose)f(name)g
-(is)h(the)f(expansion)h(of)f Fq(w)m(ord)t Ft(.)275 4751
-y(The)f(format)i(for)f(app)s(ending)f(standard)h(output)g(and)f
-(standard)h(error)g(is:)390 4898 y Fs(&>>)p Fi(word)150
-5046 y Ft(This)g(is)g(seman)m(tically)j(equiv)-5 b(alen)m(t)32
-b(to)390 5193 y Fs(>>)p Fi(word)57 b Fs(2>&1)275 5340
-y Ft(\(see)31 b(Duplicating)h(File)f(Descriptors)g(b)s(elo)m(w\).)p
+b(is)g(seman)m(tically)j(equiv)-5 b(alen)m(t)32 b(to)p
eop end
-%%Page: 31 37
-TeXDict begin 31 36 bop 150 -116 a Ft(Chapter)30 b(3:)41
-b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(31)150 299
-y Fj(3.6.6)63 b(Here)41 b(Do)s(cumen)m(ts)150 446 y Ft(This)c(t)m(yp)s
-(e)h(of)f(redirection)i(instructs)e(the)h(shell)f(to)i(read)e(input)g
-(from)g(the)h(curren)m(t)f(source)h(un)m(til)g(a)150
-555 y(line)31 b(con)m(taining)g(only)g Fq(w)m(ord)i Ft(\(with)d(no)h
-(trailing)g(blanks\))f(is)g(seen.)41 b(All)31 b(of)f(the)h(lines)f
-(read)g(up)f(to)i(that)150 665 y(p)s(oin)m(t)f(are)h(then)f(used)g(as)g
-(the)h(standard)f(input)f(for)h(a)h(command.)275 823
-y(The)e(format)i(of)g(here-do)s(cumen)m(ts)f(is:)390
-982 y Fs(<<[)p Fp(\000)p Fs(])p Fi(word)772 1091 y(here-document)390
-1201 y(delimiter)275 1360 y Ft(No)i(parameter)h(and)f(v)-5
-b(ariable)32 b(expansion,)h(command)f(substitution,)h(arithmetic)g
-(expansion,)g(or)150 1469 y(\014lename)38 b(expansion)f(is)h(p)s
-(erformed)e(on)h Fq(w)m(ord)t Ft(.)62 b(If)37 b(an)m(y)h(c)m(haracters)
-h(in)e Fq(w)m(ord)k Ft(are)d(quoted,)i(the)e Fq(de-)150
-1579 y(limiter)h Ft(is)32 b(the)g(result)g(of)g(quote)g(remo)m(v)-5
+%%Page: 33 39
+TeXDict begin 33 38 bop 150 -116 a Ft(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(33)390 299
+y Fs(>)p Fi(word)57 b Fs(2>&1)275 445 y Ft(When)41 b(using)g(the)h
+(second)f(form,)k Fq(w)m(ord)f Ft(ma)m(y)e(not)g(expand)f(to)h(a)g(n)m
+(um)m(b)s(er)f(or)g(`)p Fs(-)p Ft('.)75 b(If)41 b(it)h(do)s(es,)150
+554 y(other)27 b(redirection)g(op)s(erators)f(apply)h(\(see)g
+(Duplicating)h(File)f(Descriptors)h(b)s(elo)m(w\))f(for)f(compatibilit)
+m(y)150 664 y(reasons.)150 874 y Fj(3.6.5)63 b(App)s(ending)42
+b(Standard)f(Output)g(and)g(Standard)g(Error)150 1021
+y Ft(This)33 b(construct)i(allo)m(ws)g(b)s(oth)f(the)g(standard)g
+(output)f(\(\014le)i(descriptor)f(1\))h(and)f(the)g(standard)f(error)
+150 1131 y(output)d(\(\014le)h(descriptor)f(2\))h(to)g(b)s(e)f(app)s
+(ended)f(to)i(the)f(\014le)h(whose)f(name)g(is)h(the)f(expansion)h(of)f
+Fq(w)m(ord)t Ft(.)275 1276 y(The)f(format)i(for)f(app)s(ending)f
+(standard)h(output)g(and)f(standard)h(error)g(is:)390
+1422 y Fs(&>>)p Fi(word)150 1568 y Ft(This)g(is)g(seman)m(tically)j
+(equiv)-5 b(alen)m(t)32 b(to)390 1714 y Fs(>>)p Fi(word)57
+b Fs(2>&1)275 1859 y Ft(\(see)31 b(Duplicating)h(File)f(Descriptors)g
+(b)s(elo)m(w\).)150 2070 y Fj(3.6.6)63 b(Here)41 b(Do)s(cumen)m(ts)150
+2217 y Ft(This)c(t)m(yp)s(e)h(of)f(redirection)i(instructs)e(the)h
+(shell)f(to)i(read)e(input)g(from)g(the)h(curren)m(t)f(source)h(un)m
+(til)g(a)150 2326 y(line)31 b(con)m(taining)g(only)g
+Fq(w)m(ord)i Ft(\(with)d(no)h(trailing)g(blanks\))f(is)g(seen.)41
+b(All)31 b(of)f(the)h(lines)f(read)g(up)f(to)i(that)150
+2436 y(p)s(oin)m(t)f(are)h(then)f(used)g(as)g(the)h(standard)f(input)f
+(for)h(a)h(command.)275 2582 y(The)e(format)i(of)g(here-do)s(cumen)m
+(ts)f(is:)390 2727 y Fs(<<[)p Fp(\000)p Fs(])p Fi(word)772
+2837 y(here-document)390 2946 y(delimiter)275 3092 y
+Ft(No)i(parameter)h(and)f(v)-5 b(ariable)32 b(expansion,)h(command)f
+(substitution,)h(arithmetic)g(expansion,)g(or)150 3202
+y(\014lename)38 b(expansion)f(is)h(p)s(erformed)e(on)h
+Fq(w)m(ord)t Ft(.)62 b(If)37 b(an)m(y)h(c)m(haracters)h(in)e
+Fq(w)m(ord)k Ft(are)d(quoted,)i(the)e Fq(de-)150 3311
+y(limiter)h Ft(is)32 b(the)g(result)g(of)g(quote)g(remo)m(v)-5
b(al)33 b(on)f Fq(w)m(ord)t Ft(,)g(and)f(the)h(lines)g(in)g(the)g
-(here-do)s(cumen)m(t)f(are)i(not)150 1688 y(expanded.)71
+(here-do)s(cumen)m(t)f(are)i(not)150 3421 y(expanded.)71
b(If)40 b Fq(w)m(ord)k Ft(is)d(unquoted,)h(all)g(lines)f(of)g(the)f
(here-do)s(cumen)m(t)h(are)g(sub)5 b(jected)41 b(to)g(param-)150
-1798 y(eter)c(expansion,)i(command)d(substitution,)i(and)e(arithmetic)i
-(expansion,)g(the)f(c)m(haracter)i(sequence)150 1907
+3531 y(eter)c(expansion,)i(command)d(substitution,)i(and)e(arithmetic)i
+(expansion,)g(the)f(c)m(haracter)i(sequence)150 3640
y Fs(\\newline)28 b Ft(is)j(ignored,)f(and)g(`)p Fs(\\)p
Ft(')h(m)m(ust)f(b)s(e)g(used)f(to)i(quote)g(the)g(c)m(haracters)h(`)p
Fs(\\)p Ft(',)e(`)p Fs($)p Ft(',)h(and)f(`)p Fs(`)p Ft('.)275
-2066 y(If)21 b(the)i(redirection)g(op)s(erator)g(is)f(`)p
+3786 y(If)21 b(the)i(redirection)g(op)s(erator)g(is)f(`)p
Fs(<<-)p Ft(',)i(then)e(all)h(leading)g(tab)g(c)m(haracters)h(are)e
-(stripp)s(ed)f(from)h(input)150 2175 y(lines)33 b(and)e(the)i(line)g
+(stripp)s(ed)f(from)h(input)150 3895 y(lines)33 b(and)e(the)i(line)g
(con)m(taining)h Fq(delimiter)7 b Ft(.)47 b(This)31 b(allo)m(ws)j
(here-do)s(cumen)m(ts)f(within)e(shell)i(scripts)f(to)150
-2285 y(b)s(e)e(inden)m(ted)g(in)g(a)h(natural)f(fashion.)150
-2508 y Fj(3.6.7)63 b(Here)41 b(Strings)150 2655 y Ft(A)30
+4005 y(b)s(e)e(inden)m(ted)g(in)g(a)h(natural)f(fashion.)150
+4215 y Fj(3.6.7)63 b(Here)41 b(Strings)150 4362 y Ft(A)30
b(v)-5 b(arian)m(t)32 b(of)e(here)h(do)s(cumen)m(ts,)f(the)g(format)h
-(is:)390 2814 y Fs(<<<)47 b Fi(word)275 2972 y Ft(The)21
+(is:)390 4508 y Fs(<<<)47 b Fi(word)275 4654 y Ft(The)21
b Fq(w)m(ord)k Ft(undergo)s(es)c(brace)h(expansion,)i(tilde)e
(expansion,)i(parameter)e(and)f(v)-5 b(ariable)23 b(expansion,)150
-3082 y(command)j(substitution,)g(arithmetic)i(expansion,)f(and)e(quote)
+4763 y(command)j(substitution,)g(arithmetic)i(expansion,)f(and)e(quote)
i(remo)m(v)-5 b(al.)40 b(P)m(athname)27 b(expansion)f(and)150
-3191 y(w)m(ord)j(splitting)i(are)f(not)g(p)s(erformed.)39
+4873 y(w)m(ord)j(splitting)i(are)f(not)g(p)s(erformed.)39
b(The)29 b(result)h(is)g(supplied)e(as)i(a)h(single)f(string)g(to)g
-(the)g(command)150 3301 y(on)g(its)h(standard)f(input.)150
-3524 y Fj(3.6.8)63 b(Duplicating)41 b(File)g(Descriptors)150
-3671 y Ft(The)30 b(redirection)h(op)s(erator)390 3829
-y Fs([)p Fi(n)11 b Fs(]<&)p Fi(word)150 3988 y Ft(is)35
-b(used)e(to)j(duplicate)f(input)f(\014le)g(descriptors.)53
-b(If)34 b Fq(w)m(ord)k Ft(expands)c(to)h(one)g(or)g(more)g(digits,)h
-(the)f(\014le)150 4098 y(descriptor)e(denoted)h(b)m(y)g
+(the)g(command)150 4983 y(on)g(its)h(standard)f(input.)150
+5193 y Fj(3.6.8)63 b(Duplicating)41 b(File)g(Descriptors)150
+5340 y Ft(The)30 b(redirection)h(op)s(erator)p eop end
+%%Page: 34 40
+TeXDict begin 34 39 bop 150 -116 a Ft(34)2572 b(Bash)31
+b(Reference)g(Man)m(ual)390 299 y Fs([)p Fi(n)11 b Fs(]<&)p
+Fi(word)150 433 y Ft(is)35 b(used)e(to)j(duplicate)f(input)f(\014le)g
+(descriptors.)53 b(If)34 b Fq(w)m(ord)k Ft(expands)c(to)h(one)g(or)g
+(more)g(digits,)h(the)f(\014le)150 543 y(descriptor)e(denoted)h(b)m(y)g
Fq(n)f Ft(is)g(made)h(to)g(b)s(e)f(a)h(cop)m(y)g(of)g(that)g(\014le)g
(descriptor.)50 b(If)33 b(the)h(digits)g(in)f Fq(w)m(ord)150
-4207 y Ft(do)c(not)h(sp)s(ecify)f(a)h(\014le)f(descriptor)g(op)s(en)g
+653 y Ft(do)c(not)h(sp)s(ecify)f(a)h(\014le)f(descriptor)g(op)s(en)g
(for)g(input,)g(a)h(redirection)g(error)f(o)s(ccurs.)40
-b(If)29 b Fq(w)m(ord)j Ft(ev)-5 b(aluates)150 4317 y(to)31
+b(If)29 b Fq(w)m(ord)j Ft(ev)-5 b(aluates)150 762 y(to)31
b(`)p Fs(-)p Ft(',)g(\014le)g(descriptor)g Fq(n)f Ft(is)g(closed.)43
b(If)30 b Fq(n)g Ft(is)g(not)h(sp)s(eci\014ed,)f(the)h(standard)f
-(input)g(\(\014le)h(descriptor)f(0\))150 4426 y(is)g(used.)275
-4585 y(The)f(op)s(erator)390 4743 y Fs([)p Fi(n)11 b
-Fs(]>&)p Fi(word)150 4902 y Ft(is)40 b(used)g(similarly)h(to)g
+(input)g(\(\014le)h(descriptor)f(0\))150 872 y(is)g(used.)275
+1006 y(The)f(op)s(erator)390 1141 y Fs([)p Fi(n)11 b
+Fs(]>&)p Fi(word)150 1275 y Ft(is)40 b(used)g(similarly)h(to)g
(duplicate)f(output)g(\014le)h(descriptors.)70 b(If)40
b Fq(n)f Ft(is)i(not)f(sp)s(eci\014ed,)i(the)f(standard)150
-5011 y(output)30 b(\(\014le)g(descriptor)g(1\))h(is)f(used.)39
+1385 y(output)30 b(\(\014le)g(descriptor)g(1\))h(is)f(used.)39
b(If)30 b(the)g(digits)h(in)e Fq(w)m(ord)34 b Ft(do)29
b(not)i(sp)s(ecify)e(a)i(\014le)f(descriptor)g(op)s(en)150
-5121 y(for)35 b(output,)h(a)g(redirection)g(error)e(o)s(ccurs.)55
+1494 y(for)35 b(output,)h(a)g(redirection)g(error)e(o)s(ccurs.)55
b(If)35 b Fq(w)m(ord)j Ft(ev)-5 b(aluates)37 b(to)f(`)p
Fs(-)p Ft(',)h(\014le)e(descriptor)g Fq(n)g Ft(is)g(closed.)150
-5230 y(As)f(a)g(sp)s(ecial)h(case,)h(if)e Fq(n)f Ft(is)h(omitted,)i
+1604 y(As)f(a)g(sp)s(ecial)h(case,)h(if)e Fq(n)f Ft(is)h(omitted,)i
(and)e Fq(w)m(ord)j Ft(do)s(es)d(not)g(expand)f(to)i(one)f(or)g(more)g
-(digits)h(or)f(`)p Fs(-)p Ft(',)150 5340 y(the)d(standard)e(output)h
+(digits)h(or)f(`)p Fs(-)p Ft(',)150 1713 y(the)d(standard)e(output)h
(and)g(standard)f(error)h(are)h(redirected)g(as)g(describ)s(ed)e
-(previously)-8 b(.)p eop end
-%%Page: 32 38
-TeXDict begin 32 37 bop 150 -116 a Ft(32)2572 b(Bash)31
-b(Reference)g(Man)m(ual)150 299 y Fj(3.6.9)63 b(Mo)m(ving)41
-b(File)h(Descriptors)150 446 y Ft(The)30 b(redirection)h(op)s(erator)
-390 573 y Fs([)p Fi(n)11 b Fs(]<&)p Fi(digit)g Fs(-)150
-699 y Ft(mo)m(v)m(es)33 b(the)f(\014le)g(descriptor)f
+(previously)-8 b(.)150 1913 y Fj(3.6.9)63 b(Mo)m(ving)41
+b(File)h(Descriptors)150 2060 y Ft(The)30 b(redirection)h(op)s(erator)
+390 2194 y Fs([)p Fi(n)11 b Fs(]<&)p Fi(digit)g Fs(-)150
+2328 y Ft(mo)m(v)m(es)33 b(the)f(\014le)g(descriptor)f
Fq(digit)k Ft(to)d(\014le)g(descriptor)g Fq(n)p Ft(,)f(or)h(the)g
-(standard)f(input)f(\(\014le)j(descriptor)e(0\))150 809
+(standard)f(input)f(\(\014le)j(descriptor)e(0\))150 2438
y(if)f Fq(n)g Ft(is)h(not)f(sp)s(eci\014ed.)40 b Fq(digit)33
b Ft(is)e(closed)g(after)g(b)s(eing)f(duplicated)g(to)h
-Fq(n)p Ft(.)275 936 y(Similarly)-8 b(,)31 b(the)f(redirection)h(op)s
-(erator)390 1062 y Fs([)p Fi(n)11 b Fs(]>&)p Fi(digit)g
-Fs(-)150 1189 y Ft(mo)m(v)m(es)29 b(the)g(\014le)f(descriptor)f
+Fq(n)p Ft(.)275 2572 y(Similarly)-8 b(,)31 b(the)f(redirection)h(op)s
+(erator)390 2707 y Fs([)p Fi(n)11 b Fs(]>&)p Fi(digit)g
+Fs(-)150 2841 y Ft(mo)m(v)m(es)29 b(the)g(\014le)f(descriptor)f
Fq(digit)k Ft(to)e(\014le)f(descriptor)g Fq(n)p Ft(,)g(or)g(the)g
(standard)f(output)h(\(\014le)g(descriptor)g(1\))150
-1299 y(if)i Fq(n)g Ft(is)h(not)f(sp)s(eci\014ed.)150
-1482 y Fj(3.6.10)63 b(Op)s(ening)42 b(File)g(Descriptors)g(for)g
-(Reading)e(and)h(W)-10 b(riting)150 1629 y Ft(The)30
-b(redirection)h(op)s(erator)390 1756 y Fs([)p Fi(n)11
-b Fs(]<>)p Fi(word)150 1883 y Ft(causes)39 b(the)g(\014le)g(whose)g
+2951 y(if)i Fq(n)g Ft(is)h(not)f(sp)s(eci\014ed.)150
+3150 y Fj(3.6.10)63 b(Op)s(ening)42 b(File)g(Descriptors)g(for)g
+(Reading)e(and)h(W)-10 b(riting)150 3297 y Ft(The)30
+b(redirection)h(op)s(erator)390 3432 y Fs([)p Fi(n)11
+b Fs(]<>)p Fi(word)150 3566 y Ft(causes)39 b(the)g(\014le)g(whose)g
(name)g(is)g(the)g(expansion)g(of)g Fq(w)m(ord)j Ft(to)d(b)s(e)g(op)s
-(ened)f(for)g(b)s(oth)h(reading)g(and)150 1992 y(writing)33
+(ened)f(for)g(b)s(oth)h(reading)g(and)150 3676 y(writing)33
b(on)f(\014le)h(descriptor)f Fq(n)p Ft(,)h(or)g(on)f(\014le)h
(descriptor)g(0)g(if)f Fq(n)g Ft(is)h(not)g(sp)s(eci\014ed.)47
-b(If)32 b(the)h(\014le)f(do)s(es)h(not)150 2102 y(exist,)e(it)g(is)g
-(created.)150 2319 y Fr(3.7)68 b(Executing)46 b(Commands)150
-2535 y Fj(3.7.1)63 b(Simple)41 b(Command)h(Expansion)150
-2682 y Ft(When)33 b(a)g(simple)g(command)g(is)g(executed,)h(the)g
+b(If)32 b(the)h(\014le)f(do)s(es)h(not)150 3785 y(exist,)e(it)g(is)g
+(created.)150 4018 y Fr(3.7)68 b(Executing)46 b(Commands)150
+4242 y Fj(3.7.1)63 b(Simple)41 b(Command)h(Expansion)150
+4389 y Ft(When)33 b(a)g(simple)g(command)g(is)g(executed,)h(the)g
(shell)f(p)s(erforms)e(the)i(follo)m(wing)i(expansions,)e(assign-)150
-2792 y(men)m(ts,)e(and)f(redirections,)h(from)f(left)h(to)g(righ)m(t.)
-199 2919 y(1.)61 b(The)38 b(w)m(ords)f(that)i(the)g(parser)e(has)h
+4498 y(men)m(ts,)e(and)f(redirections,)h(from)f(left)h(to)g(righ)m(t.)
+199 4633 y(1.)61 b(The)38 b(w)m(ords)f(that)i(the)g(parser)e(has)h
(mark)m(ed)g(as)h(v)-5 b(ariable)39 b(assignmen)m(ts)g(\(those)g
-(preceding)f(the)330 3028 y(command)30 b(name\))h(and)f(redirections)h
+(preceding)f(the)330 4742 y(command)30 b(name\))h(and)f(redirections)h
(are)f(sa)m(v)m(ed)i(for)e(later)h(pro)s(cessing.)199
-3155 y(2.)61 b(The)39 b(w)m(ords)g(that)i(are)f(not)g(v)-5
+4877 y(2.)61 b(The)39 b(w)m(ords)g(that)i(are)f(not)g(v)-5
b(ariable)40 b(assignmen)m(ts)h(or)e(redirections)i(are)f(expanded)f
-(\(see)h(Sec-)330 3265 y(tion)d(3.5)i([Shell)e(Expansions],)h(page)g
+(\(see)h(Sec-)330 4986 y(tion)d(3.5)i([Shell)e(Expansions],)h(page)g
(20\).)61 b(If)37 b(an)m(y)g(w)m(ords)f(remain)h(after)h(expansion,)h
-(the)e(\014rst)330 3374 y(w)m(ord)31 b(is)g(tak)m(en)h(to)g(b)s(e)f
+(the)e(\014rst)330 5096 y(w)m(ord)31 b(is)g(tak)m(en)h(to)g(b)s(e)f
(the)g(name)h(of)f(the)h(command)f(and)f(the)i(remaining)f(w)m(ords)g
-(are)g(the)h(argu-)330 3484 y(men)m(ts.)199 3610 y(3.)61
+(are)g(the)h(argu-)330 5206 y(men)m(ts.)199 5340 y(3.)61
b(Redirections)25 b(are)f(p)s(erformed)f(as)h(describ)s(ed)f(ab)s(o)m
-(v)m(e)i(\(see)g(Section)g(3.6)g([Redirections],)i(page)d(28\).)199
-3737 y(4.)61 b(The)25 b(text)h(after)f(the)g(`)p Fs(=)p
-Ft(')h(in)e(eac)m(h)j(v)-5 b(ariable)25 b(assignmen)m(t)h(undergo)s(es)
-e(tilde)i(expansion,)g(parameter)330 3847 y(expansion,)49
-b(command)d(substitution,)j(arithmetic)d(expansion,)k(and)45
-b(quote)h(remo)m(v)-5 b(al)46 b(b)s(efore)330 3956 y(b)s(eing)30
-b(assigned)h(to)g(the)f(v)-5 b(ariable.)275 4100 y(If)32
-b(no)i(command)f(name)g(results,)h(the)g(v)-5 b(ariable)34
-b(assignmen)m(ts)g(a\013ect)h(the)f(curren)m(t)f(shell)h(en)m(viron-)
-150 4210 y(men)m(t.)39 b(Otherwise,)27 b(the)e(v)-5 b(ariables)26
-b(are)g(added)f(to)h(the)f(en)m(vironmen)m(t)h(of)g(the)f(executed)h
-(command)g(and)150 4319 y(do)35 b(not)f(a\013ect)j(the)d(curren)m(t)h
-(shell)g(en)m(vironmen)m(t.)54 b(If)34 b(an)m(y)h(of)g(the)f(assignmen)
-m(ts)i(attempts)f(to)h(assign)150 4429 y(a)j(v)-5 b(alue)39
-b(to)g(a)g(readonly)f(v)-5 b(ariable,)42 b(an)c(error)g(o)s(ccurs,)j
-(and)c(the)i(command)f(exits)h(with)g(a)f(non-zero)150
-4539 y(status.)275 4665 y(If)33 b(no)g(command)g(name)h(results,)g
-(redirections)g(are)g(p)s(erformed,)f(but)g(do)h(not)f(a\013ect)i(the)f
-(curren)m(t)150 4775 y(shell)d(en)m(vironmen)m(t.)41
+(v)m(e)i(\(see)g(Section)g(3.6)g([Redirections],)i(page)d(31\).)p
+eop end
+%%Page: 35 41
+TeXDict begin 35 40 bop 150 -116 a Ft(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(35)199 299
+y(4.)61 b(The)25 b(text)h(after)f(the)g(`)p Fs(=)p Ft(')h(in)e(eac)m(h)
+j(v)-5 b(ariable)25 b(assignmen)m(t)h(undergo)s(es)e(tilde)i
+(expansion,)g(parameter)330 408 y(expansion,)49 b(command)d
+(substitution,)j(arithmetic)d(expansion,)k(and)45 b(quote)h(remo)m(v)-5
+b(al)46 b(b)s(efore)330 518 y(b)s(eing)30 b(assigned)h(to)g(the)f(v)-5
+b(ariable.)275 686 y(If)32 b(no)i(command)f(name)g(results,)h(the)g(v)
+-5 b(ariable)34 b(assignmen)m(ts)g(a\013ect)h(the)f(curren)m(t)f(shell)
+h(en)m(viron-)150 795 y(men)m(t.)39 b(Otherwise,)27 b(the)e(v)-5
+b(ariables)26 b(are)g(added)f(to)h(the)f(en)m(vironmen)m(t)h(of)g(the)f
+(executed)h(command)g(and)150 905 y(do)35 b(not)f(a\013ect)j(the)d
+(curren)m(t)h(shell)g(en)m(vironmen)m(t.)54 b(If)34 b(an)m(y)h(of)g
+(the)f(assignmen)m(ts)i(attempts)f(to)h(assign)150 1015
+y(a)j(v)-5 b(alue)39 b(to)g(a)g(readonly)f(v)-5 b(ariable,)42
+b(an)c(error)g(o)s(ccurs,)j(and)c(the)i(command)f(exits)h(with)g(a)f
+(non-zero)150 1124 y(status.)275 1264 y(If)33 b(no)g(command)g(name)h
+(results,)g(redirections)g(are)g(p)s(erformed,)f(but)g(do)h(not)f
+(a\013ect)i(the)f(curren)m(t)150 1374 y(shell)d(en)m(vironmen)m(t.)41
b(A)30 b(redirection)h(error)f(causes)h(the)g(command)f(to)h(exit)g
-(with)f(a)h(non-zero)g(status.)275 4902 y(If)26 b(there)i(is)f(a)h
+(with)f(a)h(non-zero)g(status.)275 1514 y(If)26 b(there)i(is)f(a)h
(command)f(name)h(left)g(after)g(expansion,)g(execution)h(pro)s(ceeds)e
-(as)g(describ)s(ed)f(b)s(elo)m(w.)150 5011 y(Otherwise,)39
+(as)g(describ)s(ed)f(b)s(elo)m(w.)150 1623 y(Otherwise,)39
b(the)e(command)g(exits.)62 b(If)37 b(one)g(of)g(the)h(expansions)f
-(con)m(tained)h(a)g(command)f(substitu-)150 5121 y(tion,)i(the)d(exit)h
+(con)m(tained)h(a)g(command)f(substitu-)150 1733 y(tion,)i(the)d(exit)h
(status)g(of)f(the)h(command)f(is)h(the)f(exit)h(status)g(of)f(the)h
-(last)g(command)f(substitution)150 5230 y(p)s(erformed.)55
+(last)g(command)f(substitution)150 1843 y(p)s(erformed.)55
b(If)35 b(there)g(w)m(ere)h(no)g(command)f(substitutions,)i(the)e
-(command)h(exits)g(with)f(a)h(status)g(of)150 5340 y(zero.)p
-eop end
-%%Page: 33 39
-TeXDict begin 33 38 bop 150 -116 a Ft(Chapter)30 b(3:)41
-b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(33)150 299
-y Fj(3.7.2)63 b(Command)41 b(Searc)m(h)f(and)h(Execution)150
-446 y Ft(After)i(a)h(command)f(has)g(b)s(een)f(split)h(in)m(to)h(w)m
+(command)h(exits)g(with)f(a)h(status)g(of)150 1952 y(zero.)150
+2157 y Fj(3.7.2)63 b(Command)41 b(Searc)m(h)f(and)h(Execution)150
+2304 y Ft(After)i(a)h(command)f(has)g(b)s(een)f(split)h(in)m(to)h(w)m
(ords,)j(if)c(it)g(results)g(in)g(a)h(simple)f(command)g(and)f(an)150
-555 y(optional)32 b(list)f(of)f(argumen)m(ts,)h(the)g(follo)m(wing)g
-(actions)h(are)f(tak)m(en.)199 697 y(1.)61 b(If)24 b(the)g(command)g
+2414 y(optional)32 b(list)f(of)f(argumen)m(ts,)h(the)g(follo)m(wing)g
+(actions)h(are)f(tak)m(en.)199 2554 y(1.)61 b(If)24 b(the)g(command)g
(name)g(con)m(tains)i(no)e(slashes,)i(the)e(shell)h(attempts)g(to)g(lo)
-s(cate)h(it.)39 b(If)24 b(there)g(exists)330 807 y(a)h(shell)g
+s(cate)h(it.)39 b(If)24 b(there)g(exists)330 2663 y(a)h(shell)g
(function)f(b)m(y)g(that)h(name,)h(that)f(function)f(is)h(in)m(v)m(ok)m
(ed)h(as)e(describ)s(ed)g(in)g(Section)h(3.3)h([Shell)330
-916 y(F)-8 b(unctions],)31 b(page)h(16.)199 1054 y(2.)61
+2773 y(F)-8 b(unctions],)31 b(page)h(16.)199 2910 y(2.)61
b(If)41 b(the)g(name)h(do)s(es)f(not)g(matc)m(h)i(a)e(function,)j(the)e
(shell)f(searc)m(hes)i(for)e(it)h(in)f(the)g(list)h(of)g(shell)330
-1164 y(builtins.)e(If)30 b(a)h(matc)m(h)g(is)f(found,)g(that)h(builtin)
-f(is)g(in)m(v)m(ok)m(ed.)199 1302 y(3.)61 b(If)40 b(the)g(name)h(is)f
+3020 y(builtins.)e(If)30 b(a)h(matc)m(h)g(is)f(found,)g(that)h(builtin)
+f(is)g(in)m(v)m(ok)m(ed.)199 3157 y(3.)61 b(If)40 b(the)g(name)h(is)f
(neither)h(a)f(shell)h(function)f(nor)g(a)g(builtin,)j(and)d(con)m
-(tains)h(no)g(slashes,)i(Bash)330 1411 y(searc)m(hes)c(eac)m(h)g
+(tains)h(no)g(slashes,)i(Bash)330 3267 y(searc)m(hes)c(eac)m(h)g
(elemen)m(t)g(of)g Fs($PATH)d Ft(for)i(a)g(directory)h(con)m(taining)g
-(an)f(executable)h(\014le)f(b)m(y)g(that)330 1521 y(name.)56
+(an)f(executable)h(\014le)f(b)m(y)g(that)330 3376 y(name.)56
b(Bash)36 b(uses)f(a)h(hash)e(table)j(to)f(remem)m(b)s(er)f(the)h(full)
-f(pathnames)g(of)h(executable)h(\014les)e(to)330 1631
+f(pathnames)g(of)h(executable)h(\014les)e(to)330 3486
y(a)m(v)m(oid)e(m)m(ultiple)f Fs(PATH)f Ft(searc)m(hes)i(\(see)f(the)g
(description)g(of)f Fs(hash)g Ft(in)g(Section)i(4.1)f([Bourne)g(Shell)
-330 1740 y(Builtins],)37 b(page)f(37\).)55 b(A)35 b(full)g(searc)m(h)g
+330 3595 y(Builtins],)37 b(page)f(41\).)55 b(A)35 b(full)g(searc)m(h)g
(of)g(the)g(directories)h(in)f Fs($PATH)e Ft(is)i(p)s(erformed)f(only)h
-(if)g(the)330 1850 y(command)24 b(is)h(not)g(found)e(in)i(the)g(hash)f
+(if)g(the)330 3705 y(command)24 b(is)h(not)g(found)e(in)i(the)g(hash)f
(table.)39 b(If)25 b(the)f(searc)m(h)i(is)e(unsuccessful,)h(the)g
-(shell)g(searc)m(hes)330 1959 y(for)e(a)h(de\014ned)e(shell)h(function)
+(shell)g(searc)m(hes)330 3815 y(for)e(a)h(de\014ned)e(shell)h(function)
h(named)e Fs(command_not_found_handle)p Ft(.)32 b(If)23
-b(that)h(function)f(exists,)330 2069 y(it)32 b(is)f(in)m(v)m(ok)m(ed)i
+b(that)h(function)f(exists,)330 3924 y(it)32 b(is)f(in)m(v)m(ok)m(ed)i
(with)e(the)h(original)g(command)f(and)g(the)h(original)g(command's)f
-(argumen)m(ts)h(as)g(its)330 2178 y(argumen)m(ts,)h(and)e(the)i
+(argumen)m(ts)h(as)g(its)330 4034 y(argumen)m(ts,)h(and)e(the)i
(function's)e(exit)i(status)g(b)s(ecomes)f(the)g(exit)h(status)f(of)h
-(the)f(shell.)46 b(If)31 b(that)330 2288 y(function)g(is)g(not)g
+(the)f(shell.)46 b(If)31 b(that)330 4143 y(function)g(is)g(not)g
(de\014ned,)f(the)i(shell)f(prin)m(ts)f(an)h(error)g(message)h(and)f
-(returns)e(an)i(exit)h(status)g(of)330 2398 y(127.)199
-2536 y(4.)61 b(If)33 b(the)g(searc)m(h)h(is)g(successful,)g(or)f(if)g
+(returns)e(an)i(exit)h(status)g(of)330 4253 y(127.)199
+4390 y(4.)61 b(If)33 b(the)g(searc)m(h)h(is)g(successful,)g(or)f(if)g
(the)h(command)f(name)g(con)m(tains)i(one)f(or)f(more)g(slashes,)i(the)
-330 2645 y(shell)g(executes)h(the)f(named)f(program)g(in)h(a)g
+330 4500 y(shell)g(executes)h(the)f(named)f(program)g(in)h(a)g
(separate)h(execution)f(en)m(vironmen)m(t.)55 b(Argumen)m(t)35
-b(0)330 2755 y(is)30 b(set)h(to)h(the)e(name)h(giv)m(en,)g(and)f(the)h
+b(0)330 4609 y(is)30 b(set)h(to)h(the)e(name)h(giv)m(en,)g(and)f(the)h
(remaining)f(argumen)m(ts)h(to)g(the)g(command)f(are)h(set)g(to)g(the)
-330 2864 y(argumen)m(ts)g(supplied,)e(if)h(an)m(y)-8
-b(.)199 3002 y(5.)61 b(If)35 b(this)h(execution)h(fails)f(b)s(ecause)g
+330 4719 y(argumen)m(ts)g(supplied,)e(if)h(an)m(y)-8
+b(.)199 4856 y(5.)61 b(If)35 b(this)h(execution)h(fails)f(b)s(ecause)g
(the)f(\014le)h(is)g(not)g(in)f(executable)j(format,)f(and)e(the)h
-(\014le)g(is)g(not)330 3112 y(a)d(directory)-8 b(,)34
+(\014le)g(is)g(not)330 4966 y(a)d(directory)-8 b(,)34
b(it)f(is)g(assumed)e(to)j(b)s(e)d(a)i Fq(shell)g(script)h
Ft(and)e(the)h(shell)f(executes)i(it)f(as)g(describ)s(ed)e(in)330
-3222 y(Section)g(3.8)h([Shell)e(Scripts],)g(page)i(36.)199
-3360 y(6.)61 b(If)38 b(the)h(command)f(w)m(as)h(not)g(b)s(egun)e(async)
+5075 y(Section)g(3.8)h([Shell)e(Scripts],)g(page)i(38.)199
+5213 y(6.)61 b(If)38 b(the)h(command)f(w)m(as)h(not)g(b)s(egun)e(async)
m(hronously)-8 b(,)42 b(the)c(shell)h(w)m(aits)h(for)e(the)h(command)f
-(to)330 3469 y(complete)32 b(and)e(collects)i(its)f(exit)g(status.)150
-3675 y Fj(3.7.3)63 b(Command)41 b(Execution)f(En)m(vironmen)m(t)150
-3822 y Ft(The)30 b(shell)g(has)h(an)f Fq(execution)h(en)m(vironmen)m(t)
-r Ft(,)h(whic)m(h)e(consists)h(of)f(the)h(follo)m(wing:)225
-3964 y Fp(\017)60 b Ft(op)s(en)32 b(\014les)g(inherited)g(b)m(y)h(the)f
-(shell)h(at)g(in)m(v)m(o)s(cation,)j(as)c(mo)s(di\014ed)g(b)m(y)g
-(redirections)h(supplied)e(to)330 4074 y(the)g Fs(exec)e
-Ft(builtin)225 4212 y Fp(\017)60 b Ft(the)28 b(curren)m(t)g(w)m(orking)
-h(directory)g(as)f(set)h(b)m(y)f Fs(cd)p Ft(,)g Fs(pushd)p
-Ft(,)g(or)g Fs(popd)p Ft(,)g(or)g(inherited)g(b)m(y)g(the)h(shell)f(at)
-330 4321 y(in)m(v)m(o)s(cation)225 4459 y Fp(\017)60
-b Ft(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)g(as)h(set)g(b)m(y)f
-Fs(umask)f Ft(or)h(inherited)g(from)g(the)h(shell's)f(paren)m(t)225
-4597 y Fp(\017)60 b Ft(curren)m(t)30 b(traps)g(set)h(b)m(y)f
-Fs(trap)225 4735 y Fp(\017)60 b Ft(shell)30 b(parameters)f(that)h(are)g
-(set)g(b)m(y)g(v)-5 b(ariable)30 b(assignmen)m(t)g(or)g(with)f
-Fs(set)f Ft(or)i(inherited)f(from)g(the)330 4845 y(shell's)i(paren)m(t)
-f(in)g(the)h(en)m(vironmen)m(t)225 4983 y Fp(\017)60
-b Ft(shell)44 b(functions)f(de\014ned)f(during)h(execution)i(or)e
-(inherited)h(from)f(the)h(shell's)g(paren)m(t)f(in)h(the)330
-5092 y(en)m(vironmen)m(t)225 5230 y Fp(\017)60 b Ft(options)33
-b(enabled)g(at)h(in)m(v)m(o)s(cation)h(\(either)f(b)m(y)f(default)g(or)
-g(with)g(command-line)g(argumen)m(ts\))h(or)330 5340
-y(b)m(y)c Fs(set)p eop end
-%%Page: 34 40
-TeXDict begin 34 39 bop 150 -116 a Ft(34)2572 b(Bash)31
-b(Reference)g(Man)m(ual)225 299 y Fp(\017)60 b Ft(options)31
-b(enabled)f(b)m(y)g Fs(shopt)f Ft(\(see)j(Section)f(4.3.2)h([The)e
-(Shopt)g(Builtin],)h(page)g(58\))225 429 y Fp(\017)60
-b Ft(shell)31 b(aliases)g(de\014ned)f(with)g Fs(alias)f
-Ft(\(see)i(Section)g(6.6)h([Aliases],)g(page)f(83\))225
-558 y Fp(\017)60 b Ft(v)-5 b(arious)50 b(pro)s(cess)f
+(to)330 5322 y(complete)32 b(and)e(collects)i(its)f(exit)g(status.)p
+eop end
+%%Page: 36 42
+TeXDict begin 36 41 bop 150 -116 a Ft(36)2572 b(Bash)31
+b(Reference)g(Man)m(ual)150 299 y Fj(3.7.3)63 b(Command)41
+b(Execution)f(En)m(vironmen)m(t)150 446 y Ft(The)30 b(shell)g(has)h(an)
+f Fq(execution)h(en)m(vironmen)m(t)r Ft(,)h(whic)m(h)e(consists)h(of)f
+(the)h(follo)m(wing:)225 579 y Fp(\017)60 b Ft(op)s(en)32
+b(\014les)g(inherited)g(b)m(y)h(the)f(shell)h(at)g(in)m(v)m(o)s
+(cation,)j(as)c(mo)s(di\014ed)g(b)m(y)g(redirections)h(supplied)e(to)
+330 688 y(the)g Fs(exec)e Ft(builtin)225 821 y Fp(\017)60
+b Ft(the)28 b(curren)m(t)g(w)m(orking)h(directory)g(as)f(set)h(b)m(y)f
+Fs(cd)p Ft(,)g Fs(pushd)p Ft(,)g(or)g Fs(popd)p Ft(,)g(or)g(inherited)g
+(b)m(y)g(the)h(shell)f(at)330 931 y(in)m(v)m(o)s(cation)225
+1063 y Fp(\017)60 b Ft(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)g
+(as)h(set)g(b)m(y)f Fs(umask)f Ft(or)h(inherited)g(from)g(the)h
+(shell's)f(paren)m(t)225 1196 y Fp(\017)60 b Ft(curren)m(t)30
+b(traps)g(set)h(b)m(y)f Fs(trap)225 1329 y Fp(\017)60
+b Ft(shell)30 b(parameters)f(that)h(are)g(set)g(b)m(y)g(v)-5
+b(ariable)30 b(assignmen)m(t)g(or)g(with)f Fs(set)f Ft(or)i(inherited)f
+(from)g(the)330 1439 y(shell's)i(paren)m(t)f(in)g(the)h(en)m(vironmen)m
+(t)225 1571 y Fp(\017)60 b Ft(shell)44 b(functions)f(de\014ned)f
+(during)h(execution)i(or)e(inherited)h(from)f(the)h(shell's)g(paren)m
+(t)f(in)h(the)330 1681 y(en)m(vironmen)m(t)225 1814 y
+Fp(\017)60 b Ft(options)33 b(enabled)g(at)h(in)m(v)m(o)s(cation)h
+(\(either)f(b)m(y)f(default)g(or)g(with)g(command-line)g(argumen)m
+(ts\))h(or)330 1923 y(b)m(y)c Fs(set)225 2056 y Fp(\017)60
+b Ft(options)31 b(enabled)f(b)m(y)g Fs(shopt)f Ft(\(see)j(Section)f
+(4.3.2)h([The)e(Shopt)g(Builtin],)h(page)g(62\))225 2189
+y Fp(\017)60 b Ft(shell)31 b(aliases)g(de\014ned)f(with)g
+Fs(alias)f Ft(\(see)i(Section)g(6.6)h([Aliases],)g(page)f(87\))225
+2322 y Fp(\017)60 b Ft(v)-5 b(arious)50 b(pro)s(cess)f
Fl(id)p Ft(s,)55 b(including)49 b(those)i(of)e(bac)m(kground)h(jobs)f
-(\(see)i(Section)g(3.2.3)g([Lists],)330 668 y(page)31
+(\(see)i(Section)g(3.2.3)g([Lists],)330 2431 y(page)31
b(9\),)g(the)g(v)-5 b(alue)31 b(of)f Fs($$)p Ft(,)g(and)g(the)h(v)-5
-b(alue)31 b(of)f Fs($PPID)275 817 y Ft(When)k(a)g(simple)h(command)f
+b(alue)31 b(of)f Fs($PPID)275 2587 y Ft(When)k(a)g(simple)h(command)f
(other)g(than)g(a)h(builtin)f(or)g(shell)h(function)f(is)g(to)h(b)s(e)f
-(executed,)i(it)f(is)150 927 y(in)m(v)m(ok)m(ed)25 b(in)f(a)g(separate)
-h(execution)g(en)m(vironmen)m(t)g(that)f(consists)g(of)h(the)f(follo)m
-(wing.)40 b(Unless)24 b(otherwise)150 1037 y(noted,)31
+(executed,)i(it)f(is)150 2697 y(in)m(v)m(ok)m(ed)25 b(in)f(a)g
+(separate)h(execution)g(en)m(vironmen)m(t)g(that)f(consists)g(of)h(the)
+f(follo)m(wing.)40 b(Unless)24 b(otherwise)150 2807 y(noted,)31
b(the)f(v)-5 b(alues)31 b(are)g(inherited)f(from)g(the)g(shell.)225
-1166 y Fp(\017)60 b Ft(the)31 b(shell's)h(op)s(en)e(\014les,)i(plus)e
+2939 y Fp(\017)60 b Ft(the)31 b(shell's)h(op)s(en)e(\014les,)i(plus)e
(an)m(y)h(mo)s(di\014cations)h(and)e(additions)h(sp)s(eci\014ed)g(b)m
-(y)g(redirections)g(to)330 1276 y(the)g(command)225 1406
+(y)g(redirections)g(to)330 3049 y(the)g(command)225 3182
y Fp(\017)60 b Ft(the)31 b(curren)m(t)f(w)m(orking)g(directory)225
-1535 y Fp(\017)60 b Ft(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)225
-1665 y Fp(\017)60 b Ft(shell)32 b(v)-5 b(ariables)33
+3315 y Fp(\017)60 b Ft(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)225
+3447 y Fp(\017)60 b Ft(shell)32 b(v)-5 b(ariables)33
b(and)e(functions)h(mark)m(ed)g(for)g(exp)s(ort,)g(along)h(with)f(v)-5
-b(ariables)32 b(exp)s(orted)g(for)g(the)330 1774 y(command,)e(passed)g
+b(ariables)32 b(exp)s(orted)g(for)g(the)330 3557 y(command,)e(passed)g
(in)g(the)h(en)m(vironmen)m(t)g(\(see)g(Section)g(3.7.4)i([En)m
-(vironmen)m(t],)e(page)g(34\))225 1904 y Fp(\017)60 b
+(vironmen)m(t],)e(page)g(37\))225 3690 y Fp(\017)60 b
Ft(traps)31 b(caugh)m(t)h(b)m(y)f(the)g(shell)h(are)f(reset)h(to)g(the)
f(v)-5 b(alues)32 b(inherited)e(from)h(the)g(shell's)h(paren)m(t,)g
-(and)330 2014 y(traps)e(ignored)h(b)m(y)f(the)g(shell)h(are)g(ignored)
-275 2163 y(A)41 b(command)g(in)m(v)m(ok)m(ed)i(in)e(this)h(separate)g
+(and)330 3799 y(traps)e(ignored)h(b)m(y)f(the)g(shell)h(are)g(ignored)
+275 3955 y(A)41 b(command)g(in)m(v)m(ok)m(ed)i(in)e(this)h(separate)g
(en)m(vironmen)m(t)g(cannot)g(a\013ect)h(the)f(shell's)g(execution)150
-2273 y(en)m(vironmen)m(t.)275 2403 y(Command)35 b(substitution,)j
+4065 y(en)m(vironmen)m(t.)275 4198 y(Command)35 b(substitution,)j
(commands)e(group)s(ed)f(with)i(paren)m(theses,)h(and)e(async)m
-(hronous)g(com-)150 2512 y(mands)c(are)h(in)m(v)m(ok)m(ed)i(in)d(a)i
+(hronous)g(com-)150 4307 y(mands)c(are)h(in)m(v)m(ok)m(ed)i(in)d(a)i
(subshell)e(en)m(vironmen)m(t)h(that)h(is)f(a)g(duplicate)h(of)f(the)g
-(shell)g(en)m(vironmen)m(t,)150 2622 y(except)i(that)g(traps)f(caugh)m
+(shell)g(en)m(vironmen)m(t,)150 4417 y(except)i(that)g(traps)f(caugh)m
(t)h(b)m(y)f(the)h(shell)f(are)g(reset)h(to)g(the)f(v)-5
b(alues)35 b(that)g(the)f(shell)h(inherited)e(from)150
-2731 y(its)g(paren)m(t)f(at)h(in)m(v)m(o)s(cation.)49
+4526 y(its)g(paren)m(t)f(at)h(in)m(v)m(o)s(cation.)49
b(Builtin)32 b(commands)g(that)h(are)g(in)m(v)m(ok)m(ed)h(as)e(part)g
-(of)h(a)f(pip)s(eline)g(are)h(also)150 2841 y(executed)41
+(of)h(a)f(pip)s(eline)g(are)h(also)150 4636 y(executed)41
b(in)f(a)h(subshell)e(en)m(vironmen)m(t.)72 b(Changes)40
b(made)g(to)h(the)g(subshell)e(en)m(vironmen)m(t)i(cannot)150
-2951 y(a\013ect)32 b(the)f(shell's)f(execution)i(en)m(vironmen)m(t.)275
-3080 y(Subshells)24 b(spa)m(wned)h(to)i(execute)g(command)f
+4746 y(a\013ect)32 b(the)f(shell's)f(execution)i(en)m(vironmen)m(t.)275
+4878 y(Subshells)24 b(spa)m(wned)h(to)i(execute)g(command)f
(substitutions)g(inherit)g(the)g(v)-5 b(alue)26 b(of)g(the)h(`)p
-Fs(-e)p Ft(')e(option)150 3190 y(from)20 b(the)h(paren)m(t)g(shell.)37
+Fs(-e)p Ft(')e(option)150 4988 y(from)20 b(the)h(paren)m(t)g(shell.)37
b(When)21 b(not)f(in)h Fl(posix)f Ft(mo)s(de,)i(Bash)f(clears)g(the)g
(`)p Fs(-e)p Ft(')f(option)h(in)g(suc)m(h)f(subshells.)275
-3319 y(If)38 b(a)h(command)f(is)g(follo)m(w)m(ed)j(b)m(y)d(a)h(`)p
+5121 y(If)38 b(a)h(command)f(is)g(follo)m(w)m(ed)j(b)m(y)d(a)h(`)p
Fs(&)p Ft(')g(and)f(job)g(con)m(trol)i(is)e(not)h(activ)m(e,)k(the)c
-(default)g(standard)150 3429 y(input)e(for)g(the)h(command)f(is)h(the)g
+(default)g(standard)150 5230 y(input)e(for)g(the)h(command)f(is)h(the)g
(empt)m(y)g(\014le)f(`)p Fs(/dev/null)p Ft('.)61 b(Otherwise,)39
-b(the)f(in)m(v)m(ok)m(ed)h(command)150 3539 y(inherits)30
+b(the)f(in)m(v)m(ok)m(ed)h(command)150 5340 y(inherits)30
b(the)h(\014le)f(descriptors)g(of)h(the)f(calling)i(shell)f(as)f(mo)s
-(di\014ed)g(b)m(y)g(redirections.)150 3728 y Fj(3.7.4)63
-b(En)m(vironmen)m(t)150 3875 y Ft(When)28 b(a)i(program)e(is)h(in)m(v)m
-(ok)m(ed)h(it)f(is)g(giv)m(en)g(an)g(arra)m(y)g(of)g(strings)f(called)i
-(the)f Fq(en)m(vironmen)m(t)r Ft(.)41 b(This)28 b(is)h(a)150
-3985 y(list)i(of)g(name-v)-5 b(alue)31 b(pairs,)f(of)h(the)f(form)g
-Fs(name=value)p Ft(.)275 4114 y(Bash)39 b(pro)m(vides)g(sev)m(eral)i(w)
-m(a)m(ys)g(to)f(manipulate)f(the)h(en)m(vironmen)m(t.)69
-b(On)38 b(in)m(v)m(o)s(cation,)44 b(the)c(shell)150 4224
-y(scans)g(its)h(o)m(wn)f(en)m(vironmen)m(t)h(and)f(creates)i(a)f
-(parameter)f(for)g(eac)m(h)i(name)e(found,)i(automatically)150
-4334 y(marking)26 b(it)g(for)g Fq(exp)s(ort)h Ft(to)g(c)m(hild)f(pro)s
-(cesses.)39 b(Executed)26 b(commands)g(inherit)g(the)g(en)m(vironmen)m
-(t.)39 b(The)150 4443 y Fs(export)c Ft(and)i(`)p Fs(declare)29
-b(-x)p Ft(')36 b(commands)h(allo)m(w)i(parameters)e(and)g(functions)g
-(to)h(b)s(e)e(added)h(to)h(and)150 4553 y(deleted)21
-b(from)f(the)h(en)m(vironmen)m(t.)38 b(If)20 b(the)h(v)-5
-b(alue)21 b(of)g(a)g(parameter)g(in)f(the)g(en)m(vironmen)m(t)i(is)e
-(mo)s(di\014ed,)i(the)150 4662 y(new)31 b(v)-5 b(alue)32
-b(b)s(ecomes)f(part)h(of)f(the)h(en)m(vironmen)m(t,)g(replacing)h(the)e
-(old.)44 b(The)31 b(en)m(vironmen)m(t)h(inherited)150
-4772 y(b)m(y)f(an)m(y)g(executed)h(command)f(consists)g(of)g(the)g
-(shell's)h(initial)g(en)m(vironmen)m(t,)g(whose)f(v)-5
-b(alues)31 b(ma)m(y)h(b)s(e)150 4882 y(mo)s(di\014ed)26
+(di\014ed)g(b)m(y)g(redirections.)p eop end
+%%Page: 37 43
+TeXDict begin 37 42 bop 150 -116 a Ft(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(37)150 299
+y Fj(3.7.4)63 b(En)m(vironmen)m(t)150 446 y Ft(When)28
+b(a)i(program)e(is)h(in)m(v)m(ok)m(ed)h(it)f(is)g(giv)m(en)g(an)g(arra)
+m(y)g(of)g(strings)f(called)i(the)f Fq(en)m(vironmen)m(t)r
+Ft(.)41 b(This)28 b(is)h(a)150 555 y(list)i(of)g(name-v)-5
+b(alue)31 b(pairs,)f(of)h(the)f(form)g Fs(name=value)p
+Ft(.)275 717 y(Bash)39 b(pro)m(vides)g(sev)m(eral)i(w)m(a)m(ys)g(to)f
+(manipulate)f(the)h(en)m(vironmen)m(t.)69 b(On)38 b(in)m(v)m(o)s
+(cation,)44 b(the)c(shell)150 826 y(scans)g(its)h(o)m(wn)f(en)m
+(vironmen)m(t)h(and)f(creates)i(a)f(parameter)f(for)g(eac)m(h)i(name)e
+(found,)i(automatically)150 936 y(marking)26 b(it)g(for)g
+Fq(exp)s(ort)h Ft(to)g(c)m(hild)f(pro)s(cesses.)39 b(Executed)26
+b(commands)g(inherit)g(the)g(en)m(vironmen)m(t.)39 b(The)150
+1046 y Fs(export)c Ft(and)i(`)p Fs(declare)29 b(-x)p
+Ft(')36 b(commands)h(allo)m(w)i(parameters)e(and)g(functions)g(to)h(b)s
+(e)e(added)h(to)h(and)150 1155 y(deleted)21 b(from)f(the)h(en)m
+(vironmen)m(t.)38 b(If)20 b(the)h(v)-5 b(alue)21 b(of)g(a)g(parameter)g
+(in)f(the)g(en)m(vironmen)m(t)i(is)e(mo)s(di\014ed,)i(the)150
+1265 y(new)31 b(v)-5 b(alue)32 b(b)s(ecomes)f(part)h(of)f(the)h(en)m
+(vironmen)m(t,)g(replacing)h(the)e(old.)44 b(The)31 b(en)m(vironmen)m
+(t)h(inherited)150 1374 y(b)m(y)f(an)m(y)g(executed)h(command)f
+(consists)g(of)g(the)g(shell's)h(initial)g(en)m(vironmen)m(t,)g(whose)f
+(v)-5 b(alues)31 b(ma)m(y)h(b)s(e)150 1484 y(mo)s(di\014ed)26
b(in)g(the)h(shell,)h(less)f(an)m(y)g(pairs)f(remo)m(v)m(ed)i(b)m(y)f
(the)g Fs(unset)e Ft(and)h(`)p Fs(export)j(-n)p Ft(')e(commands,)g
-(plus)150 4991 y(an)m(y)k(additions)f(via)h(the)g Fs(export)d
-Ft(and)i(`)p Fs(declare)f(-x)p Ft(')h(commands.)275 5121
+(plus)150 1594 y(an)m(y)k(additions)f(via)h(the)g Fs(export)d
+Ft(and)i(`)p Fs(declare)f(-x)p Ft(')h(commands.)275 1755
y(The)j(en)m(vironmen)m(t)i(for)f(an)m(y)g(simple)h(command)f(or)g
(function)g(ma)m(y)g(b)s(e)g(augmen)m(ted)h(temp)s(orarily)150
-5230 y(b)m(y)c(pre\014xing)e(it)i(with)g(parameter)g(assignmen)m(ts,)h
+1865 y(b)m(y)c(pre\014xing)e(it)i(with)g(parameter)g(assignmen)m(ts,)h
(as)e(describ)s(ed)g(in)g(Section)i(3.4)g([Shell)e(P)m(arameters],)150
-5340 y(page)g(18.)41 b(These)29 b(assignmen)m(t)i(statemen)m(ts)g
+1974 y(page)g(18.)41 b(These)29 b(assignmen)m(t)i(statemen)m(ts)g
(a\013ect)f(only)g(the)f(en)m(vironmen)m(t)h(seen)g(b)m(y)f(that)h
-(command.)p eop end
-%%Page: 35 41
-TeXDict begin 35 40 bop 150 -116 a Ft(Chapter)30 b(3:)41
-b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(35)275 299
-y(If)27 b(the)h(`)p Fs(-k)p Ft(')g(option)g(is)g(set)g(\(see)h(Section)
-f(4.3.1)i([The)e(Set)g(Builtin],)h(page)f(54\),)i(then)e(all)g
-(parameter)150 408 y(assignmen)m(ts)i(are)g(placed)h(in)e(the)h(en)m
-(vironmen)m(t)g(for)g(a)g(command,)f(not)h(just)f(those)i(that)f
-(precede)g(the)150 518 y(command)g(name.)275 651 y(When)h(Bash)h(in)m
-(v)m(ok)m(es)i(an)e(external)h(command,)f(the)g(v)-5
-b(ariable)33 b(`)p Fs($_)p Ft(')f(is)g(set)h(to)f(the)g(full)g
-(pathname)150 761 y(of)f(the)f(command)g(and)g(passed)g(to)h(that)g
-(command)f(in)g(its)h(en)m(vironmen)m(t.)150 958 y Fj(3.7.5)63
-b(Exit)40 b(Status)150 1105 y Ft(The)26 b(exit)h(status)f(of)g(an)g
+(command.)275 2135 y(If)d(the)h(`)p Fs(-k)p Ft(')g(option)g(is)g(set)g
+(\(see)h(Section)f(4.3.1)i([The)e(Set)g(Builtin],)h(page)f(58\),)i
+(then)e(all)g(parameter)150 2245 y(assignmen)m(ts)i(are)g(placed)h(in)e
+(the)h(en)m(vironmen)m(t)g(for)g(a)g(command,)f(not)h(just)f(those)i
+(that)f(precede)g(the)150 2355 y(command)g(name.)275
+2516 y(When)h(Bash)h(in)m(v)m(ok)m(es)i(an)e(external)h(command,)f(the)
+g(v)-5 b(ariable)33 b(`)p Fs($_)p Ft(')f(is)g(set)h(to)f(the)g(full)g
+(pathname)150 2626 y(of)f(the)f(command)g(and)g(passed)g(to)h(that)g
+(command)f(in)g(its)h(en)m(vironmen)m(t.)150 2852 y Fj(3.7.5)63
+b(Exit)40 b(Status)150 2999 y Ft(The)26 b(exit)h(status)f(of)g(an)g
(executed)h(command)f(is)g(the)h(v)-5 b(alue)26 b(returned)f(b)m(y)h
-(the)g Fq(w)m(aitpid)k Ft(system)d(call)g(or)150 1214
+(the)g Fq(w)m(aitpid)k Ft(system)d(call)g(or)150 3108
y(equiv)-5 b(alen)m(t)33 b(function.)45 b(Exit)32 b(statuses)g(fall)g
(b)s(et)m(w)m(een)h(0)f(and)f(255,)i(though,)f(as)g(explained)g(b)s
-(elo)m(w,)h(the)150 1324 y(shell)i(ma)m(y)g(use)f(v)-5
+(elo)m(w,)h(the)150 3218 y(shell)i(ma)m(y)g(use)f(v)-5
b(alues)35 b(ab)s(o)m(v)m(e)g(125)h(sp)s(ecially)-8 b(.)54
b(Exit)35 b(statuses)g(from)f(shell)h(builtins)f(and)f(comp)s(ound)150
-1433 y(commands)j(are)g(also)h(limited)g(to)g(this)f(range.)58
+3328 y(commands)j(are)g(also)h(limited)g(to)g(this)f(range.)58
b(Under)36 b(certain)h(circumstances,)h(the)e(shell)h(will)f(use)150
-1543 y(sp)s(ecial)31 b(v)-5 b(alues)31 b(to)g(indicate)g(sp)s(eci\014c)
-f(failure)h(mo)s(des.)275 1676 y(F)-8 b(or)32 b(the)g(shell's)g(purp)s
+3437 y(sp)s(ecial)31 b(v)-5 b(alues)31 b(to)g(indicate)g(sp)s(eci\014c)
+f(failure)h(mo)s(des.)275 3599 y(F)-8 b(or)32 b(the)g(shell's)g(purp)s
(oses,)e(a)j(command)e(whic)m(h)h(exits)g(with)g(a)g(zero)g(exit)h
-(status)f(has)f(succeeded.)150 1786 y(A)e(non-zero)h(exit)g(status)g
+(status)f(has)f(succeeded.)150 3708 y(A)e(non-zero)h(exit)g(status)g
(indicates)g(failure.)40 b(This)28 b(seemingly)i(coun)m(ter-in)m
-(tuitiv)m(e)i(sc)m(heme)e(is)f(used)g(so)150 1895 y(there)34
+(tuitiv)m(e)i(sc)m(heme)e(is)f(used)g(so)150 3818 y(there)34
b(is)g(one)g(w)m(ell-de\014ned)g(w)m(a)m(y)g(to)h(indicate)g(success)f
(and)f(a)h(v)-5 b(ariet)m(y)35 b(of)f(w)m(a)m(ys)h(to)f(indicate)h(v)-5
-b(arious)150 2005 y(failure)37 b(mo)s(des.)61 b(When)37
+b(arious)150 3927 y(failure)37 b(mo)s(des.)61 b(When)37
b(a)g(command)g(terminates)h(on)f(a)g(fatal)i(signal)f(whose)f(n)m(um)m
-(b)s(er)e(is)i Fq(N)10 b Ft(,)38 b(Bash)150 2115 y(uses)30
+(b)s(er)e(is)i Fq(N)10 b Ft(,)38 b(Bash)150 4037 y(uses)30
b(the)g(v)-5 b(alue)31 b(128)p Fs(+)p Fq(N)42 b Ft(as)30
-b(the)h(exit)g(status.)275 2248 y(If)k(a)h(command)g(is)g(not)g(found,)
+b(the)h(exit)g(status.)275 4198 y(If)k(a)h(command)g(is)g(not)g(found,)
g(the)g(c)m(hild)h(pro)s(cess)e(created)i(to)g(execute)g(it)g(returns)d
-(a)j(status)f(of)150 2357 y(127.)42 b(If)30 b(a)h(command)f(is)g(found)
+(a)j(status)f(of)150 4308 y(127.)42 b(If)30 b(a)h(command)f(is)g(found)
f(but)h(is)g(not)h(executable,)h(the)f(return)e(status)i(is)f(126.)275
-2491 y(If)i(a)i(command)f(fails)g(b)s(ecause)g(of)h(an)f(error)f
+4469 y(If)i(a)i(command)f(fails)g(b)s(ecause)g(of)h(an)f(error)f
(during)g(expansion)h(or)g(redirection,)i(the)f(exit)g(status)150
-2600 y(is)c(greater)i(than)e(zero.)275 2733 y(The)38
+4579 y(is)c(greater)i(than)e(zero.)275 4740 y(The)38
b(exit)h(status)g(is)g(used)f(b)m(y)g(the)h(Bash)g(conditional)h
-(commands)e(\(see)h(Section)h(3.2.4.2)h([Con-)150 2843
+(commands)e(\(see)h(Section)h(3.2.4.2)h([Con-)150 4850
y(ditional)i(Constructs],)h(page)f(10\))g(and)e(some)i(of)f(the)g(list)
g(constructs)g(\(see)h(Section)f(3.2.3)i([Lists],)150
-2953 y(page)31 b(9\).)275 3086 y(All)40 b(of)g(the)h(Bash)f(builtins)f
+4959 y(page)31 b(9\).)275 5121 y(All)40 b(of)g(the)h(Bash)f(builtins)f
(return)g(an)h(exit)h(status)g(of)f(zero)h(if)f(they)g(succeed)g(and)g
-(a)g(non-zero)150 3196 y(status)34 b(on)f(failure,)i(so)f(they)g(ma)m
+(a)g(non-zero)150 5230 y(status)34 b(on)f(failure,)i(so)f(they)g(ma)m
(y)g(b)s(e)f(used)g(b)m(y)g(the)h(conditional)h(and)e(list)h
-(constructs.)50 b(All)35 b(builtins)150 3305 y(return)29
-b(an)i(exit)g(status)g(of)f(2)h(to)g(indicate)g(incorrect)h(usage.)150
-3502 y Fj(3.7.6)63 b(Signals)150 3649 y Ft(When)36 b(Bash)g(is)h(in)m
-(teractiv)m(e,)j(in)c(the)h(absence)f(of)h(an)m(y)f(traps,)i(it)e
-(ignores)h Fs(SIGTERM)d Ft(\(so)j(that)g(`)p Fs(kill)150
-3758 y(0)p Ft(')c(do)s(es)g(not)g(kill)g(an)g(in)m(teractiv)m(e)j
-(shell\),)f(and)d Fs(SIGINT)f Ft(is)i(caugh)m(t)h(and)f(handled)f(\(so)
-h(that)h(the)f Fs(wait)150 3868 y Ft(builtin)24 b(is)h(in)m
-(terruptible\).)39 b(When)24 b(Bash)g(receiv)m(es)j(a)d
-Fs(SIGINT)p Ft(,)h(it)g(breaks)f(out)h(of)f(an)m(y)h(executing)h(lo)s
-(ops.)150 3978 y(In)31 b(all)h(cases,)h(Bash)f(ignores)g
-Fs(SIGQUIT)p Ft(.)42 b(If)32 b(job)f(con)m(trol)i(is)e(in)h(e\013ect)h
-(\(see)f(Chapter)f(7)h([Job)g(Con)m(trol],)150 4087 y(page)f(93\),)h
-(Bash)e(ignores)h Fs(SIGTTIN)p Ft(,)e Fs(SIGTTOU)p Ft(,)g(and)g
-Fs(SIGTSTP)p Ft(.)275 4220 y(Non-builtin)i(commands)g(started)g(b)m(y)g
-(Bash)h(ha)m(v)m(e)g(signal)g(handlers)e(set)i(to)g(the)g(v)-5
-b(alues)31 b(inherited)150 4330 y(b)m(y)37 b(the)h(shell)g(from)f(its)h
-(paren)m(t.)62 b(When)38 b(job)f(con)m(trol)i(is)e(not)h(in)f
-(e\013ect,)k(async)m(hronous)c(commands)150 4440 y(ignore)f
-Fs(SIGINT)e Ft(and)h Fs(SIGQUIT)e Ft(in)j(addition)f(to)i(these)f
-(inherited)f(handlers.)55 b(Commands)35 b(run)f(as)i(a)150
-4549 y(result)27 b(of)h(command)f(substitution)h(ignore)g(the)g(k)m
-(eyb)s(oard-generated)g(job)g(con)m(trol)h(signals)f
-Fs(SIGTTIN)p Ft(,)150 4659 y Fs(SIGTTOU)p Ft(,)h(and)g
-Fs(SIGTSTP)p Ft(.)275 4792 y(The)h(shell)i(exits)g(b)m(y)f(default)g
-(up)s(on)f(receipt)i(of)f(a)h Fs(SIGHUP)p Ft(.)42 b(Before)32
-b(exiting,)h(an)e(in)m(teractiv)m(e)j(shell)150 4902
-y(resends)41 b(the)i Fs(SIGHUP)e Ft(to)i(all)g(jobs,)i(running)c(or)h
-(stopp)s(ed.)76 b(Stopp)s(ed)41 b(jobs)h(are)h(sen)m(t)g
-Fs(SIGCONT)d Ft(to)150 5011 y(ensure)32 b(that)h(they)g(receiv)m(e)i
-(the)e Fs(SIGHUP)p Ft(.)47 b(T)-8 b(o)33 b(prev)m(en)m(t)g(the)g(shell)
-g(from)g(sending)f(the)h Fs(SIGHUP)e Ft(signal)150 5121
-y(to)i(a)g(particular)g(job,)g(it)g(should)f(b)s(e)g(remo)m(v)m(ed)h
-(from)g(the)f(jobs)g(table)i(with)e(the)h Fs(disown)e
-Ft(builtin)h(\(see)150 5230 y(Section)f(7.2)g([Job)f(Con)m(trol)h
-(Builtins],)g(page)g(94\))h(or)e(mark)m(ed)g(to)h(not)f(receiv)m(e)i
-Fs(SIGHUP)d Ft(using)h Fs(disown)150 5340 y(-h)p Ft(.)p
+(constructs.)50 b(All)35 b(builtins)150 5340 y(return)29
+b(an)i(exit)g(status)g(of)f(2)h(to)g(indicate)g(incorrect)h(usage.)p
eop end
-%%Page: 36 42
-TeXDict begin 36 41 bop 150 -116 a Ft(36)2572 b(Bash)31
-b(Reference)g(Man)m(ual)275 299 y(If)38 b(the)h Fs(huponexit)e
-Ft(shell)i(option)g(has)g(b)s(een)f(set)i(with)f Fs(shopt)e
-Ft(\(see)j(Section)g(4.3.2)h([The)e(Shopt)150 408 y(Builtin],)31
-b(page)g(58\),)h(Bash)f(sends)e(a)i Fs(SIGHUP)e Ft(to)i(all)g(jobs)f
-(when)f(an)i(in)m(teractiv)m(e)i(login)e(shell)g(exits.)275
-543 y(If)38 b(Bash)h(is)g(w)m(aiting)h(for)f(a)g(command)f(to)i
-(complete)g(and)e(receiv)m(es)j(a)e(signal)h(for)e(whic)m(h)h(a)g(trap)
-150 653 y(has)c(b)s(een)f(set,)i(the)f(trap)g(will)g(not)g(b)s(e)f
-(executed)i(un)m(til)f(the)g(command)f(completes.)55
-b(When)35 b(Bash)g(is)150 762 y(w)m(aiting)j(for)f(an)g(async)m
+%%Page: 38 44
+TeXDict begin 38 43 bop 150 -116 a Ft(38)2572 b(Bash)31
+b(Reference)g(Man)m(ual)150 299 y Fj(3.7.6)63 b(Signals)150
+446 y Ft(When)36 b(Bash)g(is)h(in)m(teractiv)m(e,)j(in)c(the)h(absence)
+f(of)h(an)m(y)f(traps,)i(it)e(ignores)h Fs(SIGTERM)d
+Ft(\(so)j(that)g(`)p Fs(kill)150 555 y(0)p Ft(')c(do)s(es)g(not)g(kill)
+g(an)g(in)m(teractiv)m(e)j(shell\),)f(and)d Fs(SIGINT)f
+Ft(is)i(caugh)m(t)h(and)f(handled)f(\(so)h(that)h(the)f
+Fs(wait)150 665 y Ft(builtin)24 b(is)h(in)m(terruptible\).)39
+b(When)24 b(Bash)g(receiv)m(es)j(a)d Fs(SIGINT)p Ft(,)h(it)g(breaks)f
+(out)h(of)f(an)m(y)h(executing)h(lo)s(ops.)150 775 y(In)31
+b(all)h(cases,)h(Bash)f(ignores)g Fs(SIGQUIT)p Ft(.)42
+b(If)32 b(job)f(con)m(trol)i(is)e(in)h(e\013ect)h(\(see)f(Chapter)f(7)h
+([Job)g(Con)m(trol],)150 884 y(page)f(97\),)h(Bash)e(ignores)h
+Fs(SIGTTIN)p Ft(,)e Fs(SIGTTOU)p Ft(,)g(and)g Fs(SIGTSTP)p
+Ft(.)275 1026 y(Non-builtin)i(commands)g(started)g(b)m(y)g(Bash)h(ha)m
+(v)m(e)g(signal)g(handlers)e(set)i(to)g(the)g(v)-5 b(alues)31
+b(inherited)150 1136 y(b)m(y)37 b(the)h(shell)g(from)f(its)h(paren)m
+(t.)62 b(When)38 b(job)f(con)m(trol)i(is)e(not)h(in)f(e\013ect,)k
+(async)m(hronous)c(commands)150 1246 y(ignore)f Fs(SIGINT)e
+Ft(and)h Fs(SIGQUIT)e Ft(in)j(addition)f(to)i(these)f(inherited)f
+(handlers.)55 b(Commands)35 b(run)f(as)i(a)150 1355 y(result)27
+b(of)h(command)f(substitution)h(ignore)g(the)g(k)m(eyb)s
+(oard-generated)g(job)g(con)m(trol)h(signals)f Fs(SIGTTIN)p
+Ft(,)150 1465 y Fs(SIGTTOU)p Ft(,)h(and)g Fs(SIGTSTP)p
+Ft(.)275 1607 y(The)h(shell)i(exits)g(b)m(y)f(default)g(up)s(on)f
+(receipt)i(of)f(a)h Fs(SIGHUP)p Ft(.)42 b(Before)32 b(exiting,)h(an)e
+(in)m(teractiv)m(e)j(shell)150 1717 y(resends)41 b(the)i
+Fs(SIGHUP)e Ft(to)i(all)g(jobs,)i(running)c(or)h(stopp)s(ed.)76
+b(Stopp)s(ed)41 b(jobs)h(are)h(sen)m(t)g Fs(SIGCONT)d
+Ft(to)150 1826 y(ensure)32 b(that)h(they)g(receiv)m(e)i(the)e
+Fs(SIGHUP)p Ft(.)47 b(T)-8 b(o)33 b(prev)m(en)m(t)g(the)g(shell)g(from)
+g(sending)f(the)h Fs(SIGHUP)e Ft(signal)150 1936 y(to)i(a)g(particular)
+g(job,)g(it)g(should)f(b)s(e)g(remo)m(v)m(ed)h(from)g(the)f(jobs)g
+(table)i(with)e(the)h Fs(disown)e Ft(builtin)h(\(see)150
+2045 y(Section)f(7.2)g([Job)f(Con)m(trol)h(Builtins],)g(page)g(98\))h
+(or)e(mark)m(ed)g(to)h(not)f(receiv)m(e)i Fs(SIGHUP)d
+Ft(using)h Fs(disown)150 2155 y(-h)p Ft(.)275 2297 y(If)38
+b(the)h Fs(huponexit)e Ft(shell)i(option)g(has)g(b)s(een)f(set)i(with)f
+Fs(shopt)e Ft(\(see)j(Section)g(4.3.2)h([The)e(Shopt)150
+2407 y(Builtin],)31 b(page)g(62\),)h(Bash)f(sends)e(a)i
+Fs(SIGHUP)e Ft(to)i(all)g(jobs)f(when)f(an)i(in)m(teractiv)m(e)i(login)
+e(shell)g(exits.)275 2549 y(If)38 b(Bash)h(is)g(w)m(aiting)h(for)f(a)g
+(command)f(to)i(complete)g(and)e(receiv)m(es)j(a)e(signal)h(for)e(whic)
+m(h)h(a)g(trap)150 2659 y(has)c(b)s(een)f(set,)i(the)f(trap)g(will)g
+(not)g(b)s(e)f(executed)i(un)m(til)f(the)g(command)f(completes.)55
+b(When)35 b(Bash)g(is)150 2768 y(w)m(aiting)j(for)f(an)g(async)m
(hronous)g(command)g(via)h(the)f Fs(wait)f Ft(builtin,)i(the)g
-(reception)g(of)f(a)g(signal)h(for)150 872 y(whic)m(h)d(a)g(trap)g(has)
-g(b)s(een)f(set)h(will)h(cause)f(the)g Fs(wait)f Ft(builtin)h(to)g
-(return)f(immediately)i(with)f(an)g(exit)150 981 y(status)c(greater)g
-(than)f(128,)i(immediately)g(after)f(whic)m(h)f(the)h(trap)f(is)g
-(executed.)150 1214 y Fr(3.8)68 b(Shell)45 b(Scripts)150
-1373 y Ft(A)30 b(shell)f(script)h(is)f(a)h(text)h(\014le)f(con)m
-(taining)h(shell)f(commands.)40 b(When)29 b(suc)m(h)g(a)h(\014le)g(is)f
-(used)g(as)h(the)g(\014rst)150 1483 y(non-option)i(argumen)m(t)h(when)e
-(in)m(v)m(oking)i(Bash,)g(and)e(neither)h(the)g(`)p Fs(-c)p
-Ft(')g(nor)g(`)p Fs(-s)p Ft(')g(option)g(is)g(supplied)150
-1592 y(\(see)25 b(Section)h(6.1)f([In)m(v)m(oking)h(Bash],)g(page)f
-(75\),)i(Bash)e(reads)f(and)g(executes)i(commands)e(from)g(the)h
-(\014le,)150 1702 y(then)32 b(exits.)46 b(This)32 b(mo)s(de)f(of)i(op)s
+(reception)g(of)f(a)g(signal)h(for)150 2878 y(whic)m(h)d(a)g(trap)g
+(has)g(b)s(een)f(set)h(will)h(cause)f(the)g Fs(wait)f
+Ft(builtin)h(to)g(return)f(immediately)i(with)f(an)g(exit)150
+2987 y(status)c(greater)g(than)f(128,)i(immediately)g(after)f(whic)m(h)
+f(the)h(trap)f(is)g(executed.)150 3231 y Fr(3.8)68 b(Shell)45
+b(Scripts)150 3391 y Ft(A)30 b(shell)f(script)h(is)f(a)h(text)h(\014le)
+f(con)m(taining)h(shell)f(commands.)40 b(When)29 b(suc)m(h)g(a)h
+(\014le)g(is)f(used)g(as)h(the)g(\014rst)150 3500 y(non-option)i
+(argumen)m(t)h(when)e(in)m(v)m(oking)i(Bash,)g(and)e(neither)h(the)g(`)
+p Fs(-c)p Ft(')g(nor)g(`)p Fs(-s)p Ft(')g(option)g(is)g(supplied)150
+3610 y(\(see)25 b(Section)h(6.1)f([In)m(v)m(oking)h(Bash],)g(page)f
+(79\),)i(Bash)e(reads)f(and)g(executes)i(commands)e(from)g(the)h
+(\014le,)150 3720 y(then)32 b(exits.)46 b(This)32 b(mo)s(de)f(of)i(op)s
(eration)f(creates)i(a)e(non-in)m(teractiv)m(e)j(shell.)46
-b(The)31 b(shell)i(\014rst)e(searc)m(hes)150 1812 y(for)d(the)g(\014le)
+b(The)31 b(shell)i(\014rst)e(searc)m(hes)150 3829 y(for)d(the)g(\014le)
g(in)g(the)g(curren)m(t)f(directory)-8 b(,)30 b(and)d(lo)s(oks)i(in)e
(the)i(directories)g(in)e Fs($PATH)g Ft(if)h(not)g(found)e(there.)275
-1946 y(When)34 b(Bash)h(runs)e(a)i(shell)g(script,)g(it)h(sets)f(the)f
+3971 y(When)34 b(Bash)h(runs)e(a)i(shell)g(script,)g(it)h(sets)f(the)f
(sp)s(ecial)i(parameter)f Fs(0)f Ft(to)h(the)g(name)g(of)g(the)g
-(\014le,)150 2056 y(rather)k(than)g(the)h(name)f(of)h(the)f(shell,)j
+(\014le,)150 4081 y(rather)k(than)g(the)h(name)f(of)h(the)f(shell,)j
(and)d(the)h(p)s(ositional)g(parameters)f(are)h(set)g(to)g(the)g
-(remain-)150 2165 y(ing)f(argumen)m(ts,)j(if)d(an)m(y)g(are)g(giv)m
+(remain-)150 4191 y(ing)f(argumen)m(ts,)j(if)d(an)m(y)g(are)g(giv)m
(en.)67 b(If)39 b(no)g(additional)g(argumen)m(ts)h(are)f(supplied,)h
-(the)f(p)s(ositional)150 2275 y(parameters)31 b(are)f(unset.)275
-2409 y(A)39 b(shell)h(script)f(ma)m(y)h(b)s(e)f(made)h(executable)h(b)m
+(the)f(p)s(ositional)150 4300 y(parameters)31 b(are)f(unset.)275
+4442 y(A)39 b(shell)h(script)f(ma)m(y)h(b)s(e)f(made)h(executable)h(b)m
(y)e(using)g(the)h Fs(chmod)e Ft(command)h(to)h(turn)e(on)i(the)150
-2519 y(execute)j(bit.)73 b(When)41 b(Bash)g(\014nds)e(suc)m(h)i(a)h
+4552 y(execute)j(bit.)73 b(When)41 b(Bash)g(\014nds)e(suc)m(h)i(a)h
(\014le)f(while)g(searc)m(hing)h(the)f Fs($PATH)f Ft(for)h(a)h
-(command,)h(it)150 2628 y(spa)m(wns)30 b(a)g(subshell)g(to)h(execute)h
-(it.)41 b(In)30 b(other)g(w)m(ords,)g(executing)390 2763
-y Fs(filename)46 b Fi(arguments)150 2897 y Ft(is)30 b(equiv)-5
-b(alen)m(t)32 b(to)f(executing)390 3032 y Fs(bash)47
-b(filename)e Fi(arguments)150 3166 y Ft(if)30 b Fs(filename)d
+(command,)h(it)150 4662 y(spa)m(wns)30 b(a)g(subshell)g(to)h(execute)h
+(it.)41 b(In)30 b(other)g(w)m(ords,)g(executing)390 4804
+y Fs(filename)46 b Fi(arguments)150 4946 y Ft(is)30 b(equiv)-5
+b(alen)m(t)32 b(to)f(executing)390 5088 y Fs(bash)47
+b(filename)e Fi(arguments)150 5230 y Ft(if)30 b Fs(filename)d
Ft(is)j(an)f(executable)j(shell)e(script.)40 b(This)29
b(subshell)g(reinitializes)i(itself,)g(so)f(that)h(the)e(e\013ect)150
-3276 y(is)36 b(as)h(if)g(a)f(new)g(shell)h(had)f(b)s(een)g(in)m(v)m(ok)
+5340 y(is)36 b(as)h(if)g(a)f(new)g(shell)h(had)f(b)s(een)g(in)m(v)m(ok)
m(ed)h(to)h(in)m(terpret)e(the)h(script,)h(with)e(the)h(exception)h
-(that)f(the)150 3386 y(lo)s(cations)25 b(of)g(commands)e(remem)m(b)s
-(ered)h(b)m(y)g(the)g(paren)m(t)g(\(see)h(the)f(description)g(of)g
-Fs(hash)f Ft(in)h(Section)h(4.1)150 3495 y([Bourne)30
-b(Shell)h(Builtins],)g(page)g(37\))h(are)e(retained)h(b)m(y)f(the)h(c)m
-(hild.)275 3630 y(Most)36 b(v)m(ersions)g(of)g(Unix)f(mak)m(e)h(this)g
-(a)g(part)f(of)h(the)g(op)s(erating)g(system's)f(command)h(execution)
-150 3739 y(mec)m(hanism.)50 b(If)33 b(the)g(\014rst)g(line)h(of)f(a)h
+(that)f(the)p eop end
+%%Page: 39 45
+TeXDict begin 39 44 bop 150 -116 a Ft(Chapter)30 b(3:)41
+b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(39)150 299
+y(lo)s(cations)25 b(of)g(commands)e(remem)m(b)s(ered)h(b)m(y)g(the)g
+(paren)m(t)g(\(see)h(the)f(description)g(of)g Fs(hash)f
+Ft(in)h(Section)h(4.1)150 408 y([Bourne)30 b(Shell)h(Builtins],)g(page)
+g(41\))h(are)e(retained)h(b)m(y)f(the)h(c)m(hild.)275
+543 y(Most)36 b(v)m(ersions)g(of)g(Unix)f(mak)m(e)h(this)g(a)g(part)f
+(of)h(the)g(op)s(erating)g(system's)f(command)h(execution)150
+653 y(mec)m(hanism.)50 b(If)33 b(the)g(\014rst)g(line)h(of)f(a)h
(script)f(b)s(egins)g(with)g(the)g(t)m(w)m(o)i(c)m(haracters)g(`)p
-Fs(#!)p Ft(',)f(the)g(remainder)150 3849 y(of)d(the)g(line)h(sp)s
+Fs(#!)p Ft(',)f(the)g(remainder)150 762 y(of)d(the)g(line)h(sp)s
(eci\014es)e(an)h(in)m(terpreter)g(for)g(the)g(program.)43
b(Th)m(us,)30 b(y)m(ou)h(can)h(sp)s(ecify)e(Bash,)i Fs(awk)p
-Ft(,)e(P)m(erl,)150 3958 y(or)g(some)h(other)g(in)m(terpreter)g(and)e
+Ft(,)e(P)m(erl,)150 872 y(or)g(some)h(other)g(in)m(terpreter)g(and)e
(write)i(the)f(rest)h(of)g(the)f(script)g(\014le)h(in)f(that)h
-(language.)275 4093 y(The)40 b(argumen)m(ts)h(to)g(the)g(in)m
+(language.)275 1006 y(The)40 b(argumen)m(ts)h(to)g(the)g(in)m
(terpreter)g(consist)g(of)g(a)g(single)h(optional)f(argumen)m(t)h
-(follo)m(wing)g(the)150 4203 y(in)m(terpreter)33 b(name)h(on)f(the)g
+(follo)m(wing)g(the)150 1116 y(in)m(terpreter)33 b(name)h(on)f(the)g
(\014rst)f(line)i(of)f(the)g(script)g(\014le,)h(follo)m(w)m(ed)h(b)m(y)
-e(the)g(name)g(of)g(the)h(script)f(\014le,)150 4312 y(follo)m(w)m(ed)g
+e(the)g(name)g(of)g(the)h(script)f(\014le,)150 1225 y(follo)m(w)m(ed)g
(b)m(y)f(the)f(rest)h(of)g(the)f(argumen)m(ts.)45 b(Bash)31
b(will)h(p)s(erform)e(this)i(action)h(on)e(op)s(erating)h(systems)150
-4422 y(that)24 b(do)g(not)f(handle)g(it)h(themselv)m(es.)40
+1335 y(that)24 b(do)g(not)f(handle)g(it)h(themselv)m(es.)40
b(Note)25 b(that)f(some)g(older)g(v)m(ersions)f(of)h(Unix)f(limit)i
-(the)f(in)m(terpreter)150 4531 y(name)30 b(and)g(argumen)m(t)h(to)g(a)g
-(maxim)m(um)f(of)h(32)g(c)m(haracters.)275 4666 y(Bash)h(scripts)g
+(the)f(in)m(terpreter)150 1445 y(name)30 b(and)g(argumen)m(t)h(to)g(a)g
+(maxim)m(um)f(of)h(32)g(c)m(haracters.)275 1579 y(Bash)h(scripts)g
(often)g(b)s(egin)g(with)g Fs(#!)e(/bin/bash)g Ft(\(assuming)i(that)h
-(Bash)f(has)g(b)s(een)f(installed)i(in)150 4775 y(`)p
+(Bash)f(has)g(b)s(een)f(installed)i(in)150 1689 y(`)p
Fs(/bin)p Ft('\),)25 b(since)e(this)g(ensures)f(that)i(Bash)f(will)h(b)
s(e)e(used)h(to)h(in)m(terpret)f(the)g(script,)i(ev)m(en)f(if)f(it)h
-(is)f(executed)150 4885 y(under)29 b(another)h(shell.)p
+(is)f(executed)150 1798 y(under)29 b(another)h(shell.)p
eop end
-%%Page: 37 43
-TeXDict begin 37 42 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(37)150 299 y Fo(4)80
+%%Page: 40 46
+TeXDict begin 40 45 bop 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)150 299 y Fo(4)80
b(Shell)53 b(Builtin)f(Commands)150 541 y Ft(Builtin)34
b(commands)f(are)h(con)m(tained)g(within)f(the)h(shell)g(itself.)50
b(When)34 b(the)f(name)h(of)f(a)h(builtin)f(com-)150
(other)g(c)m(hapters:)69 b(builtin)43 b(commands)h(whic)m(h)150
1473 y(pro)m(vide)23 b(the)h(Bash)f(in)m(terface)i(to)f(the)g(job)f
(con)m(trol)i(facilities)g(\(see)f(Section)h(7.2)f([Job)f(Con)m(trol)h
-(Builtins],)150 1583 y(page)40 b(94\),)j(the)c(directory)h(stac)m(k)g
+(Builtins],)150 1583 y(page)40 b(98\),)j(the)c(directory)h(stac)m(k)g
(\(see)g(Section)g(6.8.1)h([Directory)g(Stac)m(k)f(Builtins],)i(page)e
-(85\),)j(the)150 1692 y(command)23 b(history)h(\(see)g(Section)g(9.2)h
-([Bash)f(History)g(Builtins],)h(page)g(129\),)h(and)d(the)h
+(89\),)j(the)150 1692 y(command)23 b(history)h(\(see)g(Section)g(9.2)h
+([Bash)f(History)g(Builtins],)h(page)g(133\),)h(and)d(the)h
(programmable)150 1802 y(completion)32 b(facilities)g(\(see)g(Section)f
-(8.7)g([Programmable)g(Completion)g(Builtins],)g(page)h(122\).)275
+(8.7)g([Programmable)g(Completion)g(Builtins],)g(page)h(126\).)275
1939 y(Man)m(y)f(of)f(the)h(builtins)e(ha)m(v)m(e)j(b)s(een)e(extended)
g(b)m(y)g Fl(posix)g Ft(or)g(Bash.)275 2076 y(Unless)39
b(otherwise)h(noted,)i(eac)m(h)f(builtin)e(command)g(do)s(cumen)m(ted)g
38 b(This)20 b(builtin)h(is)f(equiv)-5 b(alen)m(t)630
5042 y(to)31 b Fs(source)p Ft(.)150 5204 y Fs(break)870
5340 y(break)46 b([)p Fi(n)11 b Fs(])p eop end
-%%Page: 38 44
-TeXDict begin 38 43 bop 150 -116 a Ft(38)2572 b(Bash)31
+%%Page: 42 48
+TeXDict begin 42 47 bop 150 -116 a Ft(42)2572 b(Bash)31
b(Reference)g(Man)m(ual)630 299 y(Exit)45 b(from)f(a)g
Fs(for)p Ft(,)k Fs(while)p Ft(,)e Fs(until)p Ft(,)h(or)d
Fs(select)f Ft(lo)s(op.)83 b(If)44 b Fq(n)g Ft(is)g(supplied,)j(the)e
630 5340 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)p
eop end
-%%Page: 39 45
-TeXDict begin 39 44 bop 150 -116 a Ft(Chapter)30 b(4:)h(Shell)f
-(Builtin)h(Commands)2079 b(39)630 299 y(zeroth)36 b(argumen)m(t)g
+%%Page: 43 49
+TeXDict begin 43 48 bop 150 -116 a Ft(Chapter)30 b(4:)h(Shell)f
+(Builtin)h(Commands)2079 b(43)630 299 y(zeroth)36 b(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 408 y(The)e(`)p
Fs(-c)p Ft(')h(option)g(causes)g Fq(command)j Ft(to)e(b)s(e)e(executed)
Ft(is)h(set)h(to)g(the)g(index)f(of)g(the)h(\014rst)f(non-option)g
(argumen)m(t,)630 5340 y(and)g Fq(name)35 b Ft(is)c(set)g(to)g(`)p
Fs(?)p Ft('.)p eop end
-%%Page: 40 46
-TeXDict begin 40 45 bop 150 -116 a Ft(40)2572 b(Bash)31
+%%Page: 44 50
+TeXDict begin 44 49 bop 150 -116 a Ft(44)2572 b(Bash)31
b(Reference)g(Man)m(ual)630 299 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 408 y(giv)m(en)h(in)f Fq(args)t Ft(,)h Fs(getopts)e
630 5340 y(if)h(the)h(`)p Fs(-p)p Ft(')f(option)h(is)g(supplied,)e(a)i
(list)g(of)g(all)g(readonly)f(names)h(is)f(prin)m(ted.)41
b(The)30 b(other)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)630 299 y(options)36
+%%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(options)36
b(ma)m(y)g(b)s(e)g(used)f(to)h(restrict)h(the)f(output)f(to)h(a)h
(subset)e(of)h(the)g(set)g(of)g(readonly)630 408 y(names.)63
b(The)37 b(`)p Fs(-p)p Ft(')h(option)g(causes)g(output)f(to)i(b)s(e)e
g(m)m(ust)h(b)s(e)f(a)i(separate)g(argumen)m(t.)41 b(Expressions)630
3959 y(are)26 b(comp)s(osed)f(of)g(the)h(primaries)f(describ)s(ed)f(b)s
(elo)m(w)h(in)g(Section)h(6.4)h([Bash)e(Conditional)630
-4069 y(Expressions],)39 b(page)g(80.)64 b Fs(test)37
+4069 y(Expressions],)39 b(page)g(84.)64 b Fs(test)37
b Ft(do)s(es)g(not)h(accept)i(an)m(y)e(options,)i(nor)e(do)s(es)f(it)h
(accept)630 4178 y(and)30 b(ignore)h(an)f(argumen)m(t)h(of)f(`)p
Fs(--)p Ft(')h(as)f(signifying)h(the)f(end)g(of)h(options.)630
b Fi(expr2)1110 5340 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.)p
eop end
-%%Page: 42 48
-TeXDict begin 42 47 bop 150 -116 a Ft(42)2572 b(Bash)31
+%%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 Fi(expr1)39 b Fs(-o)30
b Fi(expr2)1110 408 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
b(If)33 b(the)h(\014rst)e(argumen)m(t)i(is)g(one)g(of)f(the)h(unary)
1110 1704 y(conditional)42 b(op)s(erators)f(\(see)g(Section)h(6.4)f
([Bash)g(Conditional)g(Expres-)1110 1813 y(sions],)34
-b(page)f(80\),)i(the)e(expression)f(is)h(true)g(if)g(the)g(unary)e
+b(page)f(84\),)i(the)e(expression)f(is)h(true)g(if)g(the)g(unary)e
(test)j(is)f(true.)47 b(If)1110 1923 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 2032 y(false.)630 2192 y(3)e(argumen)m(ts)1110
(order)g(listed.)84 b(If)44 b(the)1110 2411 y(second)f(argumen)m(t)g
(is)g(one)g(of)g(the)g(binary)f(conditional)i(op)s(erators)f(\(see)1110
2521 y(Section)h(6.4)g([Bash)g(Conditional)g(Expressions],)i(page)e
-(80\),)k(the)43 b(result)1110 2630 y(of)h(the)h(expression)f(is)g(the)g
+(84\),)k(the)43 b(result)1110 2630 y(of)h(the)h(expression)f(is)g(the)g
(result)g(of)h(the)f(binary)g(test)h(using)e(the)i(\014rst)1110
2740 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
(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 5181 y(return)29 b(status)i(is)f(zero.)150
5340 y Fs(trap)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)870 299 y Fs(trap)47
+%%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)870 299 y Fs(trap)47
b([-lp])f([)p Fi(arg)11 b Fs(])46 b([)p Fi(sigspec)56
b Fs(...)o(])630 427 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
(function.)37 b(Refer)22 b(to)h(the)g(description)f(of)630
2089 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
-2198 y(page)33 b(58\))g(for)f(details)h(of)f(its)h(e\013ect)g(on)f(the)
+2198 y(page)33 b(62\))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 2308 y(command)h
Fq(arg)41 b Ft(is)33 b(executed)g(eac)m(h)h(time)f(a)g(shell)g
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 5194 y(of)d Fs(755)p
Ft(.)150 5340 y Fs(unset)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(unset)46 b([-fv])h([)p
-Fi(name)11 b Fs(])630 435 y Ft(Remo)m(v)m(e)32 b(eac)m(h)g(v)-5
+%%Page: 48 54
+TeXDict begin 48 53 bop 150 -116 a Ft(48)2572 b(Bash)31
+b(Reference)g(Man)m(ual)870 299 y Fs(unset)46 b([-fnv])g([)p
+Fi(name)11 b Fs(])630 426 y Ft(Remo)m(v)m(e)32 b(eac)m(h)g(v)-5
b(ariable)32 b(or)e(function)h Fq(name)5 b Ft(.)42 b(If)30
b(the)h(`)p Fs(-v)p Ft(')f(option)h(is)g(giv)m(en,)h(eac)m(h)g
-Fq(name)630 545 y Ft(refers)20 b(to)i(a)f(shell)g(v)-5
+Fq(name)630 536 y Ft(refers)20 b(to)i(a)f(shell)g(v)-5
b(ariable)21 b(and)g(that)g(v)-5 b(ariable)22 b(is)e(rem)m(v)m(o)m(v)m
(ed.)40 b(If)20 b(the)h(`)p Fs(-f)p Ft(')g(option)g(is)g(giv)m(en,)630
-654 y(the)37 b Fq(name)5 b Ft(s)37 b(refer)f(to)i(shell)f(functions,)h
+645 y(the)37 b Fq(name)5 b Ft(s)37 b(refer)f(to)i(shell)f(functions,)h
(and)e(the)h(function)g(de\014nition)f(is)h(remo)m(v)m(ed.)61
-b(If)630 764 y(no)33 b(options)h(are)g(supplied,)f(eac)m(h)h
-Fq(name)k Ft(refers)33 b(to)h(a)g(v)-5 b(ariable;)36
-b(if)d(there)h(is)f(no)g(v)-5 b(ariable)630 873 y(b)m(y)34
-b(that)h(name,)h(an)m(y)f(function)f(with)h(that)g(name)f(is)h(unset.)
-52 b(Readonly)35 b(v)-5 b(ariables)36 b(and)630 983 y(functions)23
-b(ma)m(y)h(not)g(b)s(e)f(unset.)38 b(The)23 b(return)f(status)i(is)f
-(zero)h(unless)f(a)h Fq(name)29 b Ft(is)23 b(readonly)-8
-b(.)150 1220 y Fr(4.2)68 b(Bash)45 b(Builtin)g(Commands)150
-1380 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
-1489 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 1654 y Fs(alias)870
-1790 y(alias)46 b([-p])h([)p Fi(name)11 b Fs([=)p Fi(value)g
-Fs(])43 b(...)o(])630 1926 y Ft(Without)h(argumen)m(ts)f(or)g(with)g
+b(If)630 755 y(the)30 b(`)p Fs(-n)p Ft(')f(option)h(is)g(supplied,)e
+(and)h Fq(name)35 b Ft(is)30 b(a)g(v)-5 b(ariable)30
+b(with)f(the)h Fq(nameref)47 b Ft(attribute,)630 864
+y Fq(name)39 b Ft(will)33 b(b)s(e)g(unset)g(rather)h(than)f(the)g(v)-5
+b(ariable)35 b(it)f(references.)50 b(`)p Fs(-n)p Ft(')33
+b(has)h(no)f(e\013ect)i(if)630 974 y(the)h(`)p Fs(-f)p
+Ft(')g(option)h(is)f(supplied.)56 b(If)36 b(no)g(options)g(are)g
+(supplied,)h(eac)m(h)g Fq(name)k Ft(refers)36 b(to)h(a)630
+1084 y(v)-5 b(ariable;)37 b(if)d(there)g(is)g(no)g(v)-5
+b(ariable)34 b(b)m(y)g(that)h(name,)g(an)m(y)f(function)g(with)f(that)i
+(name)f(is)630 1193 y(unset.)46 b(Readonly)33 b(v)-5
+b(ariables)33 b(and)e(functions)h(ma)m(y)h(not)g(b)s(e)e(unset.)47
+b(The)31 b(return)h(status)630 1303 y(is)e(zero)i(unless)d(a)i
+Fq(name)36 b Ft(is)30 b(readonly)-8 b(.)150 1520 y Fr(4.2)68
+b(Bash)45 b(Builtin)g(Commands)150 1680 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 1789 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 1934 y Fs(alias)870 2061
+y(alias)46 b([-p])h([)p Fi(name)11 b Fs([=)p Fi(value)g
+Fs(])43 b(...)o(])630 2188 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 2036 y(on)36 b(the)g(standard)f(output)h(in)f
+(list)h(of)f(aliases)630 2298 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 2145 y(argumen)m(ts)29 b(are)g(supplied,)f(an)h
+(input.)56 b(If)630 2407 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 2255 y(If)39
+b Fq(v)-5 b(alue)35 b Ft(is)29 b(giv)m(en.)630 2517 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 2364 y(describ)s(ed)29 b(in)h(Section)i(6.6)f
-([Aliases],)h(page)f(83.)150 2527 y Fs(bind)870 2663
+b(Aliases)41 b(are)630 2627 y(describ)s(ed)29 b(in)h(Section)i(6.6)f
+([Aliases],)h(page)f(87.)150 2771 y Fs(bind)870 2898
y(bind)47 b([-m)g Fi(keymap)11 b Fs(])45 b([-lpsvPSVX])870
-2773 y(bind)i([-m)g Fi(keymap)11 b Fs(])45 b([-q)i Fi(function)11
+3008 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 2883 y(bind)47 b([-m)g Fi(keymap)11 b Fs(])45
-b(-f)i Fi(filename)870 2992 y Fs(bind)g([-m)g Fi(keymap)11
-b Fs(])45 b(-x)i Fi(keyseq:shell-command)870 3102 y Fs(bind)g([-m)g
+b Fs(])870 3118 y(bind)47 b([-m)g Fi(keymap)11 b Fs(])45
+b(-f)i Fi(filename)870 3227 y Fs(bind)g([-m)g Fi(keymap)11
+b Fs(])45 b(-x)i Fi(keyseq:shell-command)870 3337 y Fs(bind)g([-m)g
Fi(keymap)11 b Fs(])45 b Fi(keyseq:function-name)870
-3211 y Fs(bind)i Fi(readline-command)630 3347 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(97\))g(k)m(ey)630 3457 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 3567 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 3676 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 3786 y(File],)c(page)d(100\),)j(but)c(eac)m(h)h(binding)f(or)g
-(command)h(m)m(ust)f(b)s(e)g(passed)g(as)h(a)g(separate)630
-3895 y(argumen)m(t;)31 b(e.g.,)h(`)p Fs("\\C-x\\C-r":re-read-init-f)o
-(ile)p Ft('.)630 4032 y(Options,)e(if)h(supplied,)e(ha)m(v)m(e)i(the)g
-(follo)m(wing)h(meanings:)630 4194 y Fs(-m)e Fi(keymap)1110
-4304 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 4413
-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 4523
-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
-4633 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 4742 y(to)31 b Fs(emacs-standard)p
-Ft(.)630 4905 y Fs(-l)384 b Ft(List)31 b(the)f(names)g(of)h(all)g
-(Readline)g(functions.)630 5068 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 5177 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 5340
-y Fs(-P)384 b Ft(List)31 b(curren)m(t)f(Readline)h(function)f(names)g
-(and)g(bindings.)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(-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
-408 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 571 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 733 y Fs(-s)384 b Ft(Displa)m(y)39 b(Readline)f(k)m(ey)g
+3446 y Fs(bind)i Fi(readline-command)630 3573 y Ft(Displa)m(y)22
+b(curren)m(t)f(Readline)h(\(see)f(Chapter)g(8)g([Command)f(Line)h
+(Editing],)j(page)e(101\))g(k)m(ey)630 3683 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 3793 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 3902 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 4012 y(File],)c(page)d(104\),)j(but)c(eac)m(h)h
+(binding)f(or)g(command)h(m)m(ust)f(b)s(e)g(passed)g(as)h(a)g(separate)
+630 4121 y(argumen)m(t;)31 b(e.g.,)h(`)p Fs
+("\\C-x\\C-r":re-read-init-f)o(ile)p Ft('.)630 4249 y(Options,)e(if)h
+(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630
+4393 y Fs(-m)e Fi(keymap)1110 4503 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 4612 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 4722 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 4832 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 4941
+y(to)31 b Fs(emacs-standard)p Ft(.)630 5086 y Fs(-l)384
+b Ft(List)31 b(the)f(names)g(of)h(all)g(Readline)g(functions.)630
+5230 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
+5340 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.)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)630 299 y Fs(-P)384
+b Ft(List)31 b(curren)m(t)f(Readline)h(function)f(names)g(and)g
+(bindings.)630 458 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 568 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
+727 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 886 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 995 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 1105 y(Readline)d(initialization)i(\014le.)
+630 1264 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
-843 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 953 y(Readline)d
-(initialization)i(\014le.)630 1115 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 1225 y(they)31 b(output.)630 1387 y Fs(-f)f
-Fi(filename)1110 1497 y Ft(Read)h(k)m(ey)g(bindings)e(from)h
-Fq(\014lename)5 b Ft(.)630 1659 y Fs(-q)30 b Fi(function)1110
-1769 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 1931 y Fs(-u)g
-Fi(function)1110 2041 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 2203 y Fs(-r)g
-Fi(keyseq)1110 2313 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 2476 y Fs(-x)g Fi(keyseq:shell-command)
-1110 2585 y Ft(Cause)35 b Fq(shell-command)k Ft(to)d(b)s(e)f(executed)h
+1374 y(they)31 b(output.)630 1533 y Fs(-f)f Fi(filename)1110
+1642 y Ft(Read)h(k)m(ey)g(bindings)e(from)h Fq(\014lename)5
+b Ft(.)630 1801 y Fs(-q)30 b Fi(function)1110 1911 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 2070 y Fs(-u)g Fi(function)1110
+2180 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 2339 y Fs(-r)g Fi(keyseq)1110
+2448 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 2607 y Fs(-x)g Fi(keyseq:shell-command)1110
+2717 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
-2695 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 2804
+2826 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 2936
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 2914
+(the)g(Readline)g(line)g(bu\013er)f(and)g(the)1110 3046
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 3023 y(p)s(oin)m(t.)59
+(lo)s(cation)h(of)f(the)g(insertion)1110 3155 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 3133 y(LINE)29 b Ft(or)h
+b(alue)37 b(of)f Fs(READLINE_)1110 3265 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 3243 y(editing)h(state.)
-630 3405 y Fs(-X)384 b Ft(List)27 b(all)i(k)m(ey)f(sequences)f(b)s
+b(will)f(b)s(e)f(re\015ected)i(in)f(the)1110 3374 y(editing)h(state.)
+630 3534 y Fs(-X)384 b Ft(List)27 b(all)i(k)m(ey)f(sequences)f(b)s
(ound)e(to)j(shell)g(commands)e(and)h(the)g(asso)s(ciated)1110
-3515 y(commands)j(in)g(a)h(format)g(that)f(can)h(b)s(e)f(reused)f(as)i
-(input.)630 3677 y(The)26 b(return)f(status)i(is)f(zero)i(unless)d(an)i
+3643 y(commands)j(in)g(a)h(format)g(that)f(can)h(b)s(e)f(reused)f(as)i
+(input.)630 3802 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 3840 y Fs(builtin)870 3976 y(builtin)46 b([)p
-Fi(shell-builtin)54 b Fs([)p Fi(args)11 b Fs(]])630 4112
+(ccurs.)150 3961 y Fs(builtin)870 4096 y(builtin)46 b([)p
+Fi(shell-builtin)54 b Fs([)p Fi(args)11 b Fs(]])630 4230
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 4221 y(when)29 b(de\014ning)h(a)g(shell)h(function)f
+b(is)g(useful)630 4340 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
-4331 y(the)k(functionalit)m(y)h(of)f(the)f(builtin)g(within)g(the)h
+4449 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
-4441 y(zero)e(if)g Fq(shell-builtin)f Ft(is)g(not)h(a)g(shell)f
-(builtin)g(command.)150 4603 y Fs(caller)870 4739 y(caller)46
-b([)p Fi(expr)11 b Fs(])630 4875 y Ft(Returns)34 b(the)g(con)m(text)j
+4559 y(zero)e(if)g Fq(shell-builtin)f Ft(is)g(not)h(a)g(shell)f
+(builtin)g(command.)150 4718 y Fs(caller)870 4852 y(caller)46
+b([)p Fi(expr)11 b Fs(])630 4986 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 4985 y(executed)c(with)f(the)h Fs(.)f
-Ft(or)g Fs(source)f Ft(builtins\).)630 5121 y(Without)45
+(or)h(a)g(script)630 5096 y(executed)c(with)f(the)h Fs(.)f
+Ft(or)g Fs(source)f Ft(builtins\).)630 5230 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
-5230 y(curren)m(t)35 b(subroutine)f(call.)56 b(If)35
+5340 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 5340 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)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(that)k(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 408 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 550
-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
-660 y Ft(do)s(es)g(not)h(corresp)s(ond)e(to)i(a)g(v)-5
+Fq(expr)7 b Ft(,)36 b Fs(caller)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(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 408 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 518 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 653 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 763 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
-834 y Fs(command)870 976 y(command)46 b([-pVv])g Fi(command)56
-b Fs([)p Fi(arguments)g Fs(...)o(])630 1118 y Ft(Runs)31
+924 y Fs(command)870 1060 y(command)46 b([-pVv])g Fi(command)56
+b Fs([)p Fi(arguments)g Fs(...)o(])630 1195 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 1227
+(shell)g(function)f(named)g Fq(command)t Ft(.)630 1305
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 1337 y(executed.)g(If)23
+h(searc)m(hing)h(the)f Fs(PATH)f Ft(are)630 1414 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
-1446 y(function)33 b(will)g(execute)i(the)f(external)g(command)f
+1524 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
-1556 y(recursiv)m(ely)-8 b(.)84 b(The)44 b(`)p Fs(-p)p
+1633 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 1666 y(guaran)m(teed)35
+b(alue)45 b(for)f Fs(PATH)g Ft(that)h(is)630 1743 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 1775
+b(The)33 b(return)g(status)h(in)f(this)h(case)630 1852
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
-1885 y Fq(command)34 b Ft(otherwise.)630 2027 y(If)25
+1962 y Fq(command)34 b Ft(otherwise.)630 2097 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 2136 y(The)i(`)p
+Fq(command)i Ft(is)d(prin)m(ted.)630 2207 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 2246 y(to)36
+(the)f(command)g(or)g(\014le)g(name)g(used)630 2317 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 2355 y(description.)61 b(In)36 b(this)h(case,)j(the)e(return)e
+(ose)630 2426 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
-2465 y(non-zero)31 b(if)f(not.)150 2639 y Fs(declare)870
-2781 y(declare)46 b([-aAfFgilrtux])e([-p])i([)p Fi(name)11
-b Fs([=)p Fi(value)g Fs(])44 b(...)o(])630 2923 y Ft(Declare)29
+2536 y(non-zero)31 b(if)f(not.)150 2697 y Fs(declare)870
+2832 y(declare)46 b([-aAfFgilnrtux])d([-p])k([)p Fi(name)11
+b Fs([=)p Fi(value)g Fs(])43 b(...)o(])630 2968 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 3032 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31
-b(instead.)630 3174 y(The)c(`)p Fs(-p)p Ft(')h(option)g(will)g(displa)m
+(y)630 3077 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31
+b(instead.)630 3213 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
-3284 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 3425 y(When)36
+3322 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 3458 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
-3535 y(tributes)31 b(and)f(v)-5 b(alues)31 b(of)g(all)h(v)-5
+3567 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 3645 y(tional)h(options.)41 b(If)30
+(the)g(addi-)630 3677 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
-3754 y(the)f(attributes)g(and)e(v)-5 b(alues)30 b(of)g(all)g(shell)g(v)
+3786 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 3864 y(displa)m(y)h(to)g(shell)f(functions.)630
-4006 y(The)36 b(`)p Fs(-F)p Ft(')h(option)g(inhibits)f(the)h(displa)m
+(restrict)g(the)630 3896 y(displa)m(y)h(to)g(shell)f(functions.)630
+4031 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
-4115 y(name)30 b(and)f(attributes)i(are)f(prin)m(ted.)40
+4141 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 4225 y Fs(shopt)24 b Ft(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f
-(Builtin],)k(page)e(58\),)i(the)d(source)h(\014le)f(name)h(and)630
-4334 y(line)38 b(n)m(um)m(b)s(er)e(where)i(the)g(function)f(is)h
+630 4251 y Fs(shopt)24 b Ft(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f
+(Builtin],)k(page)e(62\),)i(the)d(source)h(\014le)f(name)h(and)630
+4360 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 4444 y(`)p Fs(-f)p
-Ft('.)630 4586 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 4470 y(`)p Fs(-f)p
+Ft('.)630 4605 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 4695 y(ev)m(en)k(when)e Fs(declare)f
+(global)h(scop)s(e,)630 4715 y(ev)m(en)k(when)e Fs(declare)f
Ft(is)j(executed)g(in)f(a)g(shell)h(function.)61 b(It)37
-b(is)g(ignored)h(in)f(all)h(other)630 4805 y(cases.)630
-4947 y(The)27 b(follo)m(wing)h(options)g(can)f(b)s(e)g(used)f(to)i
+b(is)g(ignored)h(in)f(all)h(other)630 4824 y(cases.)630
+4960 y(The)27 b(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 5056 y(i\014ed)j(attributes)h(or)f(to)h(giv)m(e)h(v)-5
+630 5069 y(i\014ed)j(attributes)h(or)f(to)h(giv)m(e)h(v)-5
b(ariables)31 b(attributes:)630 5230 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
-5340 y(page)31 b(84\).)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 Fs(-A)384
+5340 y(page)31 b(88\).)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(-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
-408 y(page)31 b(84\).)630 564 y Fs(-f)384 b Ft(Use)31
-b(function)f(names)g(only)-8 b(.)630 719 y Fs(-i)384
+408 y(page)31 b(88\).)630 566 y Fs(-f)384 b Ft(Use)31
+b(function)f(names)g(only)-8 b(.)630 723 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
-829 y(\(see)29 b(Section)f(6.5)h([Shell)f(Arithmetic],)i(page)e(82\))h
-(is)f(p)s(erformed)e(when)h(the)1110 938 y(v)-5 b(ariable)31
-b(is)g(assigned)f(a)h(v)-5 b(alue.)630 1093 y Fs(-l)384
+833 y(\(see)29 b(Section)f(6.5)h([Shell)f(Arithmetic],)i(page)e(86\))h
+(is)f(p)s(erformed)e(when)h(the)1110 942 y(v)-5 b(ariable)31
+b(is)g(assigned)f(a)h(v)-5 b(alue.)630 1099 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
-1203 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 1358
-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 1468 y(b)m(y)30 b(subsequen)m(t)g(assignmen)m(t)h
-(statemen)m(ts)h(or)f(unset.)630 1623 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 1733
-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 1842 y(has)h(no)g(sp)s
-(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630 1998 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
-2107 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 2262
+1209 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 1366
+y Fs(-n)384 b Ft(Giv)m(e)28 b(eac)m(h)g Fq(name)k Ft(the)27
+b Fq(nameref)44 b Ft(attribute,)28 b(making)f(it)h(a)f(name)f
+(reference)1110 1476 y(to)32 b(another)g(v)-5 b(ariable.)46
+b(That)31 b(other)h(v)-5 b(ariable)33 b(is)f(de\014ned)e(b)m(y)i(the)g
+(v)-5 b(alue)32 b(of)1110 1585 y Fq(name)5 b Ft(.)39
+b(All)25 b(references)f(and)g(assignmen)m(ts)h(to)g Fq(name)5
+b Ft(,)26 b(except)f(for)f(c)m(hanging)1110 1695 y(the)38
+b(`)p Fs(-n)p Ft(')f(attribute)h(itself,)i(are)e(p)s(erformed)e(on)h
+(the)h(v)-5 b(ariable)38 b(referenced)1110 1805 y(b)m(y)j
+Fq(name)5 b Ft('s)41 b(v)-5 b(alue.)74 b(The)41 b(`)p
+Fs(-n)p Ft(')g(attribute)g(cannot)h(b)s(e)f(applied)g(to)g(arra)m(y)
+1110 1914 y(v)-5 b(ariables.)630 2071 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
+2181 y(b)m(y)30 b(subsequen)m(t)g(assignmen)m(t)h(statemen)m(ts)h(or)f
+(unset.)630 2338 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 2448 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 2557 y(has)h(no)g(sp)s(ecial)h
+(meaning)g(for)f(v)-5 b(ariables.)630 2715 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
+2824 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 2981
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
-2372 y(ronmen)m(t.)630 2527 y(Using)e(`)p Fs(+)p Ft(')h(instead)f(of)g
+3091 y(ronmen)m(t.)630 3248 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 2637 y(`)p Fs(+a)p Ft(')h(ma)m(y)h(not)f
+(the)g(exceptions)h(that)630 3358 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 2746 y(readonly)e(attribute.)41 b(When)30 b(used)f(in)g(a)h
+(the)630 3467 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 2856 y(as)30 b(with)g(the)h Fs(local)e
+b Ft(lo)s(cal,)630 3577 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 2966 y(is)f(follo)m(w)m(ed)i
+b(If)29 b(a)i(v)-5 b(ariable)31 b(name)630 3687 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 3098 y(The)35 b(return)f(status)i(is)g
+Fq(v)-5 b(alue)5 b Ft(.)630 3820 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 3208 y(is)c(made)g(to)g(de\014ne)f(a)h
+(tered,)h(an)f(attempt)630 3930 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 3317 y(a)42 b(v)-5 b(alue)43
+(made)g(to)h(assign)630 4039 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 3427
+g(to)h(assign)f(a)h(v)-5 b(alue)42 b(to)h(an)630 4149
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
-3536 y([Arra)m(ys],)47 b(page)c(84\),)48 b(one)43 b(of)g(the)g
+4258 y([Arra)m(ys],)47 b(page)c(88\),)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 3646 y(attempt)28 b(is)f(made)h(to)f
+b(ariable)44 b(name,)i(an)630 4368 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 3756 y(is)h(made)h(to)g(turn)e(o\013)i
+b(ariable,)29 b(an)e(attempt)630 4478 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 3865 y(displa)m(y)j(a)f
+b(or)e(an)g(attempt)i(is)e(made)g(to)630 4587 y(displa)m(y)j(a)f
(non-existen)m(t)i(function)e(with)g(`)p Fs(-f)p Ft('.)150
-4020 y Fs(echo)870 4153 y(echo)47 b([-neE])f([)p Fi(arg)57
-b Fs(...)o(])630 4285 y Ft(Output)31 b(the)i Fq(arg)8
+4744 y Fs(echo)870 4878 y(echo)47 b([-neE])f([)p Fi(arg)57
+b Fs(...)o(])630 5011 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 4395 y(status)27 b(is)g(0)h(unless)e
+(newline.)47 b(The)32 b(return)630 5121 y(status)27 b(is)g(0)h(unless)e
(a)i(write)f(error)f(o)s(ccurs.)40 b(If)26 b(`)p Fs(-n)p
Ft(')h(is)g(sp)s(eci\014ed,)h(the)f(trailing)h(newline)f(is)630
-4504 y(suppressed.)37 b(If)24 b(the)g(`)p Fs(-e)p Ft(')h(option)g(is)f
+5230 y(suppressed.)37 b(If)24 b(the)g(`)p Fs(-e)p Ft(')h(option)g(is)f
(giv)m(en,)j(in)m(terpretation)f(of)e(the)h(follo)m(wing)h(bac)m
-(kslash-)630 4614 y(escap)s(ed)38 b(c)m(haracters)i(is)f(enabled.)65
+(kslash-)630 5340 y(escap)s(ed)38 b(c)m(haracters)i(is)f(enabled.)65
b(The)38 b(`)p Fs(-E)p Ft(')g(option)h(disables)f(the)h(in)m
-(terpretation)h(of)630 4724 y(these)27 b(escap)s(e)g(c)m(haracters,)i
+(terpretation)h(of)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(these)c(escap)s(e)g(c)m(haracters,)i
(ev)m(en)e(on)g(systems)f(where)g(they)h(are)g(in)m(terpreted)g(b)m(y)f
-(default.)630 4833 y(The)32 b Fs(xpg_echo)f Ft(shell)i(option)g(ma)m(y)
-h(b)s(e)e(used)g(to)h(dynamically)h(determine)f(whether)f(or)630
-4943 y(not)h Fs(echo)f Ft(expands)g(these)h(escap)s(e)h(c)m(haracters)g
+(default.)630 408 y(The)32 b Fs(xpg_echo)f Ft(shell)i(option)g(ma)m(y)h
+(b)s(e)e(used)g(to)h(dynamically)h(determine)f(whether)f(or)630
+518 y(not)h Fs(echo)f Ft(expands)g(these)h(escap)s(e)h(c)m(haracters)g
(b)m(y)f(default.)48 b Fs(echo)32 b Ft(do)s(es)g(not)i(in)m(terpret)630
-5052 y(`)p Fs(--)p Ft(')c(to)h(mean)g(the)f(end)g(of)h(options.)630
-5185 y Fs(echo)e Ft(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e)f
-(sequences:)630 5340 y Fs(\\a)384 b Ft(alert)31 b(\(b)s(ell\))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 Fs(\\b)384 b Ft(bac)m(kspace)630
-454 y Fs(\\c)g Ft(suppress)28 b(further)h(output)630
-608 y Fs(\\e)630 718 y(\\E)384 b Ft(escap)s(e)630 873
-y Fs(\\f)g Ft(form)30 b(feed)630 1027 y Fs(\\n)384 b
-Ft(new)30 b(line)630 1182 y Fs(\\r)384 b Ft(carriage)32
-b(return)630 1337 y Fs(\\t)384 b Ft(horizon)m(tal)32
-b(tab)630 1491 y Fs(\\v)384 b Ft(v)m(ertical)32 b(tab)630
-1646 y Fs(\\\\)384 b Ft(bac)m(kslash)630 1801 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 1910 y(three)e(o)s(ctal)g(digits\))630
-2065 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 2175 y Ft(\(one)31 b(or)f(t)m(w)m(o)i(hex)e
-(digits\))630 2329 y Fs(\\u)p Fi(HHHH)192 b Ft(the)41
+628 y(`)p Fs(--)p Ft(')c(to)h(mean)g(the)f(end)g(of)h(options.)630
+759 y Fs(echo)e Ft(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e)f
+(sequences:)630 913 y Fs(\\a)384 b Ft(alert)31 b(\(b)s(ell\))630
+1066 y Fs(\\b)384 b Ft(bac)m(kspace)630 1219 y Fs(\\c)g
+Ft(suppress)28 b(further)h(output)630 1373 y Fs(\\e)630
+1482 y(\\E)384 b Ft(escap)s(e)630 1636 y Fs(\\f)g Ft(form)30
+b(feed)630 1789 y Fs(\\n)384 b Ft(new)30 b(line)630 1943
+y Fs(\\r)384 b Ft(carriage)32 b(return)630 2096 y Fs(\\t)384
+b Ft(horizon)m(tal)32 b(tab)630 2250 y Fs(\\v)384 b Ft(v)m(ertical)32
+b(tab)630 2403 y Fs(\\\\)384 b Ft(bac)m(kslash)630 2556
+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 2666 y(three)e(o)s(ctal)g
+(digits\))630 2819 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 2929 y Ft(\(one)31 b(or)f(t)m(w)m(o)i(hex)e
+(digits\))630 3082 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 2439 y(adecimal)32 b(v)-5
+b(alue)41 b(is)g(the)g(hex-)1110 3192 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
-2594 y Fs(\\U)p Fi(HHHHHHHH)1110 2703 y Ft(the)41 b(Unico)s(de)g
+3345 y Fs(\\U)p Fi(HHHHHHHH)1110 3455 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 2813 y(adecimal)32 b(v)-5 b(alue)31
+b(is)g(the)g(hex-)1110 3565 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
-2968 y Fs(enable)870 3100 y(enable)46 b([-a])h([-dnps])f([-f)g
+3718 y Fs(enable)870 3850 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
-3232 y Ft(Enable)36 b(and)f(disable)h(builtin)g(shell)g(commands.)56
+3981 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
-3342 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 3451 y(sp)s(ecifying)27
+4091 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 4200 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 3561 y(b)s(efore)32
+(searc)m(hes)h(for)f(builtins)630 4310 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
-3670 y Fq(name)5 b Ft(s)44 b(are)h(enabled.)82 b(F)-8
+4419 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 3780 y Ft(instead)31 b(of)f(the)h(shell)f(builtin)g
+(via)h Fs($PATH)630 4529 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 3912 y(If)42 b(the)h(`)p Fs(-p)p Ft(')f(option)h(is)f
+Ft('.)630 4661 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 4022 y(builtins)37 b(is)h(prin)m(ted.)63
+(list)g(of)g(shell)630 4770 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 4131 y(shell)33 b(builtins.)46 b(The)32
+(all)h(enabled)630 4880 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 4241 y(whether)c(or)g(not)h(it)g(is)f
-(enabled.)630 4373 y(The)40 b(`)p Fs(-f)p Ft(')g(option)g(means)g(to)h
+(with)g(an)g(indication)i(of)630 4989 y(whether)c(or)g(not)h(it)g(is)f
+(enabled.)630 5121 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 4483 y(ob)5 b(ject)26 b Fq(\014lename)5
+Ft(from)40 b(shared)630 5230 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 4592
+b(The)25 b(`)p Fs(-d)p Ft(')h(option)g(will)630 5340
y(delete)32 b(a)e(builtin)g(loaded)h(with)f(`)p Fs(-f)p
-Ft('.)630 4724 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 4834 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 4944 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
-(63\).)630 5076 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 5185 y(loading)31 b(a)g(new)f(builtin)g(from)g(a)g(shared)g
-(ob)5 b(ject.)150 5340 y Fs(help)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(help)47
-b([-dms])f([)p Fi(pattern)11 b Fs(])630 432 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 541
-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
-651 y(the)h(builtins)e(is)i(prin)m(ted.)630 783 y(Options,)f(if)h
-(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630
-939 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 1095 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 1251 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 1406 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 1562
-y Fs(let)870 1695 y(let)47 b Fi(expression)55 b Fs([)p
-Fi(expression)h Fs(...)o(])630 1827 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 1937 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 2047
-y(Arithmetic],)51 b(page)46 b(82.)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 2156 y(otherwise)31 b(0)g(is)f(returned.)150
-2312 y Fs(local)870 2445 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
-2577 y Ft(F)-8 b(or)26 b(eac)m(h)h(argumen)m(t,)g(a)e(lo)s(cal)i(v)-5
+Ft('.)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(If)31
+b(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
+408 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 518 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(67\).)630 650 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 760 y(loading)31 b(a)g(new)f(builtin)
+g(from)g(a)g(shared)g(ob)5 b(ject.)150 915 y Fs(help)870
+1047 y(help)47 b([-dms])f([)p Fi(pattern)11 b Fs(])630
+1179 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
+1288 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 1398 y(the)h(builtins)e(is)i(prin)m(ted.)630
+1530 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h
+(meanings:)630 1685 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 1840 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
+1994 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 2149 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 2304 y Fs(let)870 2436 y(let)47
+b Fi(expression)55 b Fs([)p Fi(expression)h Fs(...)o(])630
+2568 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 2678 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 2787 y(Arithmetic],)51
+b(page)46 b(86.)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
+2897 y(otherwise)31 b(0)g(is)f(returned.)150 3051 y Fs(local)870
+3184 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 3316 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 2687 y(The)37
+(assigned)g Fq(v)-5 b(alue)5 b Ft(.)630 3425 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
-2796 y(b)s(e)j(used)h(within)f(a)i(function;)48 b(it)42
+3535 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 2906 y(restricted)c(to)g(that)g(function)f
+b(a)f(visible)h(scop)s(e)630 3645 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 3016 y Fs(local)g Ft(is)h(used)g(outside)g(a)h(function,)h
+(unless)630 3754 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 3125 y(readonly)30 b(v)-5
-b(ariable.)150 3281 y Fs(logout)870 3414 y(logout)46
-b([)p Fi(n)11 b Fs(])630 3546 y Ft(Exit)31 b(a)g(login)g(shell,)g
+Fq(name)45 b Ft(is)c(a)630 3864 y(readonly)30 b(v)-5
+b(ariable.)150 4018 y Fs(logout)870 4151 y(logout)46
+b([)p Fi(n)11 b Fs(])630 4283 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 3702 y Fs(mapfile)870 3835 y(mapfile)46 b([-n)h
+(t.)150 4437 y Fs(mapfile)870 4570 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(])1061 3944 y([-C)47 b Fi(callback)11 b Fs(])45
+b Fs(])1061 4679 y([-C)47 b Fi(callback)11 b Fs(])45
b([-c)i Fi(quantum)11 b Fs(])45 b([)p Fi(array)11 b Fs(])630
-4077 y Ft(Read)37 b(lines)g(from)f(the)h(standard)f(input)g(in)m(to)h
+4811 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 4186 y(from)c(\014le)h(descriptor)g
+b Ft(,)39 b(or)630 4921 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
-4296 y(the)d(default)f Fq(arra)m(y)8 b Ft(.)41 b(Options,)30
+5031 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
-4452 y Fs(-n)384 b Ft(Cop)m(y)30 b(at)h(most)g Fq(coun)m(t)i
+5185 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 4607 y Fs(-O)384 b Ft(Begin)31 b(assigning)g(to)g
+(copied.)630 5340 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 4763 y Fs(-s)384
-b Ft(Discard)31 b(the)f(\014rst)g Fq(coun)m(t)j Ft(lines)e(read.)630
-4919 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 5075 y Fs(-u)384 b Ft(Read)31
+b(The)30 b(default)h(index)f(is)g(0.)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(-s)384 b Ft(Discard)31
+b(the)f(\014rst)g Fq(coun)m(t)j Ft(lines)e(read.)630
+451 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 602 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 5230 y Fs(-C)384 b Ft(Ev)-5 b(aluate)43
+(standard)e(input.)630 754 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 5340 y(option)31 b(sp)s(eci\014es)f Fq(quan)m(tum)p
-Ft(.)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(-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 461 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 570 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 680 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 789 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 925 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
-1035 y(to)31 b(it.)630 1170 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 1280 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 1442 y Fs(printf)870 1577 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 1713 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 1823 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
-1932 y Ft(rather)30 b(than)g(b)s(eing)g(prin)m(ted)g(to)h(the)g
-(standard)e(output.)630 2068 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 2178 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 2287 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 2397 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 2506 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 2616 y(extensions:)630
-2778 y Fs(\045b)384 b Ft(Causes)30 b Fs(printf)e Ft(to)j(expand)f(bac)m
-(kslash)h(escap)s(e)f(sequences)h(in)f(the)g(corre-)1110
-2887 y(sp)s(onding)19 b Fq(argumen)m(t)r Ft(,)k(except)f(that)f(`)p
-Fs(\\c)p Ft(')g(terminates)h(output,)g(bac)m(kslashes)1110
-2997 y(in)27 b(`)p Fs(\\')p Ft(',)h(`)p Fs(\\")p Ft(',)g(and)f(`)p
-Fs(\\?)p Ft(')g(are)h(not)f(remo)m(v)m(ed,)j(and)c(o)s(ctal)j(escap)s
-(es)f(b)s(eginning)1110 3106 y(with)i(`)p Fs(\\0)p Ft(')g(ma)m(y)h(con)
-m(tain)h(up)d(to)i(four)f(digits.)630 3268 y Fs(\045q)384
-b Ft(Causes)32 b Fs(printf)e Ft(to)i(output)g(the)g(corresp)s(onding)f
-Fq(argumen)m(t)j Ft(in)d(a)i(format)1110 3378 y(that)e(can)g(b)s(e)e
-(reused)h(as)h(shell)f(input.)630 3540 y Fs(\045\()p
-Fi(datefmt)11 b Fs(\)T)1110 3649 y Ft(Causes)29 b Fs(printf)e
-Ft(to)j(output)f(the)g(date-time)i(string)e(resulting)h(from)e(using)
-1110 3759 y Fq(datefm)m(t)45 b Ft(as)d(a)g(format)g(string)g(for)g
+Ft(')1110 864 y(option)31 b(sp)s(eci\014es)f Fq(quan)m(tum)p
+Ft(.)630 1015 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 1167 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
+1277 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
+1386 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
+1496 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
+1627 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 1736 y(to)31 b(it.)630 1867 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
+1976 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
+2128 y Fs(printf)870 2259 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
+2390 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 2499 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 2609 y Ft(rather)30
+b(than)g(b)s(eing)g(prin)m(ted)g(to)h(the)g(standard)e(output.)630
+2739 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 2849 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
+2959 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 3068 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
+3178 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
+3287 y(extensions:)630 3439 y Fs(\045b)384 b Ft(Causes)30
+b Fs(printf)e Ft(to)j(expand)f(bac)m(kslash)h(escap)s(e)f(sequences)h
+(in)f(the)g(corre-)1110 3549 y(sp)s(onding)19 b Fq(argumen)m(t)r
+Ft(,)k(except)f(that)f(`)p Fs(\\c)p Ft(')g(terminates)h(output,)g(bac)m
+(kslashes)1110 3658 y(in)27 b(`)p Fs(\\')p Ft(',)h(`)p
+Fs(\\")p Ft(',)g(and)f(`)p Fs(\\?)p Ft(')g(are)h(not)f(remo)m(v)m(ed,)j
+(and)c(o)s(ctal)j(escap)s(es)f(b)s(eginning)1110 3768
+y(with)i(`)p Fs(\\0)p Ft(')g(ma)m(y)h(con)m(tain)h(up)d(to)i(four)f
+(digits.)630 3920 y Fs(\045q)384 b Ft(Causes)32 b Fs(printf)e
+Ft(to)i(output)g(the)g(corresp)s(onding)f Fq(argumen)m(t)j
+Ft(in)d(a)i(format)1110 4029 y(that)e(can)g(b)s(e)e(reused)h(as)h
+(shell)f(input.)630 4181 y Fs(\045\()p Fi(datefmt)11
+b Fs(\)T)1110 4290 y Ft(Causes)29 b Fs(printf)e Ft(to)j(output)f(the)g
+(date-time)i(string)e(resulting)h(from)e(using)1110 4400
+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
-3868 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 3978
+4510 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 4619
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 4088 y(the)30 b(curren)m(t)g(time,)h(and)e(-2)i
+b(represen)m(ts)1110 4729 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 4249 y(Argumen)m(ts)e(to)h(non-string)e(format)i(sp)s(eci\014ers)e
+630 4881 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
-4359 y(except)22 b(that)g(a)g(leading)g(plus)e(or)h(min)m(us)f(sign)i
+4990 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
-4468 y(a)i(single)g(or)f(double)h(quote,)h(the)f(v)-5
+5100 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 4604 y(The)31 b Fq(format)i
+(wing)h(c)m(haracter.)630 5230 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
-4714 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
-4823 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 4933 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
-5095 y Fs(read)870 5230 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(])1061 5340 y([-N)47
-b Fi(nchars)11 b Fs(])45 b([-p)i Fi(prompt)11 b Fs(])45
-b([-t)i Fi(timeout)11 b Fs(])45 b([-u)i Fi(fd)11 b Fs(])47
-b([)p Fi(name)57 b Fs(...)o(])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(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 408 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
-518 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 628 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 737 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 847 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
+5340 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)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)630 299 y(b)s(eha)m(v)m(e)29
+b(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
+408 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 564 y Fs(read)870 697 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(])1061 806 y([-N)47 b Fi(nchars)11 b Fs(])45 b([-p)i
+Fi(prompt)11 b Fs(])45 b([-t)i Fi(timeout)11 b Fs(])45
+b([-u)i Fi(fd)11 b Fs(])47 b([)p Fi(name)57 b Fs(...)o(])630
+939 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
+1049 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 1158 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 1268 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
+1377 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 1487 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 956 y(the)37 b(line)h(in)m(to)g(w)m
+b(are)g(used)f(to)h(split)630 1597 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
-1066 y(sp)s(ecial)h(meaning)g(for)f(the)g(next)h(c)m(haracter)h(read)e
+1706 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
-1176 y(names)28 b(are)h(supplied,)f(the)g(line)h(read)g(is)f(assigned)h
+1816 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 1285 y(co)s(de)e(is)g(zero,)h(unless)e(end-of-\014le)h(is)
+b(return)630 1925 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 1395 y(return)g(co)s(de)h(is)g(greater)i(than)e(128\),)i(a)e
+(the)630 2035 y(return)g(co)s(de)h(is)g(greater)i(than)e(128\),)i(a)e
(v)-5 b(ariable)29 b(assignmen)m(t)g(error)f(\(suc)m(h)g(as)g
-(assigning)630 1504 y(to)38 b(a)f(readonly)g(v)-5 b(ariable\))38
+(assigning)630 2145 y(to)38 b(a)f(readonly)g(v)-5 b(ariable\))38
b(o)s(ccurs,)h(or)e(an)g(in)m(v)-5 b(alid)38 b(\014le)f(descriptor)g
-(is)g(supplied)e(as)j(the)630 1614 y(argumen)m(t)31 b(to)g(`)p
-Fs(-u)p Ft('.)630 1747 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g
-(follo)m(wing)h(meanings:)630 1902 y Fs(-a)e Fi(aname)114
+(is)g(supplied)e(as)j(the)630 2254 y(argumen)m(t)31 b(to)g(`)p
+Fs(-u)p Ft('.)630 2387 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g
+(follo)m(wing)h(meanings:)630 2543 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 2012 y Fq(aname)5
+e(of)g(the)g(arra)m(y)h(v)-5 b(ariable)1110 2652 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 2122
+(v)m(ed)h(from)e Fq(aname)33 b Ft(b)s(efore)1110 2762
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 2277 y Fs(-d)f Fi(delim)114 b Ft(The)41
+b(are)h(ignored.)630 2917 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 2387 y(rather)30
-b(than)g(newline.)630 2543 y Fs(-e)384 b Ft(Readline)28
-b(\(see)h(Chapter)e(8)h([Command)f(Line)g(Editing],)i(page)f(97\))h(is)
-f(used)1110 2652 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
-2762 y(editing)31 b(w)m(as)g(not)f(previously)g(activ)m(e\))j(editing)f
-(settings.)630 2917 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 3027 y(editing)31
-b(bu\013er)e(b)s(efore)h(editing)h(b)s(egins.)630 3183
-y Fs(-n)f Fi(nchars)1110 3292 y Fs(read)38 b Ft(returns)f(after)j
+(terminate)h(the)f(input)f(line,)1110 3027 y(rather)30
+b(than)g(newline.)630 3183 y Fs(-e)384 b Ft(Readline)46
+b(\(see)g(Chapter)e(8)h([Command)f(Line)h(Editing],)50
+b(page)45 b(101\))i(is)1110 3292 y(used)37 b(to)i(obtain)g(the)f(line.)
+65 b(Readline)39 b(uses)e(the)i(curren)m(t)f(\(or)g(default,)j(if)1110
+3402 y(line)31 b(editing)g(w)m(as)f(not)h(previously)f(activ)m(e\))j
+(editing)e(settings.)630 3558 y Fs(-i)f 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 3667 y(editing)31
+b(bu\013er)e(b)s(efore)h(editing)h(b)s(egins.)630 3823
+y Fs(-n)f Fi(nchars)1110 3933 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 3402 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 3512
+(aiting)1110 4042 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 4152
y Fq(nc)m(hars)34 b Ft(c)m(haracters)e(are)e(read)h(b)s(efore)f(the)g
-(delimiter.)630 3667 y Fs(-N)g Fi(nchars)1110 3777 y
+(delimiter.)630 4308 y Fs(-N)g Fi(nchars)1110 4417 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
-3886 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 3996 y
+4527 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 4636 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 4106 y(not)g(treated)h(sp)s
+(tered)g(in)f(the)g(input)g(are)1110 4746 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 4215 y Ft(c)m(haracters)h(are)f(read.)630
-4371 y Fs(-p)f Fi(prompt)1110 4481 y Ft(Displa)m(y)38
+(til)h Fq(nc)m(hars)1110 4855 y Ft(c)m(haracters)h(are)f(read.)630
+5011 y Fs(-p)f Fi(prompt)1110 5121 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 4590 y(read)f(an)m(y)h(input.)60
+(attempting)i(to)1110 5230 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 4700 y(from)30 b(a)h(terminal.)630 4855
-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
-4965 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 5075
-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 5230 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 5340 y(ec)m(ho)s(ed.)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 Fs(-t)f Fi(timeout)1110
-408 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
-518 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
-628 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 737
-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 847
+(coming)1110 5340 y(from)30 b(a)h(terminal.)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(-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 408 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 518 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 675 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 785 y(ec)m(ho)s(ed.)630 942 y Fs(-t)i
+Fi(timeout)1110 1052 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
+1161 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
+1271 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
+1380 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 1490
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 956
+(e\013ect)h(when)e(reading)h(from)g(regular)1110 1600
y(\014les.)80 b(If)43 b Fq(timeout)j Ft(is)d(0,)48 b
Fs(read)42 b Ft(returns)g(immediately)-8 b(,)48 b(without)c(trying)1110
-1066 y(to)i(read)f(and)f(data.)85 b(The)44 b(exit)i(status)g(is)f(0)g
-(if)g(input)f(is)h(a)m(v)-5 b(ailable)47 b(on)1110 1176
+1709 y(to)i(read)f(and)f(data.)85 b(The)44 b(exit)i(status)g(is)f(0)g
+(if)g(input)f(is)h(a)m(v)-5 b(ailable)47 b(on)1110 1819
y(the)32 b(sp)s(eci\014ed)f(\014le)h(descriptor,)g(non-zero)g
-(otherwise.)45 b(The)31 b(exit)i(status)f(is)1110 1285
+(otherwise.)45 b(The)31 b(exit)i(status)f(is)1110 1928
y(greater)g(than)e(128)h(if)g(the)f(timeout)i(is)e(exceeded.)630
-1442 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 1600 y Fs(readarray)870
-1709 y(readarray)45 b([-n)i Fi(count)11 b Fs(])46 b([-O)h
+2086 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 2243 y Fs(readarray)870
+2352 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(])1061 1819 y([-C)47 b Fi(callback)11
+b([-t])g([-u)h Fi(fd)11 b Fs(])1061 2462 y([-C)47 b Fi(callback)11
b Fs(])45 b([-c)i Fi(quantum)11 b Fs(])45 b([)p Fi(array)11
-b Fs(])630 1952 y Ft(Read)37 b(lines)g(from)f(the)h(standard)f(input)g
+b Fs(])630 2595 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 2062 y(from)30 b(\014le)g
+b Fq(arra)m(y)8 b Ft(,)39 b(or)630 2705 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 2195 y(A)g(synon)m(ym)g(for)g Fs(mapfile)p
-Ft(.)150 2352 y Fs(source)870 2486 y(source)46 b Fi(filename)630
-2619 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 2777
-y Fs(type)870 2910 y(type)47 b([-afptP])e([)p Fi(name)57
-b Fs(...)o(])630 3043 y Ft(F)-8 b(or)41 b(eac)m(h)h Fq(name)5
+(supplied.)630 2838 y(A)g(synon)m(ym)g(for)g Fs(mapfile)p
+Ft(.)150 2996 y Fs(source)870 3129 y(source)46 b Fi(filename)630
+3263 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(41\).)150 3420
+y Fs(type)870 3553 y(type)47 b([-afptP])e([)p Fi(name)57
+b Fs(...)o(])630 3687 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 3153 y(name.)630 3286
+h(if)g(used)f(as)h(a)g(command)630 3796 y(name.)630 3930
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 3396 y(`)p Fs(function)p
+(of)h(`)p Fs(alias)p Ft(',)630 4039 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 3506 y(shell)i(builtin,)g(disk)g(\014le,)h(or)e(shell)h
+(function,)630 4149 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 3615
+b(If)34 b(the)h Fq(name)40 b Ft(is)35 b(not)630 4258
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.)630 3749
+Fs(type)f Ft(returns)g(a)i(failure)g(status.)630 4392
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 3858 y(w)m(ould)30 b(b)s(e)g(executed,)h(or)g(nothing)f(if)g
+(that)630 4501 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 3992 y(The)23 b(`)p Fs(-P)p Ft(')g(option)h(forces)g(a)g
+Ft('.)630 4635 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
-4101 y(`)p Fs(file)p Ft('.)630 4235 y(If)41 b(a)h(command)f(is)h
+4744 y(`)p Fs(file)p Ft('.)630 4878 y(If)41 b(a)h(command)f(is)h
(hashed,)i(`)p Fs(-p)p Ft(')d(and)g(`)p Fs(-P)p Ft(')g(prin)m(t)g(the)h
-(hashed)f(v)-5 b(alue,)45 b(whic)m(h)c(is)h(not)630 4344
+(hashed)f(v)-5 b(alue,)45 b(whic)m(h)c(is)h(not)630 4987
y(necessarily)31 b(the)g(\014le)f(that)h(app)s(ears)f(\014rst)g(in)g
-Fs($PATH)p Ft(.)630 4478 y(If)36 b(the)h(`)p Fs(-a)p
+Fs($PATH)p Ft(.)630 5121 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 4587 y(cutable)d(named)f
+(places)g(that)g(con)m(tain)h(an)f(exe-)630 5230 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 4697 y(option)e(is)f(not)h(also)g(used.)630
-4830 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 4940 y(the)k Fs(command)d
-Ft(builtin.)630 5073 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 5183 y(found.)150 5340 y Fs(typeset)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)870 299 y Fs(typeset)46
-b([-afFgrxilrtux])d([-p])k([)p Fi(name)11 b Fs([=)p Fi(value)g
-Fs(])43 b(...)o(])630 433 y Ft(The)31 b Fs(typeset)e
+Ft(')630 5340 y(option)e(is)f(not)h(also)g(used.)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)630 299 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 408 y(the)k Fs(command)d Ft(builtin.)630 543
+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
+652 y(found.)150 811 y Fs(typeset)870 945 y(typeset)46
+b([-afFgrxilnrtux])d([-p])k([)p Fi(name)11 b Fs([=)p
+Fi(value)g Fs(])43 b(...)o(])630 1079 y Ft(The)31 b Fs(typeset)e
Ft(command)i(is)g(supplied)f(for)h(compatibilit)m(y)i(with)e(the)g
-(Korn)f(shell.)44 b(It)31 b(is)630 543 y(a)g(synon)m(ym)f(for)g(the)g
-Fs(declare)f Ft(builtin)h(command.)150 701 y Fs(ulimit)870
-836 y(ulimit)46 b([-abcdefilmnpqrstuvxHST])41 b([)p Fi(limit)11
-b Fs(])630 970 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 1079 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 1189 y(as)i(follo)m(ws:)630 1348
-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 1507 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 1665 y Fs(-a)384 b Ft(All)31
-b(curren)m(t)f(limits)h(are)g(rep)s(orted.)630 1824 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 1983 y Fs(-c)384 b Ft(The)30 b(maxim)m(um)g(size)h(of)g
-(core)g(\014les)f(created.)630 2142 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
-2301 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 2459 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 2618 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 2777 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 2936 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
-3045 y(limit\).)630 3204 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 3314 y(not)31 b(allo)m(w)g(this)g(v)-5 b(alue)31
-b(to)g(b)s(e)e(set\).)630 3472 y Fs(-p)384 b Ft(The)30
-b(pip)s(e)f(bu\013er)h(size.)630 3631 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 3790 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 3949 y Fs(-s)384
-b Ft(The)30 b(maxim)m(um)g(stac)m(k)i(size.)630 4108
-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 4266 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 4425 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
-4535 y(and,)30 b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)630
-4694 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 4852 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 5011
+(Korn)f(shell.)44 b(It)31 b(is)630 1189 y(a)g(synon)m(ym)f(for)g(the)g
+Fs(declare)f Ft(builtin)h(command.)150 1348 y Fs(ulimit)870
+1482 y(ulimit)46 b([-abcdefilmnpqrstuvxHST])41 b([)p
+Fi(limit)11 b Fs(])630 1616 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 1726
+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
+1835 y(as)i(follo)m(ws:)630 1994 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 2153 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
+2312 y Fs(-a)384 b Ft(All)31 b(curren)m(t)f(limits)h(are)g(rep)s
+(orted.)630 2471 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 2629 y Fs(-c)384 b Ft(The)30
+b(maxim)m(um)g(size)h(of)g(core)g(\014les)f(created.)630
+2788 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 2947 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 3106 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 3264 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
+3423 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 3582
+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 3692
+y(limit\).)630 3850 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
+3960 y(not)31 b(allo)m(w)g(this)g(v)-5 b(alue)31 b(to)g(b)s(e)e(set\).)
+630 4119 y Fs(-p)384 b Ft(The)30 b(pip)s(e)f(bu\013er)h(size.)630
+4278 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 4436 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 4595 y Fs(-s)384 b Ft(The)30 b(maxim)m(um)g(stac)m(k)i(size.)
+630 4754 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 4913 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 5072 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 5181 y(and,)30
+b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)630
+5340 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.)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 Fs(-T)384 b Ft(The)30
+b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(threads.)630 462
y(If)i Fq(limit)k Ft(is)d(giv)m(en,)h(and)f(the)f(`)p
Fs(-a)p Ft(')h(option)g(is)g(not)g(used,)g Fq(limit)j
-Ft(is)c(the)h(new)g(v)-5 b(alue)34 b(of)g(the)630 5121
+Ft(is)c(the)h(new)g(v)-5 b(alue)34 b(of)g(the)630 572
y(sp)s(eci\014ed)f(resource.)51 b(The)34 b(sp)s(ecial)g
Fq(limit)j Ft(v)-5 b(alues)34 b Fs(hard)p Ft(,)g Fs(soft)p
-Ft(,)g(and)f Fs(unlimited)e Ft(stand)630 5230 y(for)h(the)g(curren)m(t)
-g(hard)f(limit,)i(the)g(curren)m(t)f(soft)g(limit,)h(and)f(no)g(limit,)
-h(resp)s(ectiv)m(ely)-8 b(.)48 b(A)630 5340 y(hard)24
-b(limit)i(cannot)g(b)s(e)e(increased)h(b)m(y)g(a)h(non-ro)s(ot)f(user)f
-(once)i(it)g(is)f(set;)j(a)d(soft)g(limit)h(ma)m(y)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(b)s(e)37 b(increased)h(up)e(to)j(the)
-f(v)-5 b(alue)38 b(of)f(the)h(hard)f(limit.)63 b(Otherwise,)39
-b(the)f(curren)m(t)f(v)-5 b(alue)630 408 y(of)36 b(the)f(soft)h(limit)h
-(for)e(the)g(sp)s(eci\014ed)g(resource)h(is)f(prin)m(ted,)i(unless)e
-(the)h(`)p Fs(-H)p Ft(')f(option)h(is)630 518 y(supplied.)j(When)28
+Ft(,)g(and)f Fs(unlimited)e Ft(stand)630 681 y(for)h(the)g(curren)m(t)g
+(hard)f(limit,)i(the)g(curren)m(t)f(soft)g(limit,)h(and)f(no)g(limit,)h
+(resp)s(ectiv)m(ely)-8 b(.)48 b(A)630 791 y(hard)24 b(limit)i(cannot)g
+(b)s(e)e(increased)h(b)m(y)g(a)h(non-ro)s(ot)f(user)f(once)i(it)g(is)f
+(set;)j(a)d(soft)g(limit)h(ma)m(y)630 901 y(b)s(e)37
+b(increased)h(up)e(to)j(the)f(v)-5 b(alue)38 b(of)f(the)h(hard)f
+(limit.)63 b(Otherwise,)39 b(the)f(curren)m(t)f(v)-5
+b(alue)630 1010 y(of)36 b(the)f(soft)h(limit)h(for)e(the)g(sp)s
+(eci\014ed)g(resource)h(is)f(prin)m(ted,)i(unless)e(the)h(`)p
+Fs(-H)p Ft(')f(option)h(is)630 1120 y(supplied.)j(When)28
b(setting)h(new)f(limits,)h(if)f(neither)h(`)p Fs(-H)p
Ft(')f(nor)f(`)p Fs(-S)p Ft(')h(is)h(supplied,)e(b)s(oth)h(the)630
-628 y(hard)g(and)h(soft)h(limits)g(are)g(set.)41 b(If)29
+1229 y(hard)g(and)h(soft)h(limits)g(are)g(set.)41 b(If)29
b(no)g(option)h(is)f(giv)m(en,)i(then)e(`)p Fs(-f)p Ft(')h(is)f
-(assumed.)40 b(V)-8 b(alues)630 737 y(are)38 b(in)f(1024-b)m(yte)k
+(assumed.)40 b(V)-8 b(alues)630 1339 y(are)38 b(in)f(1024-b)m(yte)k
(incremen)m(ts,)f(except)e(for)g(`)p Fs(-t)p Ft(',)h(whic)m(h)e(is)h
(in)f(seconds;)42 b(`)p Fs(-p)p Ft(',)d(whic)m(h)630
-847 y(is)33 b(in)f(units)g(of)h(512-b)m(yte)i(blo)s(c)m(ks;)g(and)d(`)p
-Fs(-T)p Ft(',)i(`)p Fs(-b)p Ft(',)f(`)p Fs(-n)p Ft(')g(and)f(`)p
-Fs(-u)p Ft(',)h(whic)m(h)g(are)g(unscaled)630 956 y(v)-5
-b(alues.)630 1090 y(The)34 b(return)g(status)h(is)f(zero)i(unless)e(an)
+1449 y(is)33 b(in)f(units)g(of)h(512-b)m(yte)i(blo)s(c)m(ks;)g(and)d(`)
+p Fs(-T)p Ft(',)i(`)p Fs(-b)p Ft(',)f(`)p Fs(-n)p Ft(')g(and)f(`)p
+Fs(-u)p Ft(',)h(whic)m(h)g(are)g(unscaled)630 1558 y(v)-5
+b(alues.)630 1695 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 1200 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f
-(limit.)150 1357 y Fs(unalias)870 1491 y(unalias)46 b([-a])g([)p
-Fi(name)57 b Fs(...)47 b(])630 1625 y Ft(Remo)m(v)m(e)39
+(or)630 1804 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f
+(limit.)150 1968 y Fs(unalias)870 2104 y(unalias)46 b([-a])g([)p
+Fi(name)57 b Fs(...)47 b(])630 2241 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
-1734 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(83.)150 1965 y Fr(4.3)68
-b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 2188 y Fj(4.3.1)63
-b(The)41 b(Set)g(Builtin)150 2335 y Ft(This)35 b(builtin)h(is)g(so)g
+2350 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(87.)150 2589 y Fr(4.3)68
+b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 2813 y Fj(4.3.1)63
+b(The)41 b(Set)g(Builtin)150 2960 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
-2445 y(the)c(v)-5 b(alues)34 b(of)f(shell)g(options)h(and)e(set)i(the)f
+3069 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 2555 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150
-2712 y Fs(set)870 2846 y(set)47 b([--abefhkmnptuvxBCEHPT])41
+(and)150 3179 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150
+3344 y Fs(set)870 3481 y(set)47 b([--abefhkmnptuvxBCEHPT])41
b([-o)47 b Fi(option-name)11 b Fs(])44 b([)p Fi(argument)56
-b Fs(...)o(])870 2956 y(set)47 b([+abefhkmnptuvxBCEHPT])42
+b Fs(...)o(])870 3590 y(set)47 b([+abefhkmnptuvxBCEHPT])42
b([+o)47 b Fi(option-name)11 b Fs(])43 b([)p Fi(argument)56
-b Fs(...)o(])630 3089 y Ft(If)22 b(no)h(options)g(or)g(argumen)m(ts)g
+b Fs(...)o(])630 3727 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 3199 y(shell)j(v)-5 b(ariables)27
+b(alues)23 b(of)g(all)630 3837 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 3308 y(that)i(ma)m(y)h(b)s(e)e(reused)g
+(cale,)k(in)c(a)i(format)630 3946 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 3418 y(Read-only)37 b(v)-5 b(ariables)37
+(v)-5 b(ariables.)630 4056 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 3528 y(listed.)630
-3661 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 4165 y(listed.)630
+4302 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
-3771 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630
-3929 y Fs(-a)384 b Ft(Mark)32 b(v)-5 b(ariables)33 b(and)e(function)h
+4411 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630
+4575 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
-4038 y(p)s(ort)e(to)h(the)f(en)m(vironmen)m(t)h(of)g(subsequen)m(t)f
-(commands.)630 4196 y Fs(-b)384 b Ft(Cause)44 b(the)h(status)g(of)f
+4684 y(p)s(ort)e(to)h(the)f(en)m(vironmen)m(t)h(of)g(subsequen)m(t)f
+(commands.)630 4848 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
-4306 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 4463 y Fs(-e)384
+4957 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 5121 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 4573 y(page)56 b(8\),)62
+(3.2.2)h([Pip)s(elines],)1110 5230 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 4682 y(Section)30 b(3.2.1)i([Simple)d(Commands],)g(page)h
-(8\),)h(a)f(list)g(\(see)h(Section)f(3.2.3)1110 4792
-y([Lists],)66 b(page)59 b(9\),)67 b(or)58 b(a)h(comp)s(ound)e(command)h
-(\(see)h(Section)g(3.2.4)1110 4902 y([Comp)s(ound)67
-b(Commands],)77 b(page)69 b(9\))g(returns)e(a)i(non-zero)g(status.)1110
-5011 y(The)41 b(shell)g(do)s(es)g(not)g(exit)h(if)f(the)h(command)f
-(that)h(fails)f(is)g(part)g(of)h(the)1110 5121 y(command)g(list)h
+(\(see)1110 5340 y(Section)30 b(3.2.1)i([Simple)d(Commands],)g(page)h
+(8\),)h(a)f(list)g(\(see)h(Section)f(3.2.3)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([Lists],)66
+b(page)59 b(9\),)67 b(or)58 b(a)h(comp)s(ound)e(command)h(\(see)h
+(Section)g(3.2.4)1110 408 y([Comp)s(ound)67 b(Commands],)77
+b(page)69 b(9\))g(returns)e(a)i(non-zero)g(status.)1110
+518 y(The)41 b(shell)g(do)s(es)g(not)g(exit)h(if)f(the)h(command)f
+(that)h(fails)f(is)g(part)g(of)h(the)1110 628 y(command)g(list)h
(immediately)g(follo)m(wing)g(a)g Fs(while)e Ft(or)h
-Fs(until)e Ft(k)m(eyw)m(ord,)1110 5230 y(part)61 b(of)g(the)g(test)h
-(in)e(an)h Fs(if)f Ft(statemen)m(t,)71 b(part)61 b(of)g(an)m(y)g
-(command)1110 5340 y(executed)50 b(in)e(a)h Fs(&&)f Ft(or)h
-Fs(||)f Ft(list)h(except)g(the)g(command)g(follo)m(wing)h(the)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(\014nal)37
-b Fs(&&)g Ft(or)g Fs(||)p Ft(,)h(an)m(y)g(command)f(in)g(a)g(pip)s
-(eline)g(but)g(the)g(last,)j(or)e(if)f(the)1110 408 y(command's)c
-(return)f(status)h(is)g(b)s(eing)g(in)m(v)m(erted)h(with)e
-Fs(!)p Ft(.)48 b(If)33 b(a)g(comp)s(ound)1110 518 y(command)g(other)g
-(than)f(a)i(subshell)d(returns)h(a)h(non-zero)h(status)f(b)s(ecause)
-1110 628 y(a)g(command)f(failed)h(while)f(`)p Fs(-e)p
-Ft(')h(w)m(as)f(b)s(eing)g(ignored,)h(the)g(shell)g(do)s(es)f(not)1110
-737 y(exit.)42 b(A)30 b(trap)g(on)h Fs(ERR)p Ft(,)e(if)i(set,)g(is)f
-(executed)i(b)s(efore)e(the)g(shell)h(exits.)1110 872
-y(This)f(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 981 y(vironmen)m(t)j(separately)i
-(\(see)f(Section)g(3.7.3)h([Command)d(Execution)i(En-)1110
-1091 y(vironmen)m(t],)i(page)f(33\),)i(and)d(ma)m(y)h(cause)f
-(subshells)g(to)h(exit)g(b)s(efore)f(exe-)1110 1200 y(cuting)d(all)g
-(the)g(commands)f(in)g(the)g(subshell.)630 1359 y Fs(-f)384
+Fs(until)e Ft(k)m(eyw)m(ord,)1110 737 y(part)61 b(of)g(the)g(test)h(in)
+e(an)h Fs(if)f Ft(statemen)m(t,)71 b(part)61 b(of)g(an)m(y)g(command)
+1110 847 y(executed)50 b(in)e(a)h Fs(&&)f Ft(or)h Fs(||)f
+Ft(list)h(except)g(the)g(command)g(follo)m(wing)h(the)1110
+956 y(\014nal)37 b Fs(&&)g Ft(or)g Fs(||)p Ft(,)h(an)m(y)g(command)f
+(in)g(a)g(pip)s(eline)g(but)g(the)g(last,)j(or)e(if)f(the)1110
+1066 y(command's)c(return)f(status)h(is)g(b)s(eing)g(in)m(v)m(erted)h
+(with)e Fs(!)p Ft(.)48 b(If)33 b(a)g(comp)s(ound)1110
+1176 y(command)g(other)g(than)f(a)i(subshell)d(returns)h(a)h(non-zero)h
+(status)f(b)s(ecause)1110 1285 y(a)g(command)f(failed)h(while)f(`)p
+Fs(-e)p Ft(')h(w)m(as)f(b)s(eing)g(ignored,)h(the)g(shell)g(do)s(es)f
+(not)1110 1395 y(exit.)42 b(A)30 b(trap)g(on)h Fs(ERR)p
+Ft(,)e(if)i(set,)g(is)f(executed)i(b)s(efore)e(the)g(shell)h(exits.)
+1110 1529 y(This)f(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 1638 y(vironmen)m(t)j
+(separately)i(\(see)f(Section)g(3.7.3)h([Command)d(Execution)i(En-)1110
+1748 y(vironmen)m(t],)i(page)f(36\),)i(and)d(ma)m(y)h(cause)f
+(subshells)g(to)h(exit)g(b)s(efore)f(exe-)1110 1857 y(cuting)d(all)g
+(the)g(commands)f(in)g(the)g(subshell.)630 2016 y Fs(-f)384
b Ft(Disable)31 b(\014lename)g(expansion)f(\(globbing\).)630
-1518 y Fs(-h)384 b Ft(Lo)s(cate)33 b(and)e(remem)m(b)s(er)h(\(hash\))g
+2174 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
-1628 y(execution.)42 b(This)29 b(option)i(is)g(enabled)f(b)m(y)g
-(default.)630 1787 y Fs(-k)384 b Ft(All)34 b(argumen)m(ts)g(in)f(the)h
+2284 y(execution.)42 b(This)29 b(option)i(is)g(enabled)f(b)m(y)g
+(default.)630 2442 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
-1897 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 2006 y(command)30
-b(name.)630 2165 y Fs(-m)384 b Ft(Job)32 b(con)m(trol)h(is)f(enabled)g
-(\(see)h(Chapter)f(7)g([Job)g(Con)m(trol],)i(page)e(93\).)47
-b(All)1110 2275 y(pro)s(cesses)27 b(run)f(in)i(a)g(separate)g(pro)s
+2552 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 2661 y(command)30
+b(name.)630 2819 y Fs(-m)384 b Ft(Job)32 b(con)m(trol)h(is)f(enabled)g
+(\(see)h(Chapter)f(7)g([Job)g(Con)m(trol],)i(page)e(97\).)47
+b(All)1110 2929 y(pro)s(cesses)27 b(run)f(in)i(a)g(separate)g(pro)s
(cess)f(group.)40 b(When)27 b(a)h(bac)m(kground)f(job)1110
-2385 y(completes,)32 b(the)f(shell)f(prin)m(ts)g(a)h(line)f(con)m
-(taining)i(its)f(exit)g(status.)630 2544 y Fs(-n)384
+3039 y(completes,)32 b(the)f(shell)f(prin)m(ts)g(a)h(line)f(con)m
+(taining)i(its)f(exit)g(status.)630 3197 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 2653 y(a)42
+m(y)g(b)s(e)f(used)g(to)h(c)m(hec)m(k)1110 3306 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 2763 y(shells.)630
-2922 y Fs(-o)30 b Fi(option-name)1110 3032 y Ft(Set)h(the)f(option)h
+(ignored)g(b)m(y)g(in)m(teractiv)m(e)1110 3416 y(shells.)630
+3574 y Fs(-o)30 b Fi(option-name)1110 3684 y Ft(Set)h(the)f(option)h
(corresp)s(onding)e(to)i Fq(option-name)5 b Ft(:)1110
-3191 y Fs(allexport)1590 3300 y Ft(Same)30 b(as)h Fs(-a)p
-Ft(.)1110 3459 y Fs(braceexpand)1590 3569 y Ft(Same)f(as)h
-Fs(-B)p Ft(.)1110 3728 y Fs(emacs)240 b Ft(Use)25 b(an)f
+3842 y Fs(allexport)1590 3952 y Ft(Same)30 b(as)h Fs(-a)p
+Ft(.)1110 4110 y Fs(braceexpand)1590 4220 y Ft(Same)f(as)h
+Fs(-B)p Ft(.)1110 4378 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 3838 y([Command)38 b(Line)g(Editing],)i(page)f(97\).)
-66 b(This)37 b(also)i(a\013ects)1590 3947 y(the)31 b(editing)g(in)m
-(terface)h(used)d(for)h Fs(read)f(-e)p Ft(.)1110 4106
+(Chapter)e(8)1590 4488 y([Command)33 b(Line)g(Editing],)h(page)h
+(101\).)51 b(This)32 b(also)i(a\013ects)1590 4597 y(the)d(editing)g(in)
+m(terface)h(used)d(for)h Fs(read)f(-e)p Ft(.)1110 4756
y Fs(errexit)144 b Ft(Same)30 b(as)h Fs(-e)p Ft(.)1110
-4265 y Fs(errtrace)96 b Ft(Same)30 b(as)h Fs(-E)p Ft(.)1110
-4424 y Fs(functrace)1590 4534 y Ft(Same)f(as)h Fs(-T)p
-Ft(.)1110 4693 y Fs(hashall)144 b Ft(Same)30 b(as)h Fs(-h)p
-Ft(.)1110 4852 y Fs(histexpand)1590 4962 y Ft(Same)f(as)h
-Fs(-H)p Ft(.)1110 5121 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 5230 y([Bash)d(History)g(F)-8 b(acilities],)41 b(page)c(129.)60
-b(This)36 b(option)h(is)f(on)1590 5340 y(b)m(y)30 b(default)h(in)f(in)m
-(teractiv)m(e)j(shells.)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)1110 299 y Fs(ignoreeof)1590
-408 y Ft(An)f(in)m(teractiv)m(e)j(shell)e(will)g(not)f(exit)h(up)s(on)e
-(reading)i(EOF.)1110 567 y Fs(keyword)144 b Ft(Same)30
-b(as)h Fs(-k)p Ft(.)1110 725 y Fs(monitor)144 b Ft(Same)30
-b(as)h Fs(-m)p Ft(.)1110 883 y Fs(noclobber)1590 993
-y Ft(Same)f(as)h Fs(-C)p Ft(.)1110 1151 y Fs(noexec)192
-b Ft(Same)30 b(as)h Fs(-n)p Ft(.)1110 1310 y Fs(noglob)192
-b Ft(Same)30 b(as)h Fs(-f)p Ft(.)1110 1468 y Fs(nolog)240
-b Ft(Curren)m(tly)30 b(ignored.)1110 1626 y Fs(notify)192
-b Ft(Same)30 b(as)h Fs(-b)p Ft(.)1110 1784 y Fs(nounset)144
-b Ft(Same)30 b(as)h Fs(-u)p Ft(.)1110 1943 y Fs(onecmd)192
-b Ft(Same)30 b(as)h Fs(-t)p Ft(.)1110 2101 y Fs(physical)96
-b Ft(Same)30 b(as)h Fs(-P)p Ft(.)1110 2259 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 2369 y(the)33
-b(last)h(\(righ)m(tmost\))h(command)e(to)h(exit)g(with)f(a)g(non-zero)
-1590 2478 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 2588 y(cessfully)-8 b(.)41
-b(This)30 b(option)h(is)f(disabled)g(b)m(y)h(default.)1110
-2746 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 2856 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 2966 y(dard)32 b(\(see)i(Section)g(6.11)h([Bash)e
-(POSIX)f(Mo)s(de],)j(page)e(88\).)1590 3075 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
-3185 y(p)s(erset)30 b(of)h(that)f(standard.)1110 3343
-y Fs(privileged)1590 3453 y Ft(Same)g(as)h Fs(-p)p Ft(.)1110
-3611 y Fs(verbose)144 b Ft(Same)30 b(as)h Fs(-v)p Ft(.)1110
-3769 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
-3879 y(the)31 b(editing)g(in)m(terface)h(used)d(for)h
-Fs(read)f(-e)p Ft(.)1110 4037 y Fs(xtrace)192 b Ft(Same)30
-b(as)h Fs(-x)p Ft(.)630 4195 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 4305 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 4415 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 4524 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 4634 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 4743 y(user)d(\(group\))g(id,)i(and)e
-(the)g(`)p Fs(-p)p Ft(')g(option)h(is)g(not)f(supplied,)h(these)g
-(actions)1110 4853 y(are)d(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 4963 y(`)p Fs(-p)p Ft(')e(option)i(is)e(supplied)g
+4914 y Fs(errtrace)96 b Ft(Same)30 b(as)h Fs(-E)p Ft(.)1110
+5072 y Fs(functrace)1590 5182 y Ft(Same)f(as)h Fs(-T)p
+Ft(.)1110 5340 y Fs(hashall)144 b Ft(Same)30 b(as)h Fs(-h)p
+Ft(.)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 Fs(histexpand)1590
+408 y Ft(Same)f(as)h Fs(-H)p Ft(.)1110 570 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 680 y([Bash)d(History)g(F)-8 b(acilities],)41
+b(page)c(133.)60 b(This)36 b(option)h(is)f(on)1590 789
+y(b)m(y)30 b(default)h(in)f(in)m(teractiv)m(e)j(shells.)1110
+951 y Fs(ignoreeof)1590 1060 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 1222
+y Fs(keyword)144 b Ft(Same)30 b(as)h Fs(-k)p Ft(.)1110
+1383 y Fs(monitor)144 b Ft(Same)30 b(as)h Fs(-m)p Ft(.)1110
+1545 y Fs(noclobber)1590 1654 y Ft(Same)f(as)h Fs(-C)p
+Ft(.)1110 1816 y Fs(noexec)192 b Ft(Same)30 b(as)h Fs(-n)p
+Ft(.)1110 1977 y Fs(noglob)192 b Ft(Same)30 b(as)h Fs(-f)p
+Ft(.)1110 2139 y Fs(nolog)240 b Ft(Curren)m(tly)30 b(ignored.)1110
+2300 y Fs(notify)192 b Ft(Same)30 b(as)h Fs(-b)p Ft(.)1110
+2462 y Fs(nounset)144 b Ft(Same)30 b(as)h Fs(-u)p Ft(.)1110
+2623 y Fs(onecmd)192 b Ft(Same)30 b(as)h Fs(-t)p Ft(.)1110
+2785 y Fs(physical)96 b Ft(Same)30 b(as)h Fs(-P)p Ft(.)1110
+2946 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 3056 y(the)33 b(last)h(\(righ)m(tmost\))h(command)e(to)h
+(exit)g(with)f(a)g(non-zero)1590 3165 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
+3275 y(cessfully)-8 b(.)41 b(This)30 b(option)h(is)f(disabled)g(b)m(y)h
+(default.)1110 3437 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
+3546 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 3656 y(dard)32
+b(\(see)i(Section)g(6.11)h([Bash)e(POSIX)f(Mo)s(de],)j(page)e(92\).)
+1590 3765 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 3875 y(p)s(erset)30
+b(of)h(that)f(standard.)1110 4036 y Fs(privileged)1590
+4146 y Ft(Same)g(as)h Fs(-p)p Ft(.)1110 4308 y Fs(verbose)144
+b Ft(Same)30 b(as)h Fs(-v)p Ft(.)1110 4469 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 4579 y(the)31
+b(editing)g(in)m(terface)h(used)d(for)h Fs(read)f(-e)p
+Ft(.)1110 4740 y Fs(xtrace)192 b Ft(Same)30 b(as)h Fs(-x)p
+Ft(.)630 4902 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 5011 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
+5121 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
+5230 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
+5340 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)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)1110 299 y(user)34
+b(\(group\))g(id,)i(and)e(the)g(`)p Fs(-p)p Ft(')g(option)h(is)g(not)f
+(supplied,)h(these)g(actions)1110 408 y(are)d(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 518 y(`)p Fs(-p)p Ft(')e(option)i(is)e(supplied)g
(at)h(startup,)f(the)h(e\013ectiv)m(e)i(user)d(id)h(is)f(not)h(reset.)
-1110 5072 y(T)-8 b(urning)35 b(this)i(option)g(o\013)g(causes)g(the)g
+1110 628 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
-5182 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f(and)g(group)g(ids.)630
-5340 y Fs(-t)384 b Ft(Exit)31 b(after)g(reading)f(and)g(executing)h
-(one)g(command.)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)630 299 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 408 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 518 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 628 y(in)m(teractiv)m(e)k(shell)e(will)g
-(exit.)630 803 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 978 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 1088 y Fs(select)29 b Ft(commands,)j(and)e
+737 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f(and)g(group)g(ids.)630
+887 y Fs(-t)384 b Ft(Exit)31 b(after)g(reading)f(and)g(executing)h(one)
+g(command.)630 1036 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 1146 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 1255 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
+1365 y(in)m(teractiv)m(e)k(shell)e(will)g(exit.)630 1514
+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 1664 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 1773 y Fs(select)29 b Ft(commands,)j(and)e
(arithmetic)j Fs(for)d Ft(commands)h(and)f(their)i(argu-)1110
-1198 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 1307 y(they)i(are)g(executed.)49
+1883 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 1993 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 1417 y(the)24
+b(ariable)34 b(is)f(expanded)f(and)1110 2102 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 1526 y(argumen)m(ts.)630
-1702 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 1811
-y(Expansion],)30 b(page)h(20\).)42 b(This)30 b(option)h(is)f(on)g(b)m
-(y)h(default.)630 1987 y Fs(-C)384 b Ft(Prev)m(en)m(t)25
+(command)g(and)f(its)i(expanded)1110 2212 y(argumen)m(ts.)630
+2361 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 2471
+y(Expansion],)30 b(page)h(21\).)42 b(This)30 b(option)h(is)f(on)g(b)m
+(y)h(default.)630 2620 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
-2096 y(existing)31 b(\014les.)630 2271 y Fs(-E)384 b
+2730 y(existing)31 b(\014les.)630 2879 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 2381 y(substitutions,)35
+(y)g(shell)h(functions,)h(command)1110 2989 y(substitutions,)35
b(and)e(commands)g(executed)i(in)f(a)g(subshell)f(en)m(vironmen)m(t.)
-1110 2491 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 2666 y Fs(-H)384 b Ft(Enable)38
+1110 3098 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 3248 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 2776 y(teraction],)g(page)d
-(131\).)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 2885 y(shells.)630 3061 y Fs(-P)384
+(Section)h(9.3)f([History)g(In-)1110 3357 y(teraction],)g(page)d
+(135\).)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 3467 y(shells.)630 3616 y Fs(-P)384
b Ft(If)39 b(set,)j(do)d(not)g(resolv)m(e)i(sym)m(b)s(olic)e(links)g
-(when)f(p)s(erforming)g(commands)1110 3170 y(suc)m(h)29
+(when)f(p)s(erforming)g(commands)1110 3726 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 3280 y(tory)j(is)g(used)
+-8 b(.)42 b(The)28 b(ph)m(ysical)j(direc-)1110 3836 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 3389 y(directories)j(when)d(p)s(erforming)h
+(c)m(hain)f(of)1110 3945 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
-3499 y(directory)-8 b(.)1110 3641 y(F)g(or)31 b(example,)g(if)f(`)p
+4055 y(directory)-8 b(.)1110 4184 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 3751 y(then:)1350 3893
-y Fs($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 4003 y(/usr/sys)1350
-4113 y($)g(cd)h(..;)f(pwd)1350 4222 y(/usr)1110 4365
-y Ft(If)30 b Fs(set)f(-P)h Ft(is)h(on,)f(then:)1350 4507
-y Fs($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 4617 y(/usr/local/sys)
-1350 4726 y($)g(cd)h(..;)f(pwd)1350 4836 y(/usr/local)630
-5011 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 5121 y(tions,)k(command)d(substitutions,)h(and)f(commands)g
-(executed)h(in)f(a)h(sub-)1110 5230 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 5340 y(inherited)d(in)g(suc)m(h)g(cases.)p
+Fs(/usr/local/sys)p Ft(')1110 4294 y(then:)1350 4423
+y Fs($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 4533 y(/usr/sys)1350
+4643 y($)g(cd)h(..;)f(pwd)1350 4752 y(/usr)1110 4882
+y Ft(If)30 b Fs(set)f(-P)h Ft(is)h(on,)f(then:)1350 5011
+y Fs($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 5121 y(/usr/local/sys)
+1350 5230 y($)g(cd)h(..;)f(pwd)1350 5340 y(/usr/local)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 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 408 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 518 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 679 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 788 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
-898 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 1007 y(remain)k(unc)m
-(hanged.)630 1168 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 1278 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
-1387 y(found)29 b(in)h Fs($-)p Ft(.)630 1522 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 1632 y(order,)30
+%%Page: 62 68
+TeXDict begin 62 67 bop 150 -116 a Ft(62)2572 b(Bash)31
+b(Reference)g(Man)m(ual)630 299 y Fs(-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 408 y(tions,)k(command)
+d(substitutions,)h(and)f(commands)g(executed)h(in)f(a)h(sub-)1110
+518 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
+628 y(inherited)d(in)g(suc)m(h)g(cases.)630 780 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 890 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 999 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 1152
+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
+1262 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
+1371 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
+1481 y(remain)k(unc)m(hanged.)630 1633 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
+1743 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 1852 y(found)29 b(in)h Fs($-)p Ft(.)630 1984
+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 2093 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 1767 y(The)f(return)f(status)i(is)f(alw)m(a)m
+Ft(is)g(set)h(to)g(N.)630 2224 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 1968 y Fj(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150
-2115 y Ft(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h
+(supplied.)150 2417 y Fj(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150
+2564 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
-2276 y Fs(shopt)870 2411 y(shopt)46 b([-pqsu])g([-o])h([)p
-Fi(optname)56 b Fs(...)o(])630 2546 y Ft(T)-8 b(oggle)47
+2716 y Fs(shopt)870 2847 y(shopt)46 b([-pqsu])g([-o])h([)p
+Fi(optname)56 b Fs(...)o(])630 2978 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
-2656 y(options,)32 b(or)f(with)g(the)g(`)p Fs(-p)p Ft(')g(option,)h(a)g
+3088 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 2765 y(an)i(indication)i(of)f(whether)f(or)g(not)h(eac)m(h)h(is)e
+630 3198 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 2875 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 3307 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 2984 y(follo)m(wing)32 b(meanings:)630 3145 y Fs(-s)384
+630 3417 y(follo)m(wing)32 b(meanings:)630 3569 y Fs(-s)384
b Ft(Enable)30 b(\(set\))i(eac)m(h)f Fq(optname)5 b Ft(.)630
-3306 y Fs(-u)384 b Ft(Disable)31 b(\(unset\))g(eac)m(h)h
-Fq(optname)5 b Ft(.)630 3466 y Fs(-q)384 b Ft(Suppresses)28
+3722 y Fs(-u)384 b Ft(Disable)31 b(\(unset\))g(eac)m(h)h
+Fq(optname)5 b Ft(.)630 3874 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 3576 y Fq(optname)37 b Ft(is)31 b(set)h(or)f(unset.)43
+1110 3984 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 3686 y(with)43 b(`)p Fs(-q)p Ft(',)j(the)d
+b(are)h(giv)m(en)1110 4094 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 3795 y(non-zero)31 b(otherwise.)630
-3956 y Fs(-o)384 b Ft(Restricts)28 b(the)g(v)-5 b(alues)28
+Ft(are)d(enabled;)1110 4203 y(non-zero)31 b(otherwise.)630
+4356 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 4065 y(tion)23 b(to)h(the)f
+(`)p Fs(-o)p Ft(')h(op-)1110 4465 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(54\).)630 4226 y(If)40 b(either)g(`)p Fs(-s)p
+h(page)e(58\).)630 4618 y(If)40 b(either)g(`)p Fs(-s)p
Ft(')g(or)g(`)p Fs(-u)p Ft(')g(is)g(used)g(with)g(no)g
Fq(optname)45 b Ft(argumen)m(ts,)e Fs(shopt)c Ft(sho)m(ws)h(only)630
-4336 y(those)31 b(options)g(whic)m(h)f(are)g(set)h(or)g(unset,)f(resp)s
-(ectiv)m(ely)-8 b(.)630 4471 y(Unless)30 b(otherwise)h(noted,)g(the)g
+4728 y(those)31 b(options)g(whic)m(h)f(are)g(set)h(or)g(unset,)f(resp)s
+(ectiv)m(ely)-8 b(.)630 4859 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 4606 y(The)d(return)f(status)i(when)f(listing)h
+b(b)m(y)e(default.)630 4990 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 4715 y(zero)40 b(otherwise.)66 b(When)39 b(setting)h(or)f
+(non-)630 5099 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
-4825 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 4960 y(The)f(list)h(of)f
-Fs(shopt)f Ft(options)i(is:)630 5121 y Fs(autocd)192
+5209 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 5340 y(The)f(list)h(of)f
+Fs(shopt)f Ft(options)i(is:)p eop end
+%%Page: 63 69
+TeXDict begin 63 68 bop 150 -116 a Ft(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(63)630 299 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 5230 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 5340 y(used)g(b)m(y)g(in)m
-(teractiv)m(e)j(shells.)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)630 299 y Fs(cdable_vars)1110
-408 y Ft(If)34 b(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 518
-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 628
-y(the)g(directory)f(to)i(c)m(hange)f(to.)630 786 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 896
-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
-1005 y(c)m(haracters,)46 b(a)c(missing)f(c)m(haracter,)47
+(a)f(directory)h(is)f(executed)1110 408 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 518 y(used)g(b)m(y)g(in)m(teractiv)m(e)j
+(shells.)630 676 y Fs(cdable_vars)1110 786 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 896 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 1005 y(the)g(directory)f(to)i(c)m(hange)f(to.)630
+1163 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 1273 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
+1383 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 1115 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 1224
+b(If)42 b(a)1110 1492 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 1602
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 1383 y Fs(checkhash)1110
-1492 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 1602
+(teractiv)m(e)k(shells.)630 1760 y Fs(checkhash)1110
+1870 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 1979
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 1711
+b(If)32 b(a)h(hashed)e(command)i(no)f(longer)1110 2089
y(exists,)f(a)g(normal)f(path)g(searc)m(h)h(is)g(p)s(erformed.)630
-1870 y Fs(checkjobs)1110 1979 y Ft(If)d(set,)i(Bash)e(lists)h(the)g
+2247 y Fs(checkjobs)1110 2357 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 2089 y(exiting)42 b(an)f(in)m(teractiv)m(e)j(shell.)72
+1110 2466 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
-2198 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 2308 y(in)m(terv)m(ening)j
-(command)e(\(see)h(Chapter)f(7)h([Job)f(Con)m(trol],)i(page)f(93\).)42
-b(The)1110 2418 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 2576 y Fs(checkwinsize)1110
-2685 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 2795 y(necessary)-8
+2576 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 2685 y(in)m(terv)m(ening)j
+(command)e(\(see)h(Chapter)f(7)h([Job)f(Con)m(trol],)i(page)f(97\).)42
+b(The)1110 2795 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 2953 y Fs(checkwinsize)1110
+3063 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 3173 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 2953 y Fs(cmdhist)144
+Ft(and)g Fs(COLUMNS)p Ft(.)630 3331 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 3063 y(in)c(the)g(same)g
+(of)g(a)h(m)m(ultiple-line)g(command)1110 3440 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 3173 y(commands.)630
-3331 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 3550 y(commands.)630
+3708 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 3440 y(to)39 b(quoted)f(argumen)m(ts)g(to)h(the)f(conditional)h
-(command's)f(`)p Fs(=~)p Ft(')g(op)s(erator)1110 3550
+1110 3818 y(to)39 b(quoted)f(argumen)m(ts)g(to)h(the)f(conditional)h
+(command's)f(`)p Fs(=~)p Ft(')g(op)s(erator)1110 3927
y(and)i(with)f(resp)s(ect)i(to)g(lo)s(cale-sp)s(eci\014c)h(string)e
-(comparison)g(when)f(using)1110 3660 y(the)25 b(`)p Fs([[)p
+(comparison)g(when)f(using)1110 4037 y(the)25 b(`)p Fs([[)p
Ft(')f(conditional)h(command's)g(`)p Fs(<)p Ft(')f(and)g(`)p
Fs(>)p Ft(')g(op)s(erators.)39 b(Bash)25 b(v)m(ersions)1110
-3769 y(prior)31 b(to)h(bash-4.1)g(use)g(ASCI)s(I)e(collation)j(and)e
-(strcmp\(3\);)i(bash-4.1)g(and)1110 3879 y(later)e(use)f(the)h(curren)m
+4147 y(prior)31 b(to)h(bash-4.1)g(use)g(ASCI)s(I)e(collation)j(and)e
+(strcmp\(3\);)i(bash-4.1)g(and)1110 4256 y(later)e(use)f(the)h(curren)m
(t)f(lo)s(cale's)i(collation)h(sequence)e(and)f(strcoll\(3\).)630
-4037 y Fs(compat32)96 b Ft(If)27 b(set,)i(Bash)e(c)m(hanges)i(its)f(b)s
+4415 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 4147 y(to)h(lo)s(cale-sp)s(eci\014c)g(string)f(comparison)g(when)f
-(using)g(the)h(`)p Fs([[)p Ft(')g(conditional)1110 4256
+1110 4524 y(to)h(lo)s(cale-sp)s(eci\014c)g(string)f(comparison)g(when)f
+(using)g(the)h(`)p Fs([[)p Ft(')g(conditional)1110 4634
y(command's)j(`)p Fs(<)p Ft(')h(and)f(`)p Fs(>)p Ft(')g(op)s(erators)h
-(\(see)g(previous)f(item\).)630 4415 y Fs(compat40)96
+(\(see)g(previous)f(item\).)630 4792 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
-4524 y(to)h(lo)s(cale-sp)s(eci\014c)g(string)f(comparison)g(when)f
-(using)g(the)h(`)p Fs([[)p Ft(')g(conditional)1110 4634
+4902 y(to)h(lo)s(cale-sp)s(eci\014c)g(string)f(comparison)g(when)f
+(using)g(the)h(`)p Fs([[)p Ft(')g(conditional)1110 5011
y(command's)h(`)p Fs(<)p Ft(')h(and)f(`)p Fs(>)p Ft(')h(op)s(erators)f
(\(see)i(description)e(of)h Fs(compat31)p Ft(\))e(and)1110
-4743 y(the)38 b(e\013ect)i(of)e(in)m(terrupting)f(a)i(command)e(list.)
-64 b(Bash)38 b(v)m(ersions)h(4.0)g(and)1110 4853 y(later)24
+5121 y(the)38 b(e\013ect)i(of)e(in)m(terrupting)f(a)i(command)e(list.)
+64 b(Bash)38 b(v)m(ersions)h(4.0)g(and)1110 5230 y(later)24
b(in)m(terrupt)f(the)g(list)h(as)g(if)f(the)h(shell)f(receiv)m(ed)i
-(the)e(in)m(terrupt;)i(previous)1110 4963 y(v)m(ersions)31
-b(con)m(tin)m(ue)g(with)f(the)h(next)g(command)f(in)g(the)g(list.)630
-5121 y Fs(compat41)96 b Ft(If)27 b(set,)i(Bash,)g(when)e(in)g(p)s(osix)
-g(mo)s(de,)h(treats)h(a)f(single)g(quote)h(in)e(a)h(double-)1110
-5230 y(quoted)46 b(parameter)h(expansion)f(as)g(a)h(sp)s(ecial)f(c)m
-(haracter.)90 b(The)45 b(single)1110 5340 y(quotes)34
-b(m)m(ust)g(matc)m(h)h(\(an)f(ev)m(en)h(n)m(um)m(b)s(er\))e(and)g(the)h
-(c)m(haracters)h(b)s(et)m(w)m(een)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(the)40 b(single)g(quotes)g(are)g
-(considered)g(quoted.)69 b(This)38 b(is)i(the)g(b)s(eha)m(vior)g(of)
-1110 408 y Fl(posix)f Ft(mo)s(de)g(through)g(v)m(ersion)h(4.1.)69
+(the)e(in)m(terrupt;)i(previous)1110 5340 y(v)m(ersions)31
+b(con)m(tin)m(ue)g(with)f(the)h(next)g(command)f(in)g(the)g(list.)p
+eop end
+%%Page: 64 70
+TeXDict begin 64 69 bop 150 -116 a Ft(64)2572 b(Bash)31
+b(Reference)g(Man)m(ual)630 299 y Fs(compat41)96 b Ft(If)27
+b(set,)i(Bash,)g(when)e(in)g(p)s(osix)g(mo)s(de,)h(treats)h(a)f(single)
+g(quote)h(in)e(a)h(double-)1110 408 y(quoted)46 b(parameter)h
+(expansion)f(as)g(a)h(sp)s(ecial)f(c)m(haracter.)90 b(The)45
+b(single)1110 518 y(quotes)34 b(m)m(ust)g(matc)m(h)h(\(an)f(ev)m(en)h
+(n)m(um)m(b)s(er\))e(and)g(the)h(c)m(haracters)h(b)s(et)m(w)m(een)1110
+628 y(the)40 b(single)g(quotes)g(are)g(considered)g(quoted.)69
+b(This)38 b(is)i(the)g(b)s(eha)m(vior)g(of)1110 737 y
+Fl(posix)f Ft(mo)s(de)g(through)g(v)m(ersion)h(4.1.)69
b(The)39 b(default)g(Bash)h(b)s(eha)m(vior)g(re-)1110
-518 y(mains)30 b(as)h(in)f(previous)g(v)m(ersions.)630
-679 y Fs(complete_fullquote)1110 789 y Ft(If)h(set,)g(Bash)h(quotes)f
+847 y(mains)30 b(as)h(in)f(previous)g(v)m(ersions.)630
+995 y Fs(complete_fullquote)1110 1105 y Ft(If)h(set,)g(Bash)h(quotes)f
(all)h(shell)f(metac)m(haracters)i(in)e(\014lenames)g(and)g(direc-)1110
-898 y(tory)g(names)f(when)g(p)s(erforming)f(completion.)43
-b(If)30 b(not)h(set,)g(Bash)g(remo)m(v)m(es)1110 1008
+1214 y(tory)g(names)f(when)g(p)s(erforming)f(completion.)43
+b(If)30 b(not)h(set,)g(Bash)g(remo)m(v)m(es)1110 1324
y(metac)m(haracters)40 b(suc)m(h)d(as)h(the)g(dollar)g(sign)g(from)f
-(the)h(set)g(of)f(c)m(haracters)1110 1118 y(that)f(will)g(b)s(e)f
+(the)h(set)g(of)f(c)m(haracters)1110 1433 y(that)f(will)g(b)s(e)f
(quoted)g(in)g(completed)i(\014lenames)e(when)f(these)i(metac)m(har-)
-1110 1227 y(acters)29 b(app)s(ear)e(in)g(shell)h(v)-5
+1110 1543 y(acters)29 b(app)s(ear)e(in)g(shell)h(v)-5
b(ariable)28 b(references)g(in)f(w)m(ords)g(to)i(b)s(e)e(completed.)
-1110 1337 y(This)k(means)i(that)g(dollar)f(signs)g(in)g(v)-5
+1110 1653 y(This)k(means)i(that)g(dollar)f(signs)g(in)g(v)-5
b(ariable)33 b(names)g(that)f(expand)g(to)h(di-)1110
-1446 y(rectories)28 b(will)g(not)f(b)s(e)f(quoted;)j(ho)m(w)m(ev)m(er,)
-g(an)m(y)e(dollar)h(signs)f(app)s(earing)f(in)1110 1556
+1762 y(rectories)28 b(will)g(not)f(b)s(e)f(quoted;)j(ho)m(w)m(ev)m(er,)
+g(an)m(y)e(dollar)h(signs)f(app)s(earing)f(in)1110 1872
y(\014lenames)j(will)h(not)f(b)s(e)g(quoted,)h(either.)41
b(This)28 b(is)i(activ)m(e)h(only)e(when)g(bash)1110
-1666 y(is)39 b(using)f(bac)m(kslashes)i(to)g(quote)g(completed)f
-(\014lenames.)67 b(This)38 b(v)-5 b(ariable)1110 1775
+1981 y(is)39 b(using)f(bac)m(kslashes)i(to)g(quote)g(completed)f
+(\014lenames.)67 b(This)38 b(v)-5 b(ariable)1110 2091
y(is)41 b(set)g(b)m(y)g(default,)j(whic)m(h)c(is)h(the)g(default)g
-(Bash)g(b)s(eha)m(vior)g(in)g(v)m(ersions)1110 1885 y(through)30
-b(4.2.)630 2046 y Fs(direxpand)1110 2155 y Ft(If)k(set,)i(Bash)f
+(Bash)g(b)s(eha)m(vior)g(in)g(v)m(ersions)1110 2201 y(through)30
+b(4.2.)630 2349 y Fs(direxpand)1110 2458 y Ft(If)k(set,)i(Bash)f
(replaces)g(directory)g(names)g(with)f(the)g(results)h(of)f(w)m(ord)g
-(ex-)1110 2265 y(pansion)k(when)g(p)s(erforming)f(\014lename)i
-(completion.)67 b(This)38 b(c)m(hanges)i(the)1110 2375
+(ex-)1110 2568 y(pansion)k(when)g(p)s(erforming)f(\014lename)i
+(completion.)67 b(This)38 b(c)m(hanges)i(the)1110 2678
y(con)m(ten)m(ts)29 b(of)e(the)g(readline)h(editing)g(bu\013er.)38
-b(If)27 b(not)g(set,)i(Bash)e(attempts)h(to)1110 2484
+b(If)27 b(not)g(set,)i(Bash)e(attempts)h(to)1110 2787
y(preserv)m(e)j(what)f(the)g(user)g(t)m(yp)s(ed.)630
-2645 y Fs(dirspell)96 b Ft(If)26 b(set,)i(Bash)f(attempts)g(sp)s
+2935 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
-2755 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 2865 y(exist.)630
-3026 y Fs(dotglob)144 b Ft(If)27 b(set,)i(Bash)f(includes)g
+3045 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 3155 y(exist.)630
+3303 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 3135 y(\014lename)j(expansion.)630
-3296 y Fs(execfail)96 b Ft(If)24 b(this)h(is)f(set,)j(a)e(non-in)m
+b(the)h(results)g(of)1110 3412 y(\014lename)j(expansion.)630
+3561 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 3406 y(the)i(\014le)g(sp)s(eci\014ed)g(as)g(an)g(argumen)m(t)g(to)
+1110 3670 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
-3516 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 3677 y Fs(expand_aliases)1110
-3786 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 3896 y(tion)38
-b(6.6)h([Aliases],)j(page)d(83.)64 b(This)37 b(option)h(is)g(enabled)g
-(b)m(y)g(default)g(for)1110 4006 y(in)m(teractiv)m(e)33
-b(shells.)630 4167 y Fs(extdebug)96 b Ft(If)30 b(set,)h(b)s(eha)m(vior)
+3780 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 3928 y Fs(expand_aliases)1110
+4038 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 4147 y(tion)38
+b(6.6)h([Aliases],)j(page)d(87.)64 b(This)37 b(option)h(is)g(enabled)g
+(b)m(y)g(default)g(for)1110 4257 y(in)m(teractiv)m(e)33
+b(shells.)630 4405 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
-4302 y(1.)61 b(The)32 b(`)p Fs(-F)p Ft(')g(option)h(to)g(the)g
+4534 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
-4412 y(Builtins],)29 b(page)g(44\))g(displa)m(ys)f(the)g(source)h
-(\014le)f(name)g(and)f(line)h(n)m(um-)1290 4521 y(b)s(er)h(corresp)s
+4644 y(Builtins],)29 b(page)g(48\))g(displa)m(ys)f(the)g(source)h
+(\014le)f(name)g(and)f(line)h(n)m(um-)1290 4753 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 4631 y(men)m(t.)1159 4766 y(2.)61 b(If)20 b(the)h(command)g(run)e
+1290 4863 y(men)m(t.)1159 4992 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 4876 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g
-(not)i(executed.)1159 5011 y(3.)61 b(If)37 b(the)g(command)g(run)f(b)m
+b(alue,)1290 5101 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g
+(not)i(executed.)1159 5230 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 5121 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 5230 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 5340 y Fs(return)29
-b Ft(is)h(sim)m(ulated.)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)1159 299 y(4.)61
+b(of)f(2,)1290 5340 y(and)c(the)g(shell)h(is)f(executing)i(in)e(a)h
+(subroutine)e(\(a)i(shell)g(function)f(or)p eop end
+%%Page: 65 71
+TeXDict begin 65 70 bop 150 -116 a Ft(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(65)1290 299 y(a)34
+b(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 408 y
+Fs(return)29 b Ft(is)h(sim)m(ulated.)1159 553 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 408 y(descriptions)30
+(describ)s(ed)g(in)g(their)1290 662 y(descriptions)30
b(\(see)i(Section)f(5.2)g([Bash)g(V)-8 b(ariables],)32
-b(page)f(65\).)1159 545 y(5.)61 b(F)-8 b(unction)57 b(tracing)g(is)g
+b(page)f(69\).)1159 806 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
-655 y(functions,)30 b(and)f(subshells)g(in)m(v)m(ok)m(ed)j(with)d
+916 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
-765 y Fs(DEBUG)f Ft(and)h Fs(RETURN)e Ft(traps.)1159
-902 y(6.)61 b(Error)41 b(tracing)i(is)f(enabled:)63 b(command)42
-b(substitution,)i(shell)f(func-)1290 1011 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
-1121 y Ft(trap.)630 1285 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 1395 y(Section)j(3.5.8.1)i([P)m
-(attern)f(Matc)m(hing],)g(page)f(27\))h(are)f(enabled.)630
-1559 y Fs(extquote)96 b Ft(If)49 b(set,)54 b Fs($')p
+1026 y Fs(DEBUG)f Ft(and)h Fs(RETURN)e Ft(traps.)1159
+1170 y(6.)61 b(Error)41 b(tracing)i(is)f(enabled:)63
+b(command)42 b(substitution,)i(shell)f(func-)1290 1279
+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 1389 y Ft(trap.)630 1568 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 1677 y(Section)j(3.5.8.1)i
+([P)m(attern)f(Matc)m(hing],)g(page)f(29\))h(are)f(enabled.)630
+1856 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
-1669 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 1778
-y(is)e(enabled)h(b)m(y)f(default.)630 1943 y Fs(failglob)96
+1966 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 2075
+y(is)e(enabled)h(b)m(y)f(default.)630 2254 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 2052 y(pansion)30
-b(result)g(in)g(an)g(expansion)h(error.)630 2217 y Fs(force_fignore)
-1110 2326 y Ft(If)43 b(set,)k(the)d(su\016xes)f(sp)s(eci\014ed)f(b)m(y)
+(\014lenames)f(during)g(\014lename)g(ex-)1110 2364 y(pansion)30
+b(result)g(in)g(an)g(expansion)h(error.)630 2543 y Fs(force_fignore)
+1110 2652 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
-2436 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 2545 y(ignored)37
+2762 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 2871 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 2655 y([Bash)24 b(V)-8
-b(ariables],)27 b(page)e(65,)h(for)d(a)h(description)g(of)g
-Fs(FIGNORE)p Ft(.)37 b(This)22 b(option)1110 2765 y(is)30
-b(enabled)h(b)m(y)f(default.)630 2929 y Fs(globasciiranges)1110
-3039 y Ft(If)87 b(set,)104 b(range)88 b(expressions)f(used)g(in)h
-(pattern)g(matc)m(hing)h(\(see)1110 3148 y(Section)43
-b(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)j(page)c(27\))h(b)s(eha)m(v)m
-(e)f(as)f(if)h(in)f(the)1110 3258 y(traditional)h(C)e(lo)s(cale)i(when)
+b(See)37 b(Section)h(5.2)1110 2981 y([Bash)24 b(V)-8
+b(ariables],)27 b(page)e(69,)h(for)d(a)h(description)g(of)g
+Fs(FIGNORE)p Ft(.)37 b(This)22 b(option)1110 3091 y(is)30
+b(enabled)h(b)m(y)f(default.)630 3269 y Fs(globasciiranges)1110
+3379 y Ft(If)87 b(set,)104 b(range)88 b(expressions)f(used)g(in)h
+(pattern)g(matc)m(hing)h(\(see)1110 3488 y(Section)43
+b(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)j(page)c(29\))h(b)s(eha)m(v)m
+(e)f(as)f(if)h(in)f(the)1110 3598 y(traditional)h(C)e(lo)s(cale)i(when)
e(p)s(erforming)f(comparisons.)75 b(That)41 b(is,)k(the)1110
-3367 y(curren)m(t)31 b(lo)s(cale's)i(collating)g(sequence)e(is)g(not)h
+3708 y(curren)m(t)31 b(lo)s(cale's)i(collating)g(sequence)e(is)g(not)h
(tak)m(en)g(in)m(to)g(accoun)m(t,)h(so)e(`)p Fs(b)p Ft(')1110
-3477 y(will)g(not)g(collate)i(b)s(et)m(w)m(een)e(`)p
+3817 y(will)g(not)g(collate)i(b)s(et)m(w)m(een)e(`)p
Fs(A)p Ft(')g(and)f(`)p Fs(B)p Ft(',)h(and)f(upp)s(er-case)g(and)g(lo)m
-(w)m(er-case)1110 3587 y(ASCI)s(I)f(c)m(haracters)j(will)e(collate)j
-(together.)630 3751 y Fs(globstar)96 b Ft(If)38 b(set,)j(the)e(pattern)
+(w)m(er-case)1110 3927 y(ASCI)s(I)f(c)m(haracters)j(will)e(collate)j
+(together.)630 4106 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 3861 y(matc)m(h)36 b(all)g(\014les)f(and)f(zero)i(or)
+(text)j(will)1110 4215 y(matc)m(h)36 b(all)g(\014les)f(and)f(zero)i(or)
f(more)g(directories)h(and)e(sub)s(directories.)54 b(If)1110
-3970 y(the)30 b(pattern)g(is)g(follo)m(w)m(ed)i(b)m(y)d(a)i(`)p
+4325 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
-4080 y(matc)m(h.)630 4244 y Fs(gnu_errfmt)1110 4354 y
+4434 y(matc)m(h.)630 4613 y Fs(gnu_errfmt)1110 4723 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 4463 y(message)c(format.)630
-4628 y Fs(histappend)1110 4737 y Ft(If)c(set,)j(the)e(history)g(list)g
+(standard)f Fl(gnu)g Ft(error)1110 4832 y(message)c(format.)630
+5011 y Fs(histappend)1110 5121 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 4847 y(the)d Fs(HISTFILE)d Ft(v)-5
+b(alue)29 b(of)1110 5230 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 4956 y(the)31 b(\014le.)630 5121 y Fs(histreedit)1110
-5230 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
-5340 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)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)630 299 y Fs(histverify)1110
-408 y Ft(If)k(set,)i(and)e(Readline)h(is)f(b)s(eing)g(used,)h(the)f
-(results)g(of)g(history)h(substitu-)1110 518 y(tion)h(are)g(not)g
+(erwriting)1110 5340 y(the)31 b(\014le.)p eop end
+%%Page: 66 72
+TeXDict begin 66 71 bop 150 -116 a Ft(66)2572 b(Bash)31
+b(Reference)g(Man)m(ual)630 299 y Fs(histreedit)1110
+408 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 518 y(to)d(re-edit)g(a)g
+(failed)g(history)f(substitution.)630 667 y Fs(histverify)1110
+777 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 887 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 628 y(resulting)i(line)f(is)h(loaded)g(in)m
+b(Instead,)38 b(the)1110 996 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
-737 y(further)29 b(mo)s(di\014cation.)630 897 y Fs(hostcomplete)1110
-1006 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 1116 y(hostname)d(completion)h
+1106 y(further)29 b(mo)s(di\014cation.)630 1255 y Fs(hostcomplete)1110
+1365 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 1474 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 1225 y(pleted)g(\(see)h(Section)f
-(8.4.6)i([Commands)d(F)-8 b(or)36 b(Completion],)g(page)g(116\).)1110
-1335 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630
-1494 y Fs(huponexit)1110 1604 y Ft(If)i(set,)i(Bash)f(will)h(send)d
+Ft(')g(is)g(b)s(eing)f(com-)1110 1584 y(pleted)g(\(see)h(Section)f
+(8.4.6)i([Commands)d(F)-8 b(or)36 b(Completion],)g(page)g(120\).)1110
+1694 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630
+1843 y Fs(huponexit)1110 1953 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 1714 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g
-(page)f(35\).)630 1873 y Fs(interactive_comments)1110
-1983 y Ft(Allo)m(w)c(a)g(w)m(ord)e(b)s(eginning)g(with)h(`)p
+1110 2062 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g
+(page)f(38\).)630 2212 y Fs(interactive_comments)1110
+2321 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
-2092 y(ing)41 b(c)m(haracters)i(on)e(that)h(line)g(to)g(b)s(e)f
+2431 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
-2202 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630
-2361 y Fs(lastpipe)96 b Ft(If)24 b(set,)i(and)e(job)g(con)m(trol)i(is)f
+2540 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630
+2690 y Fs(lastpipe)96 b Ft(If)24 b(set,)i(and)e(job)g(con)m(trol)i(is)f
(not)f(activ)m(e,)k(the)d(shell)f(runs)f(the)i(last)g(command)1110
-2471 y(of)37 b(a)h(pip)s(eline)e(not)h(executed)h(in)f(the)g(bac)m
-(kground)g(in)g(the)g(curren)m(t)g(shell)1110 2580 y(en)m(vironmen)m
-(t.)630 2740 y Fs(lithist)144 b Ft(If)22 b(enabled,)i(and)d(the)h
+2800 y(of)37 b(a)h(pip)s(eline)e(not)h(executed)h(in)f(the)g(bac)m
+(kground)g(in)g(the)g(curren)m(t)g(shell)1110 2909 y(en)m(vironmen)m
+(t.)630 3059 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
-2849 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 2959 y(semicolon)32
-b(separators)f(where)e(p)s(ossible.)630 3118 y Fs(login_shell)1110
-3228 y Ft(The)35 b(shell)h(sets)g(this)f(option)h(if)g(it)g(is)f
+3168 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 3278 y(semicolon)32
+b(separators)f(where)e(p)s(ossible.)630 3427 y Fs(login_shell)1110
+3537 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
-3337 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(75\).)41
+3646 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(79\).)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
-3497 y Fs(mailwarn)96 b Ft(If)34 b(set,)i(and)e(a)h(\014le)g(that)g
+3796 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 3606 y(since)24 b(the)h(last)g(time)f(it)h(w)m(as)f(c)m(hec)m(k)m
+1110 3905 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
-3716 y(file)40 b Fs(has)29 b(been)g(read")g Ft(is)i(displa)m(y)m(ed.)
-630 3875 y Fs(no_empty_cmd_completion)1110 3985 y Ft(If)f(set,)g(and)g
+4015 y(file)40 b Fs(has)29 b(been)g(read")g Ft(is)i(displa)m(y)m(ed.)
+630 4164 y Fs(no_empty_cmd_completion)1110 4274 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 4095 y(the)25 b Fs(PATH)f Ft(for)h(p)s(ossible)f
+(searc)m(h)1110 4384 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
-4204 y(an)k(empt)m(y)h(line.)630 4364 y Fs(nocaseglob)1110
-4473 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 4583 y(p)s(erforming)29
-b(\014lename)i(expansion.)630 4742 y Fs(nocasematch)1110
-4852 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 4961 y(p)s(erforming)31
+4493 y(an)k(empt)m(y)h(line.)630 4643 y Fs(nocaseglob)1110
+4752 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 4862 y(p)s(erforming)29
+b(\014lename)i(expansion.)630 5011 y Fs(nocasematch)1110
+5121 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 5230 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 5071 y(mands.)630
-5230 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 5340 y(to)31 b(a)g(n)m(ull)f(string,)h(rather)f(than)g
-(themselv)m(es.)p eop end
-%%Page: 63 69
-TeXDict begin 63 68 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(63)630 299 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 408 y(grammable)45
-b(Completion],)k(page)c(120\))h(are)f(enabled.)82 b(This)44
-b(option)h(is)1110 518 y(enabled)30 b(b)m(y)h(default.)630
-677 y Fs(promptvars)1110 787 y Ft(If)50 b(set,)56 b(prompt)49
+Fs([[)g Ft(conditional)h(com-)1110 5340 y(mands.)p eop
+end
+%%Page: 67 73
+TeXDict begin 67 72 bop 150 -116 a Ft(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(67)630 299 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 408 y(to)31
+b(a)g(n)m(ull)f(string,)h(rather)f(than)g(themselv)m(es.)630
+553 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
+663 y(grammable)45 b(Completion],)k(page)c(124\))h(are)f(enabled.)82
+b(This)44 b(option)h(is)1110 772 y(enabled)30 b(b)m(y)h(default.)630
+917 y Fs(promptvars)1110 1027 y Ft(If)50 b(set,)56 b(prompt)49
b(strings)h(undergo)g(parameter)h(expansion,)k(command)1110
-897 y(substitution,)35 b(arithmetic)g(expansion,)g(and)e(quote)i(remo)m
-(v)-5 b(al)35 b(after)f(b)s(eing)1110 1006 y(expanded)53
+1136 y(substitution,)35 b(arithmetic)g(expansion,)g(and)e(quote)i(remo)
+m(v)-5 b(al)35 b(after)f(b)s(eing)1110 1246 y(expanded)53
b(as)h(describ)s(ed)e(b)s(elo)m(w)i(\(see)h(Section)f(6.9)h([Con)m
-(trolling)g(the)1110 1116 y(Prompt],)30 b(page)h(87\).)42
+(trolling)g(the)1110 1356 y(Prompt],)30 b(page)h(91\).)42
b(This)30 b(option)h(is)f(enabled)h(b)m(y)f(default.)630
-1275 y Fs(restricted_shell)1110 1385 y Ft(The)40 b(shell)h(sets)g(this)
+1500 y Fs(restricted_shell)1110 1610 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 1494 y(Section)c(6.10)g([The)f(Restricted)g(Shell],)i(page)e
-(88\).)56 b(The)34 b(v)-5 b(alue)35 b(ma)m(y)h(not)1110
-1604 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 1714
+1110 1720 y(Section)c(6.10)g([The)f(Restricted)g(Shell],)i(page)e
+(92\).)56 b(The)34 b(v)-5 b(alue)35 b(ma)m(y)h(not)1110
+1829 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 1939
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 1823
-y(stricted.)630 1983 y Fs(shift_verbose)1110 2092 y Ft(If)g(this)g(is)g
+(whether)f(or)f(not)i(a)f(shell)g(is)g(re-)1110 2048
+y(stricted.)630 2193 y Fs(shift_verbose)1110 2303 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 2202 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 2361 y
-Fs(sourcepath)1110 2471 y Ft(If)22 b(set,)j(the)e Fs(source)e
+i(when)d(the)1110 2412 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 2557 y
+Fs(sourcepath)1110 2667 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 2580 y(con)m(taining)29
+Ft(to)j(\014nd)d(the)h(directory)1110 2776 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 2690 y(b)m(y)j(default.)630
-2849 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 2886 y(b)m(y)j(default.)630
+3031 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 2959 y(fault.)630 3118 y(The)c(return)f(status)i(when)f
+(de-)1110 3140 y(fault.)630 3285 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 3228 y(zero)40 b(otherwise.)66
+Ft(are)d(enabled,)g(non-)630 3395 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 3337 y(unless)30 b(an)g Fq(optname)36
+(status)h(is)g(zero)630 3504 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
-3570 y Fr(4.4)68 b(Sp)t(ecial)45 b(Builtins)150 3729
+3722 y Fr(4.4)68 b(Sp)t(ecial)45 b(Builtins)150 3881
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 3839 y(cial)p Ft(.)47 b(When)33
+(as)h Fk(sp)-5 b(e-)150 3991 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
-3949 y(commands)e(in)g(three)h(resp)s(ects:)199 4083
+4101 y(commands)e(in)g(three)h(resp)s(ects:)199 4228
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 4218 y(2.)61
+(functions)f(during)f(command)h(lo)s(okup.)199 4355 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 4352
+(a)g(non-in)m(teractiv)m(e)i(shell)d(exits.)199 4482
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
-4462 y(after)i(the)f(command)h(completes.)275 4621 y(When)36
+4592 y(after)i(the)f(command)h(completes.)275 4737 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
-4731 y(the)31 b(rest)f(of)h(the)f(Bash)h(builtin)e(commands.)41
+4846 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 4840 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g(88.)275
-4975 y(These)f(are)g(the)h Fl(posix)f Ft(sp)s(ecial)h(builtins:)390
-5109 y Fs(break)46 b(:)i(.)f(continue)f(eval)g(exec)h(exit)g(export)f
-(readonly)f(return)h(set)390 5219 y(shift)g(trap)h(unset)p
+(Section)h(6.11)150 4956 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g(92.)275
+5083 y(These)f(are)g(the)h Fl(posix)f Ft(sp)s(ecial)h(builtins:)390
+5210 y Fs(break)46 b(:)i(.)f(continue)f(eval)g(exec)h(exit)g(export)f
+(readonly)f(return)h(set)390 5320 y(shift)g(trap)h(unset)p
eop end
-%%Page: 64 70
-TeXDict begin 64 69 bop eop end
-%%Page: 65 71
-TeXDict begin 65 70 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(65)150 299 y Fo(5)80
+%%Page: 68 74
+TeXDict begin 68 73 bop eop end
+%%Page: 69 75
+TeXDict begin 69 74 bop 150 -116 a Ft(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(69)150 299 y Fo(5)80
b(Shell)53 b(V)-13 b(ariables)150 541 y Ft(This)21 b(c)m(hapter)i
(describ)s(es)e(the)i(shell)f(v)-5 b(ariables)23 b(that)f(Bash)h(uses.)
37 b(Bash)23 b(automatically)h(assigns)f(default)150
4042 y Fs(PS1)336 b Ft(The)35 b(primary)f(prompt)h(string.)55
b(The)35 b(default)h(v)-5 b(alue)35 b(is)h(`)p Fs(\\s-\\v\\$)28
b Ft('.)56 b(See)36 b(Section)g(6.9)630 4152 y([Con)m(trolling)42
-b(the)e(Prompt],)j(page)e(87,)j(for)c(the)g(complete)i(list)f(of)f
+b(the)e(Prompt],)j(page)e(91,)j(for)c(the)g(complete)i(list)f(of)f
(escap)s(e)h(sequences)630 4262 y(that)31 b(are)g(expanded)e(b)s(efore)
h Fs(PS1)g Ft(is)g(displa)m(y)m(ed.)150 4424 y Fs(PS2)336
b Ft(The)30 b(secondary)g(prompt)g(string.)41 b(The)29
(in)h(di\013eren)m(t)g(c)m(hapters:)38 b(v)-5 b(ariables)25
b(for)f(con)m(trolling)150 5176 y(the)31 b(job)f(con)m(trol)h
(facilities)i(\(see)e(Section)g(7.3)h([Job)e(Con)m(trol)h(V)-8
-b(ariables],)32 b(page)g(96\).)150 5340 y Fs(BASH)288
+b(ariables],)32 b(page)g(100\).)150 5340 y Fs(BASH)288
b Ft(The)30 b(full)g(pathname)g(used)g(to)h(execute)h(the)e(curren)m(t)
g(instance)h(of)g(Bash.)p eop end
-%%Page: 66 72
-TeXDict begin 66 71 bop 150 -116 a Ft(66)2572 b(Bash)31
+%%Page: 70 76
+TeXDict begin 70 75 bop 150 -116 a Ft(70)2572 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fs(BASHOPTS)96 b Ft(A)31
b(colon-separated)h(list)f(of)g(enabled)f(shell)h(options.)41
b(Eac)m(h)31 b(w)m(ord)f(in)g(the)h(list)g(is)g(a)g(v)-5
b(alid)630 408 y(argumen)m(t)33 b(for)g(the)f(`)p Fs(-s)p
Ft(')h(option)g(to)g(the)g Fs(shopt)e Ft(builtin)i(command)f(\(see)i
-(Section)f(4.3.2)630 518 y([The)j(Shopt)g(Builtin],)i(page)f(58\).)60
+(Section)f(4.3.2)630 518 y([The)j(Shopt)g(Builtin],)i(page)f(62\).)60
b(The)36 b(options)h(app)s(earing)f(in)g Fs(BASHOPTS)e
Ft(are)i(those)630 628 y(rep)s(orted)e(as)h(`)p Fs(on)p
Ft(')f(b)m(y)h(`)p Fs(shopt)p Ft('.)53 b(If)34 b(this)g(v)-5
(v)-5 b(ariable)41 b(whose)f(mem)m(b)s(ers)f(corresp)s(ond)g(to)i(the)f
(in)m(ternal)h(list)630 1587 y(of)c(aliases)h(as)f(main)m(tained)g(b)m
(y)g(the)g Fs(alias)e Ft(builtin.)59 b(\(see)37 b(Section)h(4.1)f
-([Bourne)g(Shell)630 1696 y(Builtins],)f(page)e(37\).)53
+([Bourne)g(Shell)630 1696 y(Builtins],)f(page)e(41\).)53
b(Elemen)m(ts)35 b(added)e(to)i(this)e(arra)m(y)i(app)s(ear)e(in)h(the)
g(alias)h(list;)i(un-)630 1806 y(setting)31 b(arra)m(y)g(elemen)m(ts)h
(cause)f(aliases)h(to)f(b)s(e)f(remo)m(v)m(ed)h(from)f(the)h(alias)g
2504 y(is)g(pushed)f(on)m(to)i Fs(BASH_ARGC)p Ft(.)59
b(The)37 b(shell)g(sets)h Fs(BASH_ARGC)c Ft(only)k(when)e(in)h
(extended)630 2614 y(debugging)23 b(mo)s(de)f(\(see)h(Section)g(4.3.2)i
-([The)d(Shopt)g(Builtin],)j(page)e(58)h(for)e(a)h(description)630
+([The)d(Shopt)g(Builtin],)j(page)e(62)h(for)e(a)h(description)630
2724 y(of)31 b(the)f Fs(extdebug)e Ft(option)j(to)g(the)g
Fs(shopt)e Ft(builtin\).)150 2874 y Fs(BASH_ARGV)630
2984 y Ft(An)24 b(arra)m(y)g(v)-5 b(ariable)25 b(con)m(taining)h(all)f
(on)m(to)i Fs(BASH_ARGV)p Ft(.)66 b(The)40 b(shell)630
3422 y(sets)28 b Fs(BASH_ARGV)e Ft(only)i(when)f(in)h(extended)g
(debugging)g(mo)s(de)g(\(see)h(Section)f(4.3.2)i([The)630
-3532 y(Shopt)i(Builtin],)h(page)g(58)g(for)f(a)h(description)f(of)h
+3532 y(Shopt)i(Builtin],)h(page)g(62)g(for)f(a)h(description)f(of)h
(the)f Fs(extdebug)e Ft(option)j(to)g(the)f Fs(shopt)630
3641 y Ft(builtin\).)150 3792 y Fs(BASH_CMDS)630 3902
y Ft(An)i(asso)s(ciativ)m(e)i(arra)m(y)f(v)-5 b(ariable)35
b(whose)f(mem)m(b)s(ers)f(corresp)s(ond)g(to)i(the)f(in)m(ternal)h
(hash)630 4011 y(table)c(of)g(commands)f(as)g(main)m(tained)h(b)m(y)g
(the)f Fs(hash)f Ft(builtin)h(\(see)h(Section)g(4.1)h([Bourne)630
-4121 y(Shell)23 b(Builtins],)j(page)e(37\).)40 b(Elemen)m(ts)24
+4121 y(Shell)23 b(Builtins],)j(page)e(41\).)40 b(Elemen)m(ts)24
b(added)e(to)j(this)e(arra)m(y)h(app)s(ear)e(in)i(the)f(hash)g(table;)
630 4230 y(unsetting)30 b(arra)m(y)h(elemen)m(ts)h(cause)f(commands)f
(to)h(b)s(e)f(remo)m(v)m(ed)h(from)f(the)h(hash)e(table.)150
(shell)h(script,)g(its)g(v)-5 b(alue)29 b(is)630 4970
y(expanded)k(and)h(used)g(as)g(the)h(name)f(of)g(a)h(startup)f(\014le)g
(to)h(read)f(b)s(efore)g(executing)i(the)630 5080 y(script.)41
-b(See)30 b(Section)h(6.2)h([Bash)f(Startup)e(Files],)j(page)f(77.)150
+b(See)30 b(Section)h(6.2)h([Bash)f(Startup)e(Files],)j(page)f(81.)150
5230 y Fs(BASH_EXECUTION_STRING)630 5340 y Ft(The)f(command)g(argumen)m
(t)h(to)g(the)g(`)p Fs(-c)p Ft(')f(in)m(v)m(o)s(cation)i(option.)p
eop end
-%%Page: 67 73
-TeXDict begin 67 72 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(67)150 299 y Fs(BASH_LINENO)630
+%%Page: 71 77
+TeXDict begin 71 76 bop 150 -116 a Ft(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(71)150 299 y Fs(BASH_LINENO)630
408 y Ft(An)62 b(arra)m(y)i(v)-5 b(ariable)63 b(whose)g(mem)m(b)s(ers)e
(are)j(the)e(line)h(n)m(um)m(b)s(ers)f(in)g(source)h(\014les)630
518 y(where)46 b(eac)m(h)i(corresp)s(onding)e(mem)m(b)s(er)f(of)i
b(executing)h(in)f(that)h(en)m(vironmen)m(t.)42 b(The)30
b(initial)h(v)-5 b(alue)31 b(is)f(0.)150 2673 y Fs(BASH_VERSINFO)630
2783 y Ft(A)36 b(readonly)g(arra)m(y)g(v)-5 b(ariable)37
-b(\(see)f(Section)h(6.7)g([Arra)m(ys],)h(page)e(84\))h(whose)f(mem)m(b)
+b(\(see)f(Section)h(6.7)g([Arra)m(ys],)h(page)e(88\))h(whose)f(mem)m(b)
s(ers)630 2892 y(hold)c(v)m(ersion)h(information)f(for)g(this)g
(instance)h(of)g(Bash.)46 b(The)32 b(v)-5 b(alues)32
b(assigned)h(to)g(the)630 3002 y(arra)m(y)e(mem)m(b)s(ers)e(are)i(as)g
(\014le)h(descriptor.)58 b(This)630 5340 y(allo)m(ws)29
b(tracing)h(output)d(to)i(b)s(e)f(separated)g(from)g(diagnostic)h(and)f
(error)f(messages.)41 b(The)p eop end
-%%Page: 68 74
-TeXDict begin 68 73 bop 150 -116 a Ft(68)2572 b(Bash)31
+%%Page: 72 78
+TeXDict begin 72 77 bop 150 -116 a Ft(72)2572 b(Bash)31
b(Reference)g(Man)m(ual)630 299 y(\014le)g(descriptor)f(is)h(closed)g
(when)f Fs(BASH_XTRACEFD)d Ft(is)k(unset)f(or)g(assigned)h(a)g(new)f(v)
-5 b(alue.)630 408 y(Unsetting)45 b Fs(BASH_XTRACEFD)40
b(ailable)43 b(only)e(in)f(shell)h(functions)f(in)m(v)m(ok)m(ed)i(b)m
(y)e(the)h(pro-)630 1614 y(grammable)36 b(completion)g(facilities)i
(\(see)e(Section)g(8.6)g([Programmable)g(Completion],)630
-1724 y(page)31 b(120\).)150 1888 y Fs(COMP_LINE)630 1998
+1724 y(page)31 b(124\).)150 1888 y Fs(COMP_LINE)630 1998
y Ft(The)38 b(curren)m(t)h(command)f(line.)66 b(This)37
b(v)-5 b(ariable)40 b(is)f(a)m(v)-5 b(ailable)41 b(only)d(in)h(shell)f
(functions)630 2107 y(and)25 b(external)h(commands)f(in)m(v)m(ok)m(ed)h
(b)m(y)f(the)h(programmable)f(completion)i(facilities)g(\(see)630
-2217 y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(120\).)150
+2217 y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(124\).)150
2381 y Fs(COMP_POINT)630 2491 y Ft(The)25 b(index)g(of)h(the)g(curren)m
(t)f(cursor)g(p)s(osition)h(relativ)m(e)i(to)e(the)g(b)s(eginning)f(of)
g(the)h(curren)m(t)630 2600 y(command.)40 b(If)27 b(the)h(curren)m(t)g
2819 y(only)36 b(in)f(shell)h(functions)f(and)g(external)h(commands)g
(in)m(v)m(ok)m(ed)h(b)m(y)e(the)h(programmable)630 2929
y(completion)c(facilities)g(\(see)g(Section)f(8.6)g([Programmable)g
-(Completion],)h(page)f(120\).)150 3093 y Fs(COMP_TYPE)630
+(Completion],)h(page)f(124\).)150 3093 y Fs(COMP_TYPE)630
3203 y Ft(Set)c(to)h(an)f(in)m(teger)h(v)-5 b(alue)28
b(corresp)s(onding)e(to)h(the)h(t)m(yp)s(e)f(of)g(completion)h
(attempted)g(that)630 3313 y(caused)e(a)g(completion)i(function)d(to)i
b(only)f(in)f(shell)g(functions)g(and)g(external)630
3751 y(commands)32 b(in)m(v)m(ok)m(ed)i(b)m(y)e(the)g(programmable)h
(completion)g(facilities)i(\(see)e(Section)g(8.6)630
-3861 y([Programmable)e(Completion],)h(page)f(120\).)150
+3861 y([Programmable)e(Completion],)h(page)f(124\).)150
4025 y Fs(COMP_KEY)96 b Ft(The)29 b(k)m(ey)i(\(or)g(\014nal)e(k)m(ey)i
(of)f(a)g(k)m(ey)h(sequence\))g(used)e(to)i(in)m(v)m(ok)m(e)h(the)e
(curren)m(t)g(completion)630 4134 y(function.)150 4299
b(This)36 b(v)-5 b(ariable)37 b(is)f(a)m(v)-5 b(ailable)39
b(only)e(in)f(shell)h(func-)630 5230 y(tions)32 b(in)m(v)m(ok)m(ed)i(b)
m(y)d(the)i(programmable)f(completion)h(facilities)h(\(see)f(Section)g
-(8.6)g([Pro-)630 5340 y(grammable)e(Completion],)g(page)g(120\).)p
+(8.6)g([Pro-)630 5340 y(grammable)e(Completion],)g(page)g(124\).)p
eop end
-%%Page: 69 75
-TeXDict begin 69 74 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(69)150 299 y Fs(COMPREPLY)630
+%%Page: 73 79
+TeXDict begin 73 78 bop 150 -116 a Ft(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(73)150 299 y Fs(COMPREPLY)630
408 y Ft(An)37 b(arra)m(y)h(v)-5 b(ariable)38 b(from)f(whic)m(h)g(Bash)
g(reads)g(the)h(p)s(ossible)e(completions)j(generated)630
518 y(b)m(y)33 b(a)g(shell)h(function)f(in)m(v)m(ok)m(ed)h(b)m(y)f(the)
g(programmable)h(completion)g(facilit)m(y)h(\(see)f(Sec-)630
-628 y(tion)g(8.6)g([Programmable)g(Completion],)h(page)f(120\).)51
+628 y(tion)g(8.6)g([Programmable)g(Completion],)h(page)f(124\).)51
b(Eac)m(h)34 b(arra)m(y)g(elemen)m(t)h(con)m(tains)630
737 y(one)c(p)s(ossible)f(completion.)150 889 y Fs(COPROC)192
b Ft(An)27 b(arra)m(y)g(v)-5 b(ariable)28 b(created)g(to)f(hold)g(the)g
2329 y Fs(ENV)336 b Ft(Similar)35 b(to)g Fs(BASH_ENV)p
Ft(;)h(used)e(when)g(the)h(shell)g(is)g(in)m(v)m(ok)m(ed)h(in)e
Fl(posix)h Ft(Mo)s(de)g(\(see)g(Sec-)630 2438 y(tion)c(6.11)h([Bash)f
-(POSIX)e(Mo)s(de],)i(page)g(88\).)150 2590 y Fs(EUID)288
+(POSIX)e(Mo)s(de],)i(page)g(92\).)150 2590 y Fs(EUID)288
b Ft(The)30 b(n)m(umeric)g(e\013ectiv)m(e)j(user)d(id)g(of)g(the)h
(curren)m(t)f(user.)40 b(This)30 b(v)-5 b(ariable)31
b(is)f(readonly)-8 b(.)150 2741 y Fs(FCEDIT)192 b Ft(The)30
(expansion)f(pattern)630 5230 y(also)i(matc)m(hes)g(one)f(of)g(the)g
(patterns)g(in)f Fs(GLOBIGNORE)p Ft(,)f(it)i(is)g(remo)m(v)m(ed)h(from)
e(the)h(list)h(of)630 5340 y(matc)m(hes.)p eop end
-%%Page: 70 76
-TeXDict begin 70 75 bop 150 -116 a Ft(70)2572 b(Bash)31
+%%Page: 74 80
+TeXDict begin 74 79 bop 150 -116 a Ft(74)2572 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fs(GROUPS)192 b Ft(An)36
b(arra)m(y)g(v)-5 b(ariable)37 b(con)m(taining)g(the)f(list)h(of)f
(groups)g(of)g(whic)m(h)f(the)i(curren)m(t)e(user)h(is)g(a)630
(reset.)150 682 y Fs(histchars)630 792 y Ft(Up)c(to)g(three)g(c)m
(haracters)i(whic)m(h)d(con)m(trol)j(history)d(expansion,)i(quic)m(k)g
(substitution,)g(and)630 902 y(tok)m(enization)k(\(see)f(Section)f(9.3)
-h([History)f(In)m(teraction],)i(page)f(131\).)41 b(The)29
+h([History)f(In)m(teraction],)i(page)f(135\).)41 b(The)29
b(\014rst)e(c)m(harac-)630 1011 y(ter)j(is)f(the)g Fq(history)g
(expansion)g Ft(c)m(haracter,)j(that)e(is,)f(the)h(c)m(haracter)h(whic)
m(h)d(signi\014es)i(the)630 1121 y(start)25 b(of)f(a)h(history)f
4299 y(than)37 b(that)h(n)m(um)m(b)s(er)d(of)j(lines)f(b)m(y)g(remo)m
(ving)h(the)f(oldest)h(en)m(tries.)62 b(The)37 b(history)g(\014le)g(is)
630 4408 y(also)i(truncated)f(to)h(this)e(size)i(after)g(writing)f(it)g
-(when)f(an)h(in)m(teractiv)m(e)j(shell)d(exits.)64 b(If)630
-4518 y(the)39 b(v)-5 b(alue)39 b(is)g(0,)j(the)d(history)g(\014le)g(is)
-f(truncated)h(to)h(zero)g(size.)66 b(Non-n)m(umeric)40
-b(v)-5 b(alues)630 4628 y(and)28 b(n)m(umeric)g(v)-5
-b(alues)29 b(less)f(than)g(zero)i(inhibit)e(truncation.)40
-b(The)28 b(shell)g(sets)h(the)g(default)630 4737 y(v)-5
-b(alue)31 b(to)g(the)g(v)-5 b(alue)30 b(of)h Fs(HISTSIZE)d
-Ft(after)j(reading)f(an)m(y)h(startup)f(\014les.)150
+(when)f(a)h(shell)h(exits.)64 b(If)37 b(the)h(v)-5 b(alue)39
+b(is)630 4518 y(0,)g(the)e(history)f(\014le)h(is)g(truncated)f(to)i
+(zero)f(size.)60 b(Non-n)m(umeric)37 b(v)-5 b(alues)37
+b(and)f(n)m(umeric)630 4628 y(v)-5 b(alues)31 b(less)f(than)g(zero)h
+(inhibit)f(truncation.)41 b(The)29 b(shell)i(sets)f(the)h(default)f(v)
+-5 b(alue)31 b(to)g(the)630 4737 y(v)-5 b(alue)31 b(of)f
+Fs(HISTSIZE)f Ft(after)h(reading)h(an)m(y)g(startup)f(\014les.)150
4902 y Fs(HISTIGNORE)630 5011 y Ft(A)j(colon-separated)h(list)f(of)g
(patterns)f(used)g(to)h(decide)g(whic)m(h)f(command)g(lines)h(should)
630 5121 y(b)s(e)f(sa)m(v)m(ed)h(on)g(the)f(history)h(list.)47
(ended\).)75 b(Eac)m(h)630 5340 y(pattern)42 b(is)g(tested)g(against)h
(the)f(line)g(after)g(the)g(c)m(hec)m(ks)h(sp)s(eci\014ed)e(b)m(y)h
Fs(HISTCONTROL)p eop end
-%%Page: 71 77
-TeXDict begin 71 76 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(71)630 299 y(are)37
+%%Page: 75 81
+TeXDict begin 75 80 bop 150 -116 a Ft(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(75)630 299 y(are)37
b(applied.)59 b(In)36 b(addition)h(to)g(the)g(normal)g(shell)f(pattern)
h(matc)m(hing)h(c)m(haracters,)i(`)p Fs(&)p Ft(')630
408 y(matc)m(hes)d(the)f(previous)g(history)g(line.)57
Ft(and)g(an)m(y)h(other)g Fs(LC_)f Ft(v)-5 b(ariable)29
b(sp)s(ecifying)630 5340 y(a)i(lo)s(cale)h(category)-8
b(.)p eop end
-%%Page: 72 78
-TeXDict begin 72 77 bop 150 -116 a Ft(72)2572 b(Bash)31
+%%Page: 76 82
+TeXDict begin 76 81 bop 150 -116 a Ft(76)2572 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fs(LC_COLLATE)630 408
y Ft(This)37 b(v)-5 b(ariable)38 b(determines)g(the)g(collation)i
(order)d(used)g(when)f(sorting)i(the)g(results)g(of)630
(vior)f(of)g(range)h(expressions,)h(equiv-)630 628 y(alence)e(classes,)
h(and)e(collating)i(sequences)e(within)f(\014lename)h(expansion)g(and)f
(pattern)630 737 y(matc)m(hing)d(\(see)h(Section)f(3.5.8)h([Filename)g
-(Expansion],)e(page)h(26\).)150 894 y Fs(LC_CTYPE)96
+(Expansion],)e(page)h(29\).)150 894 y Fs(LC_CTYPE)96
b Ft(This)36 b(v)-5 b(ariable)37 b(determines)f(the)h(in)m
(terpretation)h(of)f(c)m(haracters)h(and)e(the)g(b)s(eha)m(vior)h(of)
630 1003 y(c)m(haracter)46 b(classes)g(within)e(\014lename)h(expansion)
g(and)f(pattern)h(matc)m(hing)h(\(see)f(Sec-)630 1113
-y(tion)31 b(3.5.8)h([Filename)g(Expansion],)e(page)h(26\).)150
+y(tion)31 b(3.5.8)h([Filename)g(Expansion],)e(page)h(29\).)150
1270 y Fs(LC_MESSAGES)630 1379 y Ft(This)25 b(v)-5 b(ariable)27
b(determines)f(the)g(lo)s(cale)i(used)d(to)i(translate)g(double-quoted)
f(strings)g(pre-)630 1489 y(ceded)31 b(b)m(y)f(a)h(`)p
b Ft(A)30 b(string)h(describing)f(the)g(op)s(erating)h(system)g(Bash)f
(is)h(running)d(on.)150 4150 y Fs(PIPESTATUS)630 4260
y Ft(An)23 b(arra)m(y)h(v)-5 b(ariable)24 b(\(see)h(Section)f(6.7)h
-([Arra)m(ys],)g(page)f(84\))h(con)m(taining)g(a)f(list)g(of)g(exit)g
+([Arra)m(ys],)g(page)f(88\))h(con)m(taining)g(a)f(list)g(of)g(exit)g
(sta-)630 4369 y(tus)h(v)-5 b(alues)27 b(from)e(the)h(pro)s(cesses)g
(in)f(the)h(most-recen)m(tly-executed)j(foreground)c(pip)s(eline)630
4479 y(\(whic)m(h)30 b(ma)m(y)h(con)m(tain)h(only)f(a)f(single)h
Ft(If)h(this)g(v)-5 b(ariable)34 b(is)e(in)g(the)h(en)m(vironmen)m(t)g
(when)e(Bash)i(starts,)g(the)g(shell)g(en)m(ters)g Fl(posix)630
4855 y Ft(mo)s(de)22 b(\(see)h(Section)g(6.11)h([Bash)e(POSIX)f(Mo)s
-(de],)k(page)e(88\))g(b)s(efore)f(reading)g(the)g(startup)630
+(de],)k(page)e(92\))g(b)s(efore)f(reading)g(the)g(startup)630
4964 y(\014les,)32 b(as)f(if)h(the)f(`)p Fs(--posix)p
Ft(')f(in)m(v)m(o)s(cation)j(option)f(had)f(b)s(een)g(supplied.)42
b(If)31 b(it)h(is)f(set)h(while)630 5074 y(the)f(shell)f(is)h(running,)
d(Bash)j(enables)g Fl(posix)e Ft(mo)s(de,)h(as)h(if)f(the)h(command)870
5207 y Fs(set)47 b(-o)g(posix)630 5340 y Ft(had)30 b(b)s(een)f
(executed.)p eop end
-%%Page: 73 79
-TeXDict begin 73 78 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(73)150 299 y Fs(PPID)288
+%%Page: 77 83
+TeXDict begin 77 82 bop 150 -116 a Ft(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(77)150 299 y Fs(PPID)288
b Ft(The)30 b(pro)s(cess)g Fl(id)g Ft(of)h(the)f(shell's)h(paren)m(t)g
(pro)s(cess.)40 b(This)30 b(v)-5 b(ariable)31 b(is)f(readonly)-8
b(.)150 451 y Fs(PROMPT_COMMAND)630 560 y Ft(If)32 b(set,)h(the)f(v)-5
(trailing)630 1041 y(directory)35 b(comp)s(onen)m(ts)g(to)h(retain)f
(when)f(expanding)g(the)h Fs(\\w)f Ft(and)g Fs(\\W)g
Ft(prompt)g(string)630 1150 y(escap)s(es)21 b(\(see)h(Section)f(6.9)h
-([Con)m(trolling)g(the)f(Prompt],)h(page)f(87\).)39 b(Characters)21
+([Con)m(trolling)g(the)f(Prompt],)h(page)f(91\).)39 b(Characters)21
b(remo)m(v)m(ed)630 1260 y(are)31 b(replaced)g(with)f(an)g(ellipsis.)
150 1412 y Fs(PS3)336 b Ft(The)34 b(v)-5 b(alue)35 b(of)f(this)g(v)-5
b(ariable)35 b(is)g(used)e(as)i(the)f(prompt)g(for)g(the)g
b Ft(The)20 b(v)-5 b(alue)22 b(is)e(the)h(prompt)f(prin)m(ted)h(b)s
(efore)f(the)h(command)g(line)g(is)g(ec)m(ho)s(ed)g(when)f(the)h(`)p
Fs(-x)p Ft(')630 1783 y(option)32 b(is)f(set)h(\(see)g(Section)h(4.3.1)
-g([The)e(Set)g(Builtin],)i(page)f(54\).)45 b(The)31 b(\014rst)f(c)m
+g([The)e(Set)g(Builtin],)i(page)f(58\).)45 b(The)31 b(\014rst)f(c)m
(haracter)630 1892 y(of)k Fs(PS4)g Ft(is)g(replicated)i(m)m(ultiple)f
(times,)h(as)e(necessary)-8 b(,)37 b(to)e(indicate)g(m)m(ultiple)g(lev)
m(els)h(of)630 2002 y(indirection.)41 b(The)30 b(default)h(is)f(`)p
2524 y(erator.)150 2676 y Fs(READLINE_LINE)630 2786 y
Ft(The)e(con)m(ten)m(ts)i(of)f(the)g(Readline)g(line)g(bu\013er,)f(for)
h(use)f(with)g(`)p Fs(bind)j(-x)p Ft(')d(\(see)h(Section)h(4.2)630
-2895 y([Bash)i(Builtins],)g(page)g(44\).)150 3047 y Fs(READLINE_POINT)
+2895 y([Bash)i(Builtins],)g(page)g(48\).)150 3047 y Fs(READLINE_POINT)
630 3157 y Ft(The)23 b(p)s(osition)g(of)g(the)h(insertion)f(p)s(oin)m
(t)g(in)g(the)g(Readline)h(line)f(bu\013er,)h(for)f(use)g(with)g(`)p
Fs(bind)630 3266 y(-x)p Ft(')30 b(\(see)h(Section)h(4.2)f([Bash)g
-(Builtins],)g(page)g(44\).)150 3418 y Fs(REPLY)240 b
+(Builtins],)g(page)g(48\).)150 3418 y Fs(REPLY)240 b
Ft(The)30 b(default)g(v)-5 b(ariable)32 b(for)e(the)g
Fs(read)g Ft(builtin.)150 3570 y Fs(SECONDS)144 b Ft(This)40
b(v)-5 b(ariable)41 b(expands)f(to)h(the)g(n)m(um)m(b)s(er)e(of)i
41 b(Eac)m(h)31 b(w)m(ord)f(in)g(the)h(list)g(is)g(a)g(v)-5
b(alid)630 4640 y(argumen)m(t)24 b(for)f(the)h(`)p Fs(-o)p
Ft(')f(option)h(to)g(the)g Fs(set)f Ft(builtin)g(command)g(\(see)i
-(Section)f(4.3.1)h([The)630 4750 y(Set)k(Builtin],)h(page)f(54\).)42
+(Section)f(4.3.1)h([The)630 4750 y(Set)k(Builtin],)h(page)f(58\).)42
b(The)28 b(options)h(app)s(earing)f(in)g Fs(SHELLOPTS)e
Ft(are)j(those)h(rep)s(orted)630 4859 y(as)g(`)p Fs(on)p
Ft(')f(b)m(y)h(`)p Fs(set)g(-o)p Ft('.)40 b(If)29 b(this)h(v)-5
b(This)20 b(is)h(in)m(tended)630 5340 y(to)31 b(b)s(e)f(a)h(coun)m(t)g
(of)f(ho)m(w)h(deeply)f(y)m(our)g(Bash)h(shells)f(are)h(nested.)p
eop end
-%%Page: 74 80
-TeXDict begin 74 79 bop 150 -116 a Ft(74)2572 b(Bash)31
+%%Page: 78 84
+TeXDict begin 78 83 bop 150 -116 a Ft(78)2572 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fs(TIMEFORMAT)630 408
y Ft(The)f(v)-5 b(alue)32 b(of)f(this)g(parameter)g(is)g(used)f(as)h(a)
g(format)h(string)f(sp)s(ecifying)f(ho)m(w)h(the)g(tim-)630
b(alue)23 b(greater)h(than)e(zero,)j Fs(TMOUT)d Ft(is)g(treated)i(as)e
(the)h(default)g(timeout)g(for)g(the)630 3268 y Fs(read)31
b Ft(builtin)h(\(see)h(Section)f(4.2)i([Bash)e(Builtins],)h(page)g
-(44\).)47 b(The)32 b Fs(select)e Ft(command)630 3377
+(48\).)47 b(The)32 b Fs(select)e Ft(command)630 3377
y(\(see)f(Section)h(3.2.4.2)g([Conditional)g(Constructs],)e(page)i
(10\))f(terminates)g(if)g(input)e(do)s(es)630 3487 y(not)k(arriv)m(e)g
(after)g Fs(TMOUT)e Ft(seconds)h(when)f(input)h(is)g(coming)h(from)f(a)
-h(terminal.)630 3621 y(In)25 b(an)h(in)m(teractiv)m(e)i(shell,)g(the)e
-(v)-5 b(alue)26 b(is)g(in)m(terpreted)g(as)g(the)g(n)m(um)m(b)s(er)f
-(of)h(seconds)f(to)i(w)m(ait)630 3731 y(for)32 b(input)f(after)i
-(issuing)f(the)g(primary)g(prompt)f(when)g(the)i(shell)f(is)h(in)m
-(teractiv)m(e.)49 b(Bash)630 3841 y(terminates)31 b(after)g(that)g(n)m
-(um)m(b)s(er)e(of)i(seconds)f(if)g(input)g(do)s(es)g(not)g(arriv)m(e.)
-150 4000 y Fs(TMPDIR)192 b Ft(If)39 b(set,)j(Bash)e(uses)f(its)h(v)-5
-b(alue)40 b(as)f(the)h(name)f(of)h(a)g(directory)g(in)f(whic)m(h)g
-(Bash)h(creates)630 4110 y(temp)s(orary)30 b(\014les)g(for)g(the)h
-(shell's)g(use.)150 4269 y Fs(UID)336 b Ft(The)30 b(n)m(umeric)g(real)h
-(user)f(id)g(of)g(the)h(curren)m(t)f(user.)40 b(This)30
-b(v)-5 b(ariable)31 b(is)f(readonly)-8 b(.)p eop end
-%%Page: 75 81
-TeXDict begin 75 80 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(75)150 299 y Fo(6)80
+h(terminal.)630 3621 y(In)40 b(an)h(in)m(teractiv)m(e)i(shell,)h(the)d
+(v)-5 b(alue)41 b(is)g(in)m(terpreted)g(as)f(the)h(n)m(um)m(b)s(er)f
+(of)h(seconds)f(to)630 3731 y(w)m(ait)28 b(for)e(a)g(line)h(of)g(input)
+e(after)i(issuing)f(the)h(primary)e(prompt.)39 b(Bash)26
+b(terminates)h(after)630 3841 y(w)m(aiting)32 b(for)e(that)h(n)m(um)m
+(b)s(er)e(of)h(seconds)h(if)f(a)h(complete)h(line)e(of)h(input)e(do)s
+(es)h(not)h(arriv)m(e.)150 4000 y Fs(TMPDIR)192 b Ft(If)39
+b(set,)j(Bash)e(uses)f(its)h(v)-5 b(alue)40 b(as)f(the)h(name)f(of)h(a)
+g(directory)g(in)f(whic)m(h)g(Bash)h(creates)630 4110
+y(temp)s(orary)30 b(\014les)g(for)g(the)h(shell's)g(use.)150
+4269 y Fs(UID)336 b Ft(The)30 b(n)m(umeric)g(real)h(user)f(id)g(of)g
+(the)h(curren)m(t)f(user.)40 b(This)30 b(v)-5 b(ariable)31
+b(is)f(readonly)-8 b(.)p eop end
+%%Page: 79 85
+TeXDict begin 79 84 bop 150 -116 a Ft(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(79)150 299 y Fo(6)80
b(Bash)54 b(F)-13 b(eatures)150 524 y Ft(This)30 b(c)m(hapter)h
(describ)s(es)e(features)i(unique)e(to)i(Bash.)150 752
y Fr(6.1)68 b(In)l(v)l(oking)46 b(Bash)390 912 y Fs(bash)h([long-opt])e
b Fs(])43 b([)p Fi(ar-)390 1460 y(gument)57 b Fs(...)o(])275
1592 y Ft(All)31 b(of)g(the)f(single-c)m(haracter)k(options)d(used)f
(with)g(the)h Fs(set)f Ft(builtin)g(\(see)h(Section)h(4.3.1)g([The)f
-(Set)150 1702 y(Builtin],)45 b(page)c(54\))i(can)e(b)s(e)f(used)h(as)g
+(Set)150 1702 y(Builtin],)45 b(page)c(58\))i(can)e(b)s(e)f(used)h(as)g
(options)g(when)f(the)i(shell)f(is)g(in)m(v)m(ok)m(ed.)74
b(In)41 b(addition,)j(there)150 1811 y(are)38 b(sev)m(eral)h(m)m
(ulti-c)m(haracter)h(options)d(that)h(y)m(ou)g(can)g(use.)61
2186 y Ft(Arrange)j(for)g(the)g(debugger)g(pro\014le)g(to)h(b)s(e)e
(executed)i(b)s(efore)f(the)g(shell)g(starts.)49 b(T)-8
b(urns)630 2296 y(on)37 b(extended)g(debugging)g(mo)s(de)g(\(see)h
-(Section)g(4.3.2)g([The)f(Shopt)g(Builtin],)i(page)f(58)630
+(Section)g(4.3.2)g([The)f(Shopt)g(Builtin],)i(page)f(62)630
2405 y(for)30 b(a)h(description)f(of)h(the)f Fs(extdebug)f
Ft(option)h(to)h(the)g Fs(shopt)e Ft(builtin\).)150 2561
y Fs(--dump-po-strings)630 2670 y Ft(A)37 b(list)g(of)f(all)i
b Ft(Equiv)-5 b(alen)m(t)31 b(to)g(`)p Fs(-l)p Ft('.)150
4106 y Fs(--noediting)630 4216 y Ft(Do)h(not)e(use)h(the)g
Fl(gnu)f Ft(Readline)i(library)e(\(see)h(Chapter)g(8)g([Command)f(Line)
-g(Editing],)630 4325 y(page)h(97\))h(to)f(read)f(command)g(lines)h
-(when)e(the)i(shell)f(is)h(in)m(teractiv)m(e.)150 4481
-y Fs(--noprofile)630 4590 y Ft(Don't)h(load)f(the)g(system-wide)g
+g(Editing],)630 4325 y(page)h(101\))h(to)f(read)g(command)f(lines)g
+(when)g(the)g(shell)h(is)f(in)m(teractiv)m(e.)150 4481
+y Fs(--noprofile)630 4590 y Ft(Don't)i(load)f(the)g(system-wide)g
(startup)f(\014le)g(`)p Fs(/etc/profile)p Ft(')e(or)j(an)m(y)g(of)g
(the)f(p)s(ersonal)630 4700 y(initialization)g(\014les)d(`)p
Fs(~/.bash_profile)p Ft(',)e(`)p Fs(~/.bash_login)p Ft(',)g(or)i(`)p
5340 y Ft(standard)35 b(to)h(matc)m(h)g(the)g(standard.)55
b(This)35 b(is)h(in)m(tended)f(to)h(mak)m(e)h(Bash)f(b)s(eha)m(v)m(e)g
(as)g(a)p eop end
-%%Page: 76 82
-TeXDict begin 76 81 bop 150 -116 a Ft(76)2572 b(Bash)31
+%%Page: 80 86
+TeXDict begin 80 85 bop 150 -116 a Ft(80)2572 b(Bash)31
b(Reference)g(Man)m(ual)630 299 y(strict)26 b(sup)s(erset)e(of)h(that)g
(standard.)38 b(See)26 b(Section)f(6.11)i([Bash)e(POSIX)f(Mo)s(de],)j
-(page)f(88,)630 408 y(for)k(a)h(description)f(of)h(the)f(Bash)h
+(page)f(92,)630 408 y(for)k(a)h(description)f(of)h(the)f(Bash)h
Fl(posix)f Ft(mo)s(de.)150 572 y Fs(--restricted)630
682 y Ft(Mak)m(e)54 b(the)e(shell)g(a)h(restricted)g(shell)f(\(see)h
(Section)g(6.10)h([The)d(Restricted)j(Shell],)630 792
-y(page)31 b(88\).)150 956 y Fs(--verbose)630 1065 y Ft(Equiv)-5
+y(page)31 b(92\).)150 956 y Fs(--verbose)630 1065 y Ft(Equiv)-5
b(alen)m(t)31 b(to)g(`)p Fs(-v)p Ft('.)41 b(Prin)m(t)30
b(shell)h(input)e(lines)i(as)g(they're)f(read.)150 1229
y Fs(--version)630 1339 y Ft(Sho)m(w)e(v)m(ersion)g(information)g(for)g
Fs($0)p Ft(.)150 2274 y Fs(-i)384 b Ft(F)-8 b(orce)22
b(the)g(shell)f(to)g(run)f(in)m(teractiv)m(ely)-8 b(.)41
b(In)m(teractiv)m(e)23 b(shells)e(are)h(describ)s(ed)d(in)i(Section)h
-(6.3)630 2383 y([In)m(teractiv)m(e)33 b(Shells],)e(page)g(78.)150
+(6.3)630 2383 y([In)m(teractiv)m(e)33 b(Shells],)e(page)g(82.)150
2547 y Fs(-l)384 b Ft(Mak)m(e)33 b(this)e(shell)h(act)g(as)g(if)f(it)h
(had)f(b)s(een)f(directly)i(in)m(v)m(ok)m(ed)h(b)m(y)f(login.)44
b(When)31 b(the)h(shell)630 2657 y(is)37 b(in)m(teractiv)m(e,)43
2876 y(`)p Fs(exec)e(bash)h(-l)p Ft(')43 b(or)h(`)p Fs(exec)29
b(bash)g(--login)p Ft(')42 b(will)i(replace)h(the)f(curren)m(t)f(shell)
h(with)g(a)630 2986 y(Bash)26 b(login)g(shell.)39 b(See)26
-b(Section)g(6.2)h([Bash)e(Startup)g(Files],)j(page)e(77,)i(for)d(a)h
+b(Section)g(6.2)h([Bash)e(Startup)g(Files],)j(page)e(81,)i(for)d(a)h
(description)630 3095 y(of)31 b(the)f(sp)s(ecial)h(b)s(eha)m(vior)g(of)
f(a)h(login)g(shell.)150 3259 y Fs(-r)384 b Ft(Mak)m(e)54
b(the)e(shell)g(a)h(restricted)g(shell)f(\(see)h(Section)g(6.10)h([The)
-d(Restricted)j(Shell],)630 3369 y(page)31 b(88\).)150
+d(Restricted)j(Shell],)630 3369 y(page)31 b(92\).)150
3533 y Fs(-s)384 b Ft(If)24 b(this)h(option)h(is)f(presen)m(t,)h(or)f
(if)g(no)f(argumen)m(ts)i(remain)e(after)i(option)f(pro)s(cessing,)h
(then)630 3642 y(commands)i(are)h(read)g(from)f(the)h(standard)f
b Fs(])630 4518 y Fq(shopt)p 854 4518 28 4 v 40 w(option)44
b Ft(is)g(one)h(of)f(the)g(shell)h(options)f(accepted)h(b)m(y)f(the)h
Fs(shopt)d Ft(builtin)i(\(see)630 4628 y(Section)28 b(4.3.2)g([The)f
-(Shopt)f(Builtin],)i(page)f(58\).)41 b(If)26 b Fq(shopt)p
+(Shopt)f(Builtin],)i(page)f(62\).)41 b(If)26 b Fq(shopt)p
2690 4628 V 40 w(option)h Ft(is)g(presen)m(t,)h(`)p Fs(-O)p
Ft(')f(sets)630 4738 y(the)40 b(v)-5 b(alue)40 b(of)f(that)h(option;)45
b(`)p Fs(+O)p Ft(')40 b(unsets)e(it.)69 b(If)39 b Fq(shopt)p
(cessing.)64 b(An)m(y)630 5340 y(argumen)m(ts)31 b(after)g(the)f
Fs(--)g Ft(are)h(treated)g(as)g(\014lenames)f(and)g(argumen)m(ts.)p
eop end
-%%Page: 77 83
-TeXDict begin 77 82 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(77)275 299 y(A)27 b
+%%Page: 81 87
+TeXDict begin 81 86 bop 150 -116 a Ft(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(81)275 299 y(A)27 b
Fk(lo)-5 b(gin)35 b Ft(shell)27 b(is)g(one)h(whose)f(\014rst)f(c)m
(haracter)j(of)e(argumen)m(t)h(zero)f(is)h(`)p Fs(-)p
Ft(',)g(or)f(one)g(in)m(v)m(ok)m(ed)i(with)e(the)150
b(\(as)h(determined)f(b)m(y)g Fs(isatty\(3\))p Ft(\),)f(or)i(one)f
(started)g(with)g(the)g(`)p Fs(-i)p Ft(')g(option.)39
b(See)22 b(Section)h(6.3)150 875 y([In)m(teractiv)m(e)33
-b(Shells],)e(page)g(78,)g(for)f(more)h(information.)275
+b(Shells],)e(page)g(82,)g(for)f(more)h(information.)275
1013 y(If)38 b(argumen)m(ts)h(remain)g(after)g(option)h(pro)s(cessing,)
h(and)d(neither)h(the)g(`)p Fs(-c)p Ft(')f(nor)h(the)g(`)p
Fs(-s)p Ft(')f(option)150 1123 y(has)33 b(b)s(een)g(supplied,)h(the)g
(\014rst)e(argumen)m(t)j(is)e(assumed)g(to)h(b)s(e)f(the)h(name)g(of)g
(a)g(\014le)g(con)m(taining)h(shell)150 1232 y(commands)30
-b(\(see)g(Section)h(3.8)g([Shell)f(Scripts],)g(page)h(36\).)41
+b(\(see)g(Section)h(3.8)g([Shell)f(Scripts],)g(page)h(38\).)41
b(When)30 b(Bash)g(is)g(in)m(v)m(ok)m(ed)i(in)d(this)h(fashion,)150
1342 y Fs($0)37 b Ft(is)g(set)h(to)h(the)e(name)h(of)f(the)h(\014le,)i
(and)c(the)i(p)s(ositional)g(parameters)g(are)g(set)g(to)g(the)g
(describ)s(ed)f(ab)s(o)m(v)m(e)i(under)150 2287 y(Tilde)f(Expansion)g
(\(see)h(Section)h(3.5.2)g([Tilde)e(Expansion],)h(page)g(21\).)275
2425 y(In)m(teractiv)m(e)h(shells)f(are)g(describ)s(ed)e(in)h(Section)h
-(6.3)h([In)m(teractiv)m(e)h(Shells],)d(page)h(78.)150
+(6.3)h([In)m(teractiv)m(e)h(Shells],)d(page)h(82.)150
2627 y Fj(In)m(v)m(ok)m(ed)40 b(as)h(an)f(in)m(teractiv)m(e)f(login)j
(shell,)g(or)g(with)e(`)p Fh(--login)p Fj(')150 2774
y Ft(When)c(Bash)f(is)h(in)m(v)m(ok)m(ed)h(as)f(an)g(in)m(teractiv)m(e)
(of)h(a)f(\014le)h(to)g(read)f(and)g(execute.)42 b(Bash)31
b(b)s(eha)m(v)m(es)g(as)g(if)f(the)g(follo)m(wing)150
5340 y(command)g(w)m(ere)h(executed:)p eop end
-%%Page: 78 84
-TeXDict begin 78 83 bop 150 -116 a Ft(78)2572 b(Bash)31
+%%Page: 82 88
+TeXDict begin 82 87 bop 150 -116 a Ft(82)2572 b(Bash)31
b(Reference)g(Man)m(ual)390 299 y Fs(if)47 b([)h(-n)f("$BASH_ENV")e(];)
i(then)f(.)i("$BASH_ENV";)c(fi)150 461 y Ft(but)30 b(the)g(v)-5
b(alue)31 b(of)g(the)f Fs(PATH)f Ft(v)-5 b(ariable)32
(vior)g(is)g(the)g(same,)h(but)f(the)150 5069 y(e\013ectiv)m(e)e(user)d
(id)g(is)g(not)h(reset.)150 5342 y Fr(6.3)68 b(In)l(teractiv)l(e)47
b(Shells)p eop end
-%%Page: 79 85
-TeXDict begin 79 84 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(79)150 299 y Fj(6.3.1)63
+%%Page: 83 89
+TeXDict begin 83 88 bop 150 -116 a Ft(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(83)150 299 y Fj(6.3.1)63
b(What)40 b(is)h(an)g(In)m(teractiv)m(e)e(Shell?)150
446 y Ft(An)c(in)m(teractiv)m(e)k(shell)d(is)g(one)g(started)g(without)
f(non-option)h(argumen)m(ts,)i(unless)d(`)p Fs(-s)p Ft(')h(is)f(sp)s
(eha)m(vior)f(in)g(sev)m(eral)i(w)m(a)m(ys.)199 3234
y(1.)61 b(Startup)37 b(\014les)g(are)h(read)f(and)g(executed)h(as)f
(describ)s(ed)g(in)g(Section)h(6.2)g([Bash)g(Startup)e(Files],)330
-3343 y(page)31 b(77.)199 3475 y(2.)61 b(Job)35 b(Con)m(trol)g(\(see)h
-(Chapter)f(7)g([Job)g(Con)m(trol],)i(page)f(93\))g(is)f(enabled)g(b)m
+3343 y(page)31 b(81.)199 3475 y(2.)61 b(Job)35 b(Con)m(trol)g(\(see)h
+(Chapter)f(7)g([Job)g(Con)m(trol],)i(page)f(97\))g(is)f(enabled)g(b)m
(y)g(default.)55 b(When)34 b(job)330 3585 y(con)m(trol)h(is)f(in)f
(e\013ect,)k(Bash)d(ignores)g(the)g(k)m(eyb)s(oard-generated)h(job)e
(con)m(trol)i(signals)g Fs(SIGTTIN)p Ft(,)330 3694 y
b(of)f(the)h Fs(PROMPT_COMMAND)22 b Ft(v)-5 b(ariable)27
b(as)g(a)f(command)g(b)s(efore)g(prin)m(ting)330 4287
y(the)31 b(primary)e(prompt,)h Fs($PS1)f Ft(\(see)i(Section)g(5.2)h
-([Bash)f(V)-8 b(ariables],)32 b(page)f(65\).)199 4419
-y(5.)61 b(Readline)30 b(\(see)h(Chapter)e(8)h([Command)e(Line)i
-(Editing],)g(page)g(97\))h(is)f(used)f(to)h(read)f(commands)330
-4528 y(from)h(the)g(user's)g(terminal.)199 4660 y(6.)61
+([Bash)f(V)-8 b(ariables],)32 b(page)f(69\).)199 4419
+y(5.)61 b(Readline)27 b(\(see)g(Chapter)e(8)h([Command)g(Line)g
+(Editing],)h(page)g(101\))g(is)f(used)g(to)g(read)g(commands)330
+4528 y(from)k(the)g(user's)g(terminal.)199 4660 y(6.)61
b(Bash)36 b(insp)s(ects)g(the)h(v)-5 b(alue)37 b(of)f(the)g
Fs(ignoreeof)e Ft(option)j(to)g Fs(set)29 b(-o)36 b Ft(instead)h(of)f
(exiting)i(imme-)330 4770 y(diately)f(when)e(it)i(receiv)m(es)h(an)e
Fs(EOF)f Ft(on)h(its)g(standard)f(input)g(when)h(reading)g(a)g(command)
g(\(see)330 4879 y(Section)31 b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g
-(54\).)199 5011 y(7.)61 b(Command)43 b(history)h(\(see)h(Section)g(9.1)
-g([Bash)f(History)h(F)-8 b(acilities],)51 b(page)45 b(129\))h(and)d
-(history)330 5121 y(expansion)23 b(\(see)i(Section)f(9.3)h([History)f
-(In)m(teraction],)j(page)d(131\))h(are)f(enabled)g(b)m(y)f(default.)39
-b(Bash)330 5230 y(will)23 b(sa)m(v)m(e)i(the)e(command)f(history)h(to)h
-(the)f(\014le)g(named)f(b)m(y)h Fs($HISTFILE)d Ft(when)i(an)h(in)m
-(teractiv)m(e)j(shell)330 5340 y(exits.)p eop end
-%%Page: 80 86
-TeXDict begin 80 85 bop 150 -116 a Ft(80)2572 b(Bash)31
+(58\).)199 5011 y(7.)61 b(Command)43 b(history)h(\(see)h(Section)g(9.1)
+g([Bash)f(History)h(F)-8 b(acilities],)51 b(page)45 b(133\))h(and)d
+(history)330 5121 y(expansion)h(\(see)i(Section)f(9.3)h([History)g(In)m
+(teraction],)k(page)45 b(135\))h(are)f(enabled)g(b)m(y)f(default.)330
+5230 y(Bash)28 b(will)g(sa)m(v)m(e)h(the)f(command)f(history)h(to)g
+(the)g(\014le)g(named)f(b)m(y)h Fs($HISTFILE)d Ft(when)h(a)i(shell)g
+(with)330 5340 y(history)i(enabled)h(exits.)p eop end
+%%Page: 84 90
+TeXDict begin 84 89 bop 150 -116 a Ft(84)2572 b(Bash)31
b(Reference)g(Man)m(ual)199 299 y(8.)61 b(Alias)31 b(expansion)g(\(see)
-g(Section)g(6.6)g([Aliases],)i(page)e(83\))h(is)e(p)s(erformed)f(b)m(y)
+g(Section)g(6.6)g([Aliases],)i(page)e(87\))h(is)e(p)s(erformed)f(b)m(y)
h(default.)199 431 y(9.)61 b(In)24 b(the)g(absence)h(of)f(an)m(y)h
(traps,)g(Bash)g(ignores)f Fs(SIGTERM)f Ft(\(see)i(Section)g(3.7.6)h
-([Signals],)g(page)f(35\).)154 563 y(10.)61 b(In)26 b(the)h(absence)h
+([Signals],)g(page)f(38\).)154 563 y(10.)61 b(In)26 b(the)h(absence)h
(of)f(an)m(y)g(traps,)g Fs(SIGINT)e Ft(is)i(caugh)m(t)h(and)f(handled)e
-(\(\(see)k(Section)e(3.7.6)i([Signals],)330 672 y(page)i(35\).)42
+(\(\(see)k(Section)e(3.7.6)i([Signals],)330 672 y(page)i(38\).)42
b Fs(SIGINT)29 b Ft(will)h(in)m(terrupt)g(some)h(shell)g(builtins.)154
804 y(11.)61 b(An)40 b(in)m(teractiv)m(e)j(login)e(shell)g(sends)e(a)i
Fs(SIGHUP)d Ft(to)j(all)g(jobs)f(on)g(exit)h(if)g(the)f
Fs(huponexit)e Ft(shell)330 914 y(option)31 b(has)f(b)s(een)g(enabled)g
-(\(see)h(Section)g(3.7.6)i([Signals],)e(page)g(35\).)154
+(\(see)h(Section)g(3.7.6)i([Signals],)e(page)g(38\).)154
1046 y(12.)61 b(The)26 b(`)p Fs(-n)p Ft(')f(in)m(v)m(o)s(cation)k
(option)d(is)g(ignored,)h(and)f(`)p Fs(set)k(-n)p Ft(')25
b(has)h(no)g(e\013ect)i(\(see)e(Section)h(4.3.1)h([The)330
-1155 y(Set)j(Builtin],)g(page)g(54\).)154 1287 y(13.)61
+1155 y(Set)j(Builtin],)g(page)g(58\).)154 1287 y(13.)61
b(Bash)32 b(will)g(c)m(hec)m(k)i(for)e(mail)g(p)s(erio)s(dically)-8
b(,)34 b(dep)s(ending)c(on)i(the)g(v)-5 b(alues)32 b(of)g(the)h
Fs(MAIL)p Ft(,)e Fs(MAILPATH)p Ft(,)330 1397 y(and)f
Fs(MAILCHECK)e Ft(shell)i(v)-5 b(ariables)31 b(\(see)h(Section)f(5.2)g
-([Bash)g(V)-8 b(ariables],)32 b(page)f(65\).)154 1528
+([Bash)g(V)-8 b(ariables],)32 b(page)f(69\).)154 1528
y(14.)61 b(Expansion)32 b(errors)h(due)f(to)i(references)f(to)h(un)m(b)
s(ound)c(shell)j(v)-5 b(ariables)34 b(after)g(`)p Fs(set)29
b(-u)p Ft(')k(has)g(b)s(een)330 1638 y(enabled)d(will)h(not)g(cause)g
(the)f(shell)h(to)g(exit)g(\(see)g(Section)h(4.3.1)g([The)e(Set)h
-(Builtin],)g(page)g(54\).)154 1770 y(15.)61 b(The)48
+(Builtin],)g(page)g(58\).)154 1770 y(15.)61 b(The)48
b(shell)h(will)f(not)h(exit)g(on)g(expansion)f(errors)g(caused)g(b)m(y)
h Fq(v)-5 b(ar)54 b Ft(b)s(eing)48 b(unset)g(or)h(n)m(ull)f(in)330
1879 y Fs(${)p Fi(var)11 b Fs(:?)p Fi(word)g Fs(})26
b(running)f(in)i Fl(posix)e Ft(mo)s(de,)j(a)f(sp)s(ecial)g(builtin)f
(returning)g(an)g(error)h(status)g(will)g(not)f(cause)330
2253 y(the)31 b(shell)f(to)h(exit)h(\(see)f(Section)g(6.11)h([Bash)f
-(POSIX)e(Mo)s(de],)i(page)g(88\).)154 2385 y(18.)61 b(A)34
+(POSIX)e(Mo)s(de],)i(page)g(92\).)154 2385 y(18.)61 b(A)34
b(failed)g Fs(exec)f Ft(will)h(not)g(cause)g(the)g(shell)g(to)g(exit)h
(\(see)f(Section)h(4.1)g([Bourne)f(Shell)f(Builtins],)330
-2494 y(page)e(37\).)154 2626 y(19.)61 b(P)m(arser)31
+2494 y(page)e(41\).)154 2626 y(19.)61 b(P)m(arser)31
b(syn)m(tax)f(errors)g(will)h(not)g(cause)g(the)f(shell)h(to)g(exit.)
154 2758 y(20.)61 b(Simple)21 b(sp)s(elling)h(correction)g(for)g
(directory)g(argumen)m(ts)f(to)i(the)e Fs(cd)g Ft(builtin)g(is)h
(enabled)f(b)m(y)h(default)330 2868 y(\(see)35 b(the)g(description)f
(of)h(the)f Fs(cdspell)f Ft(option)h(to)i(the)e Fs(shopt)f
Ft(builtin)h(in)g(Section)h(4.3.2)h([The)330 2977 y(Shopt)30
-b(Builtin],)h(page)g(58\).)154 3109 y(21.)61 b(The)42
+b(Builtin],)h(page)g(62\).)154 3109 y(21.)61 b(The)42
b(shell)h(will)g(c)m(hec)m(k)h(the)f(v)-5 b(alue)43 b(of)f(the)h
Fs(TMOUT)e Ft(v)-5 b(ariable)44 b(and)e(exit)h(if)g(a)g(command)f(is)h
(not)330 3219 y(read)30 b(within)g(the)g(sp)s(eci\014ed)f(n)m(um)m(b)s
(er)g(of)i(seconds)f(after)g(prin)m(ting)g Fs($PS1)f
Ft(\(see)i(Section)g(5.2)h([Bash)330 3328 y(V)-8 b(ariables],)32
-b(page)f(65\).)150 3555 y Fr(6.4)68 b(Bash)45 b(Conditional)h
+b(page)f(69\).)150 3555 y Fr(6.4)68 b(Bash)45 b(Conditional)h
(Expressions)150 3715 y Ft(Conditional)26 b(expressions)g(are)g(used)f
(b)m(y)g(the)h Fs([[)f Ft(comp)s(ound)g(command)g(and)g(the)h
Fs(test)f Ft(and)g Fs([)g Ft(builtin)150 3824 y(commands.)275
5340 y Fs(-c)f Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g
Fq(\014le)36 b Ft(exists)31 b(and)f(is)g(a)h(c)m(haracter)h(sp)s(ecial)
f(\014le.)p eop end
-%%Page: 81 87
-TeXDict begin 81 86 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(81)150 299 y Fs(-d)30
+%%Page: 85 91
+TeXDict begin 85 90 bop 150 -116 a Ft(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(85)150 299 y Fs(-d)30
b Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g Fq(\014le)36
b Ft(exists)31 b(and)f(is)g(a)h(directory)-8 b(.)150
463 y Fs(-e)30 b Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g
b(list)h(of)f(options)h(app)s(ears)e(in)630 4408 y(the)30
b(description)f(of)h(the)g(`)p Fs(-o)p Ft(')f(option)h(to)h(the)e
Fs(set)g Ft(builtin)g(\(see)i(Section)f(4.3.1)h([The)f(Set)630
-4518 y(Builtin],)h(page)g(54\).)150 4682 y Fs(-v)f Fi(varname)630
+4518 y(Builtin],)h(page)g(58\).)150 4682 y Fs(-v)f Fi(varname)630
4792 y Ft(T)-8 b(rue)30 b(if)g(the)h(shell)f(v)-5 b(ariable)32
b Fq(v)-5 b(arname)35 b Ft(is)30 b(set)h(\(has)g(b)s(een)e(assigned)i
(a)g(v)-5 b(alue\).)150 4956 y Fs(-z)30 b Fi(string)630
b Ft(is)31 b(zero.)150 5230 y Fs(-n)f Fi(string)150 5340
y(string)192 b Ft(T)-8 b(rue)30 b(if)g(the)h(length)g(of)f
Fq(string)38 b Ft(is)31 b(non-zero.)p eop end
-%%Page: 82 88
-TeXDict begin 82 87 bop 150 -116 a Ft(82)2572 b(Bash)31
+%%Page: 86 92
+TeXDict begin 86 91 bop 150 -116 a Ft(86)2572 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fi(string1)39 b Fs(==)30
b Fi(string2)150 408 y(string1)39 b Fs(=)30 b Fi(string2)630
518 y Ft(T)-8 b(rue)35 b(if)h(the)g(strings)g(are)g(equal.)58
b(and)e(inequalit)m(y)150 5016 y Fs(&)432 b Ft(bit)m(wise)31
b(AND)150 5178 y Fs(^)432 b Ft(bit)m(wise)31 b(exclusiv)m(e)h(OR)150
5340 y Fs(|)432 b Ft(bit)m(wise)31 b(OR)p eop end
-%%Page: 83 89
-TeXDict begin 83 88 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(83)150 299 y Fs(&&)384
+%%Page: 87 93
+TeXDict begin 87 92 bop 150 -116 a Ft(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(87)150 299 y Fs(&&)384
b Ft(logical)33 b(AND)150 446 y Fs(||)384 b Ft(logical)33
b(OR)150 592 y Fs(expr)c(?)h(expr)f(:)h(expr)630 702
y Ft(conditional)i(op)s(erator)150 849 y Fs(=)e(*=)g(/=)g(\045=)f(+=)h
b(If)150 5230 y(argumen)m(ts)37 b(are)h(needed,)g(a)g(shell)f(function)
f(should)g(b)s(e)h(used)f(\(see)i(Section)g(3.3)g([Shell)f(F)-8
b(unctions],)150 5340 y(page)31 b(16\).)p eop end
-%%Page: 84 90
-TeXDict begin 84 89 bop 150 -116 a Ft(84)2572 b(Bash)31
+%%Page: 88 94
+TeXDict begin 88 93 bop 150 -116 a Ft(88)2572 b(Bash)31
b(Reference)g(Man)m(ual)275 299 y(Aliases)i(are)h(not)e(expanded)g
(when)g(the)h(shell)g(is)g(not)g(in)m(teractiv)m(e,)j(unless)c(the)h
Fs(expand_aliases)150 408 y Ft(shell)e(option)f(is)h(set)g(using)f
Fs(shopt)f Ft(\(see)i(Section)g(4.3.2)h([The)e(Shopt)g(Builtin],)h
-(page)g(58\).)275 540 y(The)38 b(rules)h(concerning)h(the)f
+(page)g(62\).)275 548 y(The)38 b(rules)h(concerning)h(the)f
(de\014nition)g(and)g(use)g(of)g(aliases)i(are)e(somewhat)h(confusing.)
-67 b(Bash)150 650 y(alw)m(a)m(ys)42 b(reads)f(at)h(least)g(one)f
+67 b(Bash)150 657 y(alw)m(a)m(ys)42 b(reads)f(at)h(least)g(one)f
(complete)i(line)e(of)g(input)f(b)s(efore)h(executing)h(an)m(y)f(of)g
-(the)g(commands)150 760 y(on)h(that)h(line.)77 b(Aliases)44
+(the)g(commands)150 767 y(on)h(that)h(line.)77 b(Aliases)44
b(are)e(expanded)g(when)f(a)i(command)f(is)g(read,)k(not)c(when)g(it)g
-(is)h(executed.)150 869 y(Therefore,)f(an)e(alias)h(de\014nition)e(app)
+(is)h(executed.)150 877 y(Therefore,)f(an)e(alias)h(de\014nition)e(app)
s(earing)h(on)f(the)h(same)h(line)f(as)g(another)g(command)f(do)s(es)h
-(not)150 979 y(tak)m(e)31 b(e\013ect)f(un)m(til)g(the)f(next)g(line)h
+(not)150 986 y(tak)m(e)31 b(e\013ect)f(un)m(til)g(the)f(next)g(line)h
(of)f(input)f(is)h(read.)41 b(The)28 b(commands)h(follo)m(wing)i(the)e
-(alias)h(de\014nition)150 1088 y(on)d(that)h(line)f(are)h(not)f
+(alias)h(de\014nition)150 1096 y(on)d(that)h(line)f(are)h(not)f
(a\013ected)i(b)m(y)e(the)g(new)g(alias.)41 b(This)26
b(b)s(eha)m(vior)h(is)g(also)h(an)f(issue)g(when)f(functions)150
-1198 y(are)d(executed.)39 b(Aliases)24 b(are)f(expanded)f(when)f(a)i
+1205 y(are)d(executed.)39 b(Aliases)24 b(are)f(expanded)f(when)f(a)i
(function)g(de\014nition)f(is)h(read,)h(not)f(when)e(the)i(function)150
-1308 y(is)i(executed,)j(b)s(ecause)d(a)h(function)f(de\014nition)f(is)i
+1315 y(is)i(executed,)j(b)s(ecause)d(a)h(function)f(de\014nition)f(is)i
(itself)g(a)f(comp)s(ound)f(command.)39 b(As)25 b(a)h(consequence,)150
-1417 y(aliases)36 b(de\014ned)d(in)h(a)g(function)g(are)h(not)f(a)m(v)
+1425 y(aliases)36 b(de\014ned)d(in)h(a)g(function)g(are)h(not)f(a)m(v)
-5 b(ailable)37 b(un)m(til)d(after)h(that)g(function)f(is)g(executed.)
-53 b(T)-8 b(o)35 b(b)s(e)150 1527 y(safe,)41 b(alw)m(a)m(ys)f(put)d
+53 b(T)-8 b(o)35 b(b)s(e)150 1534 y(safe,)41 b(alw)m(a)m(ys)f(put)d
(alias)j(de\014nitions)e(on)g(a)h(separate)g(line,)i(and)d(do)g(not)g
-(use)g Fs(alias)f Ft(in)h(comp)s(ound)150 1636 y(commands.)275
-1768 y(F)-8 b(or)31 b(almost)g(ev)m(ery)g(purp)s(ose,)e(shell)i
+(use)g Fs(alias)f Ft(in)h(comp)s(ound)150 1644 y(commands.)275
+1783 y(F)-8 b(or)31 b(almost)g(ev)m(ery)g(purp)s(ose,)e(shell)i
(functions)f(are)g(preferred)g(o)m(v)m(er)h(aliases.)150
-1996 y Fr(6.7)68 b(Arra)l(ys)150 2155 y Ft(Bash)33 b(pro)m(vides)g
+2023 y Fr(6.7)68 b(Arra)l(ys)150 2182 y Ft(Bash)33 b(pro)m(vides)g
(one-dimensional)g(indexed)f(and)h(asso)s(ciativ)m(e)i(arra)m(y)e(v)-5
b(ariables.)49 b(An)m(y)33 b(v)-5 b(ariable)33 b(ma)m(y)150
-2265 y(b)s(e)e(used)h(as)g(an)g(indexed)f(arra)m(y;)j(the)e
+2292 y(b)s(e)e(used)h(as)g(an)g(indexed)f(arra)m(y;)j(the)e
Fs(declare)e Ft(builtin)h(will)i(explicitly)g(declare)g(an)f(arra)m(y)
--8 b(.)46 b(There)32 b(is)150 2374 y(no)h(maxim)m(um)g(limit)h(on)f
+-8 b(.)46 b(There)32 b(is)150 2402 y(no)h(maxim)m(um)g(limit)h(on)f
(the)g(size)h(of)g(an)f(arra)m(y)-8 b(,)35 b(nor)d(an)m(y)i(requiremen)
-m(t)f(that)h(mem)m(b)s(ers)e(b)s(e)g(indexed)150 2484
+m(t)f(that)h(mem)m(b)s(ers)e(b)s(e)g(indexed)150 2511
y(or)26 b(assigned)h(con)m(tiguously)-8 b(.)41 b(Indexed)25
b(arra)m(ys)i(are)f(referenced)g(using)g(in)m(tegers)i(\(including)e
-(arithmetic)150 2593 y(expressions)38 b(\(see)h(Section)g(6.5)h([Shell)
-e(Arithmetic],)k(page)d(82\)\))h(and)d(are)i(zero-based;)k(asso)s
-(ciativ)m(e)150 2703 y(arra)m(ys)31 b(use)f(arbitrary)g(strings.)275
-2835 y(An)c(indexed)h(arra)m(y)h(is)f(created)h(automatically)j(if)c
+(arithmetic)150 2621 y(expressions)38 b(\(see)h(Section)g(6.5)h([Shell)
+e(Arithmetic],)k(page)d(86\)\))h(and)d(are)i(zero-based;)k(asso)s
+(ciativ)m(e)150 2730 y(arra)m(ys)37 b(use)f(arbitrary)g(strings.)59
+b(Unless)36 b(otherwise)h(noted,)h(indexed)e(arra)m(y)h(indices)f(m)m
+(ust)g(b)s(e)g(non-)150 2840 y(negativ)m(e)d(in)m(tegers.)275
+2979 y(An)26 b(indexed)h(arra)m(y)h(is)f(created)h(automatically)j(if)c
(an)m(y)g(v)-5 b(ariable)28 b(is)g(assigned)f(to)h(using)f(the)g(syn)m
-(tax)390 2967 y Fi(name)11 b Fs([)p Fi(subscript)g Fs(]=)p
-Fi(value)150 3099 y Ft(The)34 b Fq(subscript)h Ft(is)g(treated)g(as)g
+(tax)390 3119 y Fi(name)11 b Fs([)p Fi(subscript)g Fs(]=)p
+Fi(value)150 3258 y Ft(The)34 b Fq(subscript)h Ft(is)g(treated)g(as)g
(an)f(arithmetic)i(expression)e(that)h(m)m(ust)g(ev)-5
b(aluate)36 b(to)f(a)g(n)m(um)m(b)s(er.)51 b(T)-8 b(o)150
-3208 y(explicitly)32 b(declare)f(an)g(arra)m(y)-8 b(,)31
-b(use)390 3340 y Fs(declare)46 b(-a)h Fi(name)150 3472
-y Ft(The)30 b(syn)m(tax)390 3604 y Fs(declare)46 b(-a)h
-Fi(name)11 b Fs([)p Fi(subscript)g Fs(])150 3736 y Ft(is)30
+3368 y(explicitly)32 b(declare)f(an)g(arra)m(y)-8 b(,)31
+b(use)390 3507 y Fs(declare)46 b(-a)h Fi(name)150 3647
+y Ft(The)30 b(syn)m(tax)390 3786 y Fs(declare)46 b(-a)h
+Fi(name)11 b Fs([)p Fi(subscript)g Fs(])150 3926 y Ft(is)30
b(also)i(accepted;)g(the)e Fq(subscript)h Ft(is)g(ignored.)150
-3868 y(Asso)s(ciativ)m(e)i(arra)m(ys)d(are)h(created)h(using)390
-4000 y Fs(declare)46 b(-A)h Fi(name)11 b Fs(.)275 4132
+4065 y(Asso)s(ciativ)m(e)i(arra)m(ys)d(are)h(created)h(using)390
+4204 y Fs(declare)46 b(-A)h Fi(name)11 b Fs(.)275 4344
y Ft(A)m(ttributes)46 b(ma)m(y)h(b)s(e)e(sp)s(eci\014ed)g(for)h(an)g
(arra)m(y)g(v)-5 b(ariable)47 b(using)e(the)h Fs(declare)e
-Ft(and)h Fs(readonly)150 4242 y Ft(builtins.)40 b(Eac)m(h)31
+Ft(and)h Fs(readonly)150 4453 y Ft(builtins.)40 b(Eac)m(h)31
b(attribute)g(applies)g(to)g(all)g(mem)m(b)s(ers)f(of)g(an)h(arra)m(y)
--8 b(.)275 4374 y(Arra)m(ys)30 b(are)h(assigned)f(to)h(using)f(comp)s
-(ound)f(assignmen)m(ts)i(of)g(the)f(form)390 4506 y Fi(name)11
+-8 b(.)275 4593 y(Arra)m(ys)30 b(are)h(assigned)f(to)h(using)f(comp)s
+(ound)f(assignmen)m(ts)i(of)g(the)f(form)390 4732 y Fi(name)11
b Fs(=\()p Fi(value1)54 b(value2)j Fs(...)47 b(\))150
-4638 y Ft(where)37 b(eac)m(h)i Fq(v)-5 b(alue)42 b Ft(is)c(of)g(the)f
+4872 y Ft(where)37 b(eac)m(h)i Fq(v)-5 b(alue)42 b Ft(is)c(of)g(the)f
(form)g Fs([)p Fi(subscript)11 b Fs(]=)p Fq(string)d
Ft(.)58 b(Indexed)36 b(arra)m(y)i(assignmen)m(ts)g(do)g(not)150
-4747 y(require)30 b(an)m(ything)h(but)f Fq(string)8 b
+4981 y(require)30 b(an)m(ything)h(but)f Fq(string)8 b
Ft(.)41 b(When)30 b(assigning)h(to)g(indexed)f(arra)m(ys,)h(if)f(the)h
-(optional)h(subscript)d(is)150 4857 y(supplied,)j(that)h(index)f(is)h
+(optional)h(subscript)d(is)150 5091 y(supplied,)j(that)h(index)f(is)h
(assigned)g(to;)h(otherwise)f(the)g(index)f(of)h(the)g(elemen)m(t)h
-(assigned)f(is)f(the)h(last)150 4966 y(index)d(assigned)h(to)g(b)m(y)f
+(assigned)f(is)f(the)h(last)150 5201 y(index)d(assigned)h(to)g(b)m(y)f
(the)g(statemen)m(t)j(plus)c(one.)41 b(Indexing)30 b(starts)h(at)g
-(zero.)275 5098 y(When)f(assigning)h(to)g(an)f(asso)s(ciativ)m(e)j
-(arra)m(y)-8 b(,)32 b(the)e(subscript)f(is)i(required.)275
-5230 y(This)f(syn)m(tax)j(is)e(also)i(accepted)g(b)m(y)f(the)f
-Fs(declare)f Ft(builtin.)44 b(Individual)31 b(arra)m(y)h(elemen)m(ts)h
-(ma)m(y)g(b)s(e)150 5340 y(assigned)e(to)g(using)f(the)g
-Fi(name)11 b Fs([)p Fi(subscript)g Fs(]=)p Fi(value)34
-b Ft(syn)m(tax)d(in)m(tro)s(duced)f(ab)s(o)m(v)m(e.)p
+(zero.)275 5340 y(When)f(assigning)h(to)g(an)f(asso)s(ciativ)m(e)j
+(arra)m(y)-8 b(,)32 b(the)e(subscript)f(is)i(required.)p
eop end
-%%Page: 85 91
-TeXDict begin 85 90 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(85)275 299 y(An)m(y)26
-b(elemen)m(t)i(of)e(an)g(arra)m(y)h(ma)m(y)g(b)s(e)f(referenced)g
-(using)g Fs(${)p Fi(name)11 b Fs([)p Fi(subscript)g Fs(]})p
-Ft(.)33 b(The)26 b(braces)h(are)150 408 y(required)h(to)j(a)m(v)m(oid)f
-(con\015icts)g(with)f(the)h(shell's)f(\014lename)h(expansion)f(op)s
-(erators.)41 b(If)28 b(the)i Fq(subscript)g Ft(is)150
-518 y(`)p Fs(@)p Ft(')f(or)g(`)p Fs(*)p Ft(',)g(the)g(w)m(ord)g
-(expands)f(to)i(all)f(mem)m(b)s(ers)f(of)h(the)g(arra)m(y)h
-Fq(name)5 b Ft(.)40 b(These)29 b(subscripts)e(di\013er)i(only)150
-628 y(when)35 b(the)h(w)m(ord)f(app)s(ears)g(within)g(double)h(quotes.)
-57 b(If)36 b(the)g(w)m(ord)f(is)h(double-quoted,)h Fs(${)p
-Fi(name)11 b Fs([*]})150 737 y Ft(expands)25 b(to)h(a)g(single)h(w)m
+%%Page: 89 95
+TeXDict begin 89 94 bop 150 -116 a Ft(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(89)275 299 y(This)30
+b(syn)m(tax)j(is)e(also)i(accepted)g(b)m(y)f(the)f Fs(declare)f
+Ft(builtin.)44 b(Individual)31 b(arra)m(y)h(elemen)m(ts)h(ma)m(y)g(b)s
+(e)150 408 y(assigned)e(to)g(using)f(the)g Fi(name)11
+b Fs([)p Fi(subscript)g Fs(]=)p Fi(value)34 b Ft(syn)m(tax)d(in)m(tro)s
+(duced)f(ab)s(o)m(v)m(e.)275 538 y(An)m(y)c(elemen)m(t)i(of)e(an)g
+(arra)m(y)h(ma)m(y)g(b)s(e)f(referenced)g(using)g Fs(${)p
+Fi(name)11 b Fs([)p Fi(subscript)g Fs(]})p Ft(.)33 b(The)26
+b(braces)h(are)150 648 y(required)h(to)j(a)m(v)m(oid)f(con\015icts)g
+(with)f(the)h(shell's)f(\014lename)h(expansion)f(op)s(erators.)41
+b(If)28 b(the)i Fq(subscript)g Ft(is)150 757 y(`)p Fs(@)p
+Ft(')f(or)g(`)p Fs(*)p Ft(',)g(the)g(w)m(ord)g(expands)f(to)i(all)f
+(mem)m(b)s(ers)f(of)h(the)g(arra)m(y)h Fq(name)5 b Ft(.)40
+b(These)29 b(subscripts)e(di\013er)i(only)150 867 y(when)35
+b(the)h(w)m(ord)f(app)s(ears)g(within)g(double)h(quotes.)57
+b(If)36 b(the)g(w)m(ord)f(is)h(double-quoted,)h Fs(${)p
+Fi(name)11 b Fs([*]})150 976 y Ft(expands)25 b(to)h(a)g(single)h(w)m
(ord)e(with)g(the)h(v)-5 b(alue)26 b(of)g(eac)m(h)h(arra)m(y)f(mem)m(b)
s(er)f(separated)h(b)m(y)g(the)f(\014rst)g(c)m(harac-)150
-847 y(ter)j(of)f(the)h Fs(IFS)e Ft(v)-5 b(ariable,)29
+1086 y(ter)j(of)f(the)h Fs(IFS)e Ft(v)-5 b(ariable,)29
b(and)e Fs(${)p Fi(name)11 b Fs([@]})24 b Ft(expands)i(eac)m(h)i
(elemen)m(t)h(of)f Fq(name)k Ft(to)c(a)g(separate)g(w)m(ord.)150
-956 y(When)j(there)h(are)g(no)f(arra)m(y)h(mem)m(b)s(ers,)g
+1195 y(When)j(there)h(are)g(no)f(arra)m(y)h(mem)m(b)s(ers,)g
Fs(${)p Fi(name)11 b Fs([@]})28 b Ft(expands)j(to)h(nothing.)44
-b(If)31 b(the)h(double-quoted)150 1066 y(expansion)39
+b(If)31 b(the)h(double-quoted)150 1305 y(expansion)39
b(o)s(ccurs)h(within)f(a)h(w)m(ord,)i(the)d(expansion)h(of)g(the)f
-(\014rst)g(parameter)h(is)g(joined)f(with)h(the)150 1176
+(\014rst)g(parameter)h(is)g(joined)f(with)h(the)150 1415
y(b)s(eginning)29 b(part)g(of)h(the)f(original)i(w)m(ord,)e(and)g(the)h
(expansion)f(of)h(the)f(last)i(parameter)e(is)h(joined)f(with)150
-1285 y(the)g(last)h(part)f(of)g(the)g(original)h(w)m(ord.)40
+1524 y(the)g(last)h(part)f(of)g(the)g(original)h(w)m(ord.)40
b(This)28 b(is)h(analogous)h(to)f(the)h(expansion)e(of)h(the)g(sp)s
-(ecial)h(param-)150 1395 y(eters)35 b(`)p Fs(@)p Ft(')g(and)e(`)p
+(ecial)h(param-)150 1634 y(eters)35 b(`)p Fs(@)p Ft(')g(and)e(`)p
Fs(*)p Ft('.)54 b Fs(${#)p Fi(name)11 b Fs([)p Fi(subscript)g
Fs(]})28 b Ft(expands)33 b(to)j(the)e(length)h(of)g Fs(${)p
-Fi(name)11 b Fs([)p Fi(subscript)g Fs(]})p Ft(.)150 1504
+Fi(name)11 b Fs([)p Fi(subscript)g Fs(]})p Ft(.)150 1743
y(If)30 b Fq(subscript)i Ft(is)f(`)p Fs(@)p Ft(')f(or)h(`)p
Fs(*)p Ft(',)g(the)g(expansion)g(is)g(the)g(n)m(um)m(b)s(er)e(of)i
(elemen)m(ts)h(in)f(the)g(arra)m(y)-8 b(.)42 b(Referencing)150
-1614 y(an)33 b(arra)m(y)g(v)-5 b(ariable)34 b(without)f(a)h(subscript)e
+1853 y(an)33 b(arra)m(y)g(v)-5 b(ariable)34 b(without)f(a)h(subscript)e
(is)h(equiv)-5 b(alen)m(t)34 b(to)g(referencing)f(with)g(a)g(subscript)
-f(of)h(0.)49 b(If)150 1724 y(the)33 b Fq(subscript)h
+f(of)h(0.)49 b(If)150 1963 y(the)33 b Fq(subscript)h
Ft(used)e(to)h(reference)h(an)f(elemen)m(t)h(of)f(an)g(indexed)f(arra)m
(y)i(ev)-5 b(aluates)34 b(to)g(a)f(n)m(um)m(b)s(er)f(less)150
-1833 y(than)j(zero,)i(it)f(is)f(used)g(as)g(an)g(o\013set)h(from)f(one)
+2072 y(than)j(zero,)i(it)f(is)f(used)g(as)g(an)g(o\013set)h(from)f(one)
h(greater)g(than)f(the)g(arra)m(y's)h(maxim)m(um)f(index)g(\(so)h(a)150
-1943 y(sub)s(cript)29 b(of)h(-1)h(refers)f(to)h(the)g(last)g(elemen)m
-(t)h(of)f(the)f(arra)m(y\).)275 2080 y(An)35 b(arra)m(y)i(v)-5
+2182 y(sub)s(cript)29 b(of)h(-1)h(refers)f(to)h(the)g(last)g(elemen)m
+(t)h(of)f(the)f(arra)m(y\).)275 2311 y(An)35 b(arra)m(y)i(v)-5
b(ariable)37 b(is)g(considered)f(set)h(if)f(a)h(subscript)e(has)h(b)s
(een)g(assigned)g(a)h(v)-5 b(alue.)59 b(The)36 b(n)m(ull)150
-2189 y(string)30 b(is)h(a)g(v)-5 b(alid)30 b(v)-5 b(alue.)275
-2327 y(The)23 b Fs(unset)f Ft(builtin)i(is)g(used)f(to)i(destro)m(y)f
+2421 y(string)30 b(is)h(a)g(v)-5 b(alid)30 b(v)-5 b(alue.)275
+2550 y(The)23 b Fs(unset)f Ft(builtin)i(is)g(used)f(to)i(destro)m(y)f
(arra)m(ys.)39 b Fs(unset)29 b Fi(name)11 b Fs([)p Fi(subscript)g
-Fs(])19 b Ft(destro)m(ys)24 b(the)g(arra)m(y)150 2436
+Fs(])19 b Ft(destro)m(ys)24 b(the)g(arra)m(y)150 2660
y(elemen)m(t)35 b(at)g(index)f Fq(subscript)r Ft(.)50
b(Care)34 b(m)m(ust)f(b)s(e)h(tak)m(en)h(to)f(a)m(v)m(oid)i(un)m(w)m
-(an)m(ted)e(side)g(e\013ects)h(caused)f(b)m(y)150 2546
+(an)m(ted)e(side)g(e\013ects)h(caused)f(b)m(y)150 2769
y(\014lename)42 b(expansion.)73 b Fs(unset)29 b Fi(name)11
b Ft(,)43 b(where)e Fq(name)46 b Ft(is)c(an)f(arra)m(y)-8
b(,)45 b(remo)m(v)m(es)e(the)f(en)m(tire)g(arra)m(y)-8
-b(.)75 b(A)150 2655 y(subscript)29 b(of)i(`)p Fs(*)p
+b(.)75 b(A)150 2879 y(subscript)29 b(of)i(`)p Fs(*)p
Ft(')f(or)h(`)p Fs(@)p Ft(')f(also)h(remo)m(v)m(es)h(the)f(en)m(tire)g
-(arra)m(y)-8 b(.)275 2793 y(The)41 b Fs(declare)p Ft(,)i
+(arra)m(y)-8 b(.)275 3008 y(The)41 b Fs(declare)p Ft(,)i
Fs(local)p Ft(,)h(and)d Fs(readonly)f Ft(builtins)h(eac)m(h)j(accept)f
(a)f(`)p Fs(-a)p Ft(')g(option)h(to)f(sp)s(ecify)g(an)150
-2902 y(indexed)25 b(arra)m(y)h(and)e(a)i(`)p Fs(-A)p
+3118 y(indexed)25 b(arra)m(y)h(and)e(a)i(`)p Fs(-A)p
Ft(')f(option)h(to)g(sp)s(ecify)f(an)g(asso)s(ciativ)m(e)j(arra)m(y)-8
b(.)40 b(If)25 b(b)s(oth)g(options)g(are)h(supplied,)150
-3012 y(`)p Fs(-A)p Ft(')k(tak)m(es)i(precedence.)41 b(The)30
+3228 y(`)p Fs(-A)p Ft(')k(tak)m(es)i(precedence.)41 b(The)30
b Fs(read)f Ft(builtin)g(accepts)j(a)e(`)p Fs(-a)p Ft(')g(option)h(to)g
-(assign)g(a)f(list)h(of)f(w)m(ords)g(read)150 3121 y(from)40
+(assign)g(a)f(list)h(of)f(w)m(ords)g(read)150 3337 y(from)40
b(the)g(standard)f(input)h(to)h(an)f(arra)m(y)-8 b(,)44
b(and)39 b(can)i(read)f(v)-5 b(alues)40 b(from)g(the)g(standard)g
-(input)f(in)m(to)150 3231 y(individual)26 b(arra)m(y)h(elemen)m(ts.)41
+(input)f(in)m(to)150 3447 y(individual)26 b(arra)m(y)h(elemen)m(ts.)41
b(The)26 b Fs(set)f Ft(and)h Fs(declare)f Ft(builtins)g(displa)m(y)i
(arra)m(y)g(v)-5 b(alues)27 b(in)f(a)h(w)m(a)m(y)g(that)150
-3341 y(allo)m(ws)32 b(them)e(to)h(b)s(e)f(reused)f(as)i(input.)150
-3577 y Fr(6.8)68 b(The)45 b(Directory)g(Stac)l(k)150
-3736 y Ft(The)21 b(directory)h(stac)m(k)h(is)e(a)h(list)g(of)f(recen)m
+3556 y(allo)m(ws)32 b(them)e(to)h(b)s(e)f(reused)f(as)i(input.)150
+3779 y Fr(6.8)68 b(The)45 b(Directory)g(Stac)l(k)150
+3938 y Ft(The)21 b(directory)h(stac)m(k)h(is)e(a)h(list)g(of)f(recen)m
(tly-visited)j(directories.)39 b(The)20 b Fs(pushd)g
-Ft(builtin)h(adds)g(directories)150 3846 y(to)42 b(the)f(stac)m(k)i(as)
+Ft(builtin)h(adds)g(directories)150 4048 y(to)42 b(the)f(stac)m(k)i(as)
e(it)h(c)m(hanges)g(the)f(curren)m(t)g(directory)-8 b(,)45
b(and)40 b(the)i Fs(popd)e Ft(builtin)g(remo)m(v)m(es)j(sp)s(eci\014ed)
-150 3956 y(directories)29 b(from)f(the)h(stac)m(k)h(and)d(c)m(hanges)j
+150 4157 y(directories)29 b(from)f(the)h(stac)m(k)h(and)d(c)m(hanges)j
(the)e(curren)m(t)g(directory)h(to)g(the)g(directory)f(remo)m(v)m(ed.)
-41 b(The)150 4065 y Fs(dirs)29 b Ft(builtin)h(displa)m(ys)h(the)f(con)m
-(ten)m(ts)i(of)f(the)f(directory)h(stac)m(k.)275 4202
+41 b(The)150 4267 y Fs(dirs)29 b Ft(builtin)h(displa)m(ys)h(the)f(con)m
+(ten)m(ts)i(of)f(the)f(directory)h(stac)m(k.)275 4396
y(The)k(con)m(ten)m(ts)i(of)f(the)h(directory)f(stac)m(k)h(are)f(also)h
(visible)g(as)f(the)g(v)-5 b(alue)36 b(of)g(the)g Fs(DIRSTACK)e
-Ft(shell)150 4312 y(v)-5 b(ariable.)150 4514 y Fj(6.8.1)63
-b(Directory)40 b(Stac)m(k)g(Builtins)150 4687 y Fs(dirs)870
-4823 y(dirs)47 b([-clpv])e([+)p Fi(N)58 b Fs(|)47 b(-)p
-Fi(N)11 b Fs(])630 4959 y Ft(Displa)m(y)35 b(the)f(list)g(of)g(curren)m
+Ft(shell)150 4506 y(v)-5 b(ariable.)150 4695 y Fj(6.8.1)63
+b(Directory)40 b(Stac)m(k)g(Builtins)150 4862 y Fs(dirs)870
+4991 y(dirs)47 b([-clpv])e([+)p Fi(N)58 b Fs(|)47 b(-)p
+Fi(N)11 b Fs(])630 5121 y Ft(Displa)m(y)35 b(the)f(list)g(of)g(curren)m
(tly)g(remem)m(b)s(ered)f(directories.)51 b(Directories)36
-b(are)e(added)f(to)630 5068 y(the)28 b(list)h(with)f(the)g
+b(are)e(added)f(to)630 5230 y(the)28 b(list)h(with)f(the)g
Fs(pushd)f Ft(command;)i(the)f Fs(popd)f Ft(command)h(remo)m(v)m(es)h
-(directories)g(from)630 5178 y(the)i(list.)630 5340 y
-Fs(-c)384 b Ft(Clears)31 b(the)f(directory)h(stac)m(k)h(b)m(y)e
-(deleting)h(all)h(of)e(the)h(elemen)m(ts.)p eop end
-%%Page: 86 92
-TeXDict begin 86 91 bop 150 -116 a Ft(86)2572 b(Bash)31
-b(Reference)g(Man)m(ual)630 299 y Fs(-l)384 b Ft(Pro)s(duces)31
+(directories)g(from)630 5340 y(the)i(list.)p eop end
+%%Page: 90 96
+TeXDict begin 90 95 bop 150 -116 a Ft(90)2572 b(Bash)31
+b(Reference)g(Man)m(ual)630 299 y Fs(-c)384 b Ft(Clears)31
+b(the)f(directory)h(stac)m(k)h(b)m(y)e(deleting)h(all)h(of)e(the)h
+(elemen)m(ts.)630 469 y Fs(-l)384 b Ft(Pro)s(duces)31
b(a)h(listing)h(using)e(full)h(pathnames;)h(the)f(default)g(listing)h
-(format)1110 408 y(uses)d(a)h(tilde)g(to)g(denote)g(the)f(home)h
-(directory)-8 b(.)630 590 y Fs(-p)384 b Ft(Causes)30
+(format)1110 579 y(uses)d(a)h(tilde)g(to)g(denote)g(the)f(home)h
+(directory)-8 b(.)630 749 y Fs(-p)384 b Ft(Causes)30
b Fs(dirs)f Ft(to)i(prin)m(t)f(the)h(directory)g(stac)m(k)h(with)e(one)
-g(en)m(try)h(p)s(er)e(line.)630 771 y Fs(-v)384 b Ft(Causes)36
+g(en)m(try)h(p)s(er)e(line.)630 919 y Fs(-v)384 b Ft(Causes)36
b Fs(dirs)f Ft(to)i(prin)m(t)f(the)g(directory)h(stac)m(k)h(with)e(one)
-h(en)m(try)f(p)s(er)f(line,)1110 881 y(pre\014xing)30
+h(en)m(try)f(p)s(er)f(line,)1110 1028 y(pre\014xing)30
b(eac)m(h)h(en)m(try)g(with)f(its)h(index)e(in)i(the)f(stac)m(k.)630
-1062 y Fs(+)p Fi(N)384 b Ft(Displa)m(ys)23 b(the)f Fq(N)10
+1199 y Fs(+)p Fi(N)384 b Ft(Displa)m(ys)23 b(the)f Fq(N)10
b Ft(th)21 b(directory)h(\(coun)m(ting)h(from)e(the)h(left)g(of)g(the)g
-(list)g(prin)m(ted)1110 1172 y(b)m(y)30 b Fs(dirs)f Ft(when)h(in)m(v)m
+(list)g(prin)m(ted)1110 1308 y(b)m(y)30 b Fs(dirs)f Ft(when)h(in)m(v)m
(ok)m(ed)i(without)e(options\),)h(starting)g(with)g(zero.)630
-1354 y Fs(-)p Fi(N)384 b Ft(Displa)m(ys)47 b(the)g Fq(N)10
+1478 y Fs(-)p Fi(N)384 b Ft(Displa)m(ys)47 b(the)g Fq(N)10
b Ft(th)46 b(directory)h(\(coun)m(ting)g(from)f(the)g(righ)m(t)h(of)g
-(the)f(list)1110 1463 y(prin)m(ted)25 b(b)m(y)g Fs(dirs)g
+(the)f(list)1110 1588 y(prin)m(ted)25 b(b)m(y)g Fs(dirs)g
Ft(when)f(in)m(v)m(ok)m(ed)j(without)f(options\),)h(starting)g(with)e
-(zero.)150 1645 y Fs(popd)870 1790 y(popd)47 b([-n])f([+)p
-Fi(N)58 b Fs(|)47 b(-)p Fi(N)11 b Fs(])630 1936 y Ft(Remo)m(v)m(e)26
+(zero.)150 1758 y Fs(popd)870 1898 y(popd)47 b([-n])f([+)p
+Fi(N)58 b Fs(|)47 b(-)p Fi(N)11 b Fs(])630 2038 y Ft(Remo)m(v)m(e)26
b(the)e(top)g(en)m(try)h(from)e(the)h(directory)h(stac)m(k,)i(and)c
Fs(cd)h Ft(to)h(the)f(new)f(top)i(directory)-8 b(.)630
-2045 y(When)32 b(no)g(argumen)m(ts)h(are)g(giv)m(en,)h
+2147 y(When)32 b(no)g(argumen)m(ts)h(are)g(giv)m(en,)h
Fs(popd)d Ft(remo)m(v)m(es)j(the)f(top)f(directory)h(from)f(the)g(stac)
-m(k)630 2155 y(and)f(p)s(erforms)e(a)j Fs(cd)f Ft(to)h(the)f(new)g(top)
+m(k)630 2257 y(and)f(p)s(erforms)e(a)j Fs(cd)f Ft(to)h(the)f(new)g(top)
h(directory)-8 b(.)44 b(The)31 b(elemen)m(ts)i(are)e(n)m(um)m(b)s(ered)
-f(from)630 2264 y(0)j(starting)g(at)g(the)f(\014rst)g(directory)g
+f(from)630 2366 y(0)j(starting)g(at)g(the)f(\014rst)g(directory)g
(listed)h(with)f Fs(dirs)p Ft(;)g(that)h(is,)g Fs(popd)e
-Ft(is)i(equiv)-5 b(alen)m(t)33 b(to)630 2374 y Fs(popd)c(+0)p
-Ft(.)630 2555 y Fs(-n)384 b Ft(Suppresses)27 b(the)j(normal)g(c)m
+Ft(is)i(equiv)-5 b(alen)m(t)33 b(to)630 2476 y Fs(popd)c(+0)p
+Ft(.)630 2646 y Fs(-n)384 b Ft(Suppresses)27 b(the)j(normal)g(c)m
(hange)g(of)g(directory)g(when)e(remo)m(ving)j(directo-)1110
-2665 y(ries)f(from)g(the)h(stac)m(k,)h(so)f(that)g(only)f(the)h(stac)m
-(k)g(is)g(manipulated.)630 2847 y Fs(+)p Fi(N)384 b Ft(Remo)m(v)m(es)22
+2756 y(ries)f(from)g(the)h(stac)m(k,)h(so)f(that)g(only)f(the)h(stac)m
+(k)g(is)g(manipulated.)630 2926 y Fs(+)p Fi(N)384 b Ft(Remo)m(v)m(es)22
b(the)f Fq(N)10 b Ft(th)20 b(directory)g(\(coun)m(ting)i(from)e(the)g
-(left)h(of)g(the)f(list)h(prin)m(ted)1110 2956 y(b)m(y)30
-b Fs(dirs)p Ft(\),)g(starting)h(with)f(zero.)630 3138
+(left)h(of)g(the)f(list)h(prin)m(ted)1110 3036 y(b)m(y)30
+b Fs(dirs)p Ft(\),)g(starting)h(with)f(zero.)630 3206
y Fs(-)p Fi(N)384 b Ft(Remo)m(v)m(es)46 b(the)g Fq(N)10
b Ft(th)44 b(directory)h(\(coun)m(ting)h(from)f(the)g(righ)m(t)g(of)g
-(the)g(list)1110 3247 y(prin)m(ted)30 b(b)m(y)g Fs(dirs)p
-Ft(\),)g(starting)h(with)f(zero.)150 3429 y Fs(pushd)870
-3574 y(pushd)46 b([-n])h([+)p Fi(N)57 b Fs(|)48 b Fi(-N)58
-b Fs(|)47 b Fi(dir)11 b Fs(])630 3720 y Ft(Sa)m(v)m(e)29
+(the)g(list)1110 3315 y(prin)m(ted)30 b(b)m(y)g Fs(dirs)p
+Ft(\),)g(starting)h(with)f(zero.)150 3485 y Fs(pushd)870
+3625 y(pushd)46 b([-n])h([+)p Fi(N)57 b Fs(|)48 b Fi(-N)58
+b Fs(|)47 b Fi(dir)11 b Fs(])630 3765 y Ft(Sa)m(v)m(e)29
b(the)f(curren)m(t)g(directory)g(on)g(the)g(top)g(of)g(the)g(directory)
h(stac)m(k)g(and)e(then)h Fs(cd)f Ft(to)i Fq(dir)7 b
-Ft(.)630 3829 y(With)31 b(no)f(argumen)m(ts,)h Fs(pushd)e
+Ft(.)630 3875 y(With)31 b(no)f(argumen)m(ts,)h Fs(pushd)e
Ft(exc)m(hanges)j(the)e(top)h(t)m(w)m(o)h(directories.)630
-4011 y Fs(-n)384 b Ft(Suppresses)26 b(the)i(normal)h(c)m(hange)g(of)f
-(directory)h(when)e(adding)h(directories)1110 4120 y(to)j(the)g(stac)m
+4045 y Fs(-n)384 b Ft(Suppresses)26 b(the)i(normal)h(c)m(hange)g(of)f
+(directory)h(when)e(adding)h(directories)1110 4154 y(to)j(the)g(stac)m
(k,)h(so)e(that)h(only)g(the)f(stac)m(k)i(is)f(manipulated.)630
-4302 y Fs(+)p Fi(N)384 b Ft(Brings)29 b(the)f Fq(N)10
+4325 y Fs(+)p Fi(N)384 b Ft(Brings)29 b(the)f Fq(N)10
b Ft(th)29 b(directory)g(\(coun)m(ting)h(from)e(the)g(left)i(of)e(the)h
-(list)g(prin)m(ted)1110 4411 y(b)m(y)34 b Fs(dirs)p Ft(,)g(starting)h
+(list)g(prin)m(ted)1110 4434 y(b)m(y)34 b Fs(dirs)p Ft(,)g(starting)h
(with)f(zero\))i(to)f(the)f(top)g(of)h(the)f(list)h(b)m(y)f(rotating)i
-(the)1110 4521 y(stac)m(k.)630 4702 y Fs(-)p Fi(N)384
+(the)1110 4544 y(stac)m(k.)630 4714 y Fs(-)p Fi(N)384
b Ft(Brings)23 b(the)g Fq(N)10 b Ft(th)23 b(directory)h(\(coun)m(ting)g
(from)e(the)i(righ)m(t)f(of)g(the)h(list)f(prin)m(ted)1110
-4812 y(b)m(y)34 b Fs(dirs)p Ft(,)g(starting)h(with)f(zero\))i(to)f(the)
+4823 y(b)m(y)34 b Fs(dirs)p Ft(,)g(starting)h(with)f(zero\))i(to)f(the)
f(top)g(of)h(the)f(list)h(b)m(y)f(rotating)i(the)1110
-4922 y(stac)m(k.)630 5103 y Fi(dir)336 b Ft(Mak)m(es)31
+4933 y(stac)m(k.)630 5103 y Fi(dir)336 b Ft(Mak)m(es)31
b(the)g(curren)m(t)f(w)m(orking)g(directory)g(b)s(e)g(the)g(top)g(of)g
(the)h(stac)m(k,)h(mak-)1110 5213 y(ing)39 b(it)g(the)g(new)f(curren)m
(t)g(directory)h(as)g(if)g(it)g(had)f(b)s(een)g(supplied)f(as)i(an)1110
5322 y(argumen)m(t)31 b(to)g(the)f Fs(cd)g Ft(builtin.)p
eop end
-%%Page: 87 93
-TeXDict begin 87 92 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(87)150 299 y Fr(6.9)68
+%%Page: 91 97
+TeXDict begin 91 96 bop 150 -116 a Ft(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(91)150 299 y Fr(6.9)68
b(Con)l(trolling)47 b(the)e(Prompt)150 458 y Ft(The)24
b(v)-5 b(alue)24 b(of)h(the)f(v)-5 b(ariable)25 b Fs(PROMPT_COMMAND)20
b Ft(is)25 b(examined)f(just)g(b)s(efore)f(Bash)i(prin)m(ts)e(eac)m(h)j
b(c)m(haracter)i(whose)e(ASCI)s(I)f(co)s(de)h(is)h(the)f(o)s(ctal)i(v)
-5 b(alue)31 b Fq(nnn)p Ft(.)150 5340 y Fs(\\\\)384 b
Ft(A)30 b(bac)m(kslash.)p eop end
-%%Page: 88 94
-TeXDict begin 88 93 bop 150 -116 a Ft(88)2572 b(Bash)31
+%%Page: 92 98
+TeXDict begin 92 97 bop 150 -116 a Ft(92)2572 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fs(\\[)384 b Ft(Begin)38
b(a)f(sequence)g(of)g(non-prin)m(ting)g(c)m(haracters.)61
b(This)36 b(could)h(b)s(e)g(used)f(to)h(em)m(b)s(ed)g(a)630
(its)h(p)s(osition)f(in)g(the)h(history)f(list,)i(whic)m(h)f(ma)m(y)g
(include)f(commands)g(restored)g(from)150 924 y(the)39
b(history)h(\014le)f(\(see)h(Section)g(9.1)h([Bash)e(History)h(F)-8
-b(acilities],)45 b(page)40 b(129\),)j(while)d(the)f(command)150
+b(acilities],)45 b(page)40 b(133\),)j(while)d(the)f(command)150
1034 y(n)m(um)m(b)s(er)j(is)h(the)h(p)s(osition)f(in)g(the)g(sequence)h
(of)f(commands)g(executed)h(during)e(the)i(curren)m(t)f(shell)150
1143 y(session.)275 1272 y(After)35 b(the)g(string)g(is)g(deco)s(ded,)h
150 1382 y(tution,)k(arithmetic)f(expansion,)g(and)e(quote)h(remo)m(v)
-5 b(al,)39 b(sub)5 b(ject)35 b(to)i(the)f(v)-5 b(alue)36
b(of)g(the)g Fs(promptvars)150 1491 y Ft(shell)31 b(option)f(\(see)i
-(Section)f(4.2)g([Bash)g(Builtins],)g(page)g(44\).)150
+(Section)f(4.2)g([Bash)g(Builtins],)g(page)g(48\).)150
1713 y Fr(6.10)68 b(The)45 b(Restricted)h(Shell)150 1872
y Ft(If)27 b(Bash)h(is)g(started)g(with)g(the)g(name)g
Fs(rbash)p Ft(,)f(or)g(the)h(`)p Fs(--restricted)p Ft(')d(or)j(`)p
(y)g(startup)f(\014les)g(are)h(read.)275 4373 y(When)j(a)i(command)e
(that)i(is)f(found)f(to)h(b)s(e)g(a)g(shell)g(script)g(is)g(executed)h
(\(see)g(Section)g(3.8)g([Shell)150 4482 y(Scripts],)25
-b(page)e(36\),)j Fs(rbash)c Ft(turns)g(o\013)i(an)m(y)f(restrictions)h
+b(page)e(38\),)j Fs(rbash)c Ft(turns)g(o\013)i(an)m(y)f(restrictions)h
(in)f(the)g(shell)h(spa)m(wned)e(to)i(execute)g(the)g(script.)150
4704 y Fr(6.11)68 b(Bash)45 b(POSIX)f(Mo)t(de)150 4863
y Ft(Starting)34 b(Bash)f(with)g(the)g(`)p Fs(--posix)p
5340 y(The)f(follo)m(wing)j(list)f(is)g(what's)f(c)m(hanged)h(when)e(`)
p Fl(posix)h Ft(mo)s(de')h(is)f(in)g(e\013ect:)p eop
end
-%%Page: 89 95
-TeXDict begin 89 94 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(89)199 299 y(1.)61
+%%Page: 93 99
+TeXDict begin 93 98 bop 150 -116 a Ft(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(93)199 299 y(1.)61
b(When)28 b(a)i(command)e(in)g(the)h(hash)f(table)i(no)e(longer)h
(exists,)h(Bash)f(will)g(re-searc)m(h)h Fs($PATH)d Ft(to)i(\014nd)330
408 y(the)i(new)e(lo)s(cation.)43 b(This)29 b(is)i(also)g(a)m(v)-5
5340 y(single)42 b(quotes)g(are)g(no)g(longer)g(sp)s(ecial)g(and)f
(cannot)i(b)s(e)e(used)g(to)h(quote)g(a)g(closing)h(brace)f(or)p
eop end
-%%Page: 90 96
-TeXDict begin 90 95 bop 150 -116 a Ft(90)2572 b(Bash)31
+%%Page: 94 100
+TeXDict begin 94 99 bop 150 -116 a Ft(94)2572 b(Bash)31
b(Reference)g(Man)m(ual)330 299 y(other)g(sp)s(ecial)h(c)m(haracter,)i
(unless)c(the)i(op)s(erator)f(is)g(one)h(of)f(those)h(de\014ned)e(to)i
(p)s(erform)e(pattern)330 408 y(remo)m(v)-5 b(al.)42
(con)m(tain)g(shell)f(metac)m(haracters,)k(ev)m(en)d(if)f(the)g(result)
g(con)m(tains)i(nonprin)m(ting)330 5340 y(c)m(haracters.)p
eop end
-%%Page: 91 97
-TeXDict begin 91 96 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(91)154 299 y(41.)61
+%%Page: 95 101
+TeXDict begin 95 100 bop 150 -116 a Ft(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(95)154 299 y(41.)61
b(When)35 b(the)g Fs(cd)f Ft(builtin)h(is)g(in)m(v)m(ok)m(ed)i(in)d
Fq(logical)41 b Ft(mo)s(de,)36 b(and)f(the)g(pathname)g(constructed)g
(from)330 408 y Fs($PWD)i Ft(and)h(the)h(directory)f(name)h(supplied)e
b(sp)s(ecifying)h(the)150 3960 y(`)p Fs(--enable-strict-posix-def)o
(ault)o Ft(')i(to)76 b Fs(configure)c Ft(when)i(building)g(\(see)i
(Section)f(10.8)150 4070 y([Optional)31 b(F)-8 b(eatures],)32
-b(page)f(137\).)p eop end
-%%Page: 92 98
-TeXDict begin 92 97 bop eop end
-%%Page: 93 99
-TeXDict begin 93 98 bop 150 -116 a Ft(Chapter)30 b(7:)41
-b(Job)30 b(Con)m(trol)2571 b(93)150 299 y Fo(7)80 b(Job)54
+b(page)f(141\).)p eop end
+%%Page: 96 102
+TeXDict begin 96 101 bop eop end
+%%Page: 97 103
+TeXDict begin 97 102 bop 150 -116 a Ft(Chapter)30 b(7:)41
+b(Job)30 b(Con)m(trol)2571 b(97)150 299 y Fo(7)80 b(Job)54
b(Con)l(trol)150 521 y Ft(This)25 b(c)m(hapter)i(discusses)f(what)g
(job)f(con)m(trol)j(is,)f(ho)m(w)f(it)h(w)m(orks,)g(and)f(ho)m(w)g
(Bash)g(allo)m(ws)h(y)m(ou)g(to)g(access)150 631 y(its)k(facilities.)
i(\015agged)f(with)f(a)h(`)p Fs(+)p Ft(',)i(and)d(the)150
5340 y(previous)30 b(job)g(with)g(a)h(`)p Fs(-)p Ft('.)p
eop end
-%%Page: 94 100
-TeXDict begin 94 99 bop 150 -116 a Ft(94)2572 b(Bash)31
+%%Page: 98 104
+TeXDict begin 98 103 bop 150 -116 a Ft(98)2572 b(Bash)31
b(Reference)g(Man)m(ual)275 299 y(A)38 b(job)g(ma)m(y)h(also)g(b)s(e)f
(referred)f(to)j(using)d(a)i(pre\014x)e(of)i(the)f(name)h(used)e(to)i
(start)g(it,)i(or)e(using)f(a)150 408 y(substring)29
b(If)24 b(the)i(`)p Fs(-b)p Ft(')e(option)i(to)f(the)g
Fs(set)f Ft(builtin)h(is)g(enabled,)h(Bash)f(rep)s(orts)f(suc)m(h)h(c)m
(hanges)150 1443 y(immediately)g(\(see)g(Section)g(4.3.1)g([The)f(Set)g
-(Builtin],)i(page)f(54\).)40 b(An)m(y)24 b(trap)f(on)h
+(Builtin],)i(page)f(58\).)40 b(An)m(y)24 b(trap)f(on)h
Fs(SIGCHLD)e Ft(is)i(executed)150 1553 y(for)30 b(eac)m(h)i(c)m(hild)e
(pro)s(cess)g(that)h(exits.)275 1687 y(If)25 b(an)h(attempt)h(to)g
(exit)g(Bash)f(is)h(made)f(while)g(jobs)f(are)i(stopp)s(ed,)f(\(or)h
(running,)e(if)h(the)g Fs(checkjobs)150 1796 y Ft(option)e(is)f
(enabled)h({)g(see)g(Section)g(4.3.2)h([The)e(Shopt)g(Builtin],)j(page)
-e(58\),)i(the)e(shell)f(prin)m(ts)g(a)h(w)m(arning)150
+e(62\),)i(the)e(shell)f(prin)m(ts)g(a)h(w)m(arning)150
1906 y(message,)k(and)c(if)i(the)f Fs(checkjobs)e Ft(option)j(is)f
(enabled,)i(lists)e(the)h(jobs)f(and)f(their)i(statuses.)39
b(The)25 b Fs(jobs)150 2016 y Ft(command)36 b(ma)m(y)h(then)f(b)s(e)f
(status.)630 5340 y Fs(-p)384 b Ft(List)31 b(only)f(the)h(pro)s(cess)f
Fl(id)g Ft(of)h(the)f(job's)g(pro)s(cess)g(group)g(leader.)p
eop end
-%%Page: 95 101
-TeXDict begin 95 100 bop 150 -116 a Ft(Chapter)30 b(7:)41
-b(Job)30 b(Con)m(trol)2571 b(95)630 299 y Fs(-r)384 b
+%%Page: 99 105
+TeXDict begin 99 104 bop 150 -116 a Ft(Chapter)30 b(7:)41
+b(Job)30 b(Con)m(trol)2571 b(99)630 299 y Fs(-r)384 b
Ft(Displa)m(y)32 b(only)e(running)f(jobs.)630 447 y Fs(-s)384
b Ft(Displa)m(y)32 b(only)e(stopp)s(ed)f(jobs.)630 594
y(If)23 b Fq(jobsp)s(ec)28 b Ft(is)c(giv)m(en,)i(output)d(is)h
Fq(jobsp)s(ec)j Ft(argu-)150 5340 y(men)m(ts.)41 b(They)30
b(m)m(ust)g(b)s(e)g(supplied)f(pro)s(cess)h Fl(id)p Ft(s.)p
eop end
-%%Page: 96 102
-TeXDict begin 96 101 bop 150 -116 a Ft(96)2572 b(Bash)31
+%%Page: 100 106
+TeXDict begin 100 105 bop 150 -116 a Ft(100)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fr(7.3)68 b(Job)45
b(Con)l(trol)h(V)-11 b(ariables)150 483 y Fs(auto_resume)630
593 y Ft(This)31 b(v)-5 b(ariable)32 b(con)m(trols)g(ho)m(w)g(the)f
62 b(The)37 b(`)p Fs(substring)p Ft(')e(v)-5 b(alue)38
b(pro)m(vides)f(functionalit)m(y)i(analogous)g(to)630
1579 y(the)f(`)p Fs(\045?)p Ft(')f(job)h Fl(id)f Ft(\(see)i(Section)f
-(7.1)h([Job)f(Con)m(trol)g(Basics],)j(page)d(93\).)64
+(7.1)h([Job)f(Con)m(trol)g(Basics],)j(page)d(97\).)64
b(If)37 b(set)h(to)h(an)m(y)630 1689 y(other)32 b(v)-5
b(alue,)32 b(the)g(supplied)e(string)i(m)m(ust)f(b)s(e)g(a)h(pre\014x)f
(of)h(a)g(stopp)s(ed)e(job's)i(name;)g(this)630 1798
y(pro)m(vides)e(functionalit)m(y)i(analogous)g(to)f(the)g(`)p
Fs(\045)p Ft(')f(job)g Fl(id)p Ft(.)p eop end
-%%Page: 97 103
-TeXDict begin 97 102 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2107 b(97)150 299 y Fo(8)80
+%%Page: 101 107
+TeXDict begin 101 106 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(101)150 299 y Fo(8)80
b(Command)54 b(Line)f(Editing)150 640 y Ft(This)28 b(c)m(hapter)i
(describ)s(es)e(the)h(basic)g(features)h(of)f(the)g Fl(gnu)f
Ft(command)h(line)g(editing)h(in)m(terface.)42 b(Com-)150
(o)s(cation.)42 b(Line)26 b(editing)150 1078 y(is)i(also)h(used)e(when)
h(using)f(the)h(`)p Fs(-e)p Ft(')g(option)h(to)g(the)f
Fs(read)f Ft(builtin)h(command)f(\(see)i(Section)g(4.2)h([Bash)150
-1188 y(Builtins],)36 b(page)f(44\).)52 b(By)35 b(default,)g(the)f(line)
+1188 y(Builtins],)36 b(page)f(48\).)52 b(By)35 b(default,)g(the)f(line)
h(editing)f(commands)g(are)h(similar)f(to)h(those)f(of)g(Emacs.)150
1297 y(A)h(vi-st)m(yle)h(line)f(editing)g(in)m(terface)h(is)e(also)i(a)
m(v)-5 b(ailable.)55 b(Line)34 b(editing)h(can)g(b)s(e)f(enabled)g(at)h
(an)m(y)g(time)150 1407 y(using)28 b(the)i(`)p Fs(-o)g(emacs)p
Ft(')d(or)i(`)p Fs(-o)h(vi)p Ft(')f(options)g(to)h(the)f
Fs(set)f Ft(builtin)h(command)g(\(see)h(Section)f(4.3.1)i([The)150
-1517 y(Set)g(Builtin],)g(page)g(54\),)h(or)e(disabled)g(using)g(the)h
+1517 y(Set)g(Builtin],)g(page)g(58\),)h(or)e(disabled)g(using)g(the)h
(`)p Fs(+o)f(emacs)p Ft(')f(or)h(`)p Fs(+o)g(vi)p Ft(')g(options)h(to)g
Fs(set)p Ft(.)150 1802 y Fr(8.1)68 b(In)l(tro)t(duction)45
b(to)g(Line)h(Editing)150 1962 y Ft(The)30 b(follo)m(wing)i(paragraphs)
Ft(,)g Fs(RET)p Ft(,)150 3908 y(and)d Fs(TAB)f Ft(all)j(stand)e(for)g
(themselv)m(es)i(when)d(seen)i(in)f(this)g(text,)j(or)d(in)h(an)f(init)
h(\014le)f(\(see)i(Section)f(8.3)150 4018 y([Readline)f(Init)g(File],)i
-(page)e(100\).)52 b(If)33 b(y)m(our)g(k)m(eyb)s(oard)h(lac)m(ks)g(a)g
+(page)e(104\).)52 b(If)33 b(y)m(our)g(k)m(eyb)s(oard)h(lac)m(ks)g(a)g
Fs(LFD)f Ft(k)m(ey)-8 b(,)36 b(t)m(yping)e Fs(C-j)e Ft(will)i(pro)s
(duce)150 4128 y(the)d(desired)e(c)m(haracter.)43 b(The)30
b Fs(RET)f Ft(k)m(ey)i(ma)m(y)g(b)s(e)f(lab)s(eled)h
Fs(RET)p Ft(;)i(the)g(en)m(tire)g(line)f(is)h(accepted)g(regardless)g
(of)f(the)h(lo)s(cation)h(of)e(the)h(cursor)150 5340
y(within)c(the)g(line.)p eop end
-%%Page: 98 104
-TeXDict begin 98 103 bop 150 -116 a Ft(98)2572 b(Bash)31
+%%Page: 102 108
+TeXDict begin 102 107 bop 150 -116 a Ft(102)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fj(8.2.1)63 b(Readline)40
b(Bare)h(Essen)m(tials)150 446 y Ft(In)31 b(order)h(to)h(en)m(ter)g(c)m
(haracters)g(in)m(to)g(the)g(line,)g(simply)e(t)m(yp)s(e)i(them.)46
b(that)f(con)m(trol)g(k)m(eystrok)m(es)h(op)s(erate)e(on)g(c)m
(haracters)h(while)f(meta)h(k)m(eystrok)m(es)h(op)s(erate)e(on)150
5340 y(w)m(ords.)p eop end
-%%Page: 99 105
-TeXDict begin 99 104 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2107 b(99)150 299 y Fj(8.2.3)63
+%%Page: 103 109
+TeXDict begin 103 108 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(103)150 299 y Fj(8.2.3)63
b(Readline)40 b(Killing)i(Commands)150 446 y Fq(Killing)35
b Ft(text)28 b(means)e(to)h(delete)h(the)f(text)g(from)g(the)f(line,)i
(but)e(to)h(sa)m(v)m(e)h(it)g(a)m(w)m(a)m(y)g(for)e(later)i(use,)f
b(for)i(Commands)g(in)f(the)g(History)150 5121 y Ft(Readline)35
b(pro)m(vides)f(commands)g(for)g(searc)m(hing)h(through)e(the)i
(command)f(history)g(\(see)h(Section)g(9.1)150 5230 y([Bash)i(History)h
-(F)-8 b(acilities],)42 b(page)37 b(129\))i(for)d(lines)h(con)m(taining)
+(F)-8 b(acilities],)42 b(page)37 b(133\))i(for)d(lines)h(con)m(taining)
i(a)e(sp)s(eci\014ed)f(string.)60 b(There)36 b(are)i(t)m(w)m(o)150
5340 y(searc)m(h)31 b(mo)s(des:)40 b Fq(incremen)m(tal)35
b Ft(and)30 b Fq(non-incremen)m(tal)p Ft(.)p eop end
-%%Page: 100 106
-TeXDict begin 100 105 bop 150 -116 a Ft(100)2527 b(Bash)31
+%%Page: 104 110
+TeXDict begin 104 109 bop 150 -116 a Ft(104)2527 b(Bash)31
b(Reference)g(Man)m(ual)275 299 y(Incremen)m(tal)26 b(searc)m(hes)h(b)s
(egin)e(b)s(efore)g(the)h(user)f(has)h(\014nished)e(t)m(yping)i(the)g
(searc)m(h)g(string.)39 b(As)26 b(eac)m(h)150 408 y(c)m(haracter)37
(a)g(`)p Fs(#)p Ft(')g(are)h(commen)m(ts.)73 b(Lines)41
b(b)s(eginning)f(with)g(a)i(`)p Fs($)p Ft(')f(indicate)150
4730 y(conditional)e(constructs)f(\(see)g(Section)h(8.3.2)g
-([Conditional)g(Init)e(Constructs],)j(page)e(107\).)64
+([Conditional)g(Init)e(Constructs],)j(page)e(111\).)64
b(Other)150 4839 y(lines)31 b(denote)g(v)-5 b(ariable)31
b(settings)g(and)f(k)m(ey)h(bindings.)150 5011 y(V)-8
b(ariable)32 b(Settings)630 5121 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
b(in)f(Readline)i(using)e(the)g Fs(set)g Ft(command)g(within)g(the)h
(init)g(\014le.)50 b(The)33 b(syn)m(tax)630 5340 y(is)d(simple:)p
eop end
-%%Page: 101 107
-TeXDict begin 101 106 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(101)870 299 y Fs(set)47
+%%Page: 105 111
+TeXDict begin 105 110 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(105)870 299 y Fs(set)47
b Fi(variable)56 b(value)630 436 y Ft(Here,)29 b(for)e(example,)h(is)g
(ho)m(w)f(to)h(c)m(hange)g(from)f(the)g(default)h(Emacs-lik)m(e)h(k)m
(ey)f(binding)e(to)630 545 y(use)k Fs(vi)g Ft(line)h(editing)g
1422 y(The)37 b Fs(bind)30 b(-V)37 b Ft(command)g(lists)i(the)f(curren)
m(t)f(Readline)i(v)-5 b(ariable)38 b(names)g(and)f(v)-5
b(alues.)630 1532 y(See)31 b(Section)g(4.2)g([Bash)g(Builtins],)g(page)
-g(44.)630 1669 y(A)f(great)i(deal)f(of)g(run-time)f(b)s(eha)m(vior)g
+g(48.)630 1669 y(A)f(great)i(deal)f(of)g(run-time)f(b)s(eha)m(vior)g
(is)g(c)m(hangeable)j(with)d(the)g(follo)m(wing)i(v)-5
b(ariables.)630 1833 y Fs(bell-style)1110 1943 y Ft(Con)m(trols)44
b(what)g(happ)s(ens)e(when)h(Readline)i(w)m(an)m(ts)f(to)h(ring)e(the)h
Ft('\))i(as)f(equiv)-5 b(alen)m(t)32 b(when)e(p)s(erforming)1110
5340 y(case-insensitiv)m(e)j(\014lename)d(matc)m(hing)i(and)e
(completion.)p eop end
-%%Page: 102 108
-TeXDict begin 102 107 bop 150 -116 a Ft(102)2527 b(Bash)31
+%%Page: 106 112
+TeXDict begin 106 111 bop 150 -116 a Ft(106)2527 b(Bash)31
b(Reference)g(Man)m(ual)630 299 y Fs(completion-prefix-displa)o(y-le)o
(ngth)1110 408 y Ft(The)g(length)g(in)g(c)m(haracters)i(of)f(the)f
(common)h(pre\014x)e(of)h(a)h(list)g(of)f(p)s(ossible)1110
(p)s(erformed)f(when)h(Readline)h(attempts)1110 5340
y(w)m(ord)i(completion.)42 b(The)30 b(default)g(is)h(`)p
Fs(off)p Ft('.)p eop end
-%%Page: 103 109
-TeXDict begin 103 108 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(103)630 299 y Fs
+%%Page: 107 113
+TeXDict begin 107 112 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(107)630 299 y Fs
(history-preserve-point)1110 408 y Ft(If)41 b(set)h(to)h(`)p
Fs(on)p Ft(',)i(the)c(history)h(co)s(de)g(attempts)h(to)f(place)h(the)f
(p)s(oin)m(t)f(\(the)1110 518 y(curren)m(t)35 b(cursor)g(p)s(osition\))
1110 2892 y Ft(The)51 b(string)h(of)g(c)m(haracters)h(that)f(should)e
(terminate)j(an)f(incremen)m(tal)1110 3002 y(searc)m(h)25
b(without)g(subsequen)m(tly)g(executing)h(the)f(c)m(haracter)h(as)f(a)g
-(command)1110 3112 y(\(see)42 b(Section)f(8.2.5)i([Searc)m(hing],)i
-(page)c(99\).)73 b(If)41 b(this)g(v)-5 b(ariable)41 b(has)g(not)1110
-3221 y(b)s(een)35 b(giv)m(en)h(a)g(v)-5 b(alue,)37 b(the)f(c)m
-(haracters)h Fs(ESC)d Ft(and)h Fi(C-J)g Ft(will)h(terminate)g(an)1110
-3331 y(incremen)m(tal)c(searc)m(h.)630 3513 y Fs(keymap)192
-b Ft(Sets)39 b(Readline's)g(idea)h(of)f(the)g(curren)m(t)f(k)m(eymap)h
-(for)g(k)m(ey)g(binding)f(com-)1110 3623 y(mands.)81
-b(Acceptable)47 b Fs(keymap)42 b Ft(names)i(are)h Fs(emacs)p
-Ft(,)i Fs(emacs-standard)p Ft(,)1110 3733 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 3842 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
-3952 y(to)33 b Fs(emacs-standard)p Ft(.)41 b(The)31 b(default)h(v)-5
-b(alue)32 b(is)g Fs(emacs)p Ft(.)44 b(The)31 b(v)-5 b(alue)33
-b(of)f(the)1110 4061 y Fs(editing-mode)27 b Ft(v)-5 b(ariable)31
-b(also)h(a\013ects)f(the)g(default)f(k)m(eymap.)630 4244
-y Fs(keyseq-timeout)1110 4354 y Ft(Sp)s(eci\014es)25
-b(the)g(duration)g(Readline)h(will)g(w)m(ait)g(for)g(a)f(c)m(haracter)i
-(when)e(read-)1110 4463 y(ing)30 b(an)g(am)m(biguous)g(k)m(ey)h
-(sequence)f(\(one)g(that)h(can)f(form)g(a)g(complete)h(k)m(ey)1110
-4573 y(sequence)24 b(using)f(the)h(input)f(read)g(so)h(far,)h(or)f(can)
-g(tak)m(e)h(additional)g(input)d(to)1110 4682 y(complete)31
-b(a)e(longer)h(k)m(ey)g(sequence\).)41 b(If)28 b(no)h(input)g(is)g
-(receiv)m(ed)h(within)f(the)1110 4792 y(timeout,)34 b(Readline)g(will)f
-(use)f(the)h(shorter)f(but)g(complete)i(k)m(ey)f(sequence.)1110
-4902 y(The)25 b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h
-(milliseconds,)j(so)d(a)h(v)-5 b(alue)26 b(of)f(1000)i(means)e(that)
-1110 5011 y(Readline)e(will)g(w)m(ait)g(one)g(second)f(for)g
-(additional)i(input.)37 b(If)22 b(this)g(v)-5 b(ariable)23
-b(is)1110 5121 y(set)28 b(to)h(a)f(v)-5 b(alue)29 b(less)f(than)g(or)f
-(equal)i(to)f(zero,)i(or)e(to)g(a)h(non-n)m(umeric)e(v)-5
-b(alue,)1110 5230 y(Readline)30 b(will)f(w)m(ait)i(un)m(til)e(another)h
-(k)m(ey)g(is)f(pressed)g(to)h(decide)f(whic)m(h)g(k)m(ey)1110
-5340 y(sequence)i(to)g(complete.)42 b(The)30 b(default)g(v)-5
+(command)1110 3112 y(\(see)38 b(Section)g(8.2.5)h([Searc)m(hing],)h
+(page)e(103\).)62 b(If)37 b(this)g(v)-5 b(ariable)38
+b(has)f(not)1110 3221 y(b)s(een)e(giv)m(en)h(a)g(v)-5
+b(alue,)37 b(the)f(c)m(haracters)h Fs(ESC)d Ft(and)h
+Fi(C-J)g Ft(will)h(terminate)g(an)1110 3331 y(incremen)m(tal)c(searc)m
+(h.)630 3513 y Fs(keymap)192 b Ft(Sets)39 b(Readline's)g(idea)h(of)f
+(the)g(curren)m(t)f(k)m(eymap)h(for)g(k)m(ey)g(binding)f(com-)1110
+3623 y(mands.)81 b(Acceptable)47 b Fs(keymap)42 b Ft(names)i(are)h
+Fs(emacs)p Ft(,)i Fs(emacs-standard)p Ft(,)1110 3733
+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
+3842 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 3952 y(to)33 b Fs(emacs-standard)p
+Ft(.)41 b(The)31 b(default)h(v)-5 b(alue)32 b(is)g Fs(emacs)p
+Ft(.)44 b(The)31 b(v)-5 b(alue)33 b(of)f(the)1110 4061
+y Fs(editing-mode)27 b Ft(v)-5 b(ariable)31 b(also)h(a\013ects)f(the)g
+(default)f(k)m(eymap.)630 4244 y Fs(keyseq-timeout)1110
+4354 y Ft(Sp)s(eci\014es)25 b(the)g(duration)g(Readline)h(will)g(w)m
+(ait)g(for)g(a)f(c)m(haracter)i(when)e(read-)1110 4463
+y(ing)30 b(an)g(am)m(biguous)g(k)m(ey)h(sequence)f(\(one)g(that)h(can)f
+(form)g(a)g(complete)h(k)m(ey)1110 4573 y(sequence)24
+b(using)f(the)h(input)f(read)g(so)h(far,)h(or)f(can)g(tak)m(e)h
+(additional)g(input)d(to)1110 4682 y(complete)31 b(a)e(longer)h(k)m(ey)
+g(sequence\).)41 b(If)28 b(no)h(input)g(is)g(receiv)m(ed)h(within)f
+(the)1110 4792 y(timeout,)34 b(Readline)g(will)f(use)f(the)h(shorter)f
+(but)g(complete)i(k)m(ey)f(sequence.)1110 4902 y(The)25
+b(v)-5 b(alue)26 b(is)f(sp)s(eci\014ed)f(in)h(milliseconds,)j(so)d(a)h
+(v)-5 b(alue)26 b(of)f(1000)i(means)e(that)1110 5011
+y(Readline)e(will)g(w)m(ait)g(one)g(second)f(for)g(additional)i(input.)
+37 b(If)22 b(this)g(v)-5 b(ariable)23 b(is)1110 5121
+y(set)28 b(to)h(a)f(v)-5 b(alue)29 b(less)f(than)g(or)f(equal)i(to)f
+(zero,)i(or)e(to)g(a)h(non-n)m(umeric)e(v)-5 b(alue,)1110
+5230 y(Readline)30 b(will)f(w)m(ait)i(un)m(til)e(another)h(k)m(ey)g(is)
+f(pressed)g(to)h(decide)f(whic)m(h)g(k)m(ey)1110 5340
+y(sequence)i(to)g(complete.)42 b(The)30 b(default)g(v)-5
b(alue)31 b(is)g Fs(500)p Ft(.)p eop end
-%%Page: 104 110
-TeXDict begin 104 109 bop 150 -116 a Ft(104)2527 b(Bash)31
+%%Page: 108 114
+TeXDict begin 108 113 bop 150 -116 a Ft(108)2527 b(Bash)31
b(Reference)g(Man)m(ual)630 299 y Fs(mark-directories)1110
408 y Ft(If)38 b(set)g(to)h(`)p Fs(on)p Ft(',)i(completed)e(directory)f
(names)g(ha)m(v)m(e)i(a)e(slash)g(app)s(ended.)1110 518
(instead)e(of)g(ringing)g(the)g(b)s(ell.)1110 5340 y(The)30
b(default)g(v)-5 b(alue)31 b(is)g(`)p Fs(off)p Ft('.)p
eop end
-%%Page: 105 111
-TeXDict begin 105 110 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(105)630 299 y Fs
+%%Page: 109 115
+TeXDict begin 109 114 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(109)630 299 y Fs
(show-all-if-unmodified)1110 408 y Ft(This)38 b(alters)h(the)g(default)
g(b)s(eha)m(vior)g(of)f(the)h(completion)h(functions)e(in)h(a)1110
518 y(fashion)25 b(similar)g(to)h Fq(sho)m(w-all-if-am)m(biguous)t
b(-p)42 b Ft(command)h(displa)m(ys)g(Readline)g(function)g(names)g(and)
f(bindings)g(in)h(a)630 4362 y(format)37 b(that)h(can)f(put)f(directly)
i(in)m(to)g(an)f(initialization)j(\014le.)60 b(See)38
-b(Section)f(4.2)i([Bash)630 4472 y(Builtins],)31 b(page)g(44.)630
+b(Section)f(4.2)i([Bash)630 4472 y(Builtins],)31 b(page)g(48.)630
4632 y Fq(k)m(eyname)5 b Ft(:)42 b Fq(function-name)35
b Ft(or)c Fq(macro)1110 4741 y(k)m(eyname)k Ft(is)29
b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s(elled)e(out)h(in)g(English.)39
(the)e(function)h Fs(universal-)1110 5340 y(argument)p
Ft(,)f Fi(M-DEL)e Ft(is)i(b)s(ound)e(to)i(the)g(function)g
Fs(backward-kill-word)p Ft(,)p eop end
-%%Page: 106 112
-TeXDict begin 106 111 bop 150 -116 a Ft(106)2527 b(Bash)31
+%%Page: 110 116
+TeXDict begin 110 115 bop 150 -116 a Ft(110)2527 b(Bash)31
b(Reference)g(Man)m(ual)1110 299 y(and)38 b Fi(C-o)g
Ft(is)h(b)s(ound)e(to)j(run)d(the)j(macro)f(expressed)g(on)f(the)i
(righ)m(t)f(hand)1110 408 y(side)30 b(\(that)i(is,)e(to)h(insert)g(the)
Fi(nnn)288 b Ft(the)35 b(eigh)m(t-bit)h(c)m(haracter)g(whose)e(v)-5
b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5 b(alue)35 b Fq(nnn)e
Ft(\(one)i(to)1110 5340 y(three)c(digits\))p eop end
-%%Page: 107 113
-TeXDict begin 107 112 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(107)630 299 y Fs(\\x)p
+%%Page: 111 117
+TeXDict begin 111 116 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(111)630 299 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 408 y Ft(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
(commands)630 5230 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
b(F)-8 b(or)39 b(example,)j(the)d(follo)m(wing)h(directiv)m(e)g(reads)e
(from)630 5340 y(`)p Fs(/etc/inputrc)p Ft(':)p eop end
-%%Page: 108 114
-TeXDict begin 108 113 bop 150 -116 a Ft(108)2527 b(Bash)31
+%%Page: 112 118
+TeXDict begin 112 117 bop 150 -116 a Ft(112)2527 b(Bash)31
b(Reference)g(Man)m(ual)870 299 y Fs($include)46 b(/etc/inputrc)150
498 y Fj(8.3.3)63 b(Sample)41 b(Init)g(File)150 645 y
Ft(Here)27 b(is)f(an)h(example)g(of)f(an)h Fq(inputrc)k
Ft(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)h(binding,)e(v)-5
b(ariable)27 b(assignmen)m(t,)i(and)150 755 y(conditional)j(syn)m(tax.)
p eop end
-%%Page: 109 115
-TeXDict begin 109 114 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(109)390 408 y Fs(#)47
+%%Page: 113 119
+TeXDict begin 113 118 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(113)390 408 y Fs(#)47
b(This)g(file)g(controls)e(the)i(behaviour)e(of)j(line)e(input)h
(editing)e(for)390 518 y(#)i(programs)f(that)h(use)g(the)f(GNU)h
(Readline)f(library.)93 b(Existing)390 628 y(#)47 b(programs)f(include)
4902 y(#)390 5011 y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(ANSI)g(mode)
390 5121 y(#)390 5230 y(#"\\M-\\C-[D":)331 b(backward-char)390
5340 y(#"\\M-\\C-[C":)g(forward-char)p eop end
-%%Page: 110 116
-TeXDict begin 110 115 bop 150 -116 a Ft(110)2527 b(Bash)31
+%%Page: 114 120
+TeXDict begin 114 119 bop 150 -116 a Ft(114)2527 b(Bash)31
b(Reference)g(Man)m(ual)390 299 y Fs(#"\\M-\\C-[A":)331
b(previous-history)390 408 y(#"\\M-\\C-[B":)g(next-history)390
628 y(C-q:)47 b(quoted-insert)390 847 y($endif)390 1066
(completions)e(for)390 5121 y(#)j(a)h(word,)e(ask)h(the)g(user)g(if)g
(he)g(wants)f(to)i(see)f(all)f(of)i(them)390 5230 y(set)f
(completion-query-items)42 b(150)p eop end
-%%Page: 111 117
-TeXDict begin 111 116 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(111)390 299 y Fs(#)47
+%%Page: 115 121
+TeXDict begin 115 120 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(115)390 299 y Fs(#)47
b(For)g(FTP)390 408 y($if)g(Ftp)390 518 y("\\C-xg":)f("get)g(\\M-?")390
628 y("\\C-xt":)g("put)g(\\M-?")390 737 y("\\M-.":)g(yank-last-arg)390
847 y($endif)150 1075 y Fr(8.4)68 b(Bindable)45 b(Readline)i(Commands)
(b)m(y)h(executing)i Fs(bind)29 b(-P)39 b Ft(or,)j(for)d(a)h(more)g
(terse)g(format,)i(suitable)e(for)f(an)150 1454 y Fq(inputrc)34
b Ft(\014le,)29 b Fs(bind)g(-p)p Ft(.)40 b(\(See)30 b(Section)f(4.2)h
-([Bash)g(Builtins],)g(page)g(44.\))41 b(Command)28 b(names)h(without)
+([Bash)g(Builtins],)g(page)g(48.\))41 b(Command)28 b(names)h(without)
150 1563 y(an)h(accompan)m(ying)i(k)m(ey)f(sequence)g(are)g(un)m(b)s
(ound)d(b)m(y)i(default.)275 1696 y(In)25 b(the)h(follo)m(wing)i
(descriptions,)f Fq(p)s(oin)m(t)h Ft(refers)e(to)h(the)f(curren)m(t)g
b(\(\))630 5322 y Ft(Refresh)30 b(the)g(curren)m(t)h(line.)41
b(By)30 b(default,)h(this)f(is)h(un)m(b)s(ound.)p eop
end
-%%Page: 112 118
-TeXDict begin 112 117 bop 150 -116 a Ft(112)2527 b(Bash)31
+%%Page: 116 122
+TeXDict begin 116 121 bop 150 -116 a Ft(116)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fj(8.4.2)63 b(Commands)42
b(F)-10 b(or)41 b(Manipulating)h(The)f(History)150 473
y Fs(accept-line)27 b(\(Newline)h(or)i(Return\))630 582
5340 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)s(oin)m
(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m(ywhere)
p eop end
-%%Page: 113 119
-TeXDict begin 113 118 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(113)630 299 y(in)32
+%%Page: 117 123
+TeXDict begin 117 122 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(117)630 299 y(in)32
b(a)h(history)g(line.)47 b(This)32 b(is)g(a)h(non-incremen)m(tal)h
(searc)m(h.)47 b(By)33 b(default,)h(this)e(command)630
408 y(is)e(un)m(b)s(ound.)150 586 y Fs(history-substr-search-ba)o(ckwa)
5053 y(sequences)d(lik)m(e)g Fi(C-q)p Ft(,)f(for)g(example.)150
5230 y Fs(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o(\))630
5340 y Ft(Insert)g(y)m(ourself.)p eop end
-%%Page: 114 120
-TeXDict begin 114 119 bop 150 -116 a Ft(114)2527 b(Bash)31
+%%Page: 118 124
+TeXDict begin 118 123 bop 150 -116 a Ft(118)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fs(transpose-chars)26
b(\(C-t\))630 408 y Ft(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f(the)g
(cursor)f(forw)m(ard)h(o)m(v)m(er)h(the)f(c)m(haracter)i(at)e(the)g
(the)g(end)630 5340 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f Fs(forward-word)p
Ft(.)p eop end
-%%Page: 115 121
-TeXDict begin 115 120 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(115)150 299 y Fs
+%%Page: 119 125
+TeXDict begin 119 124 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(119)150 299 y Fs
(backward-kill-word)25 b(\(M-DEL\))630 408 y Ft(Kill)k(the)g(w)m(ord)g
(b)s(ehind)e(p)s(oin)m(t.)40 b(W)-8 b(ord)29 b(b)s(oundaries)f(are)h
(the)g(same)g(as)g Fs(backward-word)p Ft(.)150 569 y
5340 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
m(y)f(digits,)i(executing)f Fs(universal-argument)p eop
end
-%%Page: 116 122
-TeXDict begin 116 121 bop 150 -116 a Ft(116)2527 b(Bash)31
+%%Page: 120 126
+TeXDict begin 120 125 bop 150 -116 a Ft(120)2527 b(Bash)31
b(Reference)g(Man)m(ual)630 299 y(again)i(ends)e(the)h(n)m(umeric)f
(argumen)m(t,)i(but)e(is)h(otherwise)g(ignored.)45 b(As)32
b(a)g(sp)s(ecial)h(case,)630 408 y(if)g(this)g(command)f(is)h
(tion)o(s)24 b(\(C-x)30 b(/\))630 5340 y Ft(List)f(the)g(p)s(ossible)f
(completions)h(of)g(the)g(text)g(b)s(efore)g(p)s(oin)m(t,)g(treating)h
(it)f(as)g(a)f(\014lename.)p eop end
-%%Page: 117 123
-TeXDict begin 117 122 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(117)150 299 y Fs
+%%Page: 121 127
+TeXDict begin 121 126 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(121)150 299 y Fs
(complete-username)26 b(\(M-~\))630 408 y Ft(A)m(ttempt)32
b(completion)f(on)g(the)f(text)i(b)s(efore)e(p)s(oin)m(t,)g(treating)i
(it)f(as)f(a)h(username.)150 569 y Fs(possible-username-comple)o(tion)o
(insert)f(the)h(list)g(of)g(p)s(ossible)f(completions)i(enclosed)630
3988 y(within)34 b(braces)h(so)f(the)h(list)g(is)g(a)m(v)-5
b(ailable)37 b(to)e(the)g(shell)g(\(see)g(Section)h(3.5.1)g([Brace)g
-(Ex-)630 4098 y(pansion],)30 b(page)h(20\).)150 4298
+(Ex-)630 4098 y(pansion],)30 b(page)h(21\).)150 4298
y Fj(8.4.7)63 b(Keyb)s(oard)41 b(Macros)150 4471 y Fs(start-kbd-macro)
26 b(\(C-x)j(\(\))630 4580 y Ft(Begin)i(sa)m(ving)h(the)e(c)m
(haracters)i(t)m(yp)s(ed)e(in)m(to)h(the)g(curren)m(t)f(k)m(eyb)s(oard)
f(macro)h(de\014ned,)f(b)m(y)h(making)f(the)g(c)m(haracters)i(in)e(the)
630 5340 y(macro)c(app)s(ear)f(as)g(if)h(t)m(yp)s(ed)f(at)h(the)f(k)m
(eyb)s(oard.)p eop end
-%%Page: 118 124
-TeXDict begin 118 123 bop 150 -116 a Ft(118)2527 b(Bash)31
+%%Page: 122 128
+TeXDict begin 122 127 bop 150 -116 a Ft(122)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fs(print-last-kbd-macro)25
b(\(\))630 408 y Ft(Prin)m(t)30 b(the)h(last)g(k)m(eb)s(oard)f(macro)h
(de\014ned)e(in)i(a)f(format)h(suitable)g(for)f(the)h
(editing)h(bu\013er.)44 b(This)31 b(is)630 5340 y(un)m(b)s(ound)d(b)m
(y)i(default,)h(but)f(usually)g(b)s(ound)e(to)j(ESC-[.)p
eop end
-%%Page: 119 125
-TeXDict begin 119 124 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(119)150 299 y Fs(insert-comment)26
+%%Page: 123 129
+TeXDict begin 123 128 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(123)150 299 y Fs(insert-comment)26
b(\(M-#\))630 408 y Ft(Without)36 b(a)g(n)m(umeric)g(argumen)m(t,)h
(the)f(v)-5 b(alue)36 b(of)g(the)g Fs(comment-begin)c
Ft(v)-5 b(ariable)36 b(is)g(in-)630 518 y(serted)c(at)g(the)g(b)s
5072 y(page)e(20\).)150 5230 y Fs(history-expand-line)25
b(\(M-^\))630 5340 y Ft(P)m(erform)30 b(history)h(expansion)f(on)g(the)
h(curren)m(t)f(line.)p eop end
-%%Page: 120 126
-TeXDict begin 120 125 bop 150 -116 a Ft(120)2527 b(Bash)31
+%%Page: 124 130
+TeXDict begin 124 129 bop 150 -116 a Ft(124)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fs(magic-space)c(\(\))630
408 y Ft(P)m(erform)c(history)g(expansion)g(on)g(the)g(curren)m(t)g
(line)g(and)g(insert)g(a)g(space)h(\(see)g(Section)g(9.3)630
-518 y([History)31 b(In)m(teraction],)i(page)e(131\).)150
+518 y([History)31 b(In)m(teraction],)i(page)e(135\).)150
686 y Fs(alias-expand-line)26 b(\(\))630 796 y Ft(P)m(erform)i(alias)i
(expansion)e(on)g(the)h(curren)m(t)f(line)h(\(see)g(Section)g(6.6)h
-([Aliases],)g(page)f(83\).)150 964 y Fs(history-and-alias-expand)o
+([Aliases],)g(page)f(87\).)150 964 y Fs(history-and-alias-expand)o
(-lin)o(e)24 b(\(\))630 1074 y Ft(P)m(erform)30 b(history)h(and)e
(alias)j(expansion)e(on)g(the)h(curren)m(t)f(line.)150
1242 y Fs(insert-last-argument)25 b(\(M-.)k(or)h(M-_\))630
Ft(editing)h(mo)s(des,)h(use)f(the)g(`)p Fs(set)30 b(-o)150
3114 y(emacs)p Ft(')43 b(and)h(`)p Fs(set)30 b(-o)f(vi)p
Ft(')44 b(commands)g(\(see)i(Section)f(4.3.1)h([The)e(Set)h(Builtin],)j
-(page)e(54\).)83 b(The)150 3223 y(Readline)31 b(default)g(is)f
+(page)e(58\).)83 b(The)150 3223 y(Readline)31 b(default)g(is)f
Fs(emacs)f Ft(mo)s(de.)275 3367 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f
(in)g Fs(vi)f Ft(mo)s(de,)h(y)m(ou)h(are)f(already)h(placed)f(in)g
(`insertion')g(mo)s(de,)g(as)h(if)f(y)m(ou)150 3476 y(had)f(t)m(yp)s
y(sp)s(eci\014cation)40 b(\(a)h Fq(compsp)s(ec)6 b Ft(\))39
b(has)h(b)s(een)f(de\014ned)f(using)h(the)h Fs(complete)d
Ft(builtin)j(\(see)g(Section)h(8.7)150 4320 y([Programmable)h
-(Completion)f(Builtins],)k(page)d(122\),)j(the)c(programmable)g
+(Completion)f(Builtins],)k(page)d(126\),)j(the)c(programmable)g
(completion)i(facilities)150 4429 y(are)31 b(in)m(v)m(ok)m(ed.)275
4573 y(First,)23 b(the)e(command)g(name)g(is)h(iden)m(ti\014ed.)37
b(If)21 b(a)g(compsp)s(ec)g(has)g(b)s(een)f(de\014ned)g(for)h(that)h
(with)150 5340 y(the)e(`)p Fs(-D)p Ft(')f(option)h(to)g
Fs(complete)d Ft(is)i(used)g(as)g(the)h(default.)p eop
end
-%%Page: 121 127
-TeXDict begin 121 126 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(121)275 299 y(Once)34
+%%Page: 125 131
+TeXDict begin 125 130 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(125)275 299 y(Once)34
b(a)g(compsp)s(ec)g(has)g(b)s(een)f(found,)h(it)h(is)f(used)f(to)i
(generate)h(the)e(list)h(of)f(matc)m(hing)h(w)m(ords.)51
b(If)150 408 y(a)37 b(compsp)s(ec)f(is)g(not)h(found,)f(the)h(default)f
(Bash)h(completion)g(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)g
(8.4.6)150 518 y([Commands)30 b(F)-8 b(or)31 b(Completion],)g(page)g
-(116\))h(is)f(p)s(erformed.)275 655 y(First,)g(the)g(actions)g(sp)s
+(120\))h(is)f(p)s(erformed.)275 655 y(First,)g(the)g(actions)g(sp)s
(eci\014ed)f(b)m(y)h(the)f(compsp)s(ec)h(are)g(used.)40
b(Only)30 b(matc)m(hes)i(whic)m(h)e(are)h(pre\014xed)150
765 y(b)m(y)25 b(the)h(w)m(ord)f(b)s(eing)f(completed)j(are)e
874 y(or)30 b(directory)h(name)f(completion,)i(the)e(shell)h(v)-5
b(ariable)31 b Fs(FIGNORE)d Ft(is)i(used)f(to)i(\014lter)g(the)f(matc)m
(hes.)42 b(See)150 984 y(Section)31 b(5.2)h([Bash)e(V)-8
-b(ariables],)33 b(page)e(65,)g(for)f(a)h(description)g(of)f
+b(ariables],)33 b(page)e(69,)g(for)f(a)h(description)g(of)f
Fs(FIGNORE)p Ft(.)275 1121 y(An)m(y)f(completions)h(sp)s(eci\014ed)f(b)
m(y)g(a)h(\014lename)f(expansion)h(pattern)f(to)h(the)g(`)p
Fs(-G)p Ft(')f(option)h(are)f(gener-)150 1230 y(ated)h(next.)40
(ed)150 2025 y(ab)s(o)m(v)m(e)38 b(\(see)f(Section)h(3.5)g([Shell)e
(Expansions],)i(page)f(20\).)61 b(The)36 b(results)h(are)g(split)f
(using)h(the)f(rules)150 2134 y(describ)s(ed)29 b(ab)s(o)m(v)m(e)i
-(\(see)f(Section)h(3.5.7)h([W)-8 b(ord)30 b(Splitting],)h(page)f(26\).)
+(\(see)f(Section)h(3.5.7)h([W)-8 b(ord)30 b(Splitting],)h(page)f(28\).)
42 b(The)30 b(results)f(of)h(the)g(expansion)150 2244
y(are)f(pre\014x-matc)m(hed)h(against)g(the)f(w)m(ord)g(b)s(eing)f
(completed,)j(and)d(the)i(matc)m(hing)g(w)m(ords)e(b)s(ecome)i(the)150
Ft(,)d Fs(COMP_KEY)p Ft(,)i(and)e Fs(COMP_TYPE)f Ft(v)-5
b(ariables)41 b(are)f(assigned)g(v)-5 b(alues)41 b(as)f(describ)s(ed)
150 2819 y(ab)s(o)m(v)m(e)34 b(\(see)g(Section)g(5.2)g([Bash)f(V)-8
-b(ariables],)36 b(page)d(65\).)50 b(If)33 b(a)g(shell)g(function)g(is)g
+b(ariables],)36 b(page)d(69\).)50 b(If)33 b(a)g(shell)g(function)g(is)g
(b)s(eing)f(in)m(v)m(ok)m(ed,)k(the)150 2929 y Fs(COMP_WORDS)j
Ft(and)i Fs(COMP_CWORD)d Ft(v)-5 b(ariables)42 b(are)g(also)h(set.)74
b(When)41 b(the)h(function)f(or)h(command)f(is)150 3039
(shell)150 3724 y(facilities,)50 b(including)44 b(the)h
Fs(compgen)d Ft(and)i Fs(compopt)e Ft(builtins)i(describ)s(ed)f(b)s
(elo)m(w)h(\(see)i(Section)f(8.7)150 3833 y([Programmable)31
-b(Completion)h(Builtins],)f(page)h(122\),)g(to)g(generate)g(the)f(matc)
+b(Completion)h(Builtins],)f(page)h(126\),)g(to)g(generate)g(the)f(matc)
m(hes.)42 b(It)31 b(m)m(ust)g(put)f(the)150 3943 y(p)s(ossible)g
(completions)h(in)f(the)h Fs(COMPREPLY)d Ft(arra)m(y)j(v)-5
b(ariable,)31 b(one)g(p)s(er)e(arra)m(y)i(elemen)m(t.)275
(result)f(is)h(returned)e(to)i(the)g(Readline)g(completion)h(co)s(de)
150 5340 y(as)e(the)f(list)h(of)g(p)s(ossible)f(completions.)p
eop end
-%%Page: 122 128
-TeXDict begin 122 127 bop 150 -116 a Ft(122)2527 b(Bash)31
+%%Page: 126 132
+TeXDict begin 126 131 bop 150 -116 a Ft(126)2527 b(Bash)31
b(Reference)g(Man)m(ual)275 299 y(If)22 b(the)i(previously-applied)f
(actions)i(do)e(not)h(generate)h(an)m(y)f(matc)m(hes,)i(and)d(the)g(`)p
Fs(-o)30 b(dirnames)p Ft(')22 b(op-)150 408 y(tion)29
Fs(-p)p Ft(')630 5340 y(and)k(`)p Fs(-r)p Ft(',)i(and)e(write)h(the)g
(matc)m(hes)h(to)g(the)f(standard)f(output.)48 b(When)33
b(using)f(the)h(`)p Fs(-F)p Ft(')p eop end
-%%Page: 123 129
-TeXDict begin 123 128 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(123)630 299 y(or)28
+%%Page: 127 133
+TeXDict begin 127 132 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(127)630 299 y(or)28
b(`)p Fs(-C)p Ft(')g(options,)h(the)f(v)-5 b(arious)29
b(shell)f(v)-5 b(ariables)29 b(set)f(b)m(y)g(the)g(programmable)h
(completion)630 408 y(facilities,)k(while)d(a)m(v)-5
(eci\014cations)h(when)d(w)m(ord)i(completion)630 3278
y(is)35 b(attempted)h(is)f(describ)s(ed)f(ab)s(o)m(v)m(e)j(\(see)f
(Section)g(8.6)g([Programmable)g(Completion],)630 3388
-y(page)31 b(120\).)42 b(The)30 b(`)p Fs(-D)p Ft(')h(option)f(tak)m(es)i
+y(page)31 b(124\).)42 b(The)30 b(`)p Fs(-D)p Ft(')h(option)f(tak)m(es)i
(precedence)f(o)m(v)m(er)h(`)p Fs(-E)p Ft('.)630 3532
y(Other)41 b(options,)46 b(if)41 b(sp)s(eci\014ed,)j(ha)m(v)m(e)f(the)f
(follo)m(wing)i(meanings.)75 b(The)41 b(argumen)m(ts)h(to)630
5230 y Fs(dirnames)96 b Ft(P)m(erform)46 b(directory)g(name)h
(completion)g(if)f(the)g(compsp)s(ec)1590 5340 y(generates)32
b(no)e(matc)m(hes.)p eop end
-%%Page: 124 130
-TeXDict begin 124 129 bop 150 -116 a Ft(124)2527 b(Bash)31
+%%Page: 128 134
+TeXDict begin 128 133 bop 150 -116 a Ft(128)2527 b(Bash)31
b(Reference)g(Man)m(ual)1110 299 y Fs(filenames)1590
408 y Ft(T)-8 b(ell)40 b(Readline)f(that)h(the)f(compsp)s(ec)f
(generates)j(\014lenames,)1590 518 y(so)29 b(it)h(can)f(p)s(erform)f
2564 y Fs(arrayvar)96 b Ft(Arra)m(y)31 b(v)-5 b(ariable)31
b(names.)1110 2722 y Fs(binding)144 b Ft(Readline)30
b(k)m(ey)f(binding)f(names)h(\(see)h(Section)f(8.4)h([Bindable)1590
-2832 y(Readline)h(Commands],)f(page)h(111\).)1110 2990
+2832 y(Readline)h(Commands],)f(page)h(115\).)1110 2990
y Fs(builtin)144 b Ft(Names)21 b(of)g(shell)f(builtin)h(commands.)37
b(Ma)m(y)21 b(also)h(b)s(e)e(sp)s(eci\014ed)1590 3099
y(as)31 b(`)p Fs(-b)p Ft('.)1110 3258 y Fs(command)144
(as)g(`)p Fs(-g)p Ft('.)1110 4743 y Fs(helptopic)1590
4853 y Ft(Help)37 b(topics)g(as)g(accepted)h(b)m(y)e(the)h
Fs(help)f Ft(builtin)g(\(see)h(Sec-)1590 4963 y(tion)31
-b(4.2)g([Bash)g(Builtins],)g(page)g(44\).)1110 5121 y
+b(4.2)g([Bash)g(Builtins],)g(page)g(48\).)1110 5121 y
Fs(hostname)96 b Ft(Hostnames,)89 b(as)76 b(tak)m(en)h(from)f(the)g
(\014le)h(sp)s(eci\014ed)e(b)m(y)1590 5230 y(the)55 b
Fs(HOSTFILE)e Ft(shell)j(v)-5 b(ariable)56 b(\(see)g(Section)g(5.2)h
-([Bash)1590 5340 y(V)-8 b(ariables],)32 b(page)f(65\).)p
+([Bash)1590 5340 y(V)-8 b(ariables],)32 b(page)f(69\).)p
eop end
-%%Page: 125 131
-TeXDict begin 125 130 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(125)1110 299 y Fs(job)336
+%%Page: 129 135
+TeXDict begin 129 134 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(129)1110 299 y Fs(job)336
b Ft(Job)31 b(names,)h(if)g(job)f(con)m(trol)i(is)f(activ)m(e.)46
b(Ma)m(y)33 b(also)g(b)s(e)e(sp)s(eci-)1590 408 y(\014ed)f(as)g(`)p
Fs(-j)p Ft('.)1110 577 y Fs(keyword)144 b Ft(Shell)30
Fs(-s)p Ft('.)1110 1081 y Fs(setopt)192 b Ft(V)-8 b(alid)34
b(argumen)m(ts)f(for)f(the)h(`)p Fs(-o)p Ft(')g(option)g(to)h(the)f
Fs(set)e Ft(builtin)1590 1190 y(\(see)g(Section)h(4.3.1)g([The)e(Set)g
-(Builtin],)i(page)f(54\).)1110 1358 y Fs(shopt)240 b
+(Builtin],)i(page)f(58\).)1110 1358 y Fs(shopt)240 b
Ft(Shell)40 b(option)g(names)g(as)g(accepted)i(b)m(y)e(the)g
Fs(shopt)e Ft(builtin)1590 1468 y(\(see)31 b(Section)h(4.2)f([Bash)g
-(Builtins],)g(page)g(44\).)1110 1636 y Fs(signal)192
+(Builtins],)g(page)g(48\).)1110 1636 y Fs(signal)192
b Ft(Signal)31 b(names.)1110 1804 y Fs(stopped)144 b
Ft(Names)31 b(of)g(stopp)s(ed)e(jobs,)h(if)g(job)g(con)m(trol)i(is)f
(activ)m(e.)1110 1972 y Fs(user)288 b Ft(User)30 b(names.)41
3243 y(pleted,)44 b(and)c($3)i(is)e(the)h(w)m(ord)g(preceding)f(the)h
(w)m(ord)f(b)s(eing)h(completed,)1110 3353 y(as)g(describ)s(ed)f(ab)s
(o)m(v)m(e)i(\(see)g(Section)f(8.6)h([Programmable)g(Completion],)1110
-3462 y(page)30 b(120\).)42 b(When)29 b(it)h(\014nishes,)e(the)h(p)s
+3462 y(page)30 b(124\).)42 b(When)29 b(it)h(\014nishes,)e(the)h(p)s
(ossible)g(completions)h(are)g(retriev)m(ed)1110 3572
y(from)g(the)g(v)-5 b(alue)31 b(of)g(the)f Fs(COMPREPLY)e
Ft(arra)m(y)j(v)-5 b(ariable.)630 3740 y Fs(-G)30 b Fi(globpat)1110
(the)h(mem)m(b)s(ers)f(of)g(the)h(resultan)m(t)g(list)g(whic)m(h)f
(matc)m(h)i(the)1110 5340 y(w)m(ord)f(b)s(eing)g(completed.)p
eop end
-%%Page: 126 132
-TeXDict begin 126 131 bop 150 -116 a Ft(126)2527 b(Bash)31
+%%Page: 130 136
+TeXDict begin 130 135 bop 150 -116 a Ft(130)2527 b(Bash)31
b(Reference)g(Man)m(ual)630 299 y Fs(-X)f Fi(filterpat)1110
408 y Fq(\014lterpat)d Ft(is)e(a)g(pattern)g(as)f(used)g(for)h
(\014lename)g(expansion.)38 b(It)25 b(is)g(applied)f(to)1110
b(\(see)h(Section)g(3.5.2)h([Tilde)e(Expansion],)i(page)e(21\),)k
(searc)m(hing)d(directories)g(in)f Fq($CDP)-8 b(A)g(TH)10
b Ft(,)150 4902 y(whic)m(h)21 b(is)h(describ)s(ed)e(ab)s(o)m(v)m(e)j
-(\(see)f(Section)h(4.1)f([Bourne)g(Shell)f(Builtins],)j(page)e(37\),)j
+(\(see)f(Section)h(4.1)f([Bourne)g(Shell)f(Builtins],)j(page)e(41\),)j
(and)c(basic)h(supp)s(ort)150 5011 y(for)31 b(the)h Fs(cdable_vars)d
Ft(shell)i(option)h(\(see)h(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)
-i(page)f(58\).)46 b Fs(_comp_)150 5121 y(cd)30 b Ft(mo)s(di\014es)g
+i(page)f(62\).)46 b Fs(_comp_)150 5121 y(cd)30 b Ft(mo)s(di\014es)g
(the)h(v)-5 b(alue)31 b(of)g Fq(IFS)36 b Ft(so)31 b(that)g(it)g(con)m
(tains)h(only)f(a)g(newline)g(to)h(accommo)s(date)g(\014le)f(names)150
5230 y(con)m(taining)i(spaces)g(and)e(tabs)h({)g Fs(compgen)e
Ft(prin)m(ts)h(the)h(p)s(ossible)f(completions)i(it)g(generates)g(one)f
(p)s(er)150 5340 y(line.)p eop end
-%%Page: 127 133
-TeXDict begin 127 132 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(127)275 299 y(P)m(ossible)24
+%%Page: 131 137
+TeXDict begin 131 136 bop 150 -116 a Ft(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(131)275 299 y(P)m(ossible)24
b(completions)h(go)g(in)m(to)g(the)f Fq(COMPREPL)-8 b(Y)36
b Ft(arra)m(y)24 b(v)-5 b(ariable,)26 b(one)e(completion)i(p)s(er)c
(arra)m(y)150 408 y(elemen)m(t.)42 b(The)30 b(programmable)g
5121 y(if)f(shopt)f(-q)i(cdable_vars)c(&&)k([[)f(${#COMPREPLY[@]})c
(-eq)k(0)g(]];)g(then)772 5230 y(COMPREPLY=\()e($\(compgen)g(-v)i(--)g
("$cur"\))f(\))581 5340 y(fi)p eop end
-%%Page: 128 134
-TeXDict begin 128 133 bop 150 -116 a Ft(128)2527 b(Bash)31
+%%Page: 132 138
+TeXDict begin 132 137 bop 150 -116 a Ft(132)2527 b(Bash)31
b(Reference)g(Man)m(ual)581 408 y Fs(return)46 b(0)390
518 y(})275 653 y Ft(W)-8 b(e)31 b(install)g(the)g(completion)h
(function)e(using)f(the)i(`)p Fs(-F)p Ft(')f(option)h(to)g
44 b(v)-5 b(ariable)40 b(completion)150 2237 y(for)i(w)m(ords)g(b)s
(eginning)f(with)h(`)p Fs({)p Ft(',)k(completions)e(con)m(taining)f
(pathname)g(expansion)f(patterns)g(\(see)150 2346 y(Section)31
-b(3.5.8)h([Filename)g(Expansion],)e(page)i(26\),)f(and)f(so)h(on.)275
+b(3.5.8)h([Filename)g(Expansion],)e(page)i(29\),)f(and)f(so)h(on.)275
2481 y(Once)39 b(installed)i(using)e Fs(complete)p Ft(,)h
Fs(_comp_cd)d Ft(will)j(b)s(e)g(called)g(ev)m(ery)h(time)f(w)m(e)g
(attempt)h(w)m(ord)150 2590 y(completion)32 b(for)e(a)h
40 w(completion)h(pac)m(k)-5 b(age)57 b(is)e(distributed)f(with)h(bash)
f(in)h(the)150 3407 y(`)p Fs(examples/complete)p Ft(')26
b(sub)s(directory)-8 b(.)p eop end
-%%Page: 129 135
-TeXDict begin 129 134 bop 150 -116 a Ft(Chapter)30 b(9:)41
-b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(129)150
+%%Page: 133 139
+TeXDict begin 133 138 bop 150 -116 a Ft(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(133)150
299 y Fo(9)80 b(Using)53 b(History)g(In)l(teractiv)l(ely)150
543 y Ft(This)42 b(c)m(hapter)h(describ)s(es)f(ho)m(w)g(to)h(use)g(the)
f Fl(gnu)h Ft(History)g(Library)e(in)m(teractiv)m(ely)-8
1159 y Ft(When)40 b(the)h(`)p Fs(-o)30 b(history)p Ft(')38
b(option)j(to)g(the)g Fs(set)e Ft(builtin)h(is)h(enabled)f(\(see)h
(Section)g(4.3.1)i([The)d(Set)150 1269 y(Builtin],)32
-b(page)g(54\),)h(the)e(shell)h(pro)m(vides)f(access)h(to)g(the)f
+b(page)g(58\),)h(the)e(shell)h(pro)m(vides)f(access)h(to)g(the)f
Fq(command)g(history)p Ft(,)h(the)f(list)h(of)f(commands)150
1378 y(previously)h(t)m(yp)s(ed.)47 b(The)33 b(v)-5 b(alue)33
b(of)f(the)h Fs(HISTSIZE)e Ft(shell)h(v)-5 b(ariable)34
Fs(HISTFILE)d Ft(is)j(truncated,)150 2174 y(if)42 b(necessary)-8
b(,)45 b(to)e(con)m(tain)g(no)f(more)g(than)f(the)h(n)m(um)m(b)s(er)f
(of)h(lines)g(sp)s(eci\014ed)f(b)m(y)h(the)g(v)-5 b(alue)42
-b(of)g(the)150 2283 y Fs(HISTFILESIZE)21 b Ft(v)-5 b(ariable.)40
-b(When)24 b(an)g(in)m(teractiv)m(e)j(shell)e(exits,)h(the)f(last)g
-Fs($HISTSIZE)d Ft(lines)j(are)f(copied)150 2393 y(from)29
-b(the)i(history)e(list)i(to)g(the)f(\014le)g(named)f(b)m(y)h
-Fs($HISTFILE)p Ft(.)38 b(If)30 b(the)g Fs(histappend)d
-Ft(shell)j(option)g(is)g(set)150 2502 y(\(see)22 b(Section)g(4.2)g
-([Bash)g(Builtins],)h(page)f(44\),)j(the)c(lines)g(are)h(app)s(ended)d
-(to)j(the)f(history)g(\014le,)j(otherwise)150 2612 y(the)32
-b(history)f(\014le)g(is)h(o)m(v)m(erwritten.)45 b(If)31
-b Fs(HISTFILE)e Ft(is)j(unset,)f(or)h(if)f(the)h(history)f(\014le)g(is)
-h(un)m(writable,)g(the)150 2721 y(history)37 b(is)h(not)f(sa)m(v)m(ed.)
-63 b(After)38 b(sa)m(ving)g(the)f(history)-8 b(,)40 b(the)e(history)f
-(\014le)g(is)h(truncated)f(to)h(con)m(tain)h(no)150 2831
-y(more)c(than)g Fs($HISTFILESIZE)d Ft(lines.)56 b(If)34
-b Fs(HISTFILESIZE)e Ft(is)k(unset,)g(or)f(set)h(to)g(n)m(ull,)h(a)e
-(non-n)m(umeric)150 2941 y(v)-5 b(alue,)31 b(or)f(a)h(n)m(umeric)f(v)-5
-b(alue)31 b(less)g(than)f(zero,)i(the)e(history)g(\014le)h(is)f(not)h
+b(of)g(the)150 2283 y Fs(HISTFILESIZE)28 b Ft(v)-5 b(ariable.)46
+b(When)31 b(a)h(shell)g(with)g(history)f(enabled)h(exits,)h(the)f(last)
+h Fs($HISTSIZE)c Ft(lines)150 2393 y(are)35 b(copied)g(from)g(the)g
+(history)f(list)i(to)f(the)g(\014le)g(named)f(b)m(y)h
+Fs($HISTFILE)p Ft(.)51 b(If)35 b(the)g Fs(histappend)d
+Ft(shell)150 2502 y(option)26 b(is)g(set)g(\(see)h(Section)f(4.2)h
+([Bash)f(Builtins],)h(page)g(48\),)h(the)e(lines)g(are)g(app)s(ended)e
+(to)i(the)g(history)150 2612 y(\014le,)36 b(otherwise)f(the)g(history)f
+(\014le)h(is)f(o)m(v)m(erwritten.)55 b(If)34 b Fs(HISTFILE)e
+Ft(is)j(unset,)g(or)g(if)f(the)h(history)f(\014le)h(is)150
+2721 y(un)m(writable,)f(the)f(history)g(is)g(not)h(sa)m(v)m(ed.)49
+b(After)34 b(sa)m(ving)g(the)f(history)-8 b(,)34 b(the)g(history)f
+(\014le)g(is)g(truncated)150 2831 y(to)g(con)m(tain)h(no)f(more)g(than)
+f Fs($HISTFILESIZE)d Ft(lines.)48 b(If)33 b Fs(HISTFILESIZE)c
+Ft(is)k(unset,)g(or)f(set)i(to)f(n)m(ull,)h(a)150 2941
+y(non-n)m(umeric)c(v)-5 b(alue,)31 b(or)f(a)h(n)m(umeric)f(v)-5
+b(alue)31 b(less)g(than)f(zero,)h(the)g(history)f(\014le)h(is)f(not)h
(truncated.)275 3078 y(If)g(the)h Fs(HISTTIMEFORMAT)d
Ft(is)j(set,)h(the)f(time)h(stamp)f(information)g(asso)s(ciated)i(with)
e(eac)m(h)h(history)150 3188 y(en)m(try)d(is)h(written)f(to)h(the)f
-5 b(ailable)33 b(in)e(eac)m(h)150 3874 y(editing)45
b(mo)s(de)g(that)g(pro)m(vide)g(access)h(to)f(the)g(history)f(list)i
(\(see)f(Section)h(8.4.2)g([Commands)e(F)-8 b(or)150
-3983 y(History],)31 b(page)h(112\).)275 4121 y(The)47
+3983 y(History],)31 b(page)h(116\).)275 4121 y(The)47
b(shell)i(allo)m(ws)h(con)m(trol)f(o)m(v)m(er)h(whic)m(h)e(commands)g
(are)h(sa)m(v)m(ed)g(on)f(the)h(history)f(list.)95 b(The)150
4231 y Fs(HISTCONTROL)25 b Ft(and)j Fs(HISTIGNORE)e Ft(v)-5
m(b)s(edded)f(newlines)h(instead)h(of)f(semicolons.)40
b(The)23 b Fs(shopt)e Ft(builtin)i(is)h(used)150 4779
y(to)31 b(set)g(these)g(options.)41 b(See)31 b(Section)g(4.2)g([Bash)g
-(Builtins],)g(page)g(44,)h(for)e(a)h(description)f(of)h
+(Builtins],)g(page)g(48,)h(for)e(a)h(description)f(of)h
Fs(shopt)p Ft(.)150 5016 y Fr(9.2)68 b(Bash)45 b(History)h(Builtins)150
5176 y Ft(Bash)31 b(pro)m(vides)f(t)m(w)m(o)i(builtin)e(commands)g
(whic)m(h)g(manipulate)g(the)h(history)f(list)h(and)f(history)g
(\014le.)150 5340 y Fs(fc)p eop end
-%%Page: 130 136
-TeXDict begin 130 135 bop 150 -116 a Ft(130)2527 b(Bash)31
+%%Page: 134 140
+TeXDict begin 134 139 bop 150 -116 a Ft(134)2527 b(Bash)31
b(Reference)g(Man)m(ual)870 299 y Fs(fc)47 b([-e)g Fi(ename)11
b Fs(])46 b([-lnr])g([)p Fi(first)11 b Fs(])45 b([)p
Fi(last)11 b Fs(])870 408 y(fc)47 b(-s)g([)p Fi(pat)11
Fs(r)f(cc)p Ft(')630 2608 y(runs)35 b(the)h(last)h(command)f(b)s
(eginning)g(with)g Fs(cc)f Ft(and)h(t)m(yping)g(`)p Fs(r)p
Ft(')h(re-executes)h(the)e(last)630 2718 y(command)30
-b(\(see)h(Section)h(6.6)f([Aliases],)h(page)g(83\).)150
+b(\(see)h(Section)h(6.6)f([Aliases],)h(page)g(87\).)150
2906 y Fs(history)870 3054 y(history)46 b([)p Fi(n)11
b Fs(])870 3164 y(history)46 b(-c)870 3273 y(history)g(-d)h
Fi(offset)870 3383 y Fs(history)f([-anrw])g([)p Fi(filename)11
b(the)i(new)g(history)g(lines)g(\(history)g(lines)g(en)m(tered)h(since)
f(the)g(b)s(e-)1110 5340 y(ginning)30 b(of)h(the)f(curren)m(t)g(Bash)h
(session\))g(to)g(the)g(history)f(\014le.)p eop end
-%%Page: 131 137
-TeXDict begin 131 136 bop 150 -116 a Ft(Chapter)30 b(9:)41
-b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(131)630
+%%Page: 135 141
+TeXDict begin 135 140 bop 150 -116 a Ft(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(135)630
299 y Fs(-n)384 b Ft(App)s(end)32 b(the)i(history)f(lines)h(not)g
(already)g(read)g(from)f(the)h(history)f(\014le)h(to)1110
408 y(the)26 b(curren)m(t)f(history)g(list.)40 b(These)25
(used)g(to)h(escap)s(e)g(the)f(history)g(expansion)h(c)m(haracter.)275
3768 y(Sev)m(eral)40 b(shell)g(options)g(settable)h(with)e(the)h
Fs(shopt)e Ft(builtin)h(\(see)h(Section)h(4.2)f([Bash)g(Builtins],)150
-3877 y(page)32 b(44\))h(ma)m(y)f(b)s(e)f(used)g(to)i(tailor)g(the)e(b)s
+3877 y(page)32 b(48\))h(ma)m(y)f(b)s(e)f(used)g(to)i(tailor)g(the)e(b)s
(eha)m(vior)h(of)g(history)g(expansion.)44 b(If)31 b(the)h
Fs(histverify)d Ft(shell)150 3987 y(option)39 b(is)f(enabled,)i(and)e
(Readline)g(is)h(b)s(eing)e(used,)j(history)e(substitutions)g(are)g
g(expansion)g(mec)m(h-)150 5121 y(anism)h(with)g(the)g
Fs(histchars)d Ft(v)-5 b(ariable,)38 b(as)d(explained)g(ab)s(o)m(v)m(e)
i(\(see)f(Section)f(5.2)i([Bash)e(V)-8 b(ariables],)150
-5230 y(page)32 b(65\).)44 b(The)31 b(shell)g(uses)g(the)g(history)g
+5230 y(page)32 b(69\).)44 b(The)31 b(shell)g(uses)g(the)g(history)g
(commen)m(t)i(c)m(haracter)f(to)g(mark)f(history)g(timestamps)h(when)
150 5340 y(writing)e(the)h(history)f(\014le.)p eop end
-%%Page: 132 138
-TeXDict begin 132 137 bop 150 -116 a Ft(132)2527 b(Bash)31
+%%Page: 136 142
+TeXDict begin 136 141 bop 150 -116 a Ft(136)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fj(9.3.1)63 b(Ev)m(en)m(t)39
b(Designators)150 446 y Ft(An)32 b(ev)m(en)m(t)j(designator)e(is)g(a)g
(reference)g(to)h(a)f(command)f(line)h(en)m(try)g(in)g(the)g(history)g
5340 y Fs(\045)432 b Ft(The)30 b(w)m(ord)g(matc)m(hed)h(b)m(y)f(the)h
(most)g(recen)m(t)g(`)p Fs(?)p Fi(string)11 b Fs(?)p
Ft(')28 b(searc)m(h.)p eop end
-%%Page: 133 139
-TeXDict begin 133 138 bop 150 -116 a Ft(Chapter)30 b(9:)41
-b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(133)150
+%%Page: 137 143
+TeXDict begin 137 142 bop 150 -116 a Ft(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(137)150
299 y Fi(x)11 b Fs(-)p Fi(y)325 b Ft(A)30 b(range)h(of)g(w)m(ords;)f(`)
p Fs(-)p Fi(y)11 b Ft(')30 b(abbreviates)h(`)p Fs(0-)p
Fi(y)11 b Ft('.)150 458 y Fs(*)432 b Ft(All)28 b(of)g(the)g(w)m(ords,)g
Fs(&)p Ft('.)150 4351 y Fs(G)432 b Ft(Apply)30 b(the)g(follo)m(wing)i
(`)p Fs(s)p Ft(')f(mo)s(di\014er)e(once)i(to)g(eac)m(h)h(w)m(ord)e(in)g
(the)g(ev)m(en)m(t.)p eop end
-%%Page: 134 140
-TeXDict begin 134 139 bop eop end
-%%Page: 135 141
-TeXDict begin 135 140 bop 150 -116 a Ft(Chapter)30 b(10:)41
-b(Installing)31 b(Bash)2356 b(135)150 299 y Fo(10)80
+%%Page: 138 144
+TeXDict begin 138 143 bop eop end
+%%Page: 139 145
+TeXDict begin 139 144 bop 150 -116 a Ft(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(139)150 299 y Fo(10)80
b(Installing)52 b(Bash)150 556 y Ft(This)31 b(c)m(hapter)h(pro)m(vides)
g(basic)g(instructions)f(for)g(installing)i(Bash)f(on)f(the)h(v)-5
b(arious)31 b(supp)s(orted)f(plat-)150 665 y(forms.)40
Fs(configure)e Ft(created)j(\(so)g(y)m(ou)g(can)f(compile)150
5340 y(Bash)g(for)f(a)g(di\013eren)m(t)h(kind)f(of)g(computer\),)h(t)m
(yp)s(e)g(`)p Fs(make)e(distclean)p Ft('.)p eop end
-%%Page: 136 142
-TeXDict begin 136 141 bop 150 -116 a Ft(136)2527 b(Bash)31
+%%Page: 140 146
+TeXDict begin 140 145 bop 150 -116 a Ft(140)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fr(10.2)68 b(Compilers)46
b(and)f(Options)150 458 y Ft(Some)28 b(systems)h(require)f(un)m(usual)f
(options)i(for)f(compilation)i(or)f(linking)f(that)h(the)g
5340 y(but)c(if)h(it)g(prin)m(ts)g(a)g(message)h(sa)m(ying)g(it)f(can)h
(not)f(guess)g(the)g(host)g(t)m(yp)s(e,)h(giv)m(e)g(it)f(the)h(`)p
Fs(--host=TYPE)p Ft(')p eop end
-%%Page: 137 143
-TeXDict begin 137 142 bop 150 -116 a Ft(Chapter)30 b(10:)41
-b(Installing)31 b(Bash)2356 b(137)150 299 y(option.)39
+%%Page: 141 147
+TeXDict begin 141 146 bop 150 -116 a Ft(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(141)150 299 y(option.)39
b(`)p Fs(TYPE)p Ft(')25 b(can)g(either)g(b)s(e)g(a)g(short)g(name)g
(for)g(the)g(system)g(t)m(yp)s(e,)h(suc)m(h)f(as)g(`)p
Fs(sun4)p Ft(',)h(or)f(a)g(canonical)150 408 y(name)30
5340 y(same)h Fs(malloc)e Ft(that)j(app)s(ears)e(in)g
Fl(gnu)h Ft(lib)s(c,)g(but)f(an)h(older)f(v)m(ersion)i(originally)g
(deriv)m(ed)p eop end
-%%Page: 138 144
-TeXDict begin 138 143 bop 150 -116 a Ft(138)2527 b(Bash)31
+%%Page: 142 148
+TeXDict begin 142 147 bop 150 -116 a Ft(142)2527 b(Bash)31
b(Reference)g(Man)m(ual)630 299 y(from)h(the)h(4.2)g
Fl(bsd)f Fs(malloc)p Ft(.)45 b(This)31 b Fs(malloc)g
Ft(is)i(v)m(ery)f(fast,)i(but)e(w)m(astes)h(some)g(space)g(on)630
(xpg-echo-default)p Ft(')150 5340 y(are)26 b(enabled)g(b)m(y)g
(default,)h(unless)f(the)g(op)s(erating)g(system)g(do)s(es)g(not)g(pro)
m(vide)g(the)g(necessary)g(supp)s(ort.)p eop end
-%%Page: 139 145
-TeXDict begin 139 144 bop 150 -116 a Ft(Chapter)30 b(10:)41
-b(Installing)31 b(Bash)2356 b(139)150 299 y Fs(--enable-alias)630
+%%Page: 143 149
+TeXDict begin 143 148 bop 150 -116 a Ft(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(143)150 299 y Fs(--enable-alias)630
408 y Ft(Allo)m(w)41 b(alias)g(expansion)f(and)f(include)g(the)h
Fs(alias)f Ft(and)g Fs(unalias)e Ft(builtins)j(\(see)g(Sec-)630
-518 y(tion)31 b(6.6)g([Aliases],)i(page)e(83\).)150 692
+518 y(tion)31 b(6.6)g([Aliases],)i(page)e(87\).)150 692
y Fs(--enable-arith-for-comma)o(nd)630 801 y Ft(Include)21
b(supp)s(ort)g(for)g(the)i(alternate)g(form)f(of)g(the)g
Fs(for)f Ft(command)h(that)h(b)s(eha)m(v)m(es)f(lik)m(e)i(the)630
(3.2.4.1)i([Lo)s(oping)d(Constructs],)h(page)g(10\).)150
1084 y Fs(--enable-array-variables)630 1194 y Ft(Include)h(supp)s(ort)g
(for)h(one-dimensional)h(arra)m(y)f(shell)h(v)-5 b(ariables)33
-b(\(see)h(Section)g(6.7)h([Ar-)630 1303 y(ra)m(ys],)c(page)g(84\).)150
+b(\(see)h(Section)g(6.7)h([Ar-)630 1303 y(ra)m(ys],)c(page)g(88\).)150
1477 y Fs(--enable-bang-history)630 1587 y Ft(Include)36
b(supp)s(ort)f(for)h Fs(csh)p Ft(-lik)m(e)h(history)g(substitution)f
(\(see)h(Section)g(9.3)h([History)f(In-)630 1696 y(teraction],)c(page)e
-(131\).)150 1870 y Fs(--enable-brace-expansion)630 1979
+(135\).)150 1870 y Fs(--enable-brace-expansion)630 1979
y Ft(Include)40 b Fs(csh)p Ft(-lik)m(e)h(brace)f(expansion)g(\()h
Fs(b{a,b}c)d Fp(7!)i Fs(bac)30 b(bbc)39 b Ft(\).)71 b(See)40
-b(Section)h(3.5.1)630 2089 y([Brace)32 b(Expansion],)e(page)h(20,)h
+b(Section)h(3.5.1)630 2089 y([Brace)32 b(Expansion],)e(page)h(21,)h
(for)e(a)g(complete)i(description.)150 2262 y Fs
(--enable-casemod-attribu)o(tes)630 2372 y Ft(Include)37
b(supp)s(ort)g(for)g(case-mo)s(difying)i(attributes)g(in)e(the)h
(for)h(a)g Fs(csh)p Ft(-lik)m(e)h(directory)f(stac)m(k)i(and)d(the)i
Fs(pushd)p Ft(,)f Fs(popd)p Ft(,)g(and)f Fs(dirs)630
5340 y Ft(builtins)d(\(see)h(Section)g(6.8)h([The)e(Directory)i(Stac)m
-(k],)g(page)f(85\).)p eop end
-%%Page: 140 146
-TeXDict begin 140 145 bop 150 -116 a Ft(140)2527 b(Bash)31
+(k],)g(page)f(89\).)p eop end
+%%Page: 144 150
+TeXDict begin 144 149 bop 150 -116 a Ft(144)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fs(--enable-disabled-builti)o(ns)630
408 y Ft(Allo)m(w)40 b(builtin)e(commands)g(to)h(b)s(e)f(in)m(v)m(ok)m
(ed)i(via)f(`)p Fs(builtin)29 b(xxx)p Ft(')37 b(ev)m(en)j(after)f
Fs(xxx)e Ft(has)630 518 y(b)s(een)31 b(disabled)g(using)g(`)p
Fs(enable)d(-n)i(xxx)p Ft('.)43 b(See)32 b(Section)g(4.2)h([Bash)e
-(Builtins],)i(page)f(44,)630 628 y(for)e(details)i(of)e(the)h
+(Builtins],)i(page)f(48,)630 628 y(for)e(details)i(of)e(the)h
Fs(builtin)d Ft(and)i Fs(enable)e Ft(builtin)i(commands.)150
783 y Fs(--enable-dparen-arithmet)o(ic)630 892 y Ft(Include)42
b(supp)s(ort)f(for)h(the)h Fs(\(\(...)o(\)\))f Ft(command)g(\(see)i
1267 y Ft(Include)40 b(supp)s(ort)e(for)i(the)h(extended)f(pattern)h
(matc)m(hing)g(features)g(describ)s(ed)e(ab)s(o)m(v)m(e)630
1377 y(under)29 b(Section)i(3.5.8.1)i([P)m(attern)e(Matc)m(hing],)i
-(page)e(27.)150 1532 y Fs(--enable-extended-glob-d)o(efau)o(lt)630
+(page)e(29.)150 1532 y Fs(--enable-extended-glob-d)o(efau)o(lt)630
1641 y Ft(Set)40 b(the)g(default)g(v)-5 b(alue)41 b(of)f(the)g
Fq(extglob)j Ft(shell)d(option)g(describ)s(ed)f(ab)s(o)m(v)m(e)i(under)
d(Sec-)630 1751 y(tion)31 b(4.3.2)h([The)e(Shopt)g(Builtin],)h(page)g
-(58)g(to)h(b)s(e)d(enabled.)150 1906 y Fs(--enable-help-builtin)630
+(62)g(to)h(b)s(e)d(enabled.)150 1906 y Fs(--enable-help-builtin)630
2016 y Ft(Include)24 b(the)h Fs(help)f Ft(builtin,)h(whic)m(h)g(displa)
m(ys)f(help)h(on)f(shell)h(builtins)f(and)h(v)-5 b(ariables)25
b(\(see)630 2125 y(Section)31 b(4.2)h([Bash)e(Builtins],)i(page)f
-(44\).)150 2281 y Fs(--enable-history)630 2390 y Ft(Include)e(command)g
+(48\).)150 2281 y Fs(--enable-history)630 2390 y Ft(Include)e(command)g
(history)h(and)f(the)h Fs(fc)f Ft(and)g Fs(history)e
Ft(builtin)j(commands)f(\(see)h(Sec-)630 2500 y(tion)h(9.1)g([Bash)g
-(History)g(F)-8 b(acilities],)34 b(page)d(129\).)150
+(History)g(F)-8 b(acilities],)34 b(page)d(133\).)150
2655 y Fs(--enable-job-control)630 2765 y Ft(This)e(enables)i(the)f
(job)g(con)m(trol)h(features)g(\(see)g(Chapter)f(7)g([Job)g(Con)m
-(trol],)h(page)g(93\),)h(if)630 2874 y(the)f(op)s(erating)f(system)h
+(trol],)h(page)g(97\),)h(if)630 2874 y(the)f(op)s(erating)f(system)h
(supp)s(orts)d(them.)150 3029 y Fs(--enable-multibyte)630
3139 y Ft(This)h(enables)i(supp)s(ort)d(for)i(m)m(ultib)m(yte)h(c)m
(haracters)g(if)f(the)g(op)s(erating)h(system)f(pro)m(vides)630
Fs(/dev/tcp/)p Fi(host)11 b Fs(/)p Fi(port)630 3623 y
Ft(and)29 b Fs(/dev/udp/)p Fi(host)11 b Fs(/)p Fi(port)34
b Ft(when)28 b(used)g(in)h(redirections)h(\(see)g(Section)g(3.6)g
-([Redirec-)630 3733 y(tions],)h(page)g(28\).)150 3888
+([Redirec-)630 3733 y(tions],)h(page)g(31\).)150 3888
y Fs(--enable-process-substit)o(utio)o(n)630 3998 y Ft(This)49
b(enables)i(pro)s(cess)f(substitution)g(\(see)h(Section)g(3.5.6)h([Pro)
-s(cess)e(Substitution],)630 4107 y(page)31 b(25\))h(if)e(the)h(op)s
+s(cess)e(Substitution],)630 4107 y(page)31 b(28\))h(if)e(the)h(op)s
(erating)f(system)h(pro)m(vides)f(the)h(necessary)g(supp)s(ort.)150
4262 y Fs(--enable-progcomp)630 4372 y Ft(Enable)d(the)g(programmable)g
(completion)i(facilities)g(\(see)f(Section)g(8.6)g([Programmable)630
-4482 y(Completion],)i(page)h(120\).)42 b(If)30 b(Readline)h(is)f(not)h
+4482 y(Completion],)i(page)h(124\).)42 b(If)30 b(Readline)h(is)f(not)h
(enabled,)f(this)h(option)g(has)f(no)g(e\013ect.)150
4637 y Fs(--enable-prompt-string-d)o(ecod)o(ing)630 4746
y Ft(T)-8 b(urn)30 b(on)i(the)f(in)m(terpretation)i(of)f(a)g(n)m(um)m
4856 y Fs($PS1)p Ft(,)36 b Fs($PS2)p Ft(,)g Fs($PS3)p
Ft(,)h(and)e Fs($PS4)f Ft(prompt)h(strings.)57 b(See)36
b(Section)h(6.9)g([Con)m(trolling)g(the)630 4966 y(Prompt],)30
-b(page)h(87,)h(for)e(a)h(complete)h(list)f(of)f(prompt)g(string)g
+b(page)h(91,)h(for)e(a)h(complete)h(list)f(of)f(prompt)g(string)g
(escap)s(e)h(sequences.)150 5121 y Fs(--enable-readline)630
5230 y Ft(Include)d(supp)s(ort)f(for)h(command-line)h(editing)g(and)f
(history)g(with)g(the)h(Bash)g(v)m(ersion)g(of)630 5340
y(the)i(Readline)g(library)f(\(see)h(Chapter)f(8)g([Command)g(Line)g
-(Editing],)h(page)g(97\).)p eop end
-%%Page: 141 147
-TeXDict begin 141 146 bop 150 -116 a Ft(Chapter)30 b(10:)41
-b(Installing)31 b(Bash)2356 b(141)150 299 y Fs(--enable-restricted)630
+(Editing],)h(page)g(101\).)p eop end
+%%Page: 145 151
+TeXDict begin 145 150 bop 150 -116 a Ft(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(145)150 299 y Fs(--enable-restricted)630
408 y Ft(Include)41 b(supp)s(ort)f(for)i(a)g Fq(restricted)g(shell)p
Ft(.)75 b(If)42 b(this)f(is)h(enabled,)j(Bash,)g(when)c(called)630
518 y(as)f Fs(rbash)p Ft(,)h(en)m(ters)f(a)g(restricted)h(mo)s(de.)68
b(See)40 b(Section)h(6.10)g([The)f(Restricted)h(Shell],)630
-628 y(page)31 b(88,)h(for)e(a)g(description)h(of)f(restricted)h(mo)s
+628 y(page)31 b(92,)h(for)e(a)g(description)h(of)f(restricted)h(mo)s
(de.)150 787 y Fs(--enable-select)630 897 y Ft(Include)25
b(the)h Fs(select)f Ft(comp)s(ound)f(command,)j(whic)m(h)e(allo)m(ws)j
(the)e(generation)h(of)f(simple)630 1006 y(men)m(us)k(\(see)h(Section)g
2032 y Fs(--enable-strict-posix-de)o(faul)o(t)630 2142
y Ft(Mak)m(e)c(Bash)f Fl(posix)p Ft(-conforman)m(t)g(b)m(y)f(default)h
(\(see)g(Section)h(6.11)g([Bash)f(POSIX)e(Mo)s(de],)630
-2252 y(page)31 b(88\).)150 2411 y Fs(--enable-usg-echo-defaul)o(t)630
+2252 y(page)31 b(92\).)150 2411 y Fs(--enable-usg-echo-defaul)o(t)630
2521 y Ft(A)f(synon)m(ym)g(for)g Fs(--enable-xpg-echo-default)p
Ft(.)150 2680 y Fs(--enable-xpg-echo-defaul)o(t)630 2790
y Ft(Mak)m(e)c(the)f Fs(echo)e Ft(builtin)i(expand)f(bac)m
i(more)g(lik)m(e)h(the)f(v)m(ersion)g(sp)s(eci\014ed)630
3118 y(in)41 b(the)h(Single)g(Unix)f(Sp)s(eci\014cation,)k(v)m(ersion)e
(3.)74 b(See)42 b(Section)g(4.2)h([Bash)f(Builtins],)630
-3228 y(page)31 b(44,)h(for)e(a)g(description)h(of)f(the)h(escap)s(e)g
+3228 y(page)31 b(48,)h(for)e(a)g(description)h(of)f(the)h(escap)s(e)g
(sequences)f(that)h Fs(echo)f Ft(recognizes.)275 3387
y(The)23 b(\014le)i(`)p Fs(config-top.h)p Ft(')c(con)m(tains)26
b(C)e(Prepro)s(cessor)g(`)p Fs(#define)p Ft(')e(statemen)m(ts)k(for)f
b(the)g(commen)m(ts)g(asso)s(ciated)h(with)e(eac)m(h)i(de\014nition)e
(for)g(more)150 3716 y(information)c(ab)s(out)f(its)h(e\013ect.)p
eop end
-%%Page: 142 148
-TeXDict begin 142 147 bop eop end
-%%Page: 143 149
-TeXDict begin 143 148 bop 150 -116 a Ft(App)s(endix)29
-b(A:)h(Rep)s(orting)h(Bugs)2299 b(143)150 299 y Fo(App)t(endix)52
+%%Page: 146 152
+TeXDict begin 146 151 bop eop end
+%%Page: 147 153
+TeXDict begin 147 152 bop 150 -116 a Ft(App)s(endix)29
+b(A:)h(Rep)s(orting)h(Bugs)2299 b(147)150 299 y Fo(App)t(endix)52
b(A)81 b(Rep)t(orting)53 b(Bugs)150 533 y Ft(Please)33
b(rep)s(ort)e(all)h(bugs)f(y)m(ou)h(\014nd)e(in)i(Bash.)44
b(But)32 b(\014rst,)g(y)m(ou)g(should)e(mak)m(e)j(sure)e(that)h(it)g
(vides)f(for)g(\014ling)h(a)150 2291 y(bug)h(rep)s(ort.)275
2426 y(Please)h(send)f(all)h(rep)s(orts)f(concerning)g(this)h(man)m
(ual)f(to)h Fs(chet.ramey@case.edu)p Ft(.)p eop end
-%%Page: 144 150
-TeXDict begin 144 149 bop eop end
-%%Page: 145 151
-TeXDict begin 145 150 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 148 154
+TeXDict begin 148 153 bop eop end
+%%Page: 149 155
+TeXDict begin 149 154 bop 150 -116 a Ft(App)s(endix)29
b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
-b(The)f(Bourne)g(Shell)1258 b(145)150 141 y Fo(App)t(endix)58
+b(The)f(Bourne)g(Shell)1258 b(149)150 141 y Fo(App)t(endix)58
b(B)81 b(Ma)9 b(jor)54 b(Di\013erences)d(F)-13 b(rom)54
b(The)g(Bourne)1088 299 y(Shell)150 530 y Ft(Bash)26
b(implemen)m(ts)h(essen)m(tially)g(the)g(same)f(grammar,)h(parameter)f
Fl(posix)p Ft(-conforman)m(t,)g(ev)m(en)g(where)f(the)g
Fl(posix)g Ft(sp)s(eci\014cation)h(di\013ers)f(from)g(traditional)330
1431 y Fs(sh)e Ft(b)s(eha)m(vior)g(\(see)i(Section)f(6.11)h([Bash)e
-(POSIX)g(Mo)s(de],)h(page)g(88\).)225 1565 y Fp(\017)60
+(POSIX)g(Mo)s(de],)h(page)g(92\).)225 1565 y Fp(\017)60
b Ft(Bash)26 b(has)g(m)m(ulti-c)m(haracter)i(in)m(v)m(o)s(cation)g
(options)f(\(see)f(Section)h(6.1)g([In)m(v)m(oking)g(Bash],)h(page)e
-(75\).)225 1699 y Fp(\017)60 b Ft(Bash)28 b(has)g(command-line)h
-(editing)f(\(see)h(Chapter)f(8)g([Command)f(Line)h(Editing],)i(page)e
-(97\))i(and)330 1809 y(the)h Fs(bind)e Ft(builtin.)225
+(79\).)225 1699 y Fp(\017)60 b Ft(Bash)40 b(has)f(command-line)h
+(editing)g(\(see)h(Chapter)e(8)h([Command)f(Line)g(Editing],)k(page)d
+(101\))330 1809 y(and)30 b(the)g Fs(bind)g Ft(builtin.)225
1943 y Fp(\017)60 b Ft(Bash)46 b(pro)m(vides)g(a)g(programmable)g(w)m
(ord)f(completion)i(mec)m(hanism)f(\(see)h(Section)g(8.6)g([Pro-)330
-2052 y(grammable)39 b(Completion],)i(page)e(120\),)i(and)d(builtin)g
+2052 y(grammable)39 b(Completion],)i(page)e(124\),)i(and)d(builtin)g
(commands)f Fs(complete)p Ft(,)h Fs(compgen)p Ft(,)h(and)330
2162 y Fs(compopt)p Ft(,)29 b(to)i(manipulate)g(it.)225
2296 y Fp(\017)60 b Ft(Bash)26 b(has)f(command)h(history)f(\(see)i
(Section)f(9.1)h([Bash)f(History)h(F)-8 b(acilities],)30
-b(page)c(129\))i(and)d(the)330 2405 y Fs(history)k Ft(and)h
+b(page)c(133\))i(and)d(the)330 2405 y Fs(history)k Ft(and)h
Fs(fc)g Ft(builtins)g(to)h(manipulate)g(it.)42 b(The)30
b(Bash)h(history)g(list)g(main)m(tains)g(timestamp)330
2515 y(information)g(and)e(uses)h(the)h(v)-5 b(alue)31
b(to)f(displa)m(y)f(it.)225 2649 y Fp(\017)60 b Ft(Bash)48
b(implemen)m(ts)h Fs(csh)p Ft(-lik)m(e)g(history)f(expansion)g(\(see)h
(Section)g(9.3)h([History)f(In)m(teraction],)330 2759
-y(page)31 b(131\).)225 2892 y Fp(\017)60 b Ft(Bash)33
+y(page)31 b(135\).)225 2892 y Fp(\017)60 b Ft(Bash)33
b(has)g(one-dimensional)h(arra)m(y)f(v)-5 b(ariables)34
-b(\(see)g(Section)g(6.7)g([Arra)m(ys],)g(page)g(84\),)h(and)e(the)330
+b(\(see)g(Section)g(6.7)g([Arra)m(ys],)g(page)g(88\),)h(and)e(the)330
3002 y(appropriate)39 b(v)-5 b(ariable)40 b(expansions)f(and)g
(assignmen)m(t)h(syn)m(tax)g(to)g(use)f(them.)67 b(Sev)m(eral)40
b(of)g(the)330 3112 y(Bash)32 b(builtins)f(tak)m(e)j(options)e(to)h
Ft(comp)s(ound)g(command,)i(whic)m(h)f(allo)m(ws)i(the)f(generation)g
(of)g(simple)330 5340 y(men)m(us)f(\(see)h(Section)g(3.2.4.2)i
([Conditional)e(Constructs],)g(page)g(10\).)p eop end
-%%Page: 146 152
-TeXDict begin 146 151 bop 150 -116 a Ft(146)2527 b(Bash)31
+%%Page: 150 156
+TeXDict begin 150 155 bop 150 -116 a Ft(150)2527 b(Bash)31
b(Reference)g(Man)m(ual)225 299 y Fp(\017)60 b Ft(Bash)40
b(includes)g(the)g Fs([[)g Ft(comp)s(ound)e(command,)43
b(whic)m(h)c(mak)m(es)i(conditional)h(testing)f(part)f(of)330
b Ft(Bash)31 b(pro)m(vides)f(optional)h(case-insensitiv)m(e)i(matc)m
(hing)f(for)e(the)g Fs(case)g Ft(and)f Fs([[)h Ft(constructs.)225
789 y Fp(\017)60 b Ft(Bash)27 b(includes)g(brace)h(expansion)f(\(see)h
-(Section)g(3.5.1)i([Brace)e(Expansion],)g(page)g(20\))h(and)d(tilde)330
+(Section)g(3.5.1)i([Brace)e(Expansion],)g(page)g(21\))h(and)d(tilde)330
898 y(expansion)k(\(see)i(Section)f(3.5.2)h([Tilde)f(Expansion],)f
(page)h(21\).)225 1034 y Fp(\017)60 b Ft(Bash)24 b(implemen)m(ts)h
(command)e(aliases)j(and)d(the)i Fs(alias)d Ft(and)i
Fs(unalias)e Ft(builtins)h(\(see)i(Section)g(6.6)330
-1143 y([Aliases],)32 b(page)f(83\).)225 1279 y Fp(\017)60
+1143 y([Aliases],)32 b(page)f(87\).)225 1279 y Fp(\017)60
b Ft(Bash)32 b(pro)m(vides)g(shell)g(arithmetic,)i(the)e
Fs(\(\()g Ft(comp)s(ound)e(command)i(\(see)h(Section)f(3.2.4.2)j([Con-)
330 1388 y(ditional)d(Constructs],)e(page)i(10\),)g(and)e(arithmetic)i
(expansion)e(\(see)i(Section)f(6.5)h([Shell)f(Arith-)330
-1498 y(metic],)h(page)f(82\).)225 1633 y Fp(\017)60 b
+1498 y(metic],)h(page)f(86\).)225 1633 y Fp(\017)60 b
Ft(V)-8 b(ariables)31 b(presen)m(t)e(in)g(the)g(shell's)h(initial)g(en)
m(vironmen)m(t)g(are)g(automatically)i(exp)s(orted)d(to)h(c)m(hild)330
1743 y(pro)s(cesses.)38 b(The)23 b(Bourne)g(shell)g(do)s(es)g(not)g
b(alue)29 b(of)f Fs(var)p Ft(,)g(is)g(a)m(v)-5 b(ailable)31
b(\(see)e(Section)f(3.5.3)i([Shell)f(P)m(arameter)330
3406 y(Expansion],)h(page)h(22\).)225 3541 y Fp(\017)60
-b Ft(The)32 b(expansion)g Fs(${!)p Fi(prefix)p Fs(})p
-Fi(*)40 b Ft(expansion,)32 b(whic)m(h)g(expands)g(to)h(the)f(names)g
-(of)h(all)g(shell)f(v)-5 b(ari-)330 3651 y(ables)36 b(whose)f(names)h
-(b)s(egin)f(with)g Fq(pre\014x)6 b Ft(,)36 b(is)g(a)m(v)-5
-b(ailable)38 b(\(see)e(Section)h(3.5.3)g([Shell)f(P)m(arameter)330
+b Ft(The)32 b(expansion)g Fs(${!)p Fi(prefix)11 b Fs(*})29
+b Ft(expansion,)j(whic)m(h)g(expands)g(to)h(the)f(names)g(of)h(all)g
+(shell)f(v)-5 b(ari-)330 3651 y(ables)36 b(whose)f(names)h(b)s(egin)f
+(with)g Fq(pre\014x)6 b Ft(,)36 b(is)g(a)m(v)-5 b(ailable)38
+b(\(see)e(Section)h(3.5.3)g([Shell)f(P)m(arameter)330
3761 y(Expansion],)30 b(page)h(22\).)225 3896 y Fp(\017)60
b Ft(Bash)22 b(has)f Fq(indirect)j Ft(v)-5 b(ariable)22
b(expansion)g(using)f Fs(${!word})e Ft(\(see)k(Section)f(3.5.3)i
Fi(num)11 b Fs(})p Ft(.)225 4276 y Fp(\017)60 b Ft(The)27
b Fl(posix)g Fs($\(\))g Ft(form)g(of)h(command)g(substitution)f(is)h
(implemen)m(ted)g(\(see)h(Section)f(3.5.4)i([Com-)330
-4386 y(mand)38 b(Substitution],)k(page)e(25\),)j(and)38
+4386 y(mand)38 b(Substitution],)k(page)e(27\),)j(and)38
b(preferred)g(to)i(the)g(Bourne)f(shell's)h Fs(``)e Ft(\(whic)m(h)i(is)
f(also)330 4495 y(implemen)m(ted)31 b(for)f(bac)m(kw)m(ards)h
(compatibilit)m(y\).)225 4631 y Fp(\017)60 b Ft(Bash)31
b(has)f(pro)s(cess)g(substitution)g(\(see)h(Section)g(3.5.6)h([Pro)s
-(cess)f(Substitution],)f(page)h(25\).)225 4766 y Fp(\017)60
+(cess)f(Substitution],)f(page)h(28\).)225 4766 y Fp(\017)60
b Ft(Bash)55 b(automatically)j(assigns)e(v)-5 b(ariables)55
b(that)h(pro)m(vide)f(information)h(ab)s(out)f(the)g(curren)m(t)330
4876 y(user)40 b(\()p Fs(UID)p Ft(,)i Fs(EUID)p Ft(,)g(and)e
4985 y Fs(HOSTNAME)p Ft(\),)55 b(and)c(the)g(instance)h(of)g(Bash)f
(that)h(is)f(running)f(\()p Fs(BASH)p Ft(,)56 b Fs(BASH_VERSION)p
Ft(,)e(and)330 5095 y Fs(BASH_VERSINFO)p Ft(\).)37 b(See)31
-b(Section)g(5.2)h([Bash)e(V)-8 b(ariables],)33 b(page)e(65,)g(for)f
+b(Section)g(5.2)h([Bash)e(V)-8 b(ariables],)33 b(page)e(69,)g(for)f
(details.)225 5230 y Fp(\017)60 b Ft(The)44 b Fs(IFS)f
Ft(v)-5 b(ariable)45 b(is)f(used)f(to)i(split)f(only)g(the)g(results)g
(of)h(expansion,)i(not)d(all)h(w)m(ords)f(\(see)330 5340
-y(Section)29 b(3.5.7)h([W)-8 b(ord)29 b(Splitting],)h(page)f(26\).)41
+y(Section)29 b(3.5.7)h([W)-8 b(ord)29 b(Splitting],)h(page)f(28\).)41
b(This)28 b(closes)h(a)g(longstanding)g(shell)f(securit)m(y)h(hole.)p
eop end
-%%Page: 147 153
-TeXDict begin 147 152 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 151 157
+TeXDict begin 151 156 bop 150 -116 a Ft(App)s(endix)29
b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
-b(The)f(Bourne)g(Shell)1258 b(147)225 299 y Fp(\017)60
+b(The)f(Bourne)g(Shell)1258 b(151)225 299 y Fp(\017)60
b Ft(Bash)38 b(implemen)m(ts)g(the)g(full)g(set)g(of)g
Fl(posix)f Ft(\014lename)h(expansion)g(op)s(erators,)i(including)d
Fq(c)m(har-)330 408 y(acter)i(classes)t Ft(,)h Fq(equiv)-5
b(alence)39 b(classes)t Ft(,)h(and)d Fq(collating)j(sym)m(b)s(ols)g
Ft(\(see)f(Section)f(3.5.8)h([Filename)330 518 y(Expansion],)30
-b(page)h(26\).)225 660 y Fp(\017)60 b Ft(Bash)35 b(implemen)m(ts)g
+b(page)h(29\).)225 660 y Fp(\017)60 b Ft(Bash)35 b(implemen)m(ts)g
(extended)g(pattern)g(matc)m(hing)h(features)f(when)f(the)h
Fs(extglob)d Ft(shell)j(option)330 769 y(is)30 b(enabled)h(\(see)g
-(Section)g(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)g(page)f(27\).)225
+(Section)g(3.5.8.1)i([P)m(attern)f(Matc)m(hing],)g(page)f(29\).)225
911 y Fp(\017)60 b Ft(It)22 b(is)g(p)s(ossible)g(to)h(ha)m(v)m(e)g(a)f
(v)-5 b(ariable)23 b(and)f(a)g(function)g(with)g(the)g(same)g(name;)j
Fs(sh)d Ft(do)s(es)g(not)g(separate)330 1021 y(the)31
(cal)g(v)-5 b(ariables)30 b(using)f(the)g Fs(local)f
Ft(builtin,)i(and)e(th)m(us)330 1272 y(useful)i(recursiv)m(e)g
(functions)g(ma)m(y)h(b)s(e)f(written)g(\(see)i(Section)f(4.2)g([Bash)g
-(Builtins],)g(page)h(44\).)225 1414 y Fp(\017)60 b Ft(V)-8
+(Builtins],)g(page)h(48\).)225 1414 y Fp(\017)60 b Ft(V)-8
b(ariable)25 b(assignmen)m(ts)g(preceding)e(commands)h(a\013ect)h(only)
f(that)g(command,)h(ev)m(en)f(builtins)g(and)330 1524
y(functions)36 b(\(see)h(Section)g(3.7.4)h([En)m(vironmen)m(t],)h(page)
-e(34\).)60 b(In)35 b Fs(sh)p Ft(,)j(all)f(v)-5 b(ariable)37
+e(37\).)60 b(In)35 b Fs(sh)p Ft(,)j(all)f(v)-5 b(ariable)37
b(assignmen)m(ts)330 1633 y(preceding)30 b(commands)g(are)h(global)h
(unless)d(the)i(command)f(is)h(executed)g(from)f(the)g(\014le)h
(system.)225 1775 y Fp(\017)60 b Ft(Bash)44 b(p)s(erforms)e(\014lename)
i(expansion)f(on)h(\014lenames)g(sp)s(eci\014ed)f(as)h(op)s(erands)e
(to)j(input)e(and)330 1885 y(output)30 b(redirection)h(op)s(erators)g
-(\(see)g(Section)g(3.6)h([Redirections],)g(page)f(28\).)225
+(\(see)g(Section)g(3.6)h([Redirections],)g(page)f(31\).)225
2027 y Fp(\017)60 b Ft(Bash)29 b(con)m(tains)h(the)f(`)p
Fs(<>)p Ft(')f(redirection)i(op)s(erator,)f(allo)m(wing)i(a)e(\014le)g
(to)g(b)s(e)f(op)s(ened)g(for)h(b)s(oth)f(read-)330 2136
y(ing)35 b(and)f(writing,)i(and)e(the)h(`)p Fs(&>)p Ft(')g(redirection)
g(op)s(erator,)h(for)f(directing)g(standard)f(output)h(and)330
2246 y(standard)30 b(error)g(to)h(the)f(same)h(\014le)f(\(see)i
-(Section)f(3.6)g([Redirections],)h(page)g(28\).)225 2388
+(Section)f(3.6)g([Redirections],)h(page)g(31\).)225 2388
y Fp(\017)60 b Ft(Bash)21 b(includes)f(the)h(`)p Fs(<<<)p
Ft(')g(redirection)g(op)s(erator,)i(allo)m(wing)g(a)e(string)f(to)i(b)s
(e)e(used)g(as)h(the)g(standard)330 2497 y(input)29 b(to)j(a)e
2890 y Fp(\017)60 b Ft(Bash)25 b(treats)h(a)f(n)m(um)m(b)s(er)e(of)i
(\014lenames)g(sp)s(ecially)g(when)f(they)h(are)g(used)f(in)g
(redirection)i(op)s(erators)330 3000 y(\(see)31 b(Section)h(3.6)f
-([Redirections],)h(page)f(28\).)225 3142 y Fp(\017)60
+([Redirections],)h(page)f(31\).)225 3142 y Fp(\017)60
b Ft(Bash)33 b(can)f(op)s(en)g(net)m(w)m(ork)i(connections)f(to)h
(arbitrary)e(mac)m(hines)h(and)f(services)h(with)f(the)h(redi-)330
3251 y(rection)e(op)s(erators)g(\(see)g(Section)g(3.6)h
-([Redirections],)g(page)f(28\).)225 3393 y Fp(\017)60
+([Redirections],)g(page)f(31\).)225 3393 y Fp(\017)60
b Ft(The)29 b Fs(noclobber)e Ft(option)j(is)g(a)m(v)-5
b(ailable)32 b(to)e(a)m(v)m(oid)h(o)m(v)m(erwriting)g(existing)g
(\014les)e(with)h(output)f(redi-)330 3503 y(rection)39
-b(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)i(page)e(54\).)66
+b(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)i(page)e(58\).)66
b(The)38 b(`)p Fs(>|)p Ft(')h(redirection)g(op)s(erator)330
3612 y(ma)m(y)31 b(b)s(e)f(used)f(to)i(o)m(v)m(erride)h
Fs(noclobber)p Ft(.)225 3754 y Fp(\017)60 b Ft(The)34
b(Bash)g Fs(cd)g Ft(and)f Fs(pwd)g Ft(builtins)h(\(see)h(Section)g(4.1)
-g([Bourne)g(Shell)f(Builtins],)h(page)g(37\))h(eac)m(h)330
+g([Bourne)g(Shell)f(Builtins],)h(page)g(41\))h(eac)m(h)330
3864 y(tak)m(e)c(`)p Fs(-L)p Ft(')e(and)g(`)p Fs(-P)p
Ft(')g(options)h(to)g(switc)m(h)g(b)s(et)m(w)m(een)g(logical)i(and)c
(ph)m(ysical)i(mo)s(des.)225 4006 y Fp(\017)60 b Ft(Bash)25
4115 y(that)34 b(builtin's)f(functionalit)m(y)h(within)f(the)g
(function)g(via)h(the)f Fs(builtin)f Ft(and)g Fs(command)g
Ft(builtins)330 4225 y(\(see)f(Section)h(4.2)f([Bash)g(Builtins],)g
-(page)g(44\).)225 4367 y Fp(\017)60 b Ft(The)35 b Fs(command)e
+(page)g(48\).)225 4367 y Fp(\017)60 b Ft(The)35 b Fs(command)e
Ft(builtin)i(allo)m(ws)i(selectiv)m(e)h(disabling)e(of)f(functions)g
(when)g(command)g(lo)s(okup)g(is)330 4476 y(p)s(erformed)29
-b(\(see)i(Section)g(4.2)h([Bash)f(Builtins],)g(page)g(44\).)225
+b(\(see)i(Section)g(4.2)h([Bash)f(Builtins],)g(page)g(48\).)225
4618 y Fp(\017)60 b Ft(Individual)23 b(builtins)g(ma)m(y)i(b)s(e)e
(enabled)h(or)g(disabled)g(using)f(the)h Fs(enable)f
Ft(builtin)g(\(see)i(Section)g(4.2)330 4728 y([Bash)31
-b(Builtins],)g(page)g(44\).)225 4869 y Fp(\017)60 b Ft(The)26
+b(Builtins],)g(page)g(48\).)225 4869 y Fp(\017)60 b Ft(The)26
b(Bash)h Fs(exec)e Ft(builtin)h(tak)m(es)i(additional)f(options)g(that)
g(allo)m(w)h(users)d(to)j(con)m(trol)g(the)e(con)m(ten)m(ts)330
4979 y(of)35 b(the)f(en)m(vironmen)m(t)h(passed)f(to)h(the)g(executed)g
(command,)h(and)d(what)i(the)f(zeroth)h(argumen)m(t)330
5089 y(to)c(the)g(command)f(is)g(to)h(b)s(e)f(\(see)h(Section)h(4.1)f
-([Bourne)f(Shell)h(Builtins],)g(page)g(37\).)225 5230
+([Bourne)f(Shell)h(Builtins],)g(page)g(41\).)225 5230
y Fp(\017)60 b Ft(Shell)29 b(functions)g(ma)m(y)h(b)s(e)f(exp)s(orted)g
(to)h(c)m(hildren)f(via)h(the)g(en)m(vironmen)m(t)g(using)f
Fs(export)f(-f)h Ft(\(see)330 5340 y(Section)i(3.3)h([Shell)e(F)-8
b(unctions],)32 b(page)f(16\).)p eop end
-%%Page: 148 154
-TeXDict begin 148 153 bop 150 -116 a Ft(148)2527 b(Bash)31
+%%Page: 152 158
+TeXDict begin 152 157 bop 150 -116 a Ft(152)2527 b(Bash)31
b(Reference)g(Man)m(ual)225 299 y Fp(\017)60 b Ft(The)37
b(Bash)g Fs(export)p Ft(,)h Fs(readonly)p Ft(,)f(and)f
Fs(declare)g Ft(builtins)h(can)g(tak)m(e)i(a)f(`)p Fs(-f)p
(an)h(arbitrary)f(\014lename,)330 874 y(ev)m(en)30 b(when)e(that)h
(\014lename)g(cannot)h(b)s(e)e(found)g(b)m(y)h(searc)m(hing)g(the)g
Fs($PATH)p Ft(,)g(using)f(`)p Fs(hash)h(-p)p Ft(')g(\(see)330
-984 y(Section)i(4.1)h([Bourne)e(Shell)g(Builtins],)h(page)h(37\).)225
+984 y(Section)i(4.1)h([Bourne)e(Shell)g(Builtins],)h(page)h(41\).)225
1121 y Fp(\017)60 b Ft(Bash)27 b(includes)f(a)i Fs(help)d
Ft(builtin)i(for)f(quic)m(k)h(reference)h(to)f(shell)g(facilities)i
-(\(see)f(Section)g(4.2)g([Bash)330 1230 y(Builtins],)j(page)g(44\).)225
+(\(see)f(Section)g(4.2)g([Bash)330 1230 y(Builtins],)j(page)g(48\).)225
1367 y Fp(\017)60 b Ft(The)42 b Fs(printf)g Ft(builtin)g(is)h(a)m(v)-5
b(ailable)45 b(to)f(displa)m(y)f(formatted)g(output)g(\(see)h(Section)g
-(4.2)g([Bash)330 1477 y(Builtins],)31 b(page)g(44\).)225
+(4.2)g([Bash)330 1477 y(Builtins],)31 b(page)g(48\).)225
1614 y Fp(\017)60 b Ft(The)26 b(Bash)h Fs(read)f Ft(builtin)g(\(see)i
-(Section)g(4.2)g([Bash)f(Builtins],)h(page)g(44\))g(will)f(read)g(a)g
+(Section)g(4.2)g([Bash)f(Builtins],)h(page)g(48\))g(will)f(read)g(a)g
(line)g(ending)330 1724 y(in)f(`)p Fs(\\)p Ft(')h(with)f(the)g(`)p
Fs(-r)p Ft(')h(option,)h(and)d(will)i(use)f(the)h Fs(REPLY)e
Ft(v)-5 b(ariable)27 b(as)g(a)f(default)h(if)f(no)h(non-option)330
2628 y Fp(\017)60 b Ft(The)33 b Fs(return)e Ft(builtin)i(ma)m(y)g(b)s
(e)g(used)f(to)i(ab)s(ort)f(execution)h(of)f(scripts)g(executed)h(with)
f(the)g Fs(.)g Ft(or)330 2737 y Fs(source)c Ft(builtins)g(\(see)j
-(Section)f(4.1)g([Bourne)g(Shell)f(Builtins],)h(page)g(37\).)225
+(Section)f(4.1)g([Bourne)g(Shell)f(Builtins],)h(page)g(41\).)225
2874 y Fp(\017)60 b Ft(Bash)43 b(includes)g(the)g Fs(shopt)f
Ft(builtin,)k(for)d(\014ner)f(con)m(trol)j(of)e(shell)h(optional)g
(capabilities)h(\(see)330 2984 y(Section)c(4.3.2)g([The)f(Shopt)f
-(Builtin],)k(page)d(58\),)k(and)39 b(allo)m(ws)i(these)f(options)h(to)f
+(Builtin],)k(page)d(62\),)k(and)39 b(allo)m(ws)i(these)f(options)h(to)f
(b)s(e)f(set)i(and)330 3093 y(unset)30 b(at)h(shell)g(in)m(v)m(o)s
(cation)h(\(see)f(Section)h(6.1)f([In)m(v)m(oking)g(Bash],)g(page)h
-(75\).)225 3230 y Fp(\017)60 b Ft(Bash)45 b(has)f(m)m(uc)m(h)g(more)h
+(79\).)225 3230 y Fp(\017)60 b Ft(Bash)45 b(has)f(m)m(uc)m(h)g(more)h
(optional)h(b)s(eha)m(vior)e(con)m(trollable)j(with)e(the)f
Fs(set)g Ft(builtin)g(\(see)h(Sec-)330 3340 y(tion)31
-b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(54\).)225 3477
+b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(58\).)225 3477
y Fp(\017)60 b Ft(The)45 b(`)p Fs(-x)p Ft(')g(\(`)p Fs(xtrace)p
Ft('\))g(option)h(displa)m(ys)g(commands)f(other)h(than)f(simple)h
(commands)f(when)330 3587 y(p)s(erforming)29 b(an)h(execution)i(trace)g
-(\(see)f(Section)g(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(54\).)225
+(\(see)f(Section)g(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(58\).)225
3724 y Fp(\017)60 b Ft(The)28 b Fs(test)g Ft(builtin)h(\(see)h(Section)
-f(4.1)h([Bourne)f(Shell)g(Builtins],)h(page)g(37\))g(is)f(sligh)m(tly)h
+f(4.1)h([Bourne)f(Shell)g(Builtins],)h(page)g(41\))g(is)f(sligh)m(tly)h
(di\013eren)m(t,)330 3833 y(as)23 b(it)g(implemen)m(ts)f(the)h
Fl(posix)f Ft(algorithm,)j(whic)m(h)d(sp)s(eci\014es)g(the)h(b)s(eha)m
(vior)f(based)g(on)h(the)f(n)m(um)m(b)s(er)330 3943 y(of)31
Fs(.)f Ft(or)g Fs(source)f Ft(builtins\).)39 b(This)26
b(supp)s(orts)330 4299 y(the)31 b(bash)e(debugger.)225
4436 y Fp(\017)60 b Ft(The)42 b Fs(trap)f Ft(builtin)h(\(see)i(Section)
-f(4.1)h([Bourne)e(Shell)g(Builtins],)47 b(page)c(37\))h(allo)m(ws)g(a)e
+f(4.1)h([Bourne)e(Shell)g(Builtins],)47 b(page)c(41\))h(allo)m(ws)g(a)e
Fs(DEBUG)330 4545 y Ft(pseudo-signal)c(sp)s(eci\014cation,)i(similar)e
(to)g Fs(EXIT)p Ft(.)62 b(Commands)36 b(sp)s(eci\014ed)h(with)g(a)h
Fs(DEBUG)e Ft(trap)330 4655 y(are)k(executed)g(b)s(efore)f(ev)m(ery)h
Fs(extdebug)f Ft(shell)i(option)g(has)f(additional)h(e\013ects)h(on)f
(the)g Fs(DEBUG)e Ft(trap.)330 5230 y(The)21 b Fs(trap)e
Ft(builtin)i(\(see)h(Section)g(4.1)g([Bourne)f(Shell)g(Builtins],)j
-(page)e(37\))g(allo)m(ws)g(an)f Fs(ERR)f Ft(pseudo-)330
+(page)e(41\))g(allo)m(ws)g(an)f Fs(ERR)f Ft(pseudo-)330
5340 y(signal)30 b(sp)s(eci\014cation,)h(similar)f(to)g
Fs(EXIT)f Ft(and)g Fs(DEBUG)p Ft(.)39 b(Commands)28 b(sp)s(eci\014ed)h
(with)g(an)g Fs(ERR)g Ft(trap)p eop end
-%%Page: 149 155
-TeXDict begin 149 154 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 153 159
+TeXDict begin 153 158 bop 150 -116 a Ft(App)s(endix)29
b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
-b(The)f(Bourne)g(Shell)1258 b(149)330 299 y(are)40 b(executed)g(after)g
+b(The)f(Bourne)g(Shell)1258 b(153)330 299 y(are)40 b(executed)g(after)g
(a)f(simple)h(command)f(fails,)j(with)d(a)h(few)f(exceptions.)68
b(The)39 b Fs(ERR)g Ft(trap)g(is)330 408 y(not)g(inherited)f(b)m(y)h
(shell)g(functions)f(unless)g(the)h Fs(-o)29 b(errtrace)37
b Ft(option)i(to)g(the)g Fs(set)f Ft(builtin)g(is)330
518 y(enabled.)330 650 y(The)g Fs(trap)g Ft(builtin)h(\(see)g(Section)h
-(4.1)g([Bourne)f(Shell)g(Builtins],)i(page)f(37\))g(allo)m(ws)g(a)g
+(4.1)g([Bourne)f(Shell)g(Builtins],)i(page)f(41\))g(allo)m(ws)g(a)g
Fs(RETURN)330 760 y Ft(pseudo-signal)35 b(sp)s(eci\014cation,)j
(similar)d(to)h Fs(EXIT)e Ft(and)g Fs(DEBUG)p Ft(.)54
b(Commands)34 b(sp)s(eci\014ed)g(with)h(an)330 869 y
b Ft(The)30 b(Bash)g Fs(type)f Ft(builtin)h(is)g(more)g(extensiv)m(e)i
(and)d(giv)m(es)j(more)e(information)h(ab)s(out)f(the)g(names)330
1440 y(it)h(\014nds)e(\(see)i(Section)g(4.2)h([Bash)e(Builtins],)i
-(page)f(44\).)225 1571 y Fp(\017)60 b Ft(The)34 b(Bash)h
+(page)f(48\).)225 1571 y Fp(\017)60 b Ft(The)34 b(Bash)h
Fs(umask)e Ft(builtin)h(p)s(ermits)g(a)g(`)p Fs(-p)p
Ft(')h(option)g(to)g(cause)g(the)g(output)f(to)h(b)s(e)f(displa)m(y)m
(ed)h(in)330 1681 y(the)g(form)g(of)g(a)h Fs(umask)e
Ft(command)h(that)g(ma)m(y)h(b)s(e)f(reused)f(as)h(input)g(\(see)h
(Section)g(4.1)g([Bourne)330 1791 y(Shell)30 b(Builtins],)h(page)h
-(37\).)225 1923 y Fp(\017)60 b Ft(Bash)34 b(implemen)m(ts)h(a)g
+(41\).)225 1923 y Fp(\017)60 b Ft(Bash)34 b(implemen)m(ts)h(a)g
Fs(csh)p Ft(-lik)m(e)g(directory)f(stac)m(k,)j(and)d(pro)m(vides)g(the)
g Fs(pushd)p Ft(,)g Fs(popd)p Ft(,)g(and)g Fs(dirs)330
2032 y Ft(builtins)g(to)i(manipulate)f(it)h(\(see)f(Section)h(6.8)g
-([The)f(Directory)h(Stac)m(k],)i(page)d(85\).)56 b(Bash)35
+([The)f(Directory)h(Stac)m(k],)i(page)d(89\).)56 b(Bash)35
b(also)330 2142 y(mak)m(es)c(the)g(directory)g(stac)m(k)g(visible)g(as)
g(the)f(v)-5 b(alue)31 b(of)g(the)f Fs(DIRSTACK)f Ft(shell)h(v)-5
b(ariable.)225 2274 y Fp(\017)60 b Ft(Bash)28 b(in)m(terprets)h(sp)s
(ecial)g(bac)m(kslash-escap)s(ed)g(c)m(haracters)g(in)f(the)h(prompt)e
(strings)h(when)f(in)m(ter-)330 2383 y(activ)m(e)33 b(\(see)e(Section)g
-(6.9)h([Con)m(trolling)f(the)g(Prompt],)f(page)h(87\).)225
+(6.9)h([Con)m(trolling)f(the)g(Prompt],)f(page)h(91\).)225
2515 y Fp(\017)60 b Ft(The)46 b(Bash)h(restricted)g(mo)s(de)f(is)h
(more)f(useful)g(\(see)h(Section)h(6.10)g([The)e(Restricted)i(Shell],)
-330 2625 y(page)31 b(88\);)h(the)f(SVR4.2)g(shell)f(restricted)h(mo)s
+330 2625 y(page)31 b(92\);)h(the)f(SVR4.2)g(shell)f(restricted)h(mo)s
(de)f(is)h(to)s(o)g(limited.)225 2757 y Fp(\017)60 b
Ft(The)30 b Fs(disown)f Ft(builtin)h(can)h(remo)m(v)m(e)h(a)f(job)f
(from)g(the)h(in)m(ternal)g(shell)g(job)f(table)i(\(see)f(Section)h
-(7.2)330 2866 y([Job)h(Con)m(trol)h(Builtins],)g(page)g(94\))h(or)e
+(7.2)330 2866 y([Job)h(Con)m(trol)h(Builtins],)g(page)g(98\))h(or)e
(suppress)e(the)i(sending)g(of)g Fs(SIGHUP)e Ft(to)j(a)g(job)f(when)f
(the)330 2976 y(shell)f(exits)g(as)f(the)h(result)f(of)h(a)f
Fs(SIGHUP)p Ft(.)225 3108 y Fp(\017)60 b Ft(Bash)31 b(includes)f(a)g(n)
Fs(TIMEOUT)f Ft(v)-5 b(ariable)31 b(lik)m(e)h(Bash)e(uses)g
Fs(TMOUT)p Ft(.)150 3900 y(More)h(features)g(unique)e(to)i(Bash)g(ma)m
(y)g(b)s(e)f(found)f(in)h(Chapter)f(6)i([Bash)g(F)-8
-b(eatures],)32 b(page)f(75.)150 4127 y Fr(B.1)67 b(Implemen)l(tation)48
+b(eatures],)32 b(page)f(79.)150 4127 y Fr(B.1)67 b(Implemen)l(tation)48
b(Di\013erences)e(F)-11 b(rom)44 b(The)h(SVR4.2)g(Shell)150
4287 y Ft(Since)33 b(Bash)h(is)f(a)g(completely)i(new)e(implemen)m
(tation,)j(it)e(do)s(es)e(not)i(su\013er)e(from)h(man)m(y)g(of)h(the)f
(with)g Fs(SIGSEGV)e Ft(blo)s(c)m(k)m(ed)k(\(e.g.,)h(b)m(y)d(using)330
5340 y(the)31 b Fs(system\(\))d Ft(C)i(library)g(function)g(call\),)i
(it)f(misb)s(eha)m(v)m(es)g(badly)-8 b(.)p eop end
-%%Page: 150 156
-TeXDict begin 150 155 bop 150 -116 a Ft(150)2527 b(Bash)31
+%%Page: 154 160
+TeXDict begin 154 159 bop 150 -116 a Ft(154)2527 b(Bash)31
b(Reference)g(Man)m(ual)225 299 y Fp(\017)60 b Ft(In)26
b(a)i(questionable)g(attempt)h(at)f(securit)m(y)-8 b(,)29
b(the)e(SVR4.2)h(shell,)g(when)f(in)m(v)m(ok)m(ed)h(without)g(the)f(`)p
b Ft(The)30 b(SVR4.2)h(shell)g(b)s(eha)m(v)m(es)f(di\013eren)m(tly)h
(when)f(in)m(v)m(ok)m(ed)i(as)e Fs(jsh)g Ft(\(it)h(turns)e(on)h(job)g
(con)m(trol\).)p eop end
-%%Page: 151 157
-TeXDict begin 151 156 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 155 161
+TeXDict begin 155 160 bop 150 -116 a Ft(App)s(endix)29
b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
-b(151)150 299 y Fo(App)t(endix)52 b(C)81 b(GNU)54 b(F)-13
+b(155)150 299 y Fo(App)t(endix)52 b(C)81 b(GNU)54 b(F)-13
b(ree)53 b(Do)t(cumen)l(tation)e(License)1359 502 y Ft(V)-8
b(ersion)31 b(1.3,)g(3)g(No)m(v)m(em)m(b)s(er)h(2008)390
635 y(Cop)m(yrigh)m(t)842 632 y(c)817 635 y Fp(\015)e
5340 y(b)s(eing)e(those)h(of)g(In)m(v)-5 b(arian)m(t)27
b(Sections,)i(in)d(the)h(notice)h(that)f(sa)m(ys)g(that)g(the)g(Do)s
(cumen)m(t)g(is)g(released)p eop end
-%%Page: 152 158
-TeXDict begin 152 157 bop 150 -116 a Ft(152)2527 b(Bash)31
+%%Page: 156 162
+TeXDict begin 156 161 bop 150 -116 a Ft(156)2527 b(Bash)31
b(Reference)g(Man)m(ual)330 299 y(under)26 b(this)i(License.)40
b(If)27 b(a)h(section)h(do)s(es)f(not)f(\014t)h(the)g(ab)s(o)m(v)m(e)h
(de\014nition)e(of)h(Secondary)f(then)h(it)g(is)330 408
(and)f(has)h(no)330 5189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h
(this)f(License.)199 5340 y(2.)61 b(VERBA)-8 b(TIM)31
b(COPYING)p eop end
-%%Page: 153 159
-TeXDict begin 153 158 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 157 163
+TeXDict begin 157 162 bop 150 -116 a Ft(App)s(endix)29
b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
-b(153)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
+b(157)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
(the)g(Do)s(cumen)m(t)h(in)f(an)m(y)g(medium,)h(either)g(commercially)h
(or)330 408 y(noncommercially)-8 b(,)48 b(pro)m(vided)42
b(that)h(this)f(License,)47 b(the)42 b(cop)m(yrigh)m(t)i(notices,)j
5340 y(Do)s(cumen)m(t,)j(and)d(from)g(those)i(of)f(previous)f(v)m
(ersions)h(\(whic)m(h)g(should,)g(if)g(there)g(w)m(ere)g(an)m(y)-8
b(,)p eop end
-%%Page: 154 160
-TeXDict begin 154 159 bop 150 -116 a Ft(154)2527 b(Bash)31
+%%Page: 158 164
+TeXDict begin 158 163 bop 150 -116 a Ft(158)2527 b(Bash)31
b(Reference)g(Man)m(ual)510 299 y(b)s(e)g(listed)h(in)f(the)g(History)h
(section)g(of)g(the)f(Do)s(cumen)m(t\).)45 b(Y)-8 b(ou)32
b(ma)m(y)g(use)f(the)g(same)h(title)h(as)510 408 y(a)e(previous)f(v)m
(designate)h(some)e(or)h(all)g(of)f(these)h(sections)h(as)e(in)m(v)-5
b(arian)m(t.)48 b(T)-8 b(o)33 b(do)f(this,)h(add)f(their)p
eop end
-%%Page: 155 161
-TeXDict begin 155 160 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 159 165
+TeXDict begin 159 164 bop 150 -116 a Ft(App)s(endix)29
b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
-b(155)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
+b(159)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
b(arian)m(t)36 b(Sections)g(in)f(the)h(Mo)s(di\014ed)f(V)-8
b(ersion's)36 b(license)g(notice.)57 b(These)330 408
y(titles)32 b(m)m(ust)e(b)s(e)g(distinct)h(from)e(an)m(y)i(other)g
5230 y(do)s(cumen)m(t,)d(and)f(follo)m(w)i(this)e(License)h(in)g(all)g
(other)g(resp)s(ects)f(regarding)h(v)m(erbatim)g(cop)m(ying)h(of)330
5340 y(that)d(do)s(cumen)m(t.)p eop end
-%%Page: 156 162
-TeXDict begin 156 161 bop 150 -116 a Ft(156)2527 b(Bash)31
+%%Page: 160 166
+TeXDict begin 160 165 bop 150 -116 a Ft(160)2527 b(Bash)31
b(Reference)g(Man)m(ual)199 299 y(7.)61 b(A)m(GGREGA)-8
b(TION)32 b(WITH)e(INDEPENDENT)h(W)m(ORKS)330 441 y(A)d(compilation)i
(of)e(the)g(Do)s(cumen)m(t)h(or)f(its)g(deriv)-5 b(ativ)m(es)30
(reinstated,)i(receipt)f(of)f(a)g(cop)m(y)h(of)f(some)h(or)f(all)h(of)f
(the)330 5340 y(same)31 b(material)h(do)s(es)e(not)g(giv)m(e)i(y)m(ou)f
(an)m(y)g(righ)m(ts)f(to)i(use)e(it.)p eop end
-%%Page: 157 163
-TeXDict begin 157 162 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 161 167
+TeXDict begin 161 166 bop 150 -116 a Ft(App)s(endix)29
b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
-b(157)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)
+b(161)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)
330 433 y(The)41 b(F)-8 b(ree)43 b(Soft)m(w)m(are)f(F)-8
b(oundation)43 b(ma)m(y)f(publish)e(new,)k(revised)d(v)m(ersions)h(of)g
(the)g(GNU)g(F)-8 b(ree)330 543 y(Do)s(cumen)m(tation)34
g(under)330 3895 y(CC-BY-SA)30 b(on)g(the)h(same)f(site)h(at)g(an)m(y)g
(time)g(b)s(efore)e(August)h(1,)h(2009,)h(pro)m(vided)e(the)g(MMC)h(is)
330 4005 y(eligible)h(for)e(relicensing.)p eop end
-%%Page: 158 164
-TeXDict begin 158 163 bop 150 -116 a Ft(158)2527 b(Bash)31
+%%Page: 162 168
+TeXDict begin 162 167 bop 150 -116 a Ft(162)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fr(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g
(this)h(License)f(for)g(y)l(our)g(do)t(cumen)l(ts)150
458 y Ft(T)-8 b(o)35 b(use)f(this)h(License)g(in)f(a)h(do)s(cumen)m(t)g
b(as)g(the)g(GNU)150 2331 y(General)31 b(Public)f(License,)i(to)f(p)s
(ermit)e(their)i(use)f(in)g(free)g(soft)m(w)m(are.)p
eop end
-%%Page: 159 165
-TeXDict begin 159 164 bop 150 -116 a Ft(App)s(endix)29
-b(D:)i(Indexes)2623 b(159)150 299 y Fo(App)t(endix)52
+%%Page: 163 169
+TeXDict begin 163 168 bop 150 -116 a Ft(App)s(endix)29
+b(D:)i(Indexes)2623 b(163)150 299 y Fo(App)t(endix)52
b(D)81 b(Indexes)150 631 y Fr(D.1)68 b(Index)45 b(of)g(Shell)g(Builtin)
g(Commands)150 868 y(.)150 984 y Fe(.)13 b Fc(:)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(:)g
-(:)h(:)f(:)g(:)g(:)39 b Fb(37)150 1218 y Fr(:)150 1335
+(:)h(:)f(:)g(:)g(:)39 b Fb(41)150 1218 y Fr(:)150 1335
y Fe(:)13 b Fc(:)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(:)g(:)h(:)f(:)g(:)g(:)39
-b Fb(37)150 1579 y Fr([)150 1695 y Fe([)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g
+b Fb(41)150 1579 y Fr([)150 1695 y Fe([)13 b Fc(:)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(:)g
-(:)h(:)f(:)g(:)g(:)39 b Fb(41)150 1938 y Fr(A)150 2055
+(:)h(:)f(:)g(:)g(:)39 b Fb(45)150 1938 y Fr(A)150 2055
y Fe(alias)21 b Fc(:)13 b(:)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(:)46 b Fb(44)150
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Fb(48)150
2289 y Fr(B)150 2405 y Fe(bg)10 b Fc(:)k(:)f(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)37 b Fb(94)150 2493 y Fe(bind)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
+g(:)37 b Fb(98)150 2493 y Fe(bind)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(44)150 2580 y Fe(break)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
+49 b Fb(48)150 2580 y Fe(break)21 b Fc(:)13 b(:)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(:)46
-b Fb(37)150 2668 y Fe(builtin)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g
+b Fb(41)150 2668 y Fe(builtin)15 b Fc(:)f(:)f(:)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(:)41
-b Fb(45)150 2902 y Fr(C)150 3019 y Fe(caller)17 b Fc(:)e(:)e(:)g(:)g(:)
+b Fb(49)150 2902 y Fr(C)150 3019 y Fe(caller)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(45)150 3106 y Fe(cd)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+43 b Fb(49)150 3106 y Fe(cd)10 b Fc(:)k(:)f(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)37 b Fb(38)150 3194 y Fe(command)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g
+(:)37 b Fb(42)150 3194 y Fe(command)15 b Fc(:)f(:)f(:)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(:)41
-b Fb(46)150 3281 y Fe(compgen)12 b Fc(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g
+b Fb(50)150 3281 y Fe(compgen)12 b Fc(:)j(:)e(:)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(:)39 b
-Fb(122)150 3368 y Fe(complete)10 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)
+Fb(126)150 3368 y Fe(complete)10 b Fc(:)15 b(:)e(:)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(:)g(:)g(:)g(:)g(:)37 b Fb(123)150
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(127)150
3456 y Fe(compopt)12 b Fc(:)j(:)e(:)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(:)39 b Fb(126)150 3543
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b Fb(130)150 3543
y Fe(continue)12 b Fc(:)j(:)e(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(38)150 3778 y
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(42)150 3778 y
Fr(D)150 3894 y Fe(declare)15 b Fc(:)f(:)f(:)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(:)41 b
-Fb(46)150 3982 y Fe(dirs)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+Fb(50)150 3982 y Fe(dirs)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(85)150 4069 y Fe(disown)17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)
+b Fb(89)150 4069 y Fe(disown)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(95)150 4303 y Fr(E)150 4420 y Fe(echo)23 b Fc(:)13
+b Fb(99)150 4303 y Fr(E)150 4420 y Fe(echo)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(47)150 4507 y Fe(enable)17
+g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(51)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(48)150 4595 y Fe(eval)23
+(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(52)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
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(42)150 4682 y
Fe(exec)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
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(42)150
4770 y Fe(exit)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(39)150 4857 y Fe(export)17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)
+b Fb(43)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(39)150 5110 y Fr(F)150 5227 y Fe(fc)8 b Fc(:)14
+b Fb(43)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(129)150 5314
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35 b Fb(133)150 5314
y Fe(fg)10 b Fc(:)k(:)f(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37
-b Fb(94)2025 868 y Fr(G)2025 988 y Fe(getopts)15 b Fc(:)f(:)f(:)g(:)g
+b Fb(98)2025 868 y Fr(G)2025 988 y Fe(getopts)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(39)2025 1250 y Fr(H)2025 1370 y Fe(hash)23 b Fc(:)13
+b Fb(43)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(40)2025 1459 y Fe(help)23
+h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(44)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
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(53)2025 1549
y Fe(history)12 b Fc(:)j(:)e(:)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(:)h(:)f(:)39 b Fb(130)2025 1811
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(134)2025 1811
y Fr(J)2025 1931 y Fe(jobs)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(94)2025 2193 y Fr(K)2025 2313 y Fe(kill)23 b Fc(:)13
+b Fb(98)2025 2193 y Fr(K)2025 2313 y Fe(kill)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(95)2025 2557 y Fr(L)2025
+h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(99)2025 2557 y Fr(L)2025
2677 y Fe(let)8 b Fc(:)13 b(:)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(:)g(:)h(:)f(:)g(:)34
-b Fb(49)2025 2766 y Fe(local)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b Fb(53)2025 2766 y Fe(local)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(49)2025 2856 y Fe(logout)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
+b Fb(53)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(49)2025 3118 y Fr(M)2025 3238 y Fe(mapfile)15 b
+b Fb(53)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
+h(:)f(:)g(:)g(:)41 b Fb(53)2025 3500 y Fr(P)2025 3620
y Fe(popd)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(86)2025
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(90)2025
3710 y Fe(printf)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(50)2025
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(54)2025
3799 y Fe(pushd)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(86)2025 3888 y Fe(pwd)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+Fb(90)2025 3888 y Fe(pwd)8 b Fc(:)13 b(:)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(:)g(:)h(:)f(:)g(:)34
-b Fb(40)2025 4150 y Fr(R)2025 4270 y Fe(read)23 b Fc(:)13
+b Fb(44)2025 4150 y Fr(R)2025 4270 y Fe(read)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(50)2025 4360 y Fe(readarray)9
+h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(55)2025 4360 y Fe(readarray)9
b Fc(:)15 b(:)f(:)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(:)36 b Fb(52)2025 4449 y Fe(readonly)12 b Fc(:)j(:)e(:)g(:)g
+f(:)g(:)g(:)36 b Fb(56)2025 4449 y Fe(readonly)12 b Fc(:)j(:)e(:)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(:)39
-b Fb(40)2025 4538 y Fe(return)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
+b Fb(44)2025 4538 y Fe(return)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(41)2025 4782 y Fr(S)2025 4902 y Fe(set)8 b Fc(:)13
+b Fb(45)2025 4782 y Fr(S)2025 4902 y Fe(set)8 b Fc(:)13
b(:)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(:)g(:)h(:)f(:)g(:)34 b Fb(54)2025 4991
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(58)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(41)2025
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(45)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
-Fb(58)2025 5169 y Fe(source)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+Fb(62)2025 5169 y Fe(source)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(52)2025 5259 y Fe(suspend)15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+b Fb(56)2025 5259 y Fe(suspend)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(95)p eop end
-%%Page: 160 166
-TeXDict begin 160 165 bop 150 -116 a Ft(160)2527 b(Bash)31
+b Fb(99)p eop end
+%%Page: 164 170
+TeXDict begin 164 169 bop 150 -116 a Ft(164)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fr(T)150 428 y Fe(test)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(41)150 522 y
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(45)150 522 y
Fe(times)21 b Fc(:)13 b(:)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(:)46 b Fb(42)150
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Fb(46)150
616 y Fe(trap)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(42)150 709 y Fe(type)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Fb(46)150 709 y Fe(type)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(52)150 803 y Fe(typeset)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Fb(56)150 803 y Fe(typeset)15 b Fc(:)f(:)f(:)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(:)41
-b Fb(52)2025 299 y Fr(U)2025 415 y Fe(ulimit)17 b Fc(:)d(:)g(:)f(:)g(:)
+b Fb(57)2025 299 y Fr(U)2025 415 y Fe(ulimit)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(53)2025 502 y Fe(umask)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
+44 b Fb(57)2025 502 y Fe(umask)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(43)2025 590 y Fe(unalias)15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+b Fb(47)2025 590 y Fe(unalias)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(54)2025 677 y Fe(unset)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b Fb(58)2025 677 y Fe(unset)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(43)2025 910 y Fr(W)2025 1026 y Fe(wait)23 b Fc(:)13
+b Fb(47)2025 910 y Fr(W)2025 1026 y Fe(wait)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(95)150 1259 y Fr(D.2)68
+h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(99)150 1259 y Fr(D.2)68
b(Index)45 b(of)g(Shell)g(Reserv)l(ed)h(W)-11 b(ords)150
1495 y(!)150 1612 y Fe(!)15 b Fc(:)e(:)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
y Fe(!)13 b Fc(:)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(:)g(:)h(:)f(:)g(:)g(:)39
-b Fb(19)150 5054 y Fr(#)150 5180 y Fe(#)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g
+b Fb(20)150 5054 y Fr(#)150 5180 y Fe(#)13 b Fc(:)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(:)g
(:)h(:)f(:)g(:)g(:)39 b Fb(19)2025 4668 y Fr($)2025 4794
y Fe($)13 b Fc(:)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(19)2025 5067 y Fr(*)2025 5192 y Fe(*)13 b Fc(:)g(:)g(:)g(:)g(:)g
+b Fb(20)2025 5067 y Fr(*)2025 5192 y Fe(*)13 b Fc(:)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(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(19)p eop end
-%%Page: 161 167
-TeXDict begin 161 166 bop 150 -116 a Ft(App)s(endix)29
-b(D:)i(Indexes)2623 b(161)150 299 y Fr(-)150 415 y Fe(-)13
+%%Page: 165 171
+TeXDict begin 165 170 bop 150 -116 a Ft(App)s(endix)29
+b(D:)i(Indexes)2623 b(165)150 299 y Fr(-)150 415 y Fe(-)13
b Fc(:)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(:)g(:)h(:)f(:)g(:)g(:)39 b Fb(19)150
159 1349 41 6 v 150 1465 a Fe(_)13 b Fc(:)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(:)g(:)h(:)f
-(:)g(:)g(:)39 b Fb(19)150 1699 y Fr(0)150 1815 y Fe(0)13
+(:)g(:)g(:)39 b Fb(20)150 1699 y Fr(0)150 1815 y Fe(0)13
b Fc(:)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(:)g(:)h(:)f(:)g(:)g(:)39 b Fb(19)150
-2049 y Fr(A)150 2166 y Fe(auto_resume)24 b Fc(:)13 b(:)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(:)48 b Fb(96)150
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fb(20)150
+2049 y Fr(A)150 2166 y Fe(auto_resume)22 b Fc(:)13 b(:)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(:)46 b Fb(100)150
2409 y Fr(B)150 2525 y Fe(BASH)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(65)150 2612 y Fe(BASH_ALIASES)22 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g
+b Fb(69)150 2612 y Fe(BASH_ALIASES)22 b Fc(:)13 b(:)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(:)45 b Fb(66)150 2700
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(70)150 2700
y Fe(BASH_ARGC)9 b Fc(:)16 b(:)d(:)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(:)36 b Fb(66)150 2787 y
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(70)150 2787 y
Fe(BASH_ARGV)9 b Fc(:)16 b(:)d(:)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(:)36 b Fb(66)150 2874 y Fe(BASH_CMDS)9
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(70)150 2874 y Fe(BASH_CMDS)9
b Fc(:)16 b(:)d(:)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(:)36 b Fb(66)150 2962 y Fe(BASH_COMMAND)22
+g(:)g(:)g(:)36 b Fb(70)150 2962 y Fe(BASH_COMMAND)22
b Fc(:)13 b(:)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(:)45
-b Fb(66)150 3049 y Fe(BASH_ENV)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g
+b Fb(70)150 3049 y Fe(BASH_ENV)12 b Fc(:)j(:)e(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b
-Fb(66)150 3137 y Fe(BASH_EXECUTION_STRING)13 b Fc(:)18
+Fb(70)150 3137 y Fe(BASH_EXECUTION_STRING)13 b Fc(:)18
b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)39 b Fb(66)150 3224 y Fe(BASH_LINENO)24
+g(:)g(:)g(:)h(:)f(:)39 b Fb(70)150 3224 y Fe(BASH_LINENO)24
b Fc(:)13 b(:)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(:)
-48 b Fb(67)150 3311 y Fe(BASH_REMATCH)22 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)
+48 b Fb(71)150 3311 y Fe(BASH_REMATCH)22 b Fc(:)13 b(:)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(:)45 b Fb(67)150
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(71)150
3399 y Fe(BASH_SOURCE)24 b Fc(:)13 b(:)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(:)48 b Fb(67)150 3486 y Fe(BASH_SUBSHELL)16
+(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(71)150 3486 y Fe(BASH_SUBSHELL)16
b Fc(:)g(:)e(:)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(:)43
-b Fb(67)150 3573 y Fe(BASH_VERSINFO)16 b Fc(:)g(:)e(:)f(:)g(:)g(:)g(:)g
+b Fb(71)150 3573 y Fe(BASH_VERSINFO)16 b Fc(:)g(:)e(:)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(:)43 b Fb(67)150 3661 y Fe(BASH_VERSION)22
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(71)150 3661 y Fe(BASH_VERSION)22
b Fc(:)13 b(:)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(:)45
-b Fb(67)150 3748 y Fe(BASH_XTRACEFD)16 b Fc(:)g(:)e(:)f(:)g(:)g(:)g(:)g
+b Fb(71)150 3748 y Fe(BASH_XTRACEFD)16 b Fc(:)g(:)e(:)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(:)43 b Fb(67)150 3835 y Fe(BASHOPTS)12
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(71)150 3835 y Fe(BASHOPTS)12
b Fc(:)j(:)e(:)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(:)g(:)g(:)g
-(:)g(:)h(:)f(:)38 b Fb(66)150 3923 y Fe(BASHPID)15 b
+(:)g(:)h(:)f(:)38 b Fb(70)150 3923 y Fe(BASHPID)15 b
Fc(:)f(:)f(:)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(:)41 b Fb(66)150 4010 y Fe(bell-style)24
+f(:)g(:)g(:)g(:)41 b Fb(70)150 4010 y Fe(bell-style)24
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(:)
-49 b Fb(101)150 4098 y Fe(bind-tty-special-chars)8 b
+49 b Fb(105)150 4098 y Fe(bind-tty-special-chars)8 b
Fc(:)18 b(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)35 b Fb(101)150 4350 y Fr(C)150 4466
+(:)h(:)f(:)g(:)g(:)35 b Fb(105)150 4350 y Fr(C)150 4466
y Fe(CDPATH)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(65)150 4554
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(69)150 4554
y Fe(colored-stats)14 b Fc(:)i(:)d(:)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(:)41 b Fb(101)150 4641 y Fe(COLUMNS)15 b Fc(:)f(:)f(:)h(:)f(:)g
+g(:)g(:)41 b Fb(105)150 4641 y Fe(COLUMNS)15 b Fc(:)f(:)f(:)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(:)41
-b Fb(68)150 4728 y Fe(comment-begin)14 b Fc(:)i(:)d(:)h(:)f(:)g(:)g(:)g
+b Fb(72)150 4728 y Fe(comment-begin)14 b Fc(:)i(:)d(:)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(:)41 b Fb(101)150 4816 y Fe(COMP_CWORD)7
+g(:)h(:)f(:)g(:)g(:)g(:)41 b Fb(105)150 4816 y Fe(COMP_CWORD)7
b Fc(:)15 b(:)e(:)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(:)33 b Fb(68)150 4903 y Fe(COMP_KEY)12 b Fc(:)j(:)e(:)g(:)g(:)g
+f(:)g(:)33 b Fb(72)150 4903 y Fe(COMP_KEY)12 b Fc(:)j(:)e(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)38
-b Fb(68)150 4991 y Fe(COMP_LINE)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
+b Fb(72)150 4991 y Fe(COMP_LINE)9 b Fc(:)16 b(:)d(:)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(:)36 b
-Fb(68)150 5078 y Fe(COMP_POINT)7 b Fc(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)
+Fb(72)150 5078 y Fe(COMP_POINT)7 b Fc(:)15 b(:)e(:)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(:)33 b Fb(68)150
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b Fb(72)150
5165 y Fe(COMP_TYPE)9 b Fc(:)16 b(:)d(:)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(:)36 b Fb(68)150 5253
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(72)150 5253
y Fe(COMP_WORDBREAKS)11 b Fc(:)17 b(:)c(:)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(:)38 b Fb(68)150 5340 y Fe(COMP_WORDS)7 b Fc(:)15
+g(:)g(:)38 b Fb(72)150 5340 y Fe(COMP_WORDS)7 b Fc(:)15
b(:)e(:)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(:)
-33 b Fb(68)2025 299 y Fe(completion-display-width)26
+33 b Fb(72)2025 299 y Fe(completion-display-width)26
b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)47 b Fb(101)2025 387 y Fe(completion-ignore-case)8
+(:)g(:)47 b Fb(105)2025 387 y Fe(completion-ignore-case)8
b Fc(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(101)2025 474 y Fe(completion-map-case)16
+(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(105)2025 474 y Fe(completion-map-case)16
b Fc(:)h(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(101)2025 562 y Fe
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(105)2025 562 y Fe
(completion-prefix-display-leng)q(th)17 b Fc(:)i(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(102)2025 649 y Fe
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(106)2025 649 y Fe
(completion-query-items)8 b Fc(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b
-Fb(102)2025 737 y Fe(COMPREPLY)9 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)
+Fb(106)2025 737 y Fe(COMPREPLY)9 b Fc(:)15 b(:)f(:)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(:)36 b Fb(69)2025
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fb(73)2025
825 y Fe(convert-meta)17 b Fc(:)e(:)f(:)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(:)44 b Fb(102)2025 912 y Fe(COPROC)17 b
+g(:)g(:)g(:)g(:)44 b Fb(106)2025 912 y Fe(COPROC)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(69)2025 1147 y Fr(D)2025
+g(:)g(:)g(:)g(:)g(:)44 b Fb(73)2025 1147 y Fr(D)2025
1264 y Fe(DIRSTACK)12 b Fc(:)j(:)e(:)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(:)39 b Fb(69)2025 1352
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(73)2025 1352
y Fe(disable-completion)22 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fb(102)2025 1606 y Fr(E)2025 1723 y Fe(editing-mode)17
+b Fb(106)2025 1606 y Fr(E)2025 1723 y Fe(editing-mode)17
b Fc(:)e(:)f(:)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(:)44
-b Fb(102)2025 1810 y Fe(EMACS)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
+b Fb(106)2025 1810 y Fe(EMACS)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(69)2025 1898 y Fe(enable-keypad)14 b Fc(:)i(:)d(:)g(:)g(:)h(:)f(:)
+b Fb(73)2025 1898 y Fe(enable-keypad)14 b Fc(:)i(:)d(:)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(:)41 b Fb(102)2025 1985 y Fe(ENV)8
+(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fb(106)2025 1985 y Fe(ENV)8
b Fc(:)13 b(:)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(:)g(:)h(:)f(:)g(:)34 b Fb(69)2025
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(73)2025
2073 y Fe(EUID)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(69)2025 2161 y Fe(expand-tilde)17 b Fc(:)e(:)f(:)f(:)g(:)g(:)g(:)g
+b Fb(73)2025 2161 y Fe(expand-tilde)17 b Fc(:)e(:)f(:)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(:)44 b Fb(102)2025 2415 y Fr(F)2025
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(106)2025 2415 y Fr(F)2025
2531 y Fe(FCEDIT)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(69)2025
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(73)2025
2619 y Fe(FIGNORE)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(69)2025
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(73)2025
2707 y Fe(FUNCNAME)12 b Fc(:)j(:)e(:)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(:)39 b Fb(69)2025 2794
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(73)2025 2794
y Fe(FUNCNEST)12 b Fc(:)j(:)e(:)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(:)39 b Fb(69)2025 3029
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(73)2025 3029
y Fr(G)2025 3146 y Fe(GLOBIGNORE)7 b Fc(:)15 b(:)e(:)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(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(69)2025
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(73)2025
3234 y Fe(GROUPS)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(70)2025
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(74)2025
3469 y Fr(H)2025 3586 y Fe(histchars)9 b Fc(:)15 b(:)f(:)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(:)36
-b Fb(70)2025 3674 y Fe(HISTCMD)15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+b Fb(74)2025 3674 y Fe(HISTCMD)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(70)2025 3761 y Fe(HISTCONTROL)24 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g
+b Fb(74)2025 3761 y Fe(HISTCONTROL)24 b Fc(:)13 b(:)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(:)g(:)48 b Fb(70)2025
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(74)2025
3849 y Fe(HISTFILE)12 b Fc(:)j(:)e(:)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(:)39 b Fb(70)2025 3936
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(74)2025 3936
y Fe(HISTFILESIZE)21 b Fc(:)14 b(:)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(:)45 b Fb(70)2025 4024 y Fe(HISTIGNORE)7
+(:)g(:)g(:)g(:)h(:)45 b Fb(74)2025 4024 y Fe(HISTIGNORE)7
b Fc(:)15 b(:)e(:)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(:)g(:)g(:)g(:)
-g(:)h(:)33 b Fb(70)2025 4112 y Fe(history-preserve-point)8
+g(:)h(:)33 b Fb(74)2025 4112 y Fe(history-preserve-point)8
b Fc(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(103)2025 4199 y Fe(history-size)17
+(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(107)2025 4199 y Fe(history-size)17
b Fc(:)e(:)f(:)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(:)44
-b Fb(103)2025 4287 y Fe(HISTSIZE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)
+b Fb(107)2025 4287 y Fe(HISTSIZE)12 b Fc(:)j(:)e(:)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(:)39
-b Fb(71)2025 4375 y Fe(HISTTIMEFORMAT)14 b Fc(:)i(:)d(:)g(:)g(:)g(:)h
+b Fb(75)2025 4375 y Fe(HISTTIMEFORMAT)14 b Fc(:)i(:)d(:)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(:)40 b Fb(71)2025 4462 y Fe(HOME)23
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(75)2025 4462 y Fe(HOME)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(65)2025 4550
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(69)2025 4550
y Fe(horizontal-scroll-mode)8 b Fc(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35
-b Fb(103)2025 4637 y Fe(HOSTFILE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)
+b Fb(107)2025 4637 y Fe(HOSTFILE)12 b Fc(:)j(:)e(:)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(:)39
-b Fb(71)2025 4725 y Fe(HOSTNAME)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f
+b Fb(75)2025 4725 y Fe(HOSTNAME)12 b Fc(:)j(:)e(:)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(:)39 b
-Fb(71)2025 4813 y Fe(HOSTTYPE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f
+Fb(75)2025 4813 y Fe(HOSTTYPE)12 b Fc(:)j(:)e(:)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(:)39 b
-Fb(71)2025 5048 y Fr(I)2025 5165 y Fe(IFS)8 b Fc(:)13
+Fb(75)2025 5048 y Fr(I)2025 5165 y Fe(IFS)8 b Fc(:)13
b(:)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(:)g(:)h(:)f(:)g(:)34 b Fb(65)2025 5252
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(69)2025 5252
y Fe(IGNOREEOF)9 b Fc(:)15 b(:)f(:)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(:)36 b Fb(71)2025 5340 y
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fb(75)2025 5340 y
Fe(input-meta)24 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(:)49 b Fb(103)p eop end
-%%Page: 162 168
-TeXDict begin 162 167 bop 150 -116 a Ft(162)2527 b(Bash)31
+(:)g(:)g(:)g(:)g(:)49 b Fb(107)p eop end
+%%Page: 166 172
+TeXDict begin 166 171 bop 150 -116 a Ft(166)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fe(INPUTRC)15 b Fc(:)f(:)f(:)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(:)41
-b Fb(71)150 386 y Fe(isearch-terminators)16 b Fc(:)h(:)d(:)f(:)g(:)g(:)
+b Fb(75)150 386 y Fe(isearch-terminators)16 b Fc(:)h(:)d(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)43 b Fb(103)150 619 y Fr(K)150 736 y Fe(keymap)15
+(:)43 b Fb(107)150 619 y Fr(K)150 736 y Fe(keymap)15
b Fc(:)f(:)g(:)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(:)g(:)42 b Fb(103)150 988 y Fr(L)150 1104
+(:)g(:)g(:)g(:)g(:)42 b Fb(107)150 988 y Fr(L)150 1104
y Fe(LANG)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(71)150
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(75)150
1191 y Fe(LC_ALL)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(71)150
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(75)150
1278 y Fe(LC_COLLATE)7 b Fc(:)15 b(:)e(:)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(:)33 b Fb(72)150 1366 y
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b Fb(76)150 1366 y
Fe(LC_CTYPE)12 b Fc(:)j(:)e(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(72)150 1453 y Fe(LC_MESSAGES)13
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(76)150 1453 y Fe(LC_MESSAGES)13
b Fc(:)j(:)d(:)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(:)40
-b Fb(7,)26 b(72)150 1540 y Fe(LC_NUMERIC)7 b Fc(:)15
+b Fb(7,)26 b(76)150 1540 y Fe(LC_NUMERIC)7 b Fc(:)15
b(:)e(:)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(:)
-33 b Fb(72)150 1627 y Fe(LINENO)17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h
+33 b Fb(76)150 1627 y Fe(LINENO)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(72)150 1715 y Fe(LINES)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Fb(76)150 1715 y Fe(LINES)21 b Fc(:)13 b(:)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(:)46
-b Fb(72)150 1948 y Fr(M)150 2064 y Fe(MACHTYPE)12 b Fc(:)j(:)e(:)g(:)g
+b Fb(76)150 1948 y Fr(M)150 2064 y Fe(MACHTYPE)12 b Fc(:)j(:)e(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)38
-b Fb(72)150 2151 y Fe(MAIL)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+b Fb(76)150 2151 y Fe(MAIL)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(65)150 2239 y Fe(MAILCHECK)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
+b Fb(69)150 2239 y Fe(MAILCHECK)9 b Fc(:)16 b(:)d(:)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(:)36 b
-Fb(72)150 2326 y Fe(MAILPATH)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)
+Fb(76)150 2326 y Fe(MAILPATH)12 b Fc(:)j(:)e(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(65)150
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(69)150
2413 y Fe(MAPFILE)15 b Fc(:)f(:)f(:)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(:)41 b Fb(72)150
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fb(76)150
2501 y Fe(mark-modified-lines)16 b Fc(:)h(:)d(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
-b Fb(104)150 2588 y Fe(mark-symlinked-directories)16
+b Fb(108)150 2588 y Fe(mark-symlinked-directories)16
b Fc(:)i(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-42 b Fb(104)150 2675 y Fe(match-hidden-files)23 b Fc(:)13
+42 b Fb(108)150 2675 y Fe(match-hidden-files)23 b Fc(:)13
b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(104)150 2762 y Fe
+(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(108)150 2762 y Fe
(menu-complete-display-prefix)11 b Fc(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(104)150 2850 y Fe(meta-flag)7
+(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(108)150 2850 y Fe(meta-flag)7
b Fc(:)16 b(:)d(:)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(:)34 b Fb(103)150 3102 y Fr(O)150 3218 y Fe(OLDPWD)17
+g(:)g(:)34 b Fb(107)150 3102 y Fr(O)150 3218 y Fe(OLDPWD)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(72)150 3305 y Fe(OPTARG)17
+(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(76)150 3305 y Fe(OPTARG)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(65)150 3392 y Fe(OPTERR)17
+(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(69)150 3392 y Fe(OPTERR)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(72)150 3480 y Fe(OPTIND)17
+(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(76)150 3480 y Fe(OPTIND)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(65)150 3567 y Fe(OSTYPE)17
+(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(69)150 3567 y Fe(OSTYPE)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(72)150 3654 y Fe(output-meta)22
+(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(76)150 3654 y Fe(output-meta)22
b Fc(:)13 b(:)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(:)46
-b Fb(104)150 3906 y Fr(P)150 4022 y Fe(page-completions)7
+b Fb(108)150 3906 y Fr(P)150 4022 y Fe(page-completions)7
b Fc(:)16 b(:)d(:)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(:)33 b Fb(104)150
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(108)150
4110 y Fe(PATH)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(65)2025 299 y Fe(PIPESTATUS)7 b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g
+b Fb(69)2025 299 y Fe(PIPESTATUS)7 b Fc(:)15 b(:)e(:)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(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(72)2025
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(76)2025
387 y Fe(POSIXLY_CORRECT)11 b Fc(:)17 b(:)c(:)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(:)38 b Fb(72)2025 475 y Fe(PPID)23 b Fc(:)13
+g(:)g(:)g(:)38 b Fb(76)2025 475 y Fe(PPID)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(73)2025 563 y Fe(PROMPT_COMMAND)14
+h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(77)2025 563 y Fe(PROMPT_COMMAND)14
b Fc(:)i(:)d(:)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(:)40
-b Fb(73)2025 651 y Fe(PROMPT_DIRTRIM)14 b Fc(:)i(:)d(:)g(:)g(:)g(:)h(:)
+b Fb(77)2025 651 y Fe(PROMPT_DIRTRIM)14 b Fc(:)i(:)d(:)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(:)40 b Fb(73)2025 738 y Fe(PS1)8
+(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(77)2025 738 y Fe(PS1)8
b Fc(:)13 b(:)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(:)g(:)h(:)f(:)g(:)34 b Fb(65)2025
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(69)2025
826 y Fe(PS2)8 b Fc(:)13 b(:)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(:)g(:)h(:)f(:)g(:)34
-b Fb(65)2025 914 y Fe(PS3)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+b Fb(69)2025 914 y Fe(PS3)8 b Fc(:)13 b(:)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(:)g(:)h(:)f(:)g(:)34
-b Fb(73)2025 1002 y Fe(PS4)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Fb(77)2025 1002 y Fe(PS4)8 b Fc(:)13 b(:)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(:)g(:)h(:)f(:)g(:)
-34 b Fb(73)2025 1090 y Fe(PWD)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+34 b Fb(77)2025 1090 y Fe(PWD)8 b Fc(:)13 b(:)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(:)g(:)h(:)f(:)g
-(:)34 b Fb(73)2025 1327 y Fr(R)2025 1444 y Fe(RANDOM)17
+(:)34 b Fb(77)2025 1327 y Fr(R)2025 1444 y Fe(RANDOM)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(73)2025 1532 y Fe(READLINE_LINE)16
+(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(77)2025 1532 y Fe(READLINE_LINE)16
b Fc(:)g(:)d(:)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(:)43
-b Fb(73)2025 1620 y Fe(READLINE_POINT)14 b Fc(:)i(:)d(:)g(:)g(:)g(:)h
+b Fb(77)2025 1620 y Fe(READLINE_POINT)14 b Fc(:)i(:)d(:)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(:)40 b Fb(73)2025 1708 y Fe(REPLY)21
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(77)2025 1708 y Fe(REPLY)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(73)2025 1796 y Fe
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(77)2025 1796 y Fe
(revert-all-at-newline)11 b Fc(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
-b Fb(104)2025 2032 y Fr(S)2025 2150 y Fe(SECONDS)15 b
+b Fb(108)2025 2032 y Fr(S)2025 2150 y Fe(SECONDS)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(73)2025 2238 y Fe(SHELL)21 b
+h(:)f(:)g(:)g(:)41 b Fb(77)2025 2238 y Fe(SHELL)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(73)2025 2326 y Fe(SHELLOPTS)9
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(77)2025 2326 y Fe(SHELLOPTS)9
b Fc(:)15 b(:)f(:)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(:)36 b Fb(73)2025 2413 y Fe(SHLVL)21 b Fc(:)13
+f(:)g(:)g(:)36 b Fb(77)2025 2413 y Fe(SHLVL)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(73)2025 2501 y Fe(show-all-if-ambiguous)11
+g(:)g(:)h(:)f(:)g(:)46 b Fb(77)2025 2501 y Fe(show-all-if-ambiguous)11
b Fc(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fb(104)2025 2589 y Fe
+(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fb(108)2025 2589 y Fe
(show-all-if-unmodified)8 b Fc(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b
-Fb(105)2025 2677 y Fe(skip-completed-text)16 b Fc(:)h(:)c(:)g(:)h(:)f
+Fb(109)2025 2677 y Fe(skip-completed-text)16 b Fc(:)h(:)c(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)43 b Fb(105)2025 2933 y Fr(T)2025 3050 y Fe(TEXTDOMAIN)9
+g(:)43 b Fb(109)2025 2933 y Fr(T)2025 3050 y Fe(TEXTDOMAIN)9
b Fc(:)15 b(:)e(:)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(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)36 b Fb(7)2025 3138 y Fe(TEXTDOMAINDIR)21
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46
b Fb(7)2025 3226 y Fe(TIMEFORMAT)7 b Fc(:)15 b(:)e(:)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(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(74)2025
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(78)2025
3314 y Fe(TMOUT)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(74)2025 3402 y Fe(TMPDIR)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+Fb(78)2025 3402 y Fe(TMPDIR)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(74)2025 3638 y Fr(U)2025 3756 y Fe(UID)8 b Fc(:)13
+b Fb(78)2025 3638 y Fr(U)2025 3756 y Fe(UID)8 b Fc(:)13
b(:)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(:)g(:)h(:)f(:)g(:)34 b Fb(74)2025 3992
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(78)2025 3992
y Fr(V)2025 4110 y Fe(visible-stats)14 b Fc(:)i(:)d(:)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(:)41 b Fb(105)150 4342 y Fr(D.4)68
+g(:)g(:)g(:)h(:)f(:)g(:)41 b Fb(109)150 4342 y Fr(D.4)68
b(F)-11 b(unction)44 b(Index)150 4579 y(A)150 4697 y
Fe(abort)27 b(\(C-g\))9 b Fc(:)14 b(:)f(:)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(:)36 b Fb(118)150 4786 y Fe(accept-line)28
+h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(122)150 4786 y Fe(accept-line)28
b(\(Newline)g(or)e(Return\))e Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)50 b Fb(112)150 4874 y Fe(alias-expand-line)29
+(:)g(:)50 b Fb(116)150 4874 y Fe(alias-expand-line)29
b(\(\))21 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(120)150
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(124)150
5133 y Fr(B)150 5251 y Fe(backward-char)29 b(\(C-b\))23
b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Fb(111)150 5340 y
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Fb(115)150 5340 y
Fe(backward-delete-char)30 b(\(Rubout\))14 b Fc(:)h(:)f(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(113)2025 4579 y Fe
+(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(117)2025 4579 y Fe
(backward-kill-line)29 b(\(C-x)e(Rubout\))16 b Fc(:)f(:)e(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)43 b Fb(114)2025 4670 y Fe(backward-kill-word)29
+(:)g(:)h(:)f(:)g(:)g(:)43 b Fb(118)2025 4670 y Fe(backward-kill-word)29
b(\(M-DEL\))24 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)49 b Fb(115)2025 4761 y Fe(backward-word)28
+(:)g(:)g(:)g(:)49 b Fb(119)2025 4761 y Fe(backward-word)28
b(\(M-b\))c Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)50 b Fb(111)2025
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)50 b Fb(115)2025
4852 y Fe(beginning-of-history)30 b(\(M-<\))23 b Fc(:)13
b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
-b Fb(112)2025 4943 y Fe(beginning-of-line)29 b(\(C-a\))13
+b Fb(116)2025 4943 y Fe(beginning-of-line)29 b(\(C-a\))13
b Fc(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)40 b Fb(111)2025 5216 y Fr(C)2025 5340 y
+g(:)g(:)g(:)40 b Fb(115)2025 5216 y Fr(C)2025 5340 y
Fe(call-last-kbd-macro)30 b(\(C-x)c(e\))9 b Fc(:)14 b(:)f(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fb(117)p
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fb(121)p
eop end
-%%Page: 163 169
-TeXDict begin 163 168 bop 150 -116 a Ft(App)s(endix)29
-b(D:)i(Indexes)2623 b(163)150 299 y Fe(capitalize-word)29
+%%Page: 167 173
+TeXDict begin 167 172 bop 150 -116 a Ft(App)s(endix)29
+b(D:)i(Indexes)2623 b(167)150 299 y Fe(capitalize-word)29
b(\(M-c\))18 b Fc(:)c(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(114)150 387
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(118)150 387
y Fe(character-search)29 b(\(C-]\))15 b Fc(:)g(:)e(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42
-b Fb(118)150 475 y Fe(character-search-backward)31 b(\(M-C-]\))23
-b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(118)150
+b Fb(122)150 475 y Fe(character-search-backward)31 b(\(M-C-]\))23
+b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(122)150
564 y Fe(clear-screen)28 b(\(C-l\))8 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)35 b Fb(111)150 652 y Fe(complete)27 b(\(TAB\))20
+(:)g(:)35 b Fb(115)150 652 y Fe(complete)27 b(\(TAB\))20
b Fc(:)13 b(:)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(:)45
-b Fb(116)150 740 y Fe(complete-command)29 b(\(M-!\))15
+b Fb(120)150 740 y Fe(complete-command)29 b(\(M-!\))15
b Fc(:)g(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)42 b Fb(117)150 828 y Fe(complete-filename)29
+g(:)g(:)g(:)g(:)42 b Fb(121)150 828 y Fe(complete-filename)29
b(\(M-/\))13 b Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(116)150 917 y Fe(complete-hostname)
+(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(120)150 917 y Fe(complete-hostname)
29 b(\(M-@\))13 b Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(117)150 1005 y Fe
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(121)150 1005 y Fe
(complete-into-braces)30 b(\(M-{\))23 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(117)150
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(121)150
1093 y Fe(complete-username)29 b(\(M-~\))13 b Fc(:)h(:)f(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(117)150 1181 y Fe(complete-variable)29 b(\(M-$\))13
+b Fb(121)150 1181 y Fe(complete-variable)29 b(\(M-$\))13
b Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)39 b Fb(117)150 1270 y Fe(copy-backward-word)30
+g(:)h(:)f(:)39 b Fb(121)150 1270 y Fe(copy-backward-word)30
b(\(\))18 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(115)150 1358
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(119)150 1358
y Fe(copy-forward-word)29 b(\(\))21 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
-b Fb(115)150 1446 y Fe(copy-region-as-kill)30 b(\(\))15
+b Fb(119)150 1446 y Fe(copy-region-as-kill)30 b(\(\))15
b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)42 b Fb(115)150 1703 y Fr(D)150 1821
+g(:)g(:)g(:)g(:)42 b Fb(119)150 1703 y Fr(D)150 1821
y Fe(dabbrev-expand)29 b(\(\))11 b Fc(:)i(:)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(:)38 b Fb(117)150 1909 y Fe(delete-char)28 b(\(C-d\))11
+g(:)38 b Fb(121)150 1909 y Fe(delete-char)28 b(\(C-d\))11
b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(113)150
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(117)150
1998 y Fe(delete-char-or-list)30 b(\(\))15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42
-b Fb(116)150 2086 y Fe(delete-horizontal-space)31 b(\(\))22
+b Fb(120)150 2086 y Fe(delete-horizontal-space)31 b(\(\))22
b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-49 b Fb(115)150 2174 y Fe(digit-argument)29 b(\()p Fd(M-0)p
+49 b Fb(119)150 2174 y Fe(digit-argument)29 b(\()p Fd(M-0)p
Fe(,)e Fd(M-1)p Fe(,)f(...)g Fd(M--)p Fe(\))d Fc(:)13
-b(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(115)150 2262 y Fe
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(119)150 2262 y Fe
(display-shell-version)30 b(\(C-x)d(C-v\))16 b Fc(:)e(:)f(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)43 b Fb(119)150 2351 y Fe(do-uppercase-version)
+(:)f(:)g(:)g(:)g(:)g(:)43 b Fb(123)150 2351 y Fe(do-uppercase-version)
30 b(\(M-a,)d(M-b,)f(M-)p Fd(x)9 b Fe(,)27 b(...\))325
2438 y Fc(:)13 b(:)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(:)g(:)g(:)h(:)48 b Fb(118)150 2526
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)48 b Fb(122)150 2526
y Fe(downcase-word)29 b(\(M-l\))23 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49
-b Fb(114)150 2614 y Fe(dump-functions)29 b(\(\))11 b
+b Fb(118)150 2614 y Fe(dump-functions)29 b(\(\))11 b
Fc(:)i(:)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(:)38 b Fb(119)150
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(123)150
2702 y Fe(dump-macros)28 b(\(\))19 b Fc(:)13 b(:)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(:)45 b Fb(119)150 2791 y Fe(dump-variables)29
+g(:)g(:)h(:)f(:)g(:)45 b Fb(123)150 2791 y Fe(dump-variables)29
b(\(\))11 b Fc(:)i(:)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(:)38
-b Fb(119)150 2879 y Fe(dynamic-complete-history)31 b(\(M-TAB\))7
-b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(117)150
+b Fb(123)150 2879 y Fe(dynamic-complete-history)31 b(\(M-TAB\))7
+b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(121)150
3136 y Fr(E)150 3254 y Fe(edit-and-execute-command)e(\(C-xC-e\))23
-b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(120)150
+b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(124)150
3342 y Fe(end-kbd-macro)29 b(\(C-x)d(\)\))7 b Fc(:)14
b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)34 b Fb(117)150 3431 y Fe(end-of-history)29
+(:)g(:)h(:)f(:)g(:)34 b Fb(121)150 3431 y Fe(end-of-history)29
b(\(M->\))21 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(112)150
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(116)150
3519 y Fe(end-of-line)28 b(\(C-e\))11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)38 b Fb(111)150 3607 y Fe(exchange-point-and-mark)31
+g(:)g(:)38 b Fb(115)150 3607 y Fe(exchange-point-and-mark)31
b(\(C-x)26 b(C-x\))11 b Fc(:)j(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)38
-b Fb(118)150 3864 y Fr(F)150 3982 y Fe(forward-backward-delete-char)32
+b Fb(122)150 3864 y Fr(F)150 3982 y Fe(forward-backward-delete-char)32
b(\(\))9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36
-b Fb(113)150 4071 y Fe(forward-char)28 b(\(C-f\))8 b
+b Fb(117)150 4071 y Fe(forward-char)28 b(\(C-f\))8 b
Fc(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(111)150
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(115)150
4159 y Fe(forward-search-history)c(\(C-s\))17 b Fc(:)d(:)f(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(112)150 4247
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(116)150 4247
y Fe(forward-word)28 b(\(M-f\))8 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)35 b Fb(111)150 4494 y Fr(G)150 4612 y Fe(glob-complete-word)30
+(:)35 b Fb(115)150 4494 y Fr(G)150 4612 y Fe(glob-complete-word)30
b(\(M-g\))10 b Fc(:)k(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(119)150 4700 y Fe(glob-expand-word)29
+(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(123)150 4700 y Fe(glob-expand-word)29
b(\(C-x)e(*\))17 b Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(119)150 4788 y Fe
+(:)g(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(123)150 4788 y Fe
(glob-list-expansions)30 b(\(C-x)d(g\))7 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(119)150 5045
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(123)150 5045
y Fr(H)150 5163 y Fe(history-and-alias-expand-line)f(\(\))7
-b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(120)150
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(124)150
5252 y Fe(history-expand-line)d(\(M-^\))8 b Fc(:)14 b(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fb(119)150 5340 y Fe(history-search-backward)d(\(\))22
+b Fb(123)150 5340 y Fe(history-search-backward)d(\(\))22
b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-49 b Fb(112)2025 299 y Fe(history-search-forward)30 b(\(\))8
+49 b Fb(116)2025 299 y Fe(history-search-forward)30 b(\(\))8
b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)34 b Fb(112)2025 387 y Fe(history-substr-search-backward)e(\(\))
-22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Fb(113)2025
+(:)h(:)34 b Fb(116)2025 387 y Fe(history-substr-search-backward)e(\(\))
+22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Fb(117)2025
474 y Fe(history-substr-search-forward)32 b(\(\))7 b
-Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(112)2025
+Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(116)2025
729 y Fr(I)2025 846 y Fe(insert-comment)29 b(\(M-#\))21
b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(119)2025 934 y Fe
+(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(123)2025 934 y Fe
(insert-completions)29 b(\(M-*\))10 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37 b Fb(116)2025
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37 b Fb(120)2025
1022 y Fe(insert-last-argument)30 b(\(M-.)c(or)g(M-_\))18
-b Fc(:)c(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Fb(120)2025
+b Fc(:)c(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Fb(124)2025
1277 y Fr(K)2025 1394 y Fe(kill-line)27 b(\(C-k\))16
b Fc(:)f(:)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(:)43 b
-Fb(114)2025 1482 y Fe(kill-region)28 b(\(\))19 b Fc(:)13
+Fb(118)2025 1482 y Fe(kill-region)28 b(\(\))19 b Fc(:)13
b(:)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(:)45 b Fb(115)2025
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fb(119)2025
1569 y Fe(kill-whole-line)29 b(\(\))8 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)35 b Fb(114)2025 1657 y Fe(kill-word)27 b(\(M-d\))16
+f(:)g(:)35 b Fb(118)2025 1657 y Fe(kill-word)27 b(\(M-d\))16
b Fc(:)f(:)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(:)43 b
-Fb(114)2025 1901 y Fr(M)2025 2019 y Fe(magic-space)28
+Fb(118)2025 1901 y Fr(M)2025 2019 y Fe(magic-space)28
b(\(\))19 b Fc(:)13 b(:)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(:)45
-b Fb(120)2025 2106 y Fe(menu-complete)28 b(\(\))13 b
+b Fb(124)2025 2106 y Fe(menu-complete)28 b(\(\))13 b
Fc(:)h(:)f(:)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(:)40 b Fb(116)2025
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(120)2025
2194 y Fe(menu-complete-backward)30 b(\(\))8 b Fc(:)13
b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)34
-b Fb(116)2025 2449 y Fr(N)2025 2566 y Fe(next-history)28
+b Fb(120)2025 2449 y Fr(N)2025 2566 y Fe(next-history)28
b(\(C-n\))8 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
-b Fb(112)2025 2654 y Fe(non-incremental-forward-search)q(-hist)q(ory)d
+b Fb(116)2025 2654 y Fe(non-incremental-forward-search)q(-hist)q(ory)d
(\(M-n\))2200 2741 y Fc(:)13 b(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b
-Fb(112)2025 2829 y Fe(non-incremental-reverse-search)q(-hist)q(ory)32
+Fb(116)2025 2829 y Fe(non-incremental-reverse-search)q(-hist)q(ory)32
b(\(M-p\))2200 2916 y Fc(:)13 b(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b
-Fb(112)2025 3152 y Fr(O)2025 3269 y Fe(operate-and-get-next)30
+Fb(116)2025 3152 y Fr(O)2025 3269 y Fe(operate-and-get-next)30
b(\(C-o\))23 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)49 b Fb(120)2025 3357 y Fe(overwrite-mode)29
+g(:)g(:)g(:)49 b Fb(124)2025 3357 y Fe(overwrite-mode)29
b(\(\))11 b Fc(:)i(:)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(:)38
-b Fb(114)2025 3601 y Fr(P)2025 3718 y Fe(possible-command-completions)
+b Fb(118)2025 3601 y Fr(P)2025 3718 y Fe(possible-command-completions)
32 b(\(C-x)26 b(!\))21 b Fc(:)13 b(:)g(:)h(:)f(:)47 b
-Fb(117)2025 3806 y Fe(possible-completions)30 b(\(M-?\))23
+Fb(121)2025 3806 y Fe(possible-completions)30 b(\(M-?\))23
b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-49 b Fb(116)2025 3894 y Fe(possible-filename-completions)32
-b(\(C-x)26 b(/\))18 b Fc(:)c(:)f(:)g(:)45 b Fb(116)2025
+49 b Fb(120)2025 3894 y Fe(possible-filename-completions)32
+b(\(C-x)26 b(/\))18 b Fc(:)c(:)f(:)g(:)45 b Fb(120)2025
3982 y Fe(possible-hostname-completions)32 b(\(C-x)26
-b(@\))18 b Fc(:)c(:)f(:)g(:)45 b Fb(117)2025 4070 y Fe
+b(@\))18 b Fc(:)c(:)f(:)g(:)45 b Fb(121)2025 4070 y Fe
(possible-username-completions)32 b(\(C-x)26 b(~\))18
-b Fc(:)c(:)f(:)g(:)45 b Fb(117)2025 4157 y Fe
+b Fc(:)c(:)f(:)g(:)45 b Fb(121)2025 4157 y Fe
(possible-variable-completions)32 b(\(C-x)26 b($\))18
-b Fc(:)c(:)f(:)g(:)45 b Fb(117)2025 4245 y Fe(prefix-meta)28
+b Fc(:)c(:)f(:)g(:)45 b Fb(121)2025 4245 y Fe(prefix-meta)28
b(\(ESC\))11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
-b Fb(118)2025 4333 y Fe(previous-history)29 b(\(C-p\))15
+b Fb(122)2025 4333 y Fe(previous-history)29 b(\(C-p\))15
b Fc(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)42 b Fb(112)2025 4421 y Fe(print-last-kbd-macro)30
+h(:)f(:)g(:)g(:)42 b Fb(116)2025 4421 y Fe(print-last-kbd-macro)30
b(\(\))13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(118)2025 4675 y Fr(Q)2025
+(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(122)2025 4675 y Fr(Q)2025
4793 y Fe(quoted-insert)28 b(\(C-q)f(or)f(C-v\))19 b
Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)46 b Fb(113)2025 5047 y Fr(R)2025 5164 y Fe(re-read-init-file)29
+(:)46 b Fb(117)2025 5047 y Fr(R)2025 5164 y Fe(re-read-init-file)29
b(\(C-x)e(C-r\))9 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)36 b Fb(118)2025 5252 y Fe(redraw-current-line)30
+(:)g(:)h(:)f(:)g(:)36 b Fb(122)2025 5252 y Fe(redraw-current-line)30
b(\(\))15 b Fc(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(111)2025 5340 y Fe
+(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(115)2025 5340 y Fe
(reverse-search-history)30 b(\(C-r\))17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(112)p eop end
-%%Page: 164 170
-TeXDict begin 164 169 bop 150 -116 a Ft(164)2527 b(Bash)31
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(116)p eop end
+%%Page: 168 174
+TeXDict begin 168 173 bop 150 -116 a Ft(168)2527 b(Bash)31
b(Reference)g(Man)m(ual)150 299 y Fe(revert-line)d(\(M-r\))11
b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(118)150
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(122)150
540 y Fr(S)150 656 y Fe(self-insert)28 b(\(a,)e(b,)g(A,)g(1,)h(!,)f
(...\))7 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33
-b Fb(113)150 743 y Fe(set-mark)27 b(\(C-@\))20 b Fc(:)13
+b Fb(117)150 743 y Fe(set-mark)27 b(\(C-@\))20 b Fc(:)13
b(:)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(:)45 b Fb(118)150
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(122)150
830 y Fe(shell-backward-kill-word)31 b(\(\))20 b Fc(:)13
b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fb(115)150 917 y Fe(shell-backward-word)30 b(\(\))15
+b Fb(119)150 917 y Fe(shell-backward-word)30 b(\(\))15
b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)42 b Fb(111)150 1005 y Fe(shell-expand-line)29
+g(:)g(:)g(:)g(:)42 b Fb(115)150 1005 y Fe(shell-expand-line)29
b(\(M-C-e\))8 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(119)150 1092 y Fe(shell-forward-word)c
+(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(123)150 1092 y Fe(shell-forward-word)c
(\(\))18 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(111)150 1179
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(115)150 1179
y Fe(shell-kill-word)29 b(\(\))8 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)35 b Fb(115)150 1266 y Fe(skip-csi-sequence)29 b(\(\))21
+(:)35 b Fb(119)150 1266 y Fe(skip-csi-sequence)29 b(\(\))21
b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(118)150 1353 y Fe(start-kbd-macro)29
+(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(122)150 1353 y Fe(start-kbd-macro)29
b(\(C-x)e(\(\))19 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(117)150 1594
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(121)150 1594
y Fr(T)150 1710 y Fe(tilde-expand)28 b(\(M-&\))8 b Fc(:)15
b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(118)150 1798 y
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(122)150 1798 y
Fe(transpose-chars)29 b(\(C-t\))18 b Fc(:)c(:)f(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
-b Fb(114)2025 299 y Fe(transpose-words)29 b(\(M-t\))18
+b Fb(118)2025 299 y Fe(transpose-words)29 b(\(M-t\))18
b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)45 b Fb(114)2025 566 y Fr(U)2025
+g(:)g(:)g(:)g(:)g(:)45 b Fb(118)2025 566 y Fr(U)2025
688 y Fe(undo)26 b(\(C-_)h(or)f(C-x)g(C-u\))c Fc(:)13
b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)48 b Fb(118)2025 778 y Fe(universal-argument)29
+(:)h(:)f(:)g(:)g(:)48 b Fb(122)2025 778 y Fe(universal-argument)29
b(\(\))18 b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(115)2025 868 y
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(119)2025 868 y
Fe(unix-filename-rubout)30 b(\(\))13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
-b Fb(115)2025 958 y Fe(unix-line-discard)29 b(\(C-u\))13
+b Fb(119)2025 958 y Fe(unix-line-discard)29 b(\(C-u\))13
b Fc(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)40 b Fb(114)2025 1048 y Fe(unix-word-rubout)29
+g(:)g(:)g(:)40 b Fb(118)2025 1048 y Fe(unix-word-rubout)29
b(\(C-w\))15 b Fc(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(115)2025 1138
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(119)2025 1138
y Fe(upcase-word)28 b(\(M-u\))11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)38 b Fb(114)2025 1405 y Fr(Y)2025 1527 y Fe(yank)26
+g(:)38 b Fb(118)2025 1405 y Fr(Y)2025 1527 y Fe(yank)26
b(\(C-y\))12 b Fc(:)i(:)f(:)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(:)39 b Fb(115)2025 1617 y Fe(yank-last-arg)28
+g(:)g(:)g(:)g(:)39 b Fb(119)2025 1617 y Fe(yank-last-arg)28
b(\(M-.)f(or)f(M-_\))19 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)46 b Fb(113)2025 1707 y Fe(yank-nth-arg)28
+(:)g(:)g(:)g(:)g(:)g(:)g(:)46 b Fb(117)2025 1707 y Fe(yank-nth-arg)28
b(\(M-C-y\))22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(113)2025
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(117)2025
1798 y Fe(yank-pop)27 b(\(M-y\))20 b Fc(:)13 b(:)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(:)45 b Fb(115)150 2030 y Fr(D.5)68
+g(:)g(:)g(:)g(:)h(:)45 b Fb(119)150 2030 y Fr(D.5)68
b(Concept)45 b(Index)150 2290 y(A)150 2408 y Fb(alias)27
b(expansion)18 b Fc(:)c(:)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(:)44 b Fb(83)150 2496 y(arithmetic)26 b(ev)l(aluation)16
+h(:)44 b Fb(87)150 2496 y(arithmetic)26 b(ev)l(aluation)16
b Fc(:)e(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(82)150 2584
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(86)150 2584
y(arithmetic)26 b(expansion)d Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
-b Fb(25)150 2672 y(arithmetic,)27 b(shell)17 b Fc(:)d(:)f(:)g(:)g(:)g
+b Fb(28)150 2672 y(arithmetic,)27 b(shell)17 b Fc(:)d(:)f(:)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(82)150 2760 y(arra)n(ys)15
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(86)150 2760 y(arra)n(ys)15
b Fc(:)f(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fb(84)150 3015 y Fr(B)150
+(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fb(88)150 3015 y Fr(B)150
3133 y Fb(bac)n(kground)9 b Fc(:)j(:)i(:)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(:)35 b Fb(93)150 3221 y(Bash)26
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(97)150 3221 y(Bash)26
b(con\014guration)d Fc(:)13 b(:)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(:)49
-b Fb(135)150 3309 y(Bash)26 b(installation)c Fc(:)13
+b Fb(139)150 3309 y(Bash)26 b(installation)c Fc(:)13
b(:)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(:)46 b Fb(135)150
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fb(139)150
3397 y(Bourne)26 b(shell)13 b Fc(:)h(:)f(:)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(:)40 b Fb(5)150 3486
y(brace)26 b(expansion)20 b Fc(:)14 b(:)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(:)47 b Fb(20)150 3574 y(builtin)9 b Fc(:)k(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)47 b Fb(21)150 3574 y(builtin)9 b Fc(:)k(:)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(:)h(:)f(:)g(:)g(:)
g(:)g(:)36 b Fb(3)150 3812 y Fr(C)150 3930 y Fb(command)26
-b(editing)15 b Fc(:)f(:)f(:)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(:)42
-b Fb(98)150 4018 y(command)26 b(execution)d Fc(:)13 b(:)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(:)49 b Fb(33)150 4106 y(command)26 b(expansion)16
-b Fc(:)d(:)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(:)42 b Fb(32)150
-4194 y(command)26 b(history)12 b Fc(:)h(:)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(:)39 b Fb(129)150 4282 y(command)26 b(searc)n(h)10
-b Fc(:)j(:)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(:)36
-b Fb(33)150 4370 y(command)26 b(substitution)15 b Fc(:)e(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)41 b Fb(25)150 4458 y(command)26 b(timing)7
-b Fc(:)13 b(:)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(:)34
-b Fb(8)150 4547 y(commands,)26 b(comp)r(ound)18 b Fc(:)c(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)45 b Fb(9)150 4635 y(commands,)26 b(conditional)d
-Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(10)150 4723 y(commands,)26
-b(grouping)9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35
-b Fb(14)150 4811 y(commands,)26 b(lists)6 b Fc(:)15 b(:)e(:)g(:)g(:)g
+b(editing)13 b Fc(:)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(:)40
+b Fb(102)150 4018 y(command)26 b(execution)d Fc(:)13
+b(:)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(:)49 b Fb(35)150 4106
+y(command)26 b(expansion)16 b Fc(:)d(:)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(:)42
+b Fb(34)150 4194 y(command)26 b(history)12 b Fc(:)h(:)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(:)39 b Fb(133)150 4282 y(command)26
+b(searc)n(h)10 b Fc(:)j(:)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(:)
+36 b Fb(35)150 4370 y(command)26 b(substitution)15 b
+Fc(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fb(27)150 4458 y(command)26
+b(timing)7 b Fc(:)13 b(:)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(:)34 b Fb(8)150 4547 y(commands,)26 b(comp)r(ound)18
+b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(9)150 4635
+y(commands,)26 b(conditional)d Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48
+b Fb(10)150 4723 y(commands,)26 b(grouping)9 b Fc(:)14
+b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(14)150 4811
+y(commands,)26 b(lists)6 b Fc(:)15 b(:)e(:)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(:)33 b Fb(9)150 4899 y(commands,)26
+b(lo)r(oping)16 b Fc(:)f(:)e(:)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(:)42
+b Fb(10)150 4987 y(commands,)26 b(pip)r(elines)12 b Fc(:)i(:)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(:)33 b Fb(9)150
-4899 y(commands,)26 b(lo)r(oping)16 b Fc(:)f(:)e(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(8)150 5076 y(commands,)26
+b(shell)15 b Fc(:)f(:)f(:)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(:)
+42 b Fb(8)150 5164 y(commands,)26 b(simple)17 b Fc(:)d(:)g(:)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(:)44 b Fb(8)150 5252 y(commen)n(ts,)26
+b(shell)7 b Fc(:)15 b(:)e(:)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(:)34 b Fb(7)150 5340 y(completion)27 b(builtins)15
+b Fc(:)e(:)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(:)42 b Fb(126)2025
+2290 y(con\014guration)15 b Fc(:)f(:)f(:)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(:)42 b Fb(139)2025 2380 y(con)n(trol)26
+b(op)r(erator)20 b Fc(:)14 b(:)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(:)42 b Fb(10)150 4987 y(commands,)26 b(pip)r(elines)12
-b Fc(:)i(:)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(:)39 b Fb(8)150
-5076 y(commands,)26 b(shell)15 b Fc(:)f(:)f(:)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(:)42 b Fb(8)150 5164 y(commands,)26
-b(simple)17 b Fc(:)d(:)g(:)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(:)44
-b Fb(8)150 5252 y(commen)n(ts,)26 b(shell)7 b Fc(:)15
-b(:)e(:)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(:)34
-b Fb(7)150 5340 y(completion)27 b(builtins)15 b Fc(:)e(:)g(:)g(:)g(:)g
+(:)g(:)h(:)46 b Fb(3)2025 2470 y(copro)r(cess)12 b Fc(:)i(:)f(:)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(:)38
+b Fb(15)2025 2733 y Fr(D)2025 2854 y Fb(directory)26
+b(stac)n(k)c Fc(:)13 b(:)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(:)49 b Fb(89)2025 3118 y Fr(E)2025 3239 y Fb(editing)26
+b(command)g(lines)11 b Fc(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
+b Fb(102)2025 3329 y(en)n(vironmen)n(t)12 b Fc(:)g(:)h(:)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(:)39 b Fb(37)2025
+3419 y(ev)l(aluation,)26 b(arithmetic)e Fc(:)13 b(:)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(:)42 b Fb(122)2025 2290 y(con\014guration)15
-b Fc(:)f(:)f(:)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(:)42
-b Fb(135)2025 2380 y(con)n(trol)26 b(op)r(erator)20 b
-Fc(:)14 b(:)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(:)46
-b Fb(3)2025 2470 y(copro)r(cess)12 b Fc(:)i(:)f(:)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(:)38 b
-Fb(15)2025 2733 y Fr(D)2025 2854 y Fb(directory)26 b(stac)n(k)c
-Fc(:)13 b(:)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(:)49
-b Fb(85)2025 3118 y Fr(E)2025 3239 y Fb(editing)26 b(command)g(lines)13
-b Fc(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fb(98)2025 3329
-y(en)n(vironmen)n(t)12 b Fc(:)g(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)49 b Fb(86)2025 3509 y(ev)n(en)n(t)24 b(designators)14
+b Fc(:)h(:)e(:)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(:)41 b
+Fb(136)2025 3599 y(execution)25 b(en)n(vironmen)n(t)11
+b Fc(:)i(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)37 b Fb(36)2025 3688
+y(exit)25 b(status)18 b Fc(:)c(:)f(:)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(:)45 b Fb(3,)26 b(37)2025 3778 y(expansion)20
+b Fc(:)13 b(:)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(:)g(:)g(:)g(:)g(:)39 b Fb(34)2025 3419 y(ev)l(aluation,)26
-b(arithmetic)e Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)49 b
-Fb(82)2025 3509 y(ev)n(en)n(t)24 b(designators)14 b Fc(:)h(:)e(:)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(:)41 b Fb(132)2025 3599 y(execution)25
-b(en)n(vironmen)n(t)11 b Fc(:)i(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)37
-b Fb(33)2025 3688 y(exit)25 b(status)18 b Fc(:)c(:)f(:)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(:)45 b Fb(3,)26
-b(35)2025 3778 y(expansion)20 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)47 b Fb(20)2025 3868 y(expansion,)26 b(arithmetic)12
+b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(28)2025 3958
+y(expansion,)26 b(brace)10 b Fc(:)j(:)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(:)36 b Fb(21)2025 4048 y(expansion,)26 b(\014lename)12
+b Fc(:)h(:)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(:)38 b Fb(29)2025
+4138 y(expansion,)26 b(parameter)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)40 b Fb(22)2025 4228 y(expansion,)26 b(pathname)18
+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(:)45 b Fb(29)2025
+4317 y(expansion,)26 b(tilde)8 b Fc(:)13 b(:)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(:)34 b Fb(21)2025 4407 y(expressions,)27
+b(arithmetic)7 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34
+b Fb(86)2025 4497 y(expressions,)27 b(conditional)11
+b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fb(84)2025 4760 y Fr(F)2025
+4882 y Fb(\014eld)15 b Fc(:)e(:)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(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(20)2025
-3868 y(expansion,)26 b(arithmetic)12 b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)38 b Fb(25)2025 3958 y(expansion,)26 b(brace)10 b
-Fc(:)j(:)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(:)36
-b Fb(20)2025 4048 y(expansion,)26 b(\014lename)12 b Fc(:)h(:)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(:)38 b Fb(26)2025 4138 y(expansion,)26
-b(parameter)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)40
-b Fb(22)2025 4228 y(expansion,)26 b(pathname)18 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(:)45 b Fb(26)2025 4317 y(expansion,)26
-b(tilde)8 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)42
+b Fb(3)2025 4972 y(\014lename)15 b Fc(:)f(:)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(:)34 b Fb(21)2025 4407 y(expressions,)27 b(arithmetic)7
-b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(82)2025 4497
-y(expressions,)27 b(conditional)11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38
-b Fb(80)2025 4760 y Fr(F)2025 4882 y Fb(\014eld)15 b
-Fc(:)e(:)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(:)g(:)h(:)42 b Fb(3)2025 4972
-y(\014lename)15 b Fc(:)f(:)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(:)g(:)g(:)g(:)g(:)h(:)42 b Fb(3)2025
-5062 y(\014lename)26 b(expansion)c Fc(:)14 b(:)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(:)49 b Fb(26)2025 5151 y(foreground)23 b Fc(:)13
-b(:)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(:)
-49 b Fb(93)2025 5241 y(functions,)26 b(shell)21 b Fc(:)13
-b(:)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(:)47
-b Fb(16)p eop end
-%%Page: 165 171
-TeXDict begin 165 170 bop 150 -116 a Ft(App)s(endix)29
-b(D:)i(Indexes)2623 b(165)150 299 y Fr(H)150 415 y Fb(history)26
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)42
+b Fb(3)2025 5062 y(\014lename)26 b(expansion)c Fc(:)14
+b(:)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(:)49 b Fb(29)2025
+5151 y(foreground)23 b Fc(:)13 b(:)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(:)49 b Fb(97)2025 5241 y(functions,)26
+b(shell)21 b Fc(:)13 b(:)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(:)47 b Fb(16)p eop end
+%%Page: 169 175
+TeXDict begin 169 174 bop 150 -116 a Ft(App)s(endix)29
+b(D:)i(Indexes)2623 b(169)150 299 y Fr(H)150 415 y Fb(history)26
b(builtins)14 b Fc(:)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(:)g(:)g(:)g(:)g(:)h(:)
-40 b Fb(129)150 502 y(history)26 b(ev)n(en)n(ts)18 b
+40 b Fb(133)150 502 y(history)26 b(ev)n(en)n(ts)18 b
Fc(:)13 b(:)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(:)46
-b Fb(132)150 589 y(history)26 b(expansion)8 b Fc(:)13
+b Fb(136)150 589 y(history)26 b(expansion)8 b Fc(:)13
b(:)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(:)35 b Fb(131)150
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fb(135)150
676 y(history)26 b(list)21 b Fc(:)13 b(:)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(:)47 b Fb(129)150 764 y(History)-6
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(133)150 764 y(History)-6
b(,)26 b(ho)n(w)g(to)f(use)13 b Fc(:)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(:)
-39 b Fb(128)150 1013 y Fr(I)150 1129 y Fb(iden)n(ti\014er)22
+39 b Fb(132)150 1013 y Fr(I)150 1129 y Fb(iden)n(ti\014er)22
b Fc(:)14 b(:)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(:)g(:)g(:)g(:)g(:)50 b Fb(3)150 1216 y(initialization)28
b(\014le,)e(readline)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(100)150
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(104)150
1304 y(installation)13 b Fc(:)i(:)e(:)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(:)40 b Fb(135)150 1391 y(in)n(teraction,)27
-b(readline)21 b Fc(:)13 b(:)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(:)47
-b Fb(97)150 1478 y(in)n(teractiv)n(e)26 b(shell)14 b
+f(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(139)150 1391 y(in)n(teraction,)27
+b(readline)18 b Fc(:)c(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45
+b Fb(101)150 1478 y(in)n(teractiv)n(e)26 b(shell)14 b
Fc(:)g(:)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(:)g(:)41 b Fb(77,)26
-b(78)150 1565 y(in)n(ternationalization)14 b Fc(:)h(:)f(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fb(81,)26
+b(82)150 1565 y(in)n(ternationalization)14 b Fc(:)h(:)f(:)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(:)41 b Fb(7)150 1798 y Fr(J)150 1914
y Fb(job)16 b Fc(:)e(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
b Fb(3)150 2001 y(job)26 b(con)n(trol)13 b Fc(:)h(:)f(:)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(:)40 b Fb(3,)26
-b(93)150 2251 y Fr(K)150 2367 y Fb(kill)g(ring)21 b Fc(:)13
-b(:)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(:)47 b Fb(99)150 2454 y(killing)27 b(text)19
-b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b(97)150 2251 y Fr(K)150 2367 y Fb(kill)g(ring)19 b Fc(:)13
+b(:)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(:)45 b Fb(103)150 2454 y(killing)27 b(text)17 b
+Fc(:)c(:)g(:)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(:)46 b Fb(99)150 2704 y Fr(L)150 2820 y Fb(lo)r(calization)14
+44 b Fb(103)150 2704 y Fr(L)150 2820 y Fb(lo)r(calization)14
b Fc(:)i(:)d(:)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(:)41 b Fb(7)150 2907 y(login)27 b(shell)17 b
Fc(:)d(:)f(:)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(:)44 b Fb(77)150 3156 y Fr(M)150 3272 y Fb(matc)n(hing,)26
+g(:)g(:)44 b Fb(81)150 3156 y Fr(M)150 3272 y Fb(matc)n(hing,)26
b(pattern)20 b Fc(:)14 b(:)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(:)47
-b Fb(27)150 3360 y(metac)n(haracter)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)g
+b Fb(29)150 3360 y(metac)n(haracter)18 b Fc(:)d(:)e(:)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(:)45 b Fb(3)150 3592
y Fr(N)150 3708 y Fb(name)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
b Fb(3)150 3796 y(nativ)n(e)25 b(languages)13 b Fc(:)i(:)e(:)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(:)40 b Fb(7)150 3883
-y(notation,)27 b(readline)9 b Fc(:)k(:)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(:)35 b Fb(98)150 4132 y Fr(O)150 4248 y Fb(op)r(erator,)27
+y(notation,)27 b(readline)7 b Fc(:)13 b(:)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(:)33 b Fb(102)150 4132 y Fr(O)150 4248 y Fb(op)r(erator,)27
b(shell)16 b Fc(:)e(:)f(:)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(:)43 b Fb(3)150 4498 y Fr(P)150 4614 y Fb(parameter)26
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)43 b Fb(18)150
4788 y(parameters,)27 b(p)r(ositional)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)44 b Fb(18)150 4876 y(parameters,)27 b(sp)r(ecial)18
+g(:)44 b Fb(19)150 4876 y(parameters,)27 b(sp)r(ecial)18
b Fc(:)c(:)g(:)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(:)44 b Fb(19)150
4963 y(pathname)25 b(expansion)12 b Fc(:)i(:)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(:)38 b Fb(26)150 5050 y(pattern)25 b(matc)n(hing)14
+g(:)38 b Fb(29)150 5050 y(pattern)25 b(matc)n(hing)14
b Fc(:)g(:)f(:)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(:)40
-b Fb(27)2025 299 y(pip)r(eline)23 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+b Fb(29)2025 299 y(pip)r(eline)23 b Fc(:)13 b(:)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(:)f(:)g(:)g(:)g(:)50
b Fb(8)2025 386 y(POSIX)17 b Fc(:)12 b(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44
b Fb(3)2025 474 y(POSIX)24 b(Mo)r(de)11 b Fc(:)j(:)f(:)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(:)37 b Fb(88)2025
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37 b Fb(92)2025
562 y(pro)r(cess)26 b(group)9 b Fc(:)14 b(:)f(:)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(:)37 b Fb(3)2025 649
f(:)g(:)g(:)g(:)g(:)49 b Fb(3)2025 737 y(pro)r(cess)26
b(substitution)c Fc(:)13 b(:)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(:)48
-b Fb(25)2025 824 y(programmable)27 b(completion)20 b
+b Fb(28)2025 824 y(programmable)27 b(completion)20 b
Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)46 b Fb(120)2025 912 y(prompting)11 b
+(:)g(:)h(:)f(:)46 b Fb(124)2025 912 y(prompting)11 b
Fc(:)i(:)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(:)38 b Fb(87)2025 1163 y Fr(Q)2025 1280 y Fb(quoting)10
+g(:)g(:)38 b Fb(91)2025 1163 y Fr(Q)2025 1280 y Fb(quoting)10
b Fc(:)j(:)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(:)h(:)f(:)g(:)37 b Fb(6)2025 1368 y(quoting,)26
b(ANSI)13 b Fc(:)e(:)j(:)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(:)40 b Fb(6)2025 1619 y Fr(R)2025 1736 y Fb(Readline,)26
-b(ho)n(w)g(to)g(use)7 b Fc(:)13 b(:)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(:)34
-b Fb(96)2025 1824 y(redirection)7 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+b(ho)n(w)g(to)g(use)c 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(:)49
+b Fb(100)2025 1824 y(redirection)7 b Fc(:)13 b(:)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(:)33 b
-Fb(28)2025 1911 y(reserv)n(ed)25 b(w)n(ord)7 b Fc(:)14
+Fb(31)2025 1911 y(reserv)n(ed)25 b(w)n(ord)7 b Fc(:)14
b(:)f(:)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(:)34
b Fb(3)2025 1999 y(restricted)26 b(shell)8 b Fc(:)14
b(:)f(:)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(88)2025 2086 y(return)25 b(status)c Fc(:)13 b(:)h(:)f(:)g(:)g(:)g
+b Fb(92)2025 2086 y(return)25 b(status)c Fc(:)13 b(:)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(:)48 b Fb(4)2025
2321 y Fr(S)2025 2438 y Fb(shell)26 b(arithmetic)11 b
Fc(:)j(:)f(:)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(:)37
-b Fb(82)2025 2526 y(shell)26 b(function)12 b Fc(:)h(:)g(:)h(:)f(:)g(:)g
+b Fb(86)2025 2526 y(shell)26 b(function)12 b Fc(:)h(:)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(:)g(:)g(:)g(:)g(:)h(:)38 b Fb(16)2025
2613 y(shell)26 b(script)c Fc(:)13 b(:)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(:)48 b Fb(36)2025 2701
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(38)2025 2701
y(shell)26 b(v)l(ariable)18 b Fc(:)c(:)f(:)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(:)45 b Fb(18)2025 2788 y(shell,)26
b(in)n(teractiv)n(e)14 b Fc(:)g(:)f(:)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(:)40 b Fb(78)2025 2876 y(signal)7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h
+g(:)h(:)40 b Fb(82)2025 2876 y(signal)7 b Fc(:)14 b(:)f(:)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(:)34 b Fb(4)2025 2964 y(signal)27 b(handling)17
b Fc(:)c(:)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(:)44
-b Fb(35)2025 3051 y(sp)r(ecial)27 b(builtin)10 b Fc(:)j(:)g(:)g(:)g(:)g
+b Fb(38)2025 3051 y(sp)r(ecial)27 b(builtin)10 b Fc(:)j(:)g(:)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(:)37 b Fb(4,)26 b(63)2025
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(4,)26 b(67)2025
3139 y(startup)f(\014les)d Fc(:)13 b(:)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(:)48 b Fb(77)2025 3226 y(susp)r(ending)25
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(81)2025 3226 y(susp)r(ending)25
b(jobs)6 b Fc(:)14 b(:)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
-(:)33 b Fb(93)2025 3478 y Fr(T)2025 3595 y Fb(tilde)26
+(:)33 b Fb(97)2025 3478 y Fr(T)2025 3595 y Fb(tilde)26
b(expansion)18 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(:)45 b Fb(21)2025 3682 y(tok)n(en)11 b Fc(:)h(:)i(:)f(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)34 b Fb(18)2025 4226 y(v)l(ariables,)27 b(readline)18
b Fc(:)c(:)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(:)45 b Fb(101)2025
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45 b Fb(105)2025
4477 y Fr(W)2025 4594 y Fb(w)n(ord)21 b Fc(:)13 b(:)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(:)h(:)f(:)g(:)g(:)g
(:)g(:)48 b Fb(4)2025 4682 y(w)n(ord)26 b(splitting)21
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(:)47
-b Fb(26)2025 4933 y Fr(Y)2025 5050 y Fb(y)n(anking)25
-b(text)9 b Fc(:)j(:)h(:)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(:)35 b Fb(99)p eop end
-%%Page: 166 172
-TeXDict begin 166 171 bop eop end
+b Fb(28)2025 4933 y Fr(Y)2025 5050 y Fb(y)n(anking)25
+b(text)7 b Fc(:)12 b(:)h(:)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(:)34 b Fb(103)p eop end
+%%Page: 170 176
+TeXDict begin 170 175 bop eop end
%%Trailer
userdict /end-hook known{end-hook}if
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
-Invariant Sections, with the Front-Cover texts being ``A GNU Manual'',
-and with the Back-Cover Texts as in (a) below. A copy of the license is
-included in the section entitled ``GNU Free Documentation License''.
-
-(a) The FSF's Back-Cover Text is: You are free to copy and modify
-this GNU manual. Buying copies from GNU Press supports the FSF in
-developing GNU and promoting software freedom.''
+Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+A copy of the license is included in the section entitled
+``GNU Free Documentation License''.
@end quotation
@endinput
@numsubsecentry{GNU Parallel}{3.2.6}{GNU Parallel}{15}
@numsecentry{Shell Functions}{3.3}{Shell Functions}{16}
@numsecentry{Shell Parameters}{3.4}{Shell Parameters}{18}
-@numsubsecentry{Positional Parameters}{3.4.1}{Positional Parameters}{18}
+@numsubsecentry{Positional Parameters}{3.4.1}{Positional Parameters}{19}
@numsubsecentry{Special Parameters}{3.4.2}{Special Parameters}{19}
@numsecentry{Shell Expansions}{3.5}{Shell Expansions}{20}
-@numsubsecentry{Brace Expansion}{3.5.1}{Brace Expansion}{20}
+@numsubsecentry{Brace Expansion}{3.5.1}{Brace Expansion}{21}
@numsubsecentry{Tilde Expansion}{3.5.2}{Tilde Expansion}{21}
@numsubsecentry{Shell Parameter Expansion}{3.5.3}{Shell Parameter Expansion}{22}
-@numsubsecentry{Command Substitution}{3.5.4}{Command Substitution}{25}
-@numsubsecentry{Arithmetic Expansion}{3.5.5}{Arithmetic Expansion}{25}
-@numsubsecentry{Process Substitution}{3.5.6}{Process Substitution}{25}
-@numsubsecentry{Word Splitting}{3.5.7}{Word Splitting}{26}
-@numsubsecentry{Filename Expansion}{3.5.8}{Filename Expansion}{26}
-@numsubsubsecentry{Pattern Matching}{3.5.8.1}{Pattern Matching}{27}
-@numsubsecentry{Quote Removal}{3.5.9}{Quote Removal}{28}
-@numsecentry{Redirections}{3.6}{Redirections}{28}
-@numsubsecentry{Redirecting Input}{3.6.1}{}{29}
-@numsubsecentry{Redirecting Output}{3.6.2}{}{30}
-@numsubsecentry{Appending Redirected Output}{3.6.3}{}{30}
-@numsubsecentry{Redirecting Standard Output and Standard Error}{3.6.4}{}{30}
-@numsubsecentry{Appending Standard Output and Standard Error}{3.6.5}{}{30}
-@numsubsecentry{Here Documents}{3.6.6}{}{31}
-@numsubsecentry{Here Strings}{3.6.7}{}{31}
-@numsubsecentry{Duplicating File Descriptors}{3.6.8}{}{31}
-@numsubsecentry{Moving File Descriptors}{3.6.9}{}{32}
-@numsubsecentry{Opening File Descriptors for Reading and Writing}{3.6.10}{}{32}
-@numsecentry{Executing Commands}{3.7}{Executing Commands}{32}
-@numsubsecentry{Simple Command Expansion}{3.7.1}{Simple Command Expansion}{32}
-@numsubsecentry{Command Search and Execution}{3.7.2}{Command Search and Execution}{33}
-@numsubsecentry{Command Execution Environment}{3.7.3}{Command Execution Environment}{33}
-@numsubsecentry{Environment}{3.7.4}{Environment}{34}
-@numsubsecentry{Exit Status}{3.7.5}{Exit Status}{35}
-@numsubsecentry{Signals}{3.7.6}{Signals}{35}
-@numsecentry{Shell Scripts}{3.8}{Shell Scripts}{36}
-@numchapentry{Shell Builtin Commands}{4}{Shell Builtin Commands}{37}
-@numsecentry{Bourne Shell Builtins}{4.1}{Bourne Shell Builtins}{37}
-@numsecentry{Bash Builtin Commands}{4.2}{Bash Builtins}{44}
-@numsecentry{Modifying Shell Behavior}{4.3}{Modifying Shell Behavior}{54}
-@numsubsecentry{The Set Builtin}{4.3.1}{The Set Builtin}{54}
-@numsubsecentry{The Shopt Builtin}{4.3.2}{The Shopt Builtin}{58}
-@numsecentry{Special Builtins}{4.4}{Special Builtins}{63}
-@numchapentry{Shell Variables}{5}{Shell Variables}{65}
-@numsecentry{Bourne Shell Variables}{5.1}{Bourne Shell Variables}{65}
-@numsecentry{Bash Variables}{5.2}{Bash Variables}{65}
-@numchapentry{Bash Features}{6}{Bash Features}{75}
-@numsecentry{Invoking Bash}{6.1}{Invoking Bash}{75}
-@numsecentry{Bash Startup Files}{6.2}{Bash Startup Files}{77}
-@numsecentry{Interactive Shells}{6.3}{Interactive Shells}{78}
-@numsubsecentry{What is an Interactive Shell?}{6.3.1}{What is an Interactive Shell?}{79}
-@numsubsecentry{Is this Shell Interactive?}{6.3.2}{Is this Shell Interactive?}{79}
-@numsubsecentry{Interactive Shell Behavior}{6.3.3}{Interactive Shell Behavior}{79}
-@numsecentry{Bash Conditional Expressions}{6.4}{Bash Conditional Expressions}{80}
-@numsecentry{Shell Arithmetic}{6.5}{Shell Arithmetic}{82}
-@numsecentry{Aliases}{6.6}{Aliases}{83}
-@numsecentry{Arrays}{6.7}{Arrays}{84}
-@numsecentry{The Directory Stack}{6.8}{The Directory Stack}{85}
-@numsubsecentry{Directory Stack Builtins}{6.8.1}{Directory Stack Builtins}{85}
-@numsecentry{Controlling the Prompt}{6.9}{Controlling the Prompt}{87}
-@numsecentry{The Restricted Shell}{6.10}{The Restricted Shell}{88}
-@numsecentry{Bash POSIX Mode}{6.11}{Bash POSIX Mode}{88}
-@numchapentry{Job Control}{7}{Job Control}{93}
-@numsecentry{Job Control Basics}{7.1}{Job Control Basics}{93}
-@numsecentry{Job Control Builtins}{7.2}{Job Control Builtins}{94}
-@numsecentry{Job Control Variables}{7.3}{Job Control Variables}{96}
-@numchapentry{Command Line Editing}{8}{Command Line Editing}{97}
-@numsecentry{Introduction to Line Editing}{8.1}{Introduction and Notation}{97}
-@numsecentry{Readline Interaction}{8.2}{Readline Interaction}{97}
-@numsubsecentry{Readline Bare Essentials}{8.2.1}{Readline Bare Essentials}{98}
-@numsubsecentry{Readline Movement Commands}{8.2.2}{Readline Movement Commands}{98}
-@numsubsecentry{Readline Killing Commands}{8.2.3}{Readline Killing Commands}{99}
-@numsubsecentry{Readline Arguments}{8.2.4}{Readline Arguments}{99}
-@numsubsecentry{Searching for Commands in the History}{8.2.5}{Searching}{99}
-@numsecentry{Readline Init File}{8.3}{Readline Init File}{100}
-@numsubsecentry{Readline Init File Syntax}{8.3.1}{Readline Init File Syntax}{100}
-@numsubsecentry{Conditional Init Constructs}{8.3.2}{Conditional Init Constructs}{107}
-@numsubsecentry{Sample Init File}{8.3.3}{Sample Init File}{108}
-@numsecentry{Bindable Readline Commands}{8.4}{Bindable Readline Commands}{111}
-@numsubsecentry{Commands For Moving}{8.4.1}{Commands For Moving}{111}
-@numsubsecentry{Commands For Manipulating The History}{8.4.2}{Commands For History}{112}
-@numsubsecentry{Commands For Changing Text}{8.4.3}{Commands For Text}{113}
-@numsubsecentry{Killing And Yanking}{8.4.4}{Commands For Killing}{114}
-@numsubsecentry{Specifying Numeric Arguments}{8.4.5}{Numeric Arguments}{115}
-@numsubsecentry{Letting Readline Type For You}{8.4.6}{Commands For Completion}{116}
-@numsubsecentry{Keyboard Macros}{8.4.7}{Keyboard Macros}{117}
-@numsubsecentry{Some Miscellaneous Commands}{8.4.8}{Miscellaneous Commands}{118}
-@numsecentry{Readline vi Mode}{8.5}{Readline vi Mode}{120}
-@numsecentry{Programmable Completion}{8.6}{Programmable Completion}{120}
-@numsecentry{Programmable Completion Builtins}{8.7}{Programmable Completion Builtins}{122}
-@numsecentry{A Programmable Completion Example}{8.8}{A Programmable Completion Example}{126}
-@numchapentry{Using History Interactively}{9}{Using History Interactively}{129}
-@numsecentry{Bash History Facilities}{9.1}{Bash History Facilities}{129}
-@numsecentry{Bash History Builtins}{9.2}{Bash History Builtins}{129}
-@numsecentry{History Expansion}{9.3}{History Interaction}{131}
-@numsubsecentry{Event Designators}{9.3.1}{Event Designators}{132}
-@numsubsecentry{Word Designators}{9.3.2}{Word Designators}{132}
-@numsubsecentry{Modifiers}{9.3.3}{Modifiers}{133}
-@numchapentry{Installing Bash}{10}{Installing Bash}{135}
-@numsecentry{Basic Installation}{10.1}{Basic Installation}{135}
-@numsecentry{Compilers and Options}{10.2}{Compilers and Options}{136}
-@numsecentry{Compiling For Multiple Architectures}{10.3}{Compiling For Multiple Architectures}{136}
-@numsecentry{Installation Names}{10.4}{Installation Names}{136}
-@numsecentry{Specifying the System Type}{10.5}{Specifying the System Type}{136}
-@numsecentry{Sharing Defaults}{10.6}{Sharing Defaults}{137}
-@numsecentry{Operation Controls}{10.7}{Operation Controls}{137}
-@numsecentry{Optional Features}{10.8}{Optional Features}{137}
-@appentry{Reporting Bugs}{A}{Reporting Bugs}{143}
-@appentry{Major Differences From The Bourne Shell}{B}{Major Differences From The Bourne Shell}{145}
-@appsecentry{Implementation Differences From The SVR4.2 Shell}{B.1}{}{149}
-@appentry{GNU Free Documentation License}{C}{GNU Free Documentation License}{151}
-@appentry{Indexes}{D}{Indexes}{159}
-@appsecentry{Index of Shell Builtin Commands}{D.1}{Builtin Index}{159}
-@appsecentry{Index of Shell Reserved Words}{D.2}{Reserved Word Index}{160}
-@appsecentry{Parameter and Variable Index}{D.3}{Variable Index}{160}
-@appsecentry{Function Index}{D.4}{Function Index}{162}
-@appsecentry{Concept Index}{D.5}{Concept Index}{164}
+@numsubsecentry{Command Substitution}{3.5.4}{Command Substitution}{27}
+@numsubsecentry{Arithmetic Expansion}{3.5.5}{Arithmetic Expansion}{28}
+@numsubsecentry{Process Substitution}{3.5.6}{Process Substitution}{28}
+@numsubsecentry{Word Splitting}{3.5.7}{Word Splitting}{28}
+@numsubsecentry{Filename Expansion}{3.5.8}{Filename Expansion}{29}
+@numsubsubsecentry{Pattern Matching}{3.5.8.1}{Pattern Matching}{29}
+@numsubsecentry{Quote Removal}{3.5.9}{Quote Removal}{30}
+@numsecentry{Redirections}{3.6}{Redirections}{31}
+@numsubsecentry{Redirecting Input}{3.6.1}{}{32}
+@numsubsecentry{Redirecting Output}{3.6.2}{}{32}
+@numsubsecentry{Appending Redirected Output}{3.6.3}{}{32}
+@numsubsecentry{Redirecting Standard Output and Standard Error}{3.6.4}{}{32}
+@numsubsecentry{Appending Standard Output and Standard Error}{3.6.5}{}{33}
+@numsubsecentry{Here Documents}{3.6.6}{}{33}
+@numsubsecentry{Here Strings}{3.6.7}{}{33}
+@numsubsecentry{Duplicating File Descriptors}{3.6.8}{}{33}
+@numsubsecentry{Moving File Descriptors}{3.6.9}{}{34}
+@numsubsecentry{Opening File Descriptors for Reading and Writing}{3.6.10}{}{34}
+@numsecentry{Executing Commands}{3.7}{Executing Commands}{34}
+@numsubsecentry{Simple Command Expansion}{3.7.1}{Simple Command Expansion}{34}
+@numsubsecentry{Command Search and Execution}{3.7.2}{Command Search and Execution}{35}
+@numsubsecentry{Command Execution Environment}{3.7.3}{Command Execution Environment}{36}
+@numsubsecentry{Environment}{3.7.4}{Environment}{37}
+@numsubsecentry{Exit Status}{3.7.5}{Exit Status}{37}
+@numsubsecentry{Signals}{3.7.6}{Signals}{38}
+@numsecentry{Shell Scripts}{3.8}{Shell Scripts}{38}
+@numchapentry{Shell Builtin Commands}{4}{Shell Builtin Commands}{41}
+@numsecentry{Bourne Shell Builtins}{4.1}{Bourne Shell Builtins}{41}
+@numsecentry{Bash Builtin Commands}{4.2}{Bash Builtins}{48}
+@numsecentry{Modifying Shell Behavior}{4.3}{Modifying Shell Behavior}{58}
+@numsubsecentry{The Set Builtin}{4.3.1}{The Set Builtin}{58}
+@numsubsecentry{The Shopt Builtin}{4.3.2}{The Shopt Builtin}{62}
+@numsecentry{Special Builtins}{4.4}{Special Builtins}{67}
+@numchapentry{Shell Variables}{5}{Shell Variables}{69}
+@numsecentry{Bourne Shell Variables}{5.1}{Bourne Shell Variables}{69}
+@numsecentry{Bash Variables}{5.2}{Bash Variables}{69}
+@numchapentry{Bash Features}{6}{Bash Features}{79}
+@numsecentry{Invoking Bash}{6.1}{Invoking Bash}{79}
+@numsecentry{Bash Startup Files}{6.2}{Bash Startup Files}{81}
+@numsecentry{Interactive Shells}{6.3}{Interactive Shells}{82}
+@numsubsecentry{What is an Interactive Shell?}{6.3.1}{What is an Interactive Shell?}{83}
+@numsubsecentry{Is this Shell Interactive?}{6.3.2}{Is this Shell Interactive?}{83}
+@numsubsecentry{Interactive Shell Behavior}{6.3.3}{Interactive Shell Behavior}{83}
+@numsecentry{Bash Conditional Expressions}{6.4}{Bash Conditional Expressions}{84}
+@numsecentry{Shell Arithmetic}{6.5}{Shell Arithmetic}{86}
+@numsecentry{Aliases}{6.6}{Aliases}{87}
+@numsecentry{Arrays}{6.7}{Arrays}{88}
+@numsecentry{The Directory Stack}{6.8}{The Directory Stack}{89}
+@numsubsecentry{Directory Stack Builtins}{6.8.1}{Directory Stack Builtins}{89}
+@numsecentry{Controlling the Prompt}{6.9}{Controlling the Prompt}{91}
+@numsecentry{The Restricted Shell}{6.10}{The Restricted Shell}{92}
+@numsecentry{Bash POSIX Mode}{6.11}{Bash POSIX Mode}{92}
+@numchapentry{Job Control}{7}{Job Control}{97}
+@numsecentry{Job Control Basics}{7.1}{Job Control Basics}{97}
+@numsecentry{Job Control Builtins}{7.2}{Job Control Builtins}{98}
+@numsecentry{Job Control Variables}{7.3}{Job Control Variables}{100}
+@numchapentry{Command Line Editing}{8}{Command Line Editing}{101}
+@numsecentry{Introduction to Line Editing}{8.1}{Introduction and Notation}{101}
+@numsecentry{Readline Interaction}{8.2}{Readline Interaction}{101}
+@numsubsecentry{Readline Bare Essentials}{8.2.1}{Readline Bare Essentials}{102}
+@numsubsecentry{Readline Movement Commands}{8.2.2}{Readline Movement Commands}{102}
+@numsubsecentry{Readline Killing Commands}{8.2.3}{Readline Killing Commands}{103}
+@numsubsecentry{Readline Arguments}{8.2.4}{Readline Arguments}{103}
+@numsubsecentry{Searching for Commands in the History}{8.2.5}{Searching}{103}
+@numsecentry{Readline Init File}{8.3}{Readline Init File}{104}
+@numsubsecentry{Readline Init File Syntax}{8.3.1}{Readline Init File Syntax}{104}
+@numsubsecentry{Conditional Init Constructs}{8.3.2}{Conditional Init Constructs}{111}
+@numsubsecentry{Sample Init File}{8.3.3}{Sample Init File}{112}
+@numsecentry{Bindable Readline Commands}{8.4}{Bindable Readline Commands}{115}
+@numsubsecentry{Commands For Moving}{8.4.1}{Commands For Moving}{115}
+@numsubsecentry{Commands For Manipulating The History}{8.4.2}{Commands For History}{116}
+@numsubsecentry{Commands For Changing Text}{8.4.3}{Commands For Text}{117}
+@numsubsecentry{Killing And Yanking}{8.4.4}{Commands For Killing}{118}
+@numsubsecentry{Specifying Numeric Arguments}{8.4.5}{Numeric Arguments}{119}
+@numsubsecentry{Letting Readline Type For You}{8.4.6}{Commands For Completion}{120}
+@numsubsecentry{Keyboard Macros}{8.4.7}{Keyboard Macros}{121}
+@numsubsecentry{Some Miscellaneous Commands}{8.4.8}{Miscellaneous Commands}{122}
+@numsecentry{Readline vi Mode}{8.5}{Readline vi Mode}{124}
+@numsecentry{Programmable Completion}{8.6}{Programmable Completion}{124}
+@numsecentry{Programmable Completion Builtins}{8.7}{Programmable Completion Builtins}{126}
+@numsecentry{A Programmable Completion Example}{8.8}{A Programmable Completion Example}{130}
+@numchapentry{Using History Interactively}{9}{Using History Interactively}{133}
+@numsecentry{Bash History Facilities}{9.1}{Bash History Facilities}{133}
+@numsecentry{Bash History Builtins}{9.2}{Bash History Builtins}{133}
+@numsecentry{History Expansion}{9.3}{History Interaction}{135}
+@numsubsecentry{Event Designators}{9.3.1}{Event Designators}{136}
+@numsubsecentry{Word Designators}{9.3.2}{Word Designators}{136}
+@numsubsecentry{Modifiers}{9.3.3}{Modifiers}{137}
+@numchapentry{Installing Bash}{10}{Installing Bash}{139}
+@numsecentry{Basic Installation}{10.1}{Basic Installation}{139}
+@numsecentry{Compilers and Options}{10.2}{Compilers and Options}{140}
+@numsecentry{Compiling For Multiple Architectures}{10.3}{Compiling For Multiple Architectures}{140}
+@numsecentry{Installation Names}{10.4}{Installation Names}{140}
+@numsecentry{Specifying the System Type}{10.5}{Specifying the System Type}{140}
+@numsecentry{Sharing Defaults}{10.6}{Sharing Defaults}{141}
+@numsecentry{Operation Controls}{10.7}{Operation Controls}{141}
+@numsecentry{Optional Features}{10.8}{Optional Features}{141}
+@appentry{Reporting Bugs}{A}{Reporting Bugs}{147}
+@appentry{Major Differences From The Bourne Shell}{B}{Major Differences From The Bourne Shell}{149}
+@appsecentry{Implementation Differences From The SVR4.2 Shell}{B.1}{}{153}
+@appentry{GNU Free Documentation License}{C}{GNU Free Documentation License}{155}
+@appentry{Indexes}{D}{Indexes}{163}
+@appsecentry{Index of Shell Builtin Commands}{D.1}{Builtin Index}{163}
+@appsecentry{Index of Shell Reserved Words}{D.2}{Reserved Word Index}{164}
+@appsecentry{Parameter and Variable Index}{D.3}{Variable Index}{164}
+@appsecentry{Function Index}{D.4}{Function Index}{166}
+@appsecentry{Concept Index}{D.5}{Concept Index}{168}
\entry{#}{19}{\code {#}}
\entry{?}{19}{\code {?}}
\entry{-}{19}{\code {-}}
-\entry{$}{19}{\code {$}}
-\entry{!}{19}{\code {!}}
-\entry{0}{19}{\code {0}}
-\entry{_}{19}{\code {_}}
-\entry{CDPATH}{65}{\code {CDPATH}}
-\entry{HOME}{65}{\code {HOME}}
-\entry{IFS}{65}{\code {IFS}}
-\entry{MAIL}{65}{\code {MAIL}}
-\entry{MAILPATH}{65}{\code {MAILPATH}}
-\entry{OPTARG}{65}{\code {OPTARG}}
-\entry{OPTIND}{65}{\code {OPTIND}}
-\entry{PATH}{65}{\code {PATH}}
-\entry{PS1}{65}{\code {PS1}}
-\entry{PS2}{65}{\code {PS2}}
-\entry{BASH}{65}{\code {BASH}}
-\entry{BASHOPTS}{66}{\code {BASHOPTS}}
-\entry{BASHPID}{66}{\code {BASHPID}}
-\entry{BASH_ALIASES}{66}{\code {BASH_ALIASES}}
-\entry{BASH_ARGC}{66}{\code {BASH_ARGC}}
-\entry{BASH_ARGV}{66}{\code {BASH_ARGV}}
-\entry{BASH_CMDS}{66}{\code {BASH_CMDS}}
-\entry{BASH_COMMAND}{66}{\code {BASH_COMMAND}}
-\entry{BASH_ENV}{66}{\code {BASH_ENV}}
-\entry{BASH_EXECUTION_STRING}{66}{\code {BASH_EXECUTION_STRING}}
-\entry{BASH_LINENO}{67}{\code {BASH_LINENO}}
-\entry{BASH_REMATCH}{67}{\code {BASH_REMATCH}}
-\entry{BASH_SOURCE}{67}{\code {BASH_SOURCE}}
-\entry{BASH_SUBSHELL}{67}{\code {BASH_SUBSHELL}}
-\entry{BASH_VERSINFO}{67}{\code {BASH_VERSINFO}}
-\entry{BASH_VERSION}{67}{\code {BASH_VERSION}}
-\entry{BASH_XTRACEFD}{67}{\code {BASH_XTRACEFD}}
-\entry{COLUMNS}{68}{\code {COLUMNS}}
-\entry{COMP_CWORD}{68}{\code {COMP_CWORD}}
-\entry{COMP_LINE}{68}{\code {COMP_LINE}}
-\entry{COMP_POINT}{68}{\code {COMP_POINT}}
-\entry{COMP_TYPE}{68}{\code {COMP_TYPE}}
-\entry{COMP_KEY}{68}{\code {COMP_KEY}}
-\entry{COMP_WORDBREAKS}{68}{\code {COMP_WORDBREAKS}}
-\entry{COMP_WORDS}{68}{\code {COMP_WORDS}}
-\entry{COMPREPLY}{69}{\code {COMPREPLY}}
-\entry{COPROC}{69}{\code {COPROC}}
-\entry{DIRSTACK}{69}{\code {DIRSTACK}}
-\entry{EMACS}{69}{\code {EMACS}}
-\entry{ENV}{69}{\code {ENV}}
-\entry{EUID}{69}{\code {EUID}}
-\entry{FCEDIT}{69}{\code {FCEDIT}}
-\entry{FIGNORE}{69}{\code {FIGNORE}}
-\entry{FUNCNAME}{69}{\code {FUNCNAME}}
-\entry{FUNCNEST}{69}{\code {FUNCNEST}}
-\entry{GLOBIGNORE}{69}{\code {GLOBIGNORE}}
-\entry{GROUPS}{70}{\code {GROUPS}}
-\entry{histchars}{70}{\code {histchars}}
-\entry{HISTCMD}{70}{\code {HISTCMD}}
-\entry{HISTCONTROL}{70}{\code {HISTCONTROL}}
-\entry{HISTFILE}{70}{\code {HISTFILE}}
-\entry{HISTFILESIZE}{70}{\code {HISTFILESIZE}}
-\entry{HISTIGNORE}{70}{\code {HISTIGNORE}}
-\entry{HISTSIZE}{71}{\code {HISTSIZE}}
-\entry{HISTTIMEFORMAT}{71}{\code {HISTTIMEFORMAT}}
-\entry{HOSTFILE}{71}{\code {HOSTFILE}}
-\entry{HOSTNAME}{71}{\code {HOSTNAME}}
-\entry{HOSTTYPE}{71}{\code {HOSTTYPE}}
-\entry{IGNOREEOF}{71}{\code {IGNOREEOF}}
-\entry{INPUTRC}{71}{\code {INPUTRC}}
-\entry{LANG}{71}{\code {LANG}}
-\entry{LC_ALL}{71}{\code {LC_ALL}}
-\entry{LC_COLLATE}{72}{\code {LC_COLLATE}}
-\entry{LC_CTYPE}{72}{\code {LC_CTYPE}}
-\entry{LC_MESSAGES}{72}{\code {LC_MESSAGES}}
-\entry{LC_NUMERIC}{72}{\code {LC_NUMERIC}}
-\entry{LINENO}{72}{\code {LINENO}}
-\entry{LINES}{72}{\code {LINES}}
-\entry{MACHTYPE}{72}{\code {MACHTYPE}}
-\entry{MAILCHECK}{72}{\code {MAILCHECK}}
-\entry{MAPFILE}{72}{\code {MAPFILE}}
-\entry{OLDPWD}{72}{\code {OLDPWD}}
-\entry{OPTERR}{72}{\code {OPTERR}}
-\entry{OSTYPE}{72}{\code {OSTYPE}}
-\entry{PIPESTATUS}{72}{\code {PIPESTATUS}}
-\entry{POSIXLY_CORRECT}{72}{\code {POSIXLY_CORRECT}}
-\entry{PPID}{73}{\code {PPID}}
-\entry{PROMPT_COMMAND}{73}{\code {PROMPT_COMMAND}}
-\entry{PROMPT_DIRTRIM}{73}{\code {PROMPT_DIRTRIM}}
-\entry{PS3}{73}{\code {PS3}}
-\entry{PS4}{73}{\code {PS4}}
-\entry{PWD}{73}{\code {PWD}}
-\entry{RANDOM}{73}{\code {RANDOM}}
-\entry{READLINE_LINE}{73}{\code {READLINE_LINE}}
-\entry{READLINE_POINT}{73}{\code {READLINE_POINT}}
-\entry{REPLY}{73}{\code {REPLY}}
-\entry{SECONDS}{73}{\code {SECONDS}}
-\entry{SHELL}{73}{\code {SHELL}}
-\entry{SHELLOPTS}{73}{\code {SHELLOPTS}}
-\entry{SHLVL}{73}{\code {SHLVL}}
-\entry{TIMEFORMAT}{74}{\code {TIMEFORMAT}}
-\entry{TMOUT}{74}{\code {TMOUT}}
-\entry{TMPDIR}{74}{\code {TMPDIR}}
-\entry{UID}{74}{\code {UID}}
-\entry{auto_resume}{96}{\code {auto_resume}}
-\entry{bell-style}{101}{\code {bell-style}}
-\entry{bind-tty-special-chars}{101}{\code {bind-tty-special-chars}}
-\entry{colored-stats}{101}{\code {colored-stats}}
-\entry{comment-begin}{101}{\code {comment-begin}}
-\entry{completion-display-width}{101}{\code {completion-display-width}}
-\entry{completion-ignore-case}{101}{\code {completion-ignore-case}}
-\entry{completion-map-case}{101}{\code {completion-map-case}}
-\entry{completion-prefix-display-length}{102}{\code {completion-prefix-display-length}}
-\entry{completion-query-items}{102}{\code {completion-query-items}}
-\entry{convert-meta}{102}{\code {convert-meta}}
-\entry{disable-completion}{102}{\code {disable-completion}}
-\entry{editing-mode}{102}{\code {editing-mode}}
-\entry{enable-keypad}{102}{\code {enable-keypad}}
-\entry{expand-tilde}{102}{\code {expand-tilde}}
-\entry{history-preserve-point}{103}{\code {history-preserve-point}}
-\entry{history-size}{103}{\code {history-size}}
-\entry{horizontal-scroll-mode}{103}{\code {horizontal-scroll-mode}}
-\entry{input-meta}{103}{\code {input-meta}}
-\entry{meta-flag}{103}{\code {meta-flag}}
-\entry{isearch-terminators}{103}{\code {isearch-terminators}}
-\entry{keymap}{103}{\code {keymap}}
-\entry{mark-modified-lines}{104}{\code {mark-modified-lines}}
-\entry{mark-symlinked-directories}{104}{\code {mark-symlinked-directories}}
-\entry{match-hidden-files}{104}{\code {match-hidden-files}}
-\entry{menu-complete-display-prefix}{104}{\code {menu-complete-display-prefix}}
-\entry{output-meta}{104}{\code {output-meta}}
-\entry{page-completions}{104}{\code {page-completions}}
-\entry{revert-all-at-newline}{104}{\code {revert-all-at-newline}}
-\entry{show-all-if-ambiguous}{104}{\code {show-all-if-ambiguous}}
-\entry{show-all-if-unmodified}{105}{\code {show-all-if-unmodified}}
-\entry{skip-completed-text}{105}{\code {skip-completed-text}}
-\entry{visible-stats}{105}{\code {visible-stats}}
+\entry{$}{20}{\code {$}}
+\entry{!}{20}{\code {!}}
+\entry{0}{20}{\code {0}}
+\entry{_}{20}{\code {_}}
+\entry{CDPATH}{69}{\code {CDPATH}}
+\entry{HOME}{69}{\code {HOME}}
+\entry{IFS}{69}{\code {IFS}}
+\entry{MAIL}{69}{\code {MAIL}}
+\entry{MAILPATH}{69}{\code {MAILPATH}}
+\entry{OPTARG}{69}{\code {OPTARG}}
+\entry{OPTIND}{69}{\code {OPTIND}}
+\entry{PATH}{69}{\code {PATH}}
+\entry{PS1}{69}{\code {PS1}}
+\entry{PS2}{69}{\code {PS2}}
+\entry{BASH}{69}{\code {BASH}}
+\entry{BASHOPTS}{70}{\code {BASHOPTS}}
+\entry{BASHPID}{70}{\code {BASHPID}}
+\entry{BASH_ALIASES}{70}{\code {BASH_ALIASES}}
+\entry{BASH_ARGC}{70}{\code {BASH_ARGC}}
+\entry{BASH_ARGV}{70}{\code {BASH_ARGV}}
+\entry{BASH_CMDS}{70}{\code {BASH_CMDS}}
+\entry{BASH_COMMAND}{70}{\code {BASH_COMMAND}}
+\entry{BASH_ENV}{70}{\code {BASH_ENV}}
+\entry{BASH_EXECUTION_STRING}{70}{\code {BASH_EXECUTION_STRING}}
+\entry{BASH_LINENO}{71}{\code {BASH_LINENO}}
+\entry{BASH_REMATCH}{71}{\code {BASH_REMATCH}}
+\entry{BASH_SOURCE}{71}{\code {BASH_SOURCE}}
+\entry{BASH_SUBSHELL}{71}{\code {BASH_SUBSHELL}}
+\entry{BASH_VERSINFO}{71}{\code {BASH_VERSINFO}}
+\entry{BASH_VERSION}{71}{\code {BASH_VERSION}}
+\entry{BASH_XTRACEFD}{71}{\code {BASH_XTRACEFD}}
+\entry{COLUMNS}{72}{\code {COLUMNS}}
+\entry{COMP_CWORD}{72}{\code {COMP_CWORD}}
+\entry{COMP_LINE}{72}{\code {COMP_LINE}}
+\entry{COMP_POINT}{72}{\code {COMP_POINT}}
+\entry{COMP_TYPE}{72}{\code {COMP_TYPE}}
+\entry{COMP_KEY}{72}{\code {COMP_KEY}}
+\entry{COMP_WORDBREAKS}{72}{\code {COMP_WORDBREAKS}}
+\entry{COMP_WORDS}{72}{\code {COMP_WORDS}}
+\entry{COMPREPLY}{73}{\code {COMPREPLY}}
+\entry{COPROC}{73}{\code {COPROC}}
+\entry{DIRSTACK}{73}{\code {DIRSTACK}}
+\entry{EMACS}{73}{\code {EMACS}}
+\entry{ENV}{73}{\code {ENV}}
+\entry{EUID}{73}{\code {EUID}}
+\entry{FCEDIT}{73}{\code {FCEDIT}}
+\entry{FIGNORE}{73}{\code {FIGNORE}}
+\entry{FUNCNAME}{73}{\code {FUNCNAME}}
+\entry{FUNCNEST}{73}{\code {FUNCNEST}}
+\entry{GLOBIGNORE}{73}{\code {GLOBIGNORE}}
+\entry{GROUPS}{74}{\code {GROUPS}}
+\entry{histchars}{74}{\code {histchars}}
+\entry{HISTCMD}{74}{\code {HISTCMD}}
+\entry{HISTCONTROL}{74}{\code {HISTCONTROL}}
+\entry{HISTFILE}{74}{\code {HISTFILE}}
+\entry{HISTFILESIZE}{74}{\code {HISTFILESIZE}}
+\entry{HISTIGNORE}{74}{\code {HISTIGNORE}}
+\entry{HISTSIZE}{75}{\code {HISTSIZE}}
+\entry{HISTTIMEFORMAT}{75}{\code {HISTTIMEFORMAT}}
+\entry{HOSTFILE}{75}{\code {HOSTFILE}}
+\entry{HOSTNAME}{75}{\code {HOSTNAME}}
+\entry{HOSTTYPE}{75}{\code {HOSTTYPE}}
+\entry{IGNOREEOF}{75}{\code {IGNOREEOF}}
+\entry{INPUTRC}{75}{\code {INPUTRC}}
+\entry{LANG}{75}{\code {LANG}}
+\entry{LC_ALL}{75}{\code {LC_ALL}}
+\entry{LC_COLLATE}{76}{\code {LC_COLLATE}}
+\entry{LC_CTYPE}{76}{\code {LC_CTYPE}}
+\entry{LC_MESSAGES}{76}{\code {LC_MESSAGES}}
+\entry{LC_NUMERIC}{76}{\code {LC_NUMERIC}}
+\entry{LINENO}{76}{\code {LINENO}}
+\entry{LINES}{76}{\code {LINES}}
+\entry{MACHTYPE}{76}{\code {MACHTYPE}}
+\entry{MAILCHECK}{76}{\code {MAILCHECK}}
+\entry{MAPFILE}{76}{\code {MAPFILE}}
+\entry{OLDPWD}{76}{\code {OLDPWD}}
+\entry{OPTERR}{76}{\code {OPTERR}}
+\entry{OSTYPE}{76}{\code {OSTYPE}}
+\entry{PIPESTATUS}{76}{\code {PIPESTATUS}}
+\entry{POSIXLY_CORRECT}{76}{\code {POSIXLY_CORRECT}}
+\entry{PPID}{77}{\code {PPID}}
+\entry{PROMPT_COMMAND}{77}{\code {PROMPT_COMMAND}}
+\entry{PROMPT_DIRTRIM}{77}{\code {PROMPT_DIRTRIM}}
+\entry{PS3}{77}{\code {PS3}}
+\entry{PS4}{77}{\code {PS4}}
+\entry{PWD}{77}{\code {PWD}}
+\entry{RANDOM}{77}{\code {RANDOM}}
+\entry{READLINE_LINE}{77}{\code {READLINE_LINE}}
+\entry{READLINE_POINT}{77}{\code {READLINE_POINT}}
+\entry{REPLY}{77}{\code {REPLY}}
+\entry{SECONDS}{77}{\code {SECONDS}}
+\entry{SHELL}{77}{\code {SHELL}}
+\entry{SHELLOPTS}{77}{\code {SHELLOPTS}}
+\entry{SHLVL}{77}{\code {SHLVL}}
+\entry{TIMEFORMAT}{78}{\code {TIMEFORMAT}}
+\entry{TMOUT}{78}{\code {TMOUT}}
+\entry{TMPDIR}{78}{\code {TMPDIR}}
+\entry{UID}{78}{\code {UID}}
+\entry{auto_resume}{100}{\code {auto_resume}}
+\entry{bell-style}{105}{\code {bell-style}}
+\entry{bind-tty-special-chars}{105}{\code {bind-tty-special-chars}}
+\entry{colored-stats}{105}{\code {colored-stats}}
+\entry{comment-begin}{105}{\code {comment-begin}}
+\entry{completion-display-width}{105}{\code {completion-display-width}}
+\entry{completion-ignore-case}{105}{\code {completion-ignore-case}}
+\entry{completion-map-case}{105}{\code {completion-map-case}}
+\entry{completion-prefix-display-length}{106}{\code {completion-prefix-display-length}}
+\entry{completion-query-items}{106}{\code {completion-query-items}}
+\entry{convert-meta}{106}{\code {convert-meta}}
+\entry{disable-completion}{106}{\code {disable-completion}}
+\entry{editing-mode}{106}{\code {editing-mode}}
+\entry{enable-keypad}{106}{\code {enable-keypad}}
+\entry{expand-tilde}{106}{\code {expand-tilde}}
+\entry{history-preserve-point}{107}{\code {history-preserve-point}}
+\entry{history-size}{107}{\code {history-size}}
+\entry{horizontal-scroll-mode}{107}{\code {horizontal-scroll-mode}}
+\entry{input-meta}{107}{\code {input-meta}}
+\entry{meta-flag}{107}{\code {meta-flag}}
+\entry{isearch-terminators}{107}{\code {isearch-terminators}}
+\entry{keymap}{107}{\code {keymap}}
+\entry{mark-modified-lines}{108}{\code {mark-modified-lines}}
+\entry{mark-symlinked-directories}{108}{\code {mark-symlinked-directories}}
+\entry{match-hidden-files}{108}{\code {match-hidden-files}}
+\entry{menu-complete-display-prefix}{108}{\code {menu-complete-display-prefix}}
+\entry{output-meta}{108}{\code {output-meta}}
+\entry{page-completions}{108}{\code {page-completions}}
+\entry{revert-all-at-newline}{108}{\code {revert-all-at-newline}}
+\entry{show-all-if-ambiguous}{108}{\code {show-all-if-ambiguous}}
+\entry{show-all-if-unmodified}{109}{\code {show-all-if-unmodified}}
+\entry{skip-completed-text}{109}{\code {skip-completed-text}}
+\entry{visible-stats}{109}{\code {visible-stats}}
\initial {!}
-\entry {\code {!}}{19}
+\entry {\code {!}}{20}
\initial {#}
\entry {\code {#}}{19}
\initial {$}
-\entry {\code {$}}{19}
+\entry {\code {$}}{20}
\initial {*}
\entry {\code {*}}{19}
\initial {-}
\initial {@}
\entry {\code {@}}{19}
\initial {_}
-\entry {\code {_}}{19}
+\entry {\code {_}}{20}
\initial {0}
-\entry {\code {0}}{19}
+\entry {\code {0}}{20}
\initial {A}
-\entry {\code {auto_resume}}{96}
+\entry {\code {auto_resume}}{100}
\initial {B}
-\entry {\code {BASH}}{65}
-\entry {\code {BASH_ALIASES}}{66}
-\entry {\code {BASH_ARGC}}{66}
-\entry {\code {BASH_ARGV}}{66}
-\entry {\code {BASH_CMDS}}{66}
-\entry {\code {BASH_COMMAND}}{66}
-\entry {\code {BASH_ENV}}{66}
-\entry {\code {BASH_EXECUTION_STRING}}{66}
-\entry {\code {BASH_LINENO}}{67}
-\entry {\code {BASH_REMATCH}}{67}
-\entry {\code {BASH_SOURCE}}{67}
-\entry {\code {BASH_SUBSHELL}}{67}
-\entry {\code {BASH_VERSINFO}}{67}
-\entry {\code {BASH_VERSION}}{67}
-\entry {\code {BASH_XTRACEFD}}{67}
-\entry {\code {BASHOPTS}}{66}
-\entry {\code {BASHPID}}{66}
-\entry {\code {bell-style}}{101}
-\entry {\code {bind-tty-special-chars}}{101}
+\entry {\code {BASH}}{69}
+\entry {\code {BASH_ALIASES}}{70}
+\entry {\code {BASH_ARGC}}{70}
+\entry {\code {BASH_ARGV}}{70}
+\entry {\code {BASH_CMDS}}{70}
+\entry {\code {BASH_COMMAND}}{70}
+\entry {\code {BASH_ENV}}{70}
+\entry {\code {BASH_EXECUTION_STRING}}{70}
+\entry {\code {BASH_LINENO}}{71}
+\entry {\code {BASH_REMATCH}}{71}
+\entry {\code {BASH_SOURCE}}{71}
+\entry {\code {BASH_SUBSHELL}}{71}
+\entry {\code {BASH_VERSINFO}}{71}
+\entry {\code {BASH_VERSION}}{71}
+\entry {\code {BASH_XTRACEFD}}{71}
+\entry {\code {BASHOPTS}}{70}
+\entry {\code {BASHPID}}{70}
+\entry {\code {bell-style}}{105}
+\entry {\code {bind-tty-special-chars}}{105}
\initial {C}
-\entry {\code {CDPATH}}{65}
-\entry {\code {colored-stats}}{101}
-\entry {\code {COLUMNS}}{68}
-\entry {\code {comment-begin}}{101}
-\entry {\code {COMP_CWORD}}{68}
-\entry {\code {COMP_KEY}}{68}
-\entry {\code {COMP_LINE}}{68}
-\entry {\code {COMP_POINT}}{68}
-\entry {\code {COMP_TYPE}}{68}
-\entry {\code {COMP_WORDBREAKS}}{68}
-\entry {\code {COMP_WORDS}}{68}
-\entry {\code {completion-display-width}}{101}
-\entry {\code {completion-ignore-case}}{101}
-\entry {\code {completion-map-case}}{101}
-\entry {\code {completion-prefix-display-length}}{102}
-\entry {\code {completion-query-items}}{102}
-\entry {\code {COMPREPLY}}{69}
-\entry {\code {convert-meta}}{102}
-\entry {\code {COPROC}}{69}
+\entry {\code {CDPATH}}{69}
+\entry {\code {colored-stats}}{105}
+\entry {\code {COLUMNS}}{72}
+\entry {\code {comment-begin}}{105}
+\entry {\code {COMP_CWORD}}{72}
+\entry {\code {COMP_KEY}}{72}
+\entry {\code {COMP_LINE}}{72}
+\entry {\code {COMP_POINT}}{72}
+\entry {\code {COMP_TYPE}}{72}
+\entry {\code {COMP_WORDBREAKS}}{72}
+\entry {\code {COMP_WORDS}}{72}
+\entry {\code {completion-display-width}}{105}
+\entry {\code {completion-ignore-case}}{105}
+\entry {\code {completion-map-case}}{105}
+\entry {\code {completion-prefix-display-length}}{106}
+\entry {\code {completion-query-items}}{106}
+\entry {\code {COMPREPLY}}{73}
+\entry {\code {convert-meta}}{106}
+\entry {\code {COPROC}}{73}
\initial {D}
-\entry {\code {DIRSTACK}}{69}
-\entry {\code {disable-completion}}{102}
+\entry {\code {DIRSTACK}}{73}
+\entry {\code {disable-completion}}{106}
\initial {E}
-\entry {\code {editing-mode}}{102}
-\entry {\code {EMACS}}{69}
-\entry {\code {enable-keypad}}{102}
-\entry {\code {ENV}}{69}
-\entry {\code {EUID}}{69}
-\entry {\code {expand-tilde}}{102}
+\entry {\code {editing-mode}}{106}
+\entry {\code {EMACS}}{73}
+\entry {\code {enable-keypad}}{106}
+\entry {\code {ENV}}{73}
+\entry {\code {EUID}}{73}
+\entry {\code {expand-tilde}}{106}
\initial {F}
-\entry {\code {FCEDIT}}{69}
-\entry {\code {FIGNORE}}{69}
-\entry {\code {FUNCNAME}}{69}
-\entry {\code {FUNCNEST}}{69}
+\entry {\code {FCEDIT}}{73}
+\entry {\code {FIGNORE}}{73}
+\entry {\code {FUNCNAME}}{73}
+\entry {\code {FUNCNEST}}{73}
\initial {G}
-\entry {\code {GLOBIGNORE}}{69}
-\entry {\code {GROUPS}}{70}
+\entry {\code {GLOBIGNORE}}{73}
+\entry {\code {GROUPS}}{74}
\initial {H}
-\entry {\code {histchars}}{70}
-\entry {\code {HISTCMD}}{70}
-\entry {\code {HISTCONTROL}}{70}
-\entry {\code {HISTFILE}}{70}
-\entry {\code {HISTFILESIZE}}{70}
-\entry {\code {HISTIGNORE}}{70}
-\entry {\code {history-preserve-point}}{103}
-\entry {\code {history-size}}{103}
-\entry {\code {HISTSIZE}}{71}
-\entry {\code {HISTTIMEFORMAT}}{71}
-\entry {\code {HOME}}{65}
-\entry {\code {horizontal-scroll-mode}}{103}
-\entry {\code {HOSTFILE}}{71}
-\entry {\code {HOSTNAME}}{71}
-\entry {\code {HOSTTYPE}}{71}
+\entry {\code {histchars}}{74}
+\entry {\code {HISTCMD}}{74}
+\entry {\code {HISTCONTROL}}{74}
+\entry {\code {HISTFILE}}{74}
+\entry {\code {HISTFILESIZE}}{74}
+\entry {\code {HISTIGNORE}}{74}
+\entry {\code {history-preserve-point}}{107}
+\entry {\code {history-size}}{107}
+\entry {\code {HISTSIZE}}{75}
+\entry {\code {HISTTIMEFORMAT}}{75}
+\entry {\code {HOME}}{69}
+\entry {\code {horizontal-scroll-mode}}{107}
+\entry {\code {HOSTFILE}}{75}
+\entry {\code {HOSTNAME}}{75}
+\entry {\code {HOSTTYPE}}{75}
\initial {I}
-\entry {\code {IFS}}{65}
-\entry {\code {IGNOREEOF}}{71}
-\entry {\code {input-meta}}{103}
-\entry {\code {INPUTRC}}{71}
-\entry {\code {isearch-terminators}}{103}
+\entry {\code {IFS}}{69}
+\entry {\code {IGNOREEOF}}{75}
+\entry {\code {input-meta}}{107}
+\entry {\code {INPUTRC}}{75}
+\entry {\code {isearch-terminators}}{107}
\initial {K}
-\entry {\code {keymap}}{103}
+\entry {\code {keymap}}{107}
\initial {L}
-\entry {\code {LANG}}{71}
-\entry {\code {LC_ALL}}{71}
-\entry {\code {LC_COLLATE}}{72}
-\entry {\code {LC_CTYPE}}{72}
-\entry {\code {LC_MESSAGES}}{7, 72}
-\entry {\code {LC_NUMERIC}}{72}
-\entry {\code {LINENO}}{72}
-\entry {\code {LINES}}{72}
+\entry {\code {LANG}}{75}
+\entry {\code {LC_ALL}}{75}
+\entry {\code {LC_COLLATE}}{76}
+\entry {\code {LC_CTYPE}}{76}
+\entry {\code {LC_MESSAGES}}{7, 76}
+\entry {\code {LC_NUMERIC}}{76}
+\entry {\code {LINENO}}{76}
+\entry {\code {LINES}}{76}
\initial {M}
-\entry {\code {MACHTYPE}}{72}
-\entry {\code {MAIL}}{65}
-\entry {\code {MAILCHECK}}{72}
-\entry {\code {MAILPATH}}{65}
-\entry {\code {MAPFILE}}{72}
-\entry {\code {mark-modified-lines}}{104}
-\entry {\code {mark-symlinked-directories}}{104}
-\entry {\code {match-hidden-files}}{104}
-\entry {\code {menu-complete-display-prefix}}{104}
-\entry {\code {meta-flag}}{103}
+\entry {\code {MACHTYPE}}{76}
+\entry {\code {MAIL}}{69}
+\entry {\code {MAILCHECK}}{76}
+\entry {\code {MAILPATH}}{69}
+\entry {\code {MAPFILE}}{76}
+\entry {\code {mark-modified-lines}}{108}
+\entry {\code {mark-symlinked-directories}}{108}
+\entry {\code {match-hidden-files}}{108}
+\entry {\code {menu-complete-display-prefix}}{108}
+\entry {\code {meta-flag}}{107}
\initial {O}
-\entry {\code {OLDPWD}}{72}
-\entry {\code {OPTARG}}{65}
-\entry {\code {OPTERR}}{72}
-\entry {\code {OPTIND}}{65}
-\entry {\code {OSTYPE}}{72}
-\entry {\code {output-meta}}{104}
+\entry {\code {OLDPWD}}{76}
+\entry {\code {OPTARG}}{69}
+\entry {\code {OPTERR}}{76}
+\entry {\code {OPTIND}}{69}
+\entry {\code {OSTYPE}}{76}
+\entry {\code {output-meta}}{108}
\initial {P}
-\entry {\code {page-completions}}{104}
-\entry {\code {PATH}}{65}
-\entry {\code {PIPESTATUS}}{72}
-\entry {\code {POSIXLY_CORRECT}}{72}
-\entry {\code {PPID}}{73}
-\entry {\code {PROMPT_COMMAND}}{73}
-\entry {\code {PROMPT_DIRTRIM}}{73}
-\entry {\code {PS1}}{65}
-\entry {\code {PS2}}{65}
-\entry {\code {PS3}}{73}
-\entry {\code {PS4}}{73}
-\entry {\code {PWD}}{73}
+\entry {\code {page-completions}}{108}
+\entry {\code {PATH}}{69}
+\entry {\code {PIPESTATUS}}{76}
+\entry {\code {POSIXLY_CORRECT}}{76}
+\entry {\code {PPID}}{77}
+\entry {\code {PROMPT_COMMAND}}{77}
+\entry {\code {PROMPT_DIRTRIM}}{77}
+\entry {\code {PS1}}{69}
+\entry {\code {PS2}}{69}
+\entry {\code {PS3}}{77}
+\entry {\code {PS4}}{77}
+\entry {\code {PWD}}{77}
\initial {R}
-\entry {\code {RANDOM}}{73}
-\entry {\code {READLINE_LINE}}{73}
-\entry {\code {READLINE_POINT}}{73}
-\entry {\code {REPLY}}{73}
-\entry {\code {revert-all-at-newline}}{104}
+\entry {\code {RANDOM}}{77}
+\entry {\code {READLINE_LINE}}{77}
+\entry {\code {READLINE_POINT}}{77}
+\entry {\code {REPLY}}{77}
+\entry {\code {revert-all-at-newline}}{108}
\initial {S}
-\entry {\code {SECONDS}}{73}
-\entry {\code {SHELL}}{73}
-\entry {\code {SHELLOPTS}}{73}
-\entry {\code {SHLVL}}{73}
-\entry {\code {show-all-if-ambiguous}}{104}
-\entry {\code {show-all-if-unmodified}}{105}
-\entry {\code {skip-completed-text}}{105}
+\entry {\code {SECONDS}}{77}
+\entry {\code {SHELL}}{77}
+\entry {\code {SHELLOPTS}}{77}
+\entry {\code {SHLVL}}{77}
+\entry {\code {show-all-if-ambiguous}}{108}
+\entry {\code {show-all-if-unmodified}}{109}
+\entry {\code {skip-completed-text}}{109}
\initial {T}
\entry {\code {TEXTDOMAIN}}{7}
\entry {\code {TEXTDOMAINDIR}}{7}
-\entry {\code {TIMEFORMAT}}{74}
-\entry {\code {TMOUT}}{74}
-\entry {\code {TMPDIR}}{74}
+\entry {\code {TIMEFORMAT}}{78}
+\entry {\code {TMOUT}}{78}
+\entry {\code {TMPDIR}}{78}
\initial {U}
-\entry {\code {UID}}{74}
+\entry {\code {UID}}{78}
\initial {V}
-\entry {\code {visible-stats}}{105}
+\entry {\code {visible-stats}}{109}
loop) is resumed. The return value is 0 unless _\bn is not greater
than or equal to 1.
- d\bde\bec\bcl\bla\bar\bre\be [-\b-a\baA\bAf\bfF\bFg\bgi\bil\blr\brt\btu\bux\bx] [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be] ...]
- t\bty\byp\bpe\bes\bse\bet\bt [-\b-a\baA\bAf\bfF\bFg\bgi\bil\blr\brt\btu\bux\bx] [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be] ...]
+ d\bde\bec\bcl\bla\bar\bre\be [-\b-a\baA\bAf\bfF\bFg\bgi\bil\bln\bnr\brt\btu\bux\bx] [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be] ...]
+ t\bty\byp\bpe\bes\bse\bet\bt [-\b-a\baA\bAf\bfF\bFg\bgi\bil\bln\bnr\brt\btu\bux\bx] [-\b-p\bp] [_\bn_\ba_\bm_\be[=_\bv_\ba_\bl_\bu_\be] ...]
Declare variables and/or give them attributes. If no _\bn_\ba_\bm_\bes are
given then display the values of variables. The -\b-p\bp option will
display the attributes and values of each _\bn_\ba_\bm_\be. When -\b-p\bp is used
-\b-l\bl When the variable is assigned a value, all upper-case
characters are converted to lower-case. The upper-case
attribute is disabled.
+ -\b-n\bn Give each _\bn_\ba_\bm_\be the _\bn_\ba_\bm_\be_\br_\be_\bf attribute, making it a name
+ reference to another variable. That other variable is
+ defined by the value of _\bn_\ba_\bm_\be. All references and assign-
+ ments to _\bn_\ba_\bm_\be, except for changing the -\b-n\bn attribute
+ itself, are performed on the variable referenced by
+ _\bn_\ba_\bm_\be's value. The -\b-n\bn attribute cannot be applied to
+ array variables.
-\b-r\br Make _\bn_\ba_\bm_\bes readonly. These names cannot then be assigned
values by subsequent assignment statements or unset.
-\b-t\bt Give each _\bn_\ba_\bm_\be the _\bt_\br_\ba_\bc_\be attribute. Traced functions
supplied, all alias definitions are removed. The return value
is true unless a supplied _\bn_\ba_\bm_\be is not a defined alias.
- u\bun\bns\bse\bet\bt [-f\bfv\bv] [_\bn_\ba_\bm_\be ...]
+ u\bun\bns\bse\bet\bt [-f\bfv\bv] [-n\bn] [_\bn_\ba_\bm_\be ...]
For each _\bn_\ba_\bm_\be, remove the corresponding variable or function.
If the -\b-v\bv option is given, each _\bn_\ba_\bm_\be refers to a shell variable,
and that variable is removed. Read-only variables may not be
unset. If -\b-f\bf is specified, each _\bn_\ba_\bm_\be refers to a shell func-
- tion, and the function definition is removed. If no options are
- supplied, each _\bn_\ba_\bm_\be refers to a variable; if there is no vari-
- able by that name, any function with that name is unset. Each
- unset variable or function is removed from the environment
- passed to subsequent commands. If any of C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS, R\bRA\bAN\bN-\b-
+ tion, and the function definition is removed. If the -\b-n\bn option
+ is supplied, and _\bn_\ba_\bm_\be is a variable with the _\bn_\ba_\bm_\be_\br_\be_\bf attribute,
+ _\bn_\ba_\bm_\be will be unset rather than the variable it references. -\b-n\bn
+ has no effect if the -\b-f\bf option is supplied. If no options are
+ supplied, each _\bn_\ba_\bm_\be refers to a variable; if there is no vari-
+ able by that name, any function with that name is unset. Each
+ unset variable or function is removed from the environment
+ passed to subsequent commands. If any of C\bCO\bOM\bMP\bP_\b_W\bWO\bOR\bRD\bDB\bBR\bRE\bEA\bAK\bKS\bS, R\bRA\bAN\bN-\b-
D\bDO\bOM\bM, S\bSE\bEC\bCO\bON\bND\bDS\bS, L\bLI\bIN\bNE\bEN\bNO\bO, H\bHI\bIS\bST\bTC\bCM\bMD\bD, F\bFU\bUN\bNC\bCN\bNA\bAM\bME\bE, G\bGR\bRO\bOU\bUP\bPS\bS, or D\bDI\bIR\bRS\bST\bTA\bAC\bCK\bK are
unset, they lose their special properties, even if they are sub-
sequently reset. The exit status is true unless a _\bn_\ba_\bm_\be is read-
only.
w\bwa\bai\bit\bt [_\bn _\b._\b._\b.]
- Wait for each specified process and return its termination sta-
- tus. Each _\bn 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 _\bn is not given, all currently active child pro-
- cesses are waited for, and the return status is zero. If _\bn
- 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 _\bn 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 _\bn is not given, all currently active child pro-
+ cesses are waited for, and the return status is zero. If _\bn
+ 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.
S\bSE\bEE\bE A\bAL\bLS\bSO\bO
%!PS-Adobe-3.0
%%Creator: groff version 1.19.2
-%%CreationDate: Mon Mar 5 21:30:56 2012
+%%CreationDate: Thu Jul 5 20:43:03 2012
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%+ font Times-Italic
%%+ font Symbol
%%+ font Courier
%%DocumentSuppliedResources: procset grops 1.19 2
-%%Pages: 22
+%%Pages: 23
%%PageOrder: Ascend
%%DocumentMedia: Default 595 842 0 () ()
%%Orientation: Portrait
(ve)-.25 G(l').15 E 3.013('l)-.74 G .513(oop\) is resumed.)-3.013 F .514
(The return v)5.514 F .514(alue is 0 unless)-.25 F F2(n)3.014 E F0(is)
3.014 E(not greater than or equal to 1.)144 626.4 Q F1(declar)108 643.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 655.2 Q F0([)2.5 E F1(\255aAfFgilrtux)A F0 2.5(][)C F1
+Q(e)-.18 E F0([)2.5 E F1(\255aAfFgilnrtux)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 655.2 Q F0([)2.5 E F1(\255aAfFgilnrtux)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.265(Declare v)144 667.2 R 1.265(ariables and/or gi)-.25 F
1.565 -.15(ve t)-.25 H 1.265(hem attrib).15 F 3.765(utes. If)-.2 F(no)
(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 .909(rted to lo).15 F(wer)-.25 E(-)-.2 E 2.5(case. The)180 228 R
-(upper)2.5 E(-case attrib)-.2 E(ute is disabled.)-.2 E F1<ad72>144 240 Q
-F0(Mak)25.86 E(e)-.1 E F2(name)5.046 E F0 5.046(sr)C(eadonly)-5.046 E
-7.546(.T)-.65 G 2.546(hese names cannot then be assigned v)-7.546 F
-2.547(alues by subsequent)-.25 F(assignment statements or unset.)180 252
-Q F1<ad74>144 264 Q F0(Gi)26.97 E .73 -.15(ve e)-.25 H(ach).15 E F2
-(name)2.93 E F0(the)2.929 E F2(tr)2.929 E(ace)-.15 E F0(attrib)2.929 E
+(upper)2.5 E(-case attrib)-.2 E(ute is disabled.)-.2 E F1<ad6e>144 240 Q
+F0(Gi)24.74 E 1.619 -.15(ve e)-.25 H(ach).15 E F2(name)3.819 E F0(the)
+3.819 E F2(namer)3.819 E(ef)-.37 E F0(attrib)3.819 E 1.319
+(ute, making it a name reference to another v)-.2 F(ariable.)-.25 E
+1.033(That other v)180 252 R 1.033(ariable is de\214ned by the v)-.25 F
+1.033(alue of)-.25 F F2(name)3.533 E F0 6.033(.A)C 1.033
+(ll references and assignments to)-6.033 F F2(name)180 264 Q F0 4.032
+(,e)C 1.532(xcept for changing the)-4.182 F F1<ad6e>4.032 E F0(attrib)
+4.032 E 1.532(ute itself, are performed on the v)-.2 F 1.533
+(ariable refer)-.25 F(-)-.2 E(enced by)180 276 Q F2(name)2.5 E F0 1.1
+-.55('s v)D 2.5(alue. The).3 F F1<ad6e>2.5 E F0(attrib)2.5 E
+(ute cannot be applied to array v)-.2 E(ariables.)-.25 E F1<ad72>144 288
+Q F0(Mak)25.86 E(e)-.1 E F2(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 300
+Q F1<ad74>144 312 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(ute. T)-.2 F .429(raced functions inherit the)-.35 F F1(DEB)2.929
-E(UG)-.1 E F0(and)2.929 E F1(RETURN)2.929 E F0
-(traps from the calling shell.)180 276 Q(The trace attrib)5 E
-(ute has no special meaning for v)-.2 E(ariables.)-.25 E F1<ad75>144 288
-Q F0 .909(When the v)24.74 F .909(ariable is assigned a v)-.25 F .909
+E(UG)-.1 E F0(and)2.93 E F1(RETURN)2.93 E F0
+(traps from the calling shell.)180 324 Q(The trace attrib)5 E
+(ute has no special meaning for v)-.2 E(ariables.)-.25 E F1<ad75>144 336
+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 .91(rted to upper).15 F(-)-.2 E 2.5(case. The)180 300 R(lo)2.5
-E(wer)-.25 E(-case attrib)-.2 E(ute is disabled.)-.2 E F1<ad78>144 312 Q
-F0(Mark)25.3 E F2(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 .121
-(Using `+' instead of `\255' turns of)144 328.8 R 2.621(ft)-.25 G .121
-(he attrib)-2.621 F .121(ute instead, with the e)-.2 F .12
-(xceptions that)-.15 F F1(+a)2.62 E F0 .12(may not be used)2.62 F .644
-(to destro)144 340.8 R 3.144(ya)-.1 G 3.144(na)-3.144 G .644(rray v)
--3.144 F .644(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.145
-(ute. When)-.2 F .645(used in a func-)3.145 F(tion,)144 352.8 Q F1
+(ve)-.4 G .909(rted to upper).15 F(-)-.2 E 2.5(case. The)180 348 R(lo)
+2.5 E(wer)-.25 E(-case attrib)-.2 E(ute is disabled.)-.2 E F1<ad78>144
+360 Q F0(Mark)25.3 E F2(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 376.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 388.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(tion,)144 400.8 Q F1
(declar)2.835 E(e)-.18 E F0(and)2.835 E F1(typeset)2.835 E F0(mak)2.835
E 2.835(ee)-.1 G(ach)-2.835 E F2(name)2.835 E F0 .335
(local, as with the)2.835 F F1(local)2.835 E F0 .335
-(command, unless the)2.835 F F1<ad67>2.835 E F0(option)2.835 E .133
-(is supplied.)144 364.8 R .133(If a v)5.133 F .133
+(command, unless the)2.835 F F1<ad67>2.835 E F0(option)2.835 E .134
+(is supplied.)144 412.8 R .134(If a v)5.134 F .134
(ariable name is follo)-.25 F .134(wed by =)-.25 F F2(value)A F0 2.634
-(,t)C .134(he v)-2.634 F .134(alue of the v)-.25 F .134
-(ariable is set to)-.25 F F2(value)2.634 E F0 5.134(.T)C(he)-5.134 E
-.801(return v)144 376.8 R .801(alue is 0 unless an in)-.25 F -.25(va)-.4
-G .8
+(,t)C .134(he v)-2.634 F .134(alue of the v)-.25 F .133
+(ariable is set to)-.25 F F2(value)2.633 E F0 5.133(.T)C(he)-5.133 E .8
+(return v)144 424.8 R .8(alue is 0 unless an in)-.25 F -.25(va)-.4 G
+.801
(lid option is encountered, an attempt is made to de\214ne a function)
-.25 F(using)144 388.8 Q/F4 10/Courier@0 SF 1.038(\255f foo=bar)3.538 F
-F0 3.538(,a)C 3.538(na)-3.538 G 1.038(ttempt is made to assign a v)
--3.538 F 1.038(alue to a readonly v)-.25 F 1.039(ariable, an attempt is)
--.25 F .974(made to assign a v)144 400.8 R .974(alue to an array v)-.25
+.25 F(using)144 436.8 Q/F4 10/Courier@0 SF 1.039(\255f foo=bar)3.539 F
+F0 3.539(,a)C 3.539(na)-3.539 G 1.038(ttempt is made to assign a v)
+-3.539 F 1.038(alue to a readonly v)-.25 F 1.038(ariable, an attempt is)
+-.25 F .974(made to assign a v)144 448.8 R .974(alue to an array v)-.25
F .974(ariable without using the compound assignment syntax \(see)-.25 F
-F1(Arrays)144 412.8 Q F0(abo)2.86 E -.15(ve)-.15 G .36(\), one of the)
+F1(Arrays)144 460.8 Q F0(abo)2.86 E -.15(ve)-.15 G .36(\), one of the)
.15 F F2(names)2.86 E F0 .36(is not a v)2.86 F .36(alid shell v)-.25 F
-.36(ariable name, an attempt is made to turn of)-.25 F(f)-.25 E .057
-(readonly status for a readonly v)144 424.8 R .057
-(ariable, an attempt is made to turn of)-.25 F 2.556(fa)-.25 G .056
-(rray status for an array v)-2.556 F(ari-)-.25 E
-(able, or an attempt is made to display a non-e)144 436.8 Q
+.36(ariable name, an attempt is made to turn of)-.25 F(f)-.25 E .056
+(readonly status for a readonly v)144 472.8 R .057
+(ariable, an attempt is made to turn of)-.25 F 2.557(fa)-.25 G .057
+(rray status for an array v)-2.557 F(ari-)-.25 E
+(able, or an attempt is made to display a non-e)144 484.8 Q
(xistent function with)-.15 E F1<ad66>2.5 E F0(.)A F1
-(dirs [\255clpv] [+)108 453.6 Q F2(n)A F1 2.5(][)C<ad>-2.5 E F2(n)A F1
-(])A F0 -.4(Wi)144 465.6 S .328
+(dirs [\255clpv] [+)108 501.6 Q F2(n)A F1 2.5(][)C<ad>-2.5 E F2(n)A F1
+(])A F0 -.4(Wi)144 513.6 S .329
(thout options, displays the list of currently remembered directories.)
-.4 F .329(The def)5.329 F .329(ault display is on a)-.1 F 1.238
-(single line with directory names separated by spaces.)144 477.6 R 1.238
-(Directories are added to the list with the)6.238 F F1(pushd)144 489.6 Q
+.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 525.6 R 1.238
+(Directories are added to the list with the)6.238 F F1(pushd)144 537.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<ad63>144 501.6 Q F0
+2.5(se).15 G(ntries from the list.)-2.5 E F1<ad63>144 549.6 Q F0
(Clears the directory stack by deleting all of the entries.)25.86 E F1
-<ad6c>144 513.6 Q F0 .881
-(Produces a listing using full pathnames; the def)27.52 F .882
+<ad6c>144 561.6 Q F0 .882
+(Produces a listing using full pathnames; the def)27.52 F .881
(ault listing format uses a tilde to denote)-.1 F(the home directory)180
-525.6 Q(.)-.65 E F1<ad70>144 537.6 Q F0
+573.6 Q(.)-.65 E F1<ad70>144 585.6 Q F0
(Print the directory stack with one entry per line.)24.74 E F1<ad76>144
-549.6 Q F0 .273(Print the directory stack with one entry per line, pre\
-\214xing each entry with its inde)25.3 F 2.772(xi)-.15 G 2.772(nt)-2.772
-G(he)-2.772 E(stack.)180 561.6 Q F1(+)144 573.6 Q F2(n)A F0 1.564
-(Displays the)25.3 F F2(n)4.064 E F0 1.565
-(th entry counting from the left of the list sho)B 1.565(wn by)-.25 F F1
-(dirs)4.065 E F0 1.565(when in)4.065 F -.2(vo)-.4 G -.1(ke).2 G(d).1 E
-(without options, starting with zero.)180 585.6 Q F1<ad>144 597.6 Q F2
+597.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 609.6 Q F1(+)144 621.6 Q F2(n)A F0 1.565
+(Displays the)25.3 F F2(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 633.6 Q F1<ad>144 645.6 Q F2
(n)A F0 1.194(Displays the)25.3 F F2(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 609.6 Q .257(The return v)144
-626.4 R .258(alue is 0 unless an in)-.25 F -.25(va)-.4 G .258
+(without options, starting with zero.)180 657.6 Q .258(The return v)144
+674.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)
-.15 G 2.758(sb).15 G -.15(ey)-2.758 G .258(ond the end of the direc-)
-.15 F(tory stack.)144 638.4 Q F1(diso)108 655.2 Q(wn)-.1 E F0([)2.5 E F1
+.15 F(tory stack.)144 686.4 Q F1(diso)108 703.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 667.2 S .122(thout options, remo).4 F .422 -.15
+(...])2.5 E -.4(Wi)144 715.2 S .121(thout options, remo).4 F .422 -.15
(ve e)-.15 H(ach).15 E F2(jobspec)4.362 E F0 .122
(from the table of acti)2.932 F .422 -.15(ve j)-.25 H 2.622(obs. If).15
-F F2(jobspec)4.362 E F0 .121(is not present, and)2.932 F(neither)144
-679.2 Q F1<ad61>3.836 E F0(nor)3.836 E F1<ad72>3.836 E F0 1.336
-(is supplied, the shell')3.836 F 3.836(sn)-.55 G 1.336(otion of the)
--3.836 F F2(curr)3.836 E 1.336(ent job)-.37 F F0 1.337(is used.)3.836 F
-1.337(If the)6.337 F F1<ad68>3.837 E F0 1.337(option is)3.837 F(gi)144
-691.2 Q -.15(ve)-.25 G .141(n, each).15 F F2(jobspec)4.381 E F0 .141
-(is not remo)2.951 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
-F3(SIGHUP)2.641 E F0 .14(is not sent to the)2.39 F .004
-(job if the shell recei)144 703.2 R -.15(ve)-.25 G 2.504(sa).15 G F3
-(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
-.005(nor the)2.504 F F1<ad72>2.505 E F0 .005(option is)2.505 F 1.229
-(supplied, the)144 715.2 R F2(curr)3.729 E 1.229(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.228(option means to remo)
-3.729 F 1.528 -.15(ve o)-.15 H(r).15 E .656(mark all jobs; the)144 727.2
-R F1<ad72>3.156 E F0 .657(option without a)3.156 F F2(jobspec)4.897 E F0
-(ar)3.467 E .657(gument restricts operation to running jobs.)-.18 F(The)
-5.657 E(GNU Bash-4.2)72 768 Q(2004 Apr 20)148.735 E(6)203.725 E 0 Cg EP
+F F2(jobspec)4.362 E F0 .122(is not present, and)2.932 F(neither)144
+727.2 Q F1<ad61>3.837 E F0(nor)3.837 E F1<ad72>3.837 E F0 1.337
+(is supplied, the shell')3.837 F 3.836(sn)-.55 G 1.336(otion of the)
+-3.836 F F2(curr)3.836 E 1.336(ent job)-.37 F F0 1.336(is used.)3.836 F
+1.336(If the)6.336 F F1<ad68>3.836 E F0 1.336(option is)3.836 F
+(GNU Bash-4.2)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(return v)144
-84 Q(alue is 0 unless a)-.25 E/F1 10/Times-Italic@0 SF(jobspec)4.24 E F0
-(does not specify a v)2.81 E(alid job)-.25 E(.)-.4 E/F2 10/Times-Bold@0
-SF(echo)108 100.8 Q F0([)2.5 E F2(\255neE)A F0 2.5(][)C F1(ar)-2.5 E(g)
--.37 E F0(...])2.5 E .425(Output the)144 112.8 R F1(ar)2.925 E(g)-.37 E
-F0 .424(s, separated by spaces, follo)B .424(wed by a ne)-.25 F 2.924
-(wline. The)-.25 F .424(return status is 0 unless a write)2.924 F .307
-(error occurs.)144 124.8 R(If)5.307 E F2<ad6e>2.807 E F0 .307
-(is speci\214ed, the trailing ne)2.807 F .308(wline is suppressed.)-.25
-F .308(If the)5.308 F F2<ad65>2.808 E F0 .308(option is gi)2.808 F -.15
-(ve)-.25 G .308(n, inter).15 F(-)-.2 E 1.349(pretation of the follo)144
-136.8 R 1.348(wing backslash-escaped characters is enabled.)-.25 F(The)
-6.348 E F2<ad45>3.848 E F0 1.348(option disables the)3.848 F 1.054
-(interpretation of these escape characters, e)144 148.8 R -.15(ve)-.25 G
-3.555(no).15 G 3.555(ns)-3.555 G 1.055(ystems where the)-3.555 F 3.555
-(ya)-.15 G 1.055(re interpreted by def)-3.555 F(ault.)-.1 E(The)144
-160.8 Q F2(xpg_echo)3.459 E F0 .959
-(shell option may be used to dynamically determine whether or not)3.459
-F F2(echo)3.458 E F0 -.15(ex)3.458 G(pands).15 E .715
-(these escape characters by def)144 172.8 R(ault.)-.1 E F2(echo)5.715 E
-F0 .716(does not interpret)3.215 F F2<adad>3.216 E F0 .716
-(to mean the end of options.)3.216 F F2(echo)5.716 E F0
-(interprets the follo)144 184.8 Q(wing escape sequences:)-.25 E F2(\\a)
-144 196.8 Q F0(alert \(bell\))28.22 E F2(\\b)144 208.8 Q F0(backspace)
-27.66 E F2(\\c)144 220.8 Q F0(suppress further output)28.78 E F2(\\e)144
-232.8 Q(\\E)144 244.8 Q F0(an escape character)26.55 E F2(\\f)144 256.8
-Q F0(form feed)29.89 E F2(\\n)144 268.8 Q F0(ne)27.66 E 2.5(wl)-.25 G
-(ine)-2.5 E F2(\\r)144 280.8 Q F0(carriage return)28.78 E F2(\\t)144
-292.8 Q F0(horizontal tab)29.89 E F2(\\v)144 304.8 Q F0 -.15(ve)28.22 G
-(rtical tab).15 E F2(\\\\)144 316.8 Q F0(backslash)30.44 E F2(\\0)144
-328.8 Q F1(nnn)A F0(the eight-bit character whose v)13.22 E
+(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E(gi)144 84 Q
+-.15(ve)-.25 G .14(n, each).15 F/F1 10/Times-Italic@0 SF(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
+/F2 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 96 R -.15(ve)-.25 G 2.504(sa).15 G F2
+(SIGHUP)A/F3 9/Times-Roman@0 SF(.)A F0 .004(If no)4.504 F F1(jobspec)
+4.244 E F0 .004(is present, and neither the)2.814 F/F4 10/Times-Bold@0
+SF<ad61>2.504 E F0 .004(nor the)2.504 F F4<ad72>2.504 E F0 .004
+(option is)2.504 F 1.228(supplied, the)144 108 R F1(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 F1
+(jobspec)5.469 E F0 1.229(is supplied, the)4.039 F F4<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 120 R F4<ad72>3.157 E F0 .657(option without a)
+3.157 F F1(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 132 Q(alue is 0 unless a)-.25 E F1(jobspec)4.24 E F0
+(does not specify a v)2.81 E(alid job)-.25 E(.)-.4 E F4(echo)108 148.8 Q
+F0([)2.5 E F4(\255neE)A F0 2.5(][)C F1(ar)-2.5 E(g)-.37 E F0(...])2.5 E
+.424(Output the)144 160.8 R F1(ar)2.924 E(g)-.37 E F0 .424
+(s, separated by spaces, follo)B .424(wed by a ne)-.25 F 2.924
+(wline. The)-.25 F .424(return status is 0 unless a write)2.924 F .308
+(error occurs.)144 172.8 R(If)5.308 E F4<ad6e>2.808 E F0 .308
+(is speci\214ed, the trailing ne)2.808 F .308(wline is suppressed.)-.25
+F .307(If the)5.308 F F4<ad65>2.807 E F0 .307(option is gi)2.807 F -.15
+(ve)-.25 G .307(n, inter).15 F(-)-.2 E 1.348(pretation of the follo)144
+184.8 R 1.348(wing backslash-escaped characters is enabled.)-.25 F(The)
+6.348 E F4<ad45>3.849 E F0 1.349(option disables the)3.849 F 1.055
+(interpretation of these escape characters, e)144 196.8 R -.15(ve)-.25 G
+3.555(no).15 G 3.555(ns)-3.555 G 1.055(ystems where the)-3.555 F 3.554
+(ya)-.15 G 1.054(re interpreted by def)-3.554 F(ault.)-.1 E(The)144
+208.8 Q F4(xpg_echo)3.458 E F0 .959
+(shell option may be used to dynamically determine whether or not)3.458
+F F4(echo)3.459 E F0 -.15(ex)3.459 G(pands).15 E .716
+(these escape characters by def)144 220.8 R(ault.)-.1 E F4(echo)5.716 E
+F0 .716(does not interpret)3.216 F F4<adad>3.216 E F0 .715
+(to mean the end of options.)3.216 F F4(echo)5.715 E F0
+(interprets the follo)144 232.8 Q(wing escape sequences:)-.25 E F4(\\a)
+144 244.8 Q F0(alert \(bell\))28.22 E F4(\\b)144 256.8 Q F0(backspace)
+27.66 E F4(\\c)144 268.8 Q F0(suppress further output)28.78 E F4(\\e)144
+280.8 Q(\\E)144 292.8 Q F0(an escape character)26.55 E F4(\\f)144 304.8
+Q F0(form feed)29.89 E F4(\\n)144 316.8 Q F0(ne)27.66 E 2.5(wl)-.25 G
+(ine)-2.5 E F4(\\r)144 328.8 Q F0(carriage return)28.78 E F4(\\t)144
+340.8 Q F0(horizontal tab)29.89 E F4(\\v)144 352.8 Q F0 -.15(ve)28.22 G
+(rtical tab).15 E F4(\\\\)144 364.8 Q F0(backslash)30.44 E F4(\\0)144
+376.8 Q F1(nnn)A F0(the eight-bit character whose v)13.22 E
(alue is the octal v)-.25 E(alue)-.25 E F1(nnn)2.5 E F0
-(\(zero to three octal digits\))2.5 E F2(\\x)144 340.8 Q F1(HH)A F0
+(\(zero to three octal digits\))2.5 E F4(\\x)144 388.8 Q F1(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 F1(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 F2(\\u)144 352.8 Q F1(HHHH)A F0
-1.507(the Unicode \(ISO/IEC 10646\) character whose v)180 364.8 R 1.506
-(alue is the he)-.25 F 1.506(xadecimal v)-.15 F(alue)-.25 E F1(HHHH)
-4.006 E F0(\(one to four he)180 376.8 Q 2.5(xd)-.15 G(igits\))-2.5 E F2
-(\\U)144 388.8 Q F1(HHHHHHHH)A F0 .547
-(the Unicode \(ISO/IEC 10646\) character whose v)180 400.8 R .547
-(alue is the he)-.25 F .548(xadecimal v)-.15 F(alue)-.25 E F1(HHHHH-)
-3.048 E(HHH)180 412.8 Q F0(\(one to eight he)2.5 E 2.5(xd)-.15 G
-(igits\))-2.5 E F2(enable)108 429.6 Q F0([)2.5 E F2<ad61>A F0 2.5(][)C
-F2(\255dnps)-2.5 E F0 2.5(][)C F2<ad66>-2.5 E F1(\214lename)2.5 E F0 2.5
-(][)C F1(name)-2.5 E F0(...])2.5 E .278(Enable and disable b)144 441.6 R
+-.1 G .3 -.15(ex d)-2.5 H(igits\)).15 E F4(\\u)144 400.8 Q F1(HHHH)A F0
+1.506(the Unicode \(ISO/IEC 10646\) character whose v)180 412.8 R 1.507
+(alue is the he)-.25 F 1.507(xadecimal v)-.15 F(alue)-.25 E F1(HHHH)
+4.007 E F0(\(one to four he)180 424.8 Q 2.5(xd)-.15 G(igits\))-2.5 E F4
+(\\U)144 436.8 Q F1(HHHHHHHH)A F0 .548
+(the Unicode \(ISO/IEC 10646\) character whose v)180 448.8 R .547
+(alue is the he)-.25 F .547(xadecimal v)-.15 F(alue)-.25 E F1(HHHHH-)
+3.047 E(HHH)180 460.8 Q F0(\(one to eight he)2.5 E 2.5(xd)-.15 G
+(igits\))-2.5 E F4(enable)108 477.6 Q F0([)2.5 E F4<ad61>A F0 2.5(][)C
+F4(\255dnps)-2.5 E F0 2.5(][)C F4<ad66>-2.5 E F1(\214lename)2.5 E F0 2.5
+(][)C F1(name)-2.5 E F0(...])2.5 E .277(Enable and disable b)144 489.6 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 .833
-(the same name as a shell b)144 453.6 R .834(uiltin to be e)-.2 F -.15
+(uiltin allo)-.2 F .278(ws a disk command which has)-.25 F .834
+(the same name as a shell b)144 501.6 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.334(nt).15 G(hough)-3.334 E .99
-(the shell normally searches for b)144 465.6 R .989
-(uiltins before disk commands.)-.2 F(If)5.989 E F2<ad6e>3.489 E F0 .989
-(is used, each)3.489 F F1(name)3.489 E F0 .989(is dis-)3.489 F 1.581
-(abled; otherwise,)144 477.6 R F1(names)4.082 E F0 1.582(are enabled.)
+(ve)-.25 G 3.333(nt).15 G(hough)-3.333 E .989
+(the shell normally searches for b)144 513.6 R .989
+(uiltins before disk commands.)-.2 F(If)5.989 E F4<ad6e>3.489 E F0 .99
+(is used, each)3.49 F F1(name)3.49 E F0 .99(is dis-)3.49 F 1.582
+(abled; otherwise,)144 525.6 R F1(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
-F2(test)4.082 E F0 1.582(binary found via the)4.082 F/F3 9/Times-Bold@0
-SF -.666(PA)4.082 G(TH)-.189 E F0 .081(instead of the shell b)144 489.6
-R .081(uiltin v)-.2 F .081(ersion, run)-.15 F/F4 10/Courier@0 SF .081
-(enable -n test)2.581 F F0 5.081(.T)C(he)-5.081 E F2<ad66>2.58 E F0 .08
-(option means to load the ne)2.58 F(w)-.25 E -.2(bu)144 501.6 S 1.524
-(iltin command).2 F F1(name)4.384 E F0 1.524(from shared object)4.204 F
+F4(test)4.082 E F0 1.582(binary found via the)4.082 F F2 -.666(PA)4.081
+G(TH)-.189 E F0 .08(instead of the shell b)144 537.6 R .08(uiltin v)-.2
+F .08(ersion, run)-.15 F/F5 10/Courier@0 SF .081(enable -n test)2.58 F
+F0 5.081(.T)C(he)-5.081 E F4<ad66>2.581 E F0 .081
+(option means to load the ne)2.581 F(w)-.25 E -.2(bu)144 549.6 S 1.525
+(iltin command).2 F F1(name)4.385 E F0 1.524(from shared object)4.204 F
F1(\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 513.6 Q F2<ad64>
-2.867 E F0 .367(option will delete a b)2.867 F .367(uiltin pre)-.2 F
-.367(viously loaded with)-.25 F F2<ad66>2.866 E F0 5.366(.I)C 2.866(fn)
--5.366 G(o)-2.866 E F1(name)2.866 E F0(ar)2.866 E .366(guments are gi)
--.18 F -.15(ve)-.25 G .366(n, or).15 F .398(if the)144 525.6 R F2<ad70>
-2.898 E F0 .399(option is supplied, a list of shell b)2.899 F .399
+(ystems that support dynamic loading.)-4.024 F(The)144 561.6 Q F4<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 F4<ad66>2.867 E F0 5.367(.I)C 2.867(fn)
+-5.367 G(o)-2.867 E F1(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 573.6 R F4<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 .399(guments, the)-.18 F .099(list consists of all enabled shell b)144
-537.6 R 2.598(uiltins. If)-.2 F F2<ad6e>2.598 E F0 .098
-(is supplied, only disabled b)2.598 F .098(uiltins are printed.)-.2 F
-(If)5.098 E F2<ad61>2.598 E F0 1.916
-(is supplied, the list printed includes all b)144 549.6 R 1.916
-(uiltins, with an indication of whether or not each is)-.2 F 2.879
-(enabled. If)144 561.6 R F2<ad73>2.879 E F0 .379
-(is supplied, the output is restricted to the POSIX)2.879 F F1(special)
-2.879 E F0 -.2(bu)2.878 G 2.878(iltins. The).2 F .378(return v)2.878 F
-(alue)-.25 E .994(is 0 unless a)144 573.6 R F1(name)3.854 E F0 .994
-(is not a shell b)3.674 F .994(uiltin or there is an error loading a ne)
--.2 F 3.495(wb)-.25 G .995(uiltin from a shared)-3.695 F(object.)144
-585.6 Q F2 -2.3 -.15(ev a)108 602.4 T(l).15 E F0([)2.5 E F1(ar)A(g)-.37
-E F0(...])2.5 E(The)144 614.4 Q F1(ar)3.171 E(g)-.37 E F0 3.171(sa)C
-.671(re read and concatenated together into a single command.)-3.171 F
-.67(This command is then read)5.67 F .495(and e)144 626.4 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 F2 -2.3 -.15
+F .398(guments, the)-.18 F .098(list consists of all enabled shell b)144
+585.6 R 2.598(uiltins. If)-.2 F F4<ad6e>2.598 E F0 .098
+(is supplied, only disabled b)2.598 F .099(uiltins are printed.)-.2 F
+(If)5.099 E F4<ad61>2.599 E F0 1.917
+(is supplied, the list printed includes all b)144 597.6 R 1.916
+(uiltins, with an indication of whether or not each is)-.2 F 2.878
+(enabled. If)144 609.6 R F4<ad73>2.878 E F0 .379
+(is supplied, the output is restricted to the POSIX)2.878 F F1(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 621.6 R F1(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
+633.6 Q F4 -2.3 -.15(ev a)108 650.4 T(l).15 E F0([)2.5 E F1(ar)A(g)-.37
+E F0(...])2.5 E(The)144 662.4 Q F1(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 674.4 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 F4 -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 F1(ar)2.995 E(gs)-.37 E F0(,).27 E(or only null ar)144 638.4 Q
-(guments,)-.18 E F2 -2.3 -.15(ev a)2.5 H(l).15 E F0(returns 0.)2.5 E F2
-(exec)108 655.2 Q F0([)2.5 E F2(\255cl)A F0 2.5(][)C F2<ad61>-2.5 E F1
+-2.995 F F1(ar)2.995 E(gs)-.37 E F0(,).27 E(or only null ar)144 686.4 Q
+(guments,)-.18 E F4 -2.3 -.15(ev a)2.5 H(l).15 E F0(returns 0.)2.5 E F4
+(exec)108 703.2 Q F0([)2.5 E F4(\255cl)A F0 2.5(][)C F4<ad61>-2.5 E F1
(name)2.5 E F0 2.5(][)C F1(command)-2.5 E F0([)2.5 E F1(ar)A(guments)
--.37 E F0(]])A(If)144 667.2 Q F1(command)3.006 E F0 .306
-(is speci\214ed, it replaces the shell.)3.576 F .305(No ne)5.305 F 2.805
-(wp)-.25 G .305(rocess is created.)-2.805 F(The)5.305 E F1(ar)3.135 E
-(guments)-.37 E F0(become)3.075 E .176(the ar)144 679.2 R .176
+-.37 E F0(]])A(If)144 715.2 Q F1(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 F1(ar)3.136 E
+(guments)-.37 E F0(become)3.076 E .177(the ar)144 727.2 R .177
(guments to)-.18 F F1(command)2.676 E F0 5.176(.I)C 2.676(ft)-5.176 G
-(he)-2.676 E F2<ad6c>2.676 E F0 .176
-(option is supplied, the shell places a dash at the be)2.676 F .177
-(ginning of)-.15 F .5(the zeroth ar)144 691.2 R .5(gument passed to)-.18
-F F1(command)3 E F0 5.499(.T).77 G .499(his is what)-5.499 F F1(lo)2.999
-E(gin)-.1 E F0 .499(\(1\) does.).24 F(The)5.499 E F2<ad63>2.999 E F0
-.499(option causes)2.999 F F1(com-)3.199 E(mand)144 703.2 Q F0 .638
-(to be e)3.908 F -.15(xe)-.15 G .638(cuted with an empty en).15 F 3.138
-(vironment. If)-.4 F F2<ad61>3.138 E F0 .638
-(is supplied, the shell passes)3.138 F F1(name)3.499 E F0 .639(as the)
-3.319 F 1.078(zeroth ar)144 715.2 R 1.077(gument to the e)-.18 F -.15
-(xe)-.15 G 1.077(cuted command.).15 F(If)6.077 E F1(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 727.2 Q 2.279 -.15(ve s)-.25 H 1.979(hell e).15
-F 1.979(xits, unless the)-.15 F F2(execfail)4.479 E F0 1.979
-(shell option is enabled.)4.479 F 1.98(In that case, it returns)6.979 F
-(GNU Bash-4.2)72 768 Q(2004 Apr 20)148.735 E(7)203.725 E 0 Cg EP
+(he)-2.676 E F4<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(GNU Bash-4.2)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 -.1(fa)144
-84 S 2.564(ilure. An).1 F(interacti)2.564 E .364 -.15(ve s)-.25 H .064
-(hell returns f).15 F .064(ailure if the \214le cannot be e)-.1 F -.15
-(xe)-.15 G 2.564(cuted. If).15 F/F1 10/Times-Italic@0 SF(command)2.763 E
-F0 .063(is not speci-)3.333 F .741(\214ed, an)144 96 R 3.241(yr)-.15 G
-.741(edirections tak)-3.241 F 3.241(ee)-.1 G -.25(ff)-3.241 G .742
-(ect in the current shell, and the return status is 0.).25 F .742
-(If there is a redi-)5.742 F(rection error)144 108 Q 2.5(,t)-.4 G
-(he return status is 1.)-2.5 E/F2 10/Times-Bold@0 SF(exit)108 124.8 Q F0
-([)2.5 E F1(n)A F0 6.29(]C)C .096(ause the shell to e)-6.29 F .096
-(xit with a status of)-.15 F F1(n)2.596 E F0 5.096(.I)C(f)-5.096 E F1(n)
-2.955 E F0 .095(is omitted, the e)2.835 F .095
-(xit status is that of the last command)-.15 F -.15(exe)144 136.8 S 2.5
-(cuted. A).15 F(trap on)2.5 E/F3 9/Times-Bold@0 SF(EXIT)2.5 E F0(is e)
-2.25 E -.15(xe)-.15 G(cuted before the shell terminates.).15 E F2
-(export)108 153.6 Q F0([)2.5 E F2(\255fn)A F0 2.5(][).833 G F1(name)-2.5
-E F0([=)A F1(wor)A(d)-.37 E F0(]] ...)A F2(export \255p)108 165.6 Q F0
-.256(The supplied)144 177.6 R F1(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.627
-(commands. If)144 189.6 R(the)2.627 E F2<ad66>2.627 E F0 .127
-(option is gi)2.627 F -.15(ve)-.25 G .127(n, the).15 F F1(names)2.987 E
-F0 .127(refer to functions.)2.897 F .127(If no)5.127 F F1(names)2.987 E
-F0 .127(are gi)2.897 F -.15(ve)-.25 G .126(n, or if the).15 F F2<ad70>
-144 201.6 Q F0 .048(option is supplied, a list of names of all e)2.547 F
-.048(xported v)-.15 F .048(ariables is printed.)-.25 F(The)5.048 E F2
-<ad6e>2.548 E F0 .048(option causes the)2.548 F -.15(ex)144 213.6 S
-1.447(port property to be remo).15 F -.15(ve)-.15 G 3.947(df).15 G 1.447
+(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E .499
+(the zeroth ar)144 84 R .499(gument passed to)-.18 F/F1 10
+/Times-Italic@0 SF(command)2.999 E F0 5.499(.T).77 G .499(his is what)
+-5.499 F F1(lo)2.999 E(gin)-.1 E F0 .499(\(1\) does.).24 F(The)5.5 E/F2
+10/Times-Bold@0 SF<ad63>3 E F0 .5(option causes)3 F F1(com-)3.2 E(mand)
+144 96 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 F2<ad61>3.138 E
+F0 .638(is supplied, the shell passes)3.138 F F1(name)3.498 E F0 .638
+(as the)3.318 F 1.077(zeroth ar)144 108 R 1.077(gument to the e)-.18 F
+-.15(xe)-.15 G 1.077(cuted command.).15 F(If)6.077 E F1(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 120 Q .877 -.15(ve s)
+-.25 H .577(hell e).15 F .577(xits, unless the)-.15 F F2(execfail)3.077
+E F0 .577(shell option is enabled.)3.077 F .576
+(In that case, it returns f)5.577 F(ail-)-.1 E 2.505(ure. An)144 132 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 F1(command)2.705 E F0 .005(is not speci\214ed,)3.275 F(an)144 144
+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 156 Q 2.5(,t)-.4 G
+(he return status is 1.)-2.5 E F2(exit)108 172.8 Q F0([)2.5 E F1(n)A F0
+6.29(]C)C .095(ause the shell to e)-6.29 F .095(xit with a status of)
+-.15 F F1(n)2.595 E F0 5.095(.I)C(f)-5.095 E F1(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 184.8 S 2.5(cuted. A).15 F(trap on)2.5 E/F3 9
+/Times-Bold@0 SF(EXIT)2.5 E F0(is e)2.25 E -.15(xe)-.15 G
+(cuted before the shell terminates.).15 E F2(export)108 201.6 Q F0([)2.5
+E F2(\255fn)A F0 2.5(][).833 G F1(name)-2.5 E F0([=)A F1(wor)A(d)-.37 E
+F0(]] ...)A F2(export \255p)108 213.6 Q F0 .257(The supplied)144 225.6 R
+F1(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 237.6 R(the)2.626 E F2
+<ad66>2.626 E F0 .127(option is gi)2.627 F -.15(ve)-.25 G .127(n, the)
+.15 F F1(names)2.987 E F0 .127(refer to functions.)2.897 F .127(If no)
+5.127 F F1(names)2.987 E F0 .127(are gi)2.897 F -.15(ve)-.25 G .127
+(n, or if the).15 F F2<ad70>144 249.6 Q F0 .048
+(option is supplied, a list of names of all e)2.548 F .048(xported v)
+-.15 F .048(ariables is printed.)-.25 F(The)5.048 E F2<ad6e>2.547 E F0
+.047(option causes the)2.547 F -.15(ex)144 261.6 S 1.446
+(port property to be remo).15 F -.15(ve)-.15 G 3.947(df).15 G 1.447
(rom each)-3.947 F F1(name)3.947 E F0 6.447(.I)C 3.947(fav)-6.447 G
1.447(ariable name is follo)-4.197 F 1.447(wed by =)-.25 F F1(wor)A(d)
--.37 E F0 3.946(,t)C(he)-3.946 E -.25(va)144 225.6 S .741(lue of the v)
-.25 F .741(ariable is set to)-.25 F F1(wor)3.241 E(d)-.37 E F0(.)A F2
-(export)5.741 E F0 .742(returns an e)3.242 F .742
-(xit status of 0 unless an in)-.15 F -.25(va)-.4 G .742(lid option is)
-.25 F .032(encountered, one of the)144 237.6 R F1(names)2.532 E F0 .032
-(is not a v)2.532 F .032(alid shell v)-.25 F .032(ariable name, or)-.25
-F F2<ad66>2.531 E F0 .031(is supplied with a)2.531 F F1(name)2.891 E F0
-(that)2.711 E(is not a function.)144 249.6 Q F2(fc)108 266.4 Q F0([)2.5
+-.37 E F0 3.947(,t)C(he)-3.947 E -.25(va)144 273.6 S .742(lue of the v)
+.25 F .742(ariable is set to)-.25 F F1(wor)3.242 E(d)-.37 E F0(.)A F2
+(export)5.742 E F0 .742(returns an e)3.242 F .741
+(xit status of 0 unless an in)-.15 F -.25(va)-.4 G .741(lid option is)
+.25 F .031(encountered, one of the)144 285.6 R F1(names)2.531 E F0 .031
+(is not a v)2.531 F .032(alid shell v)-.25 F .032(ariable name, or)-.25
+F F2<ad66>2.532 E F0 .032(is supplied with a)2.532 F F1(name)2.892 E F0
+(that)2.712 E(is not a function.)144 297.6 Q F2(fc)108 314.4 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
-278.4 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 .431
-(The \214rst form selects a range of commands from)144 290.4 R F1<8c72>
-4.842 E(st)-.1 E F0(to)3.612 E F1(last)3.022 E F0 .432
-(from the history list and displays or)3.612 F .142(edits and re-e)144
-302.4 R -.15(xe)-.15 G .142(cutes them.).15 F F1 -.45(Fi)5.141 G -.1(rs)
+326.4 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 .432
+(The \214rst form selects a range of commands from)144 338.4 R F1<8c72>
+4.842 E(st)-.1 E F0(to)3.612 E F1(last)3.022 E F0 .431
+(from the history list and displays or)3.612 F .141(edits and re-e)144
+350.4 R -.15(xe)-.15 G .141(cutes them.).15 F F1 -.45(Fi)5.141 G -.1(rs)
.45 G(t).1 E F0(and)3.321 E F1(last)2.731 E F0 .141
(may be speci\214ed as a string \(to locate the last command)3.321 F(be)
-144 314.4 Q .31(ginning with that string\) or as a number \(an inde)-.15
-F 2.811(xi)-.15 G .311(nto the history list, where a ne)-2.811 F -.05
-(ga)-.15 G(ti).05 E .611 -.15(ve n)-.25 H(umber).15 E .315
-(is used as an of)144 326.4 R .315
-(fset from the current command number\).)-.25 F(If)5.315 E F1(last)2.904
-E F0 .314(is not speci\214ed it is set to the cur)3.494 F(-)-.2 E .948
-(rent command for listing \(so that)144 338.4 R/F4 10/Courier@0 SF .948
+144 362.4 Q .311(ginning with that string\) or as a number \(an inde)
+-.15 F 2.811(xi)-.15 G .31(nto the history list, where a ne)-2.811 F
+-.05(ga)-.15 G(ti).05 E .61 -.15(ve n)-.25 H(umber).15 E .314
+(is used as an of)144 374.4 R .314
+(fset from the current command number\).)-.25 F(If)5.314 E F1(last)2.905
+E F0 .315(is not speci\214ed it is set to the cur)3.495 F(-)-.2 E .949
+(rent command for listing \(so that)144 386.4 R/F4 10/Courier@0 SF .948
(fc \255l \25510)3.448 F F0 .948(prints the last 10 commands\) and to)
-3.448 F F1<8c72>5.359 E(st)-.1 E F0(other)4.129 E(-)-.2 E 2.5(wise. If)
-144 350.4 R F1<8c72>4.41 E(st)-.1 E F0
+3.448 F F1<8c72>5.358 E(st)-.1 E F0(other)4.128 E(-)-.2 E 2.5(wise. If)
+144 398.4 R F1<8c72>4.41 E(st)-.1 E F0
(is not speci\214ed it is set to the pre)3.18 E
-(vious command for editing and \25516 for listing.)-.25 E(The)144 374.4
+(vious command for editing and \25516 for listing.)-.25 E(The)144 422.4
Q F2<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 386.4 R .438(If the)
+(rses the order of).15 F .438(the commands.)144 434.4 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
(n, the commands are listed on standard output.).15 F(Otherwise,)5.438 E
-.335(the editor gi)144 398.4 R -.15(ve)-.25 G 2.835(nb).15 G(y)-2.835 E
-F1(ename)3.025 E F0 .335(is in)3.015 F -.2(vo)-.4 G -.1(ke).2 G 2.835
+.334(the editor gi)144 446.4 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
(do).1 G 2.835(na\214)-2.835 G .335(le containing those commands.)-2.835
-F(If)5.334 E F1(ename)3.024 E F0 .334(is not gi)3.014 F -.15(ve)-.25 G
-(n,).15 E .63(the v)144 410.4 R .63(alue of the)-.25 F F3(FCEDIT)3.13 E
-F0 -.25(va)2.88 G .631(riable is used, and the v).25 F .631(alue of)-.25
-F F3(EDIT)3.131 E(OR)-.162 E F0(if)2.881 E F3(FCEDIT)3.131 E F0 .631
-(is not set.)2.881 F .631(If nei-)5.631 F .951(ther v)144 422.4 R .951
-(ariable is set,)-.25 F F1(vi)5.117 E F0 .951(is used.)5.117 F .95
-(When editing is complete, the edited commands are echoed and)5.951 F
--.15(exe)144 434.4 S(cuted.).15 E .788(In the second form,)144 458.4 R
+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 458.4 R .631(alue of the)-.25 F F3(FCEDIT)3.131
+E F0 -.25(va)2.881 G .631(riable is used, and the v).25 F .631(alue of)
+-.25 F F3(EDIT)3.131 E(OR)-.162 E F0(if)2.881 E F3(FCEDIT)3.13 E F0 .63
+(is not set.)2.88 F .63(If nei-)5.63 F .95(ther v)144 470.4 R .95
+(ariable is set,)-.25 F F1(vi)5.116 E F0 .95(is used.)5.116 F .951
+(When editing is complete, the edited commands are echoed and)5.95 F
+-.15(exe)144 482.4 S(cuted.).15 E .789(In the second form,)144 506.4 R
F1(command)3.288 E F0 .788(is re-e)3.288 F -.15(xe)-.15 G .788
(cuted after each instance of).15 F F1(pat)3.288 E F0 .788
-(is replaced by)3.288 F F1 -.37(re)3.289 G(p).37 E F0(.)A F1(Com-)5.789
-E(mand)144 470.4 Q F0 .347(is intepreted the same as)2.847 F F1<8c72>
+(is replaced by)3.288 F F1 -.37(re)3.288 G(p).37 E F0(.)A F1(Com-)5.788
+E(mand)144 518.4 Q F0 .346(is intepreted the same as)2.846 F F1<8c72>
2.847 E(st)-.1 E F0(abo)2.847 E -.15(ve)-.15 G 5.347(.A).15 G .347
-(useful alias to use with this is)-2.5 F F4 .346(r='fc \255s')2.847 F F0
-2.846(,s)C 2.846(ot)-2.846 G(hat)-2.846 E(typing)144 482.4 Q F4 7.165
-(rc)3.665 G(c)-7.165 E F0 1.165(runs the last command be)3.665 F 1.166
-(ginning with)-.15 F F4(cc)3.666 E F0 1.166(and typing)3.666 F F4(r)
-3.666 E F0(re-e)3.666 E -.15(xe)-.15 G 1.166(cutes the last com-).15 F
-(mand.)144 494.4 Q .142(If the \214rst form is used, the return v)144
-518.4 R .142(alue is 0 unless an in)-.25 F -.25(va)-.4 G .142
+(useful alias to use with this is)-2.5 F F4 .347(r='fc \255s')2.847 F F0
+2.847(,s)C 2.847(ot)-2.847 G(hat)-2.847 E(typing)144 530.4 Q F4 7.166
+(rc)3.666 G(c)-7.166 E F0 1.166(runs the last command be)3.666 F 1.166
+(ginning with)-.15 F F4(cc)3.666 E F0 1.165(and typing)3.666 F F4(r)
+3.665 E F0(re-e)3.665 E -.15(xe)-.15 G 1.165(cutes the last com-).15 F
+(mand.)144 542.4 Q .142(If the \214rst form is used, the return v)144
+566.4 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 530.4
+E F1(last)2.732 E F0 .455(specify history lines out of range.)144 578.4
R .454(If the)5.454 F F2<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 542.4 R -.15(xe)-.15 G .788
-(cuted or f).15 F .787
+(option is supplied, the return v)2.954 F .454(alue is the v)-.25 F .454
+(alue of the)-.25 F .787(last command e)144 590.4 R -.15(xe)-.15 G .787
+(cuted or f).15 F .788
(ailure if an error occurs with the temporary \214le of commands.)-.1 F
-.787(If the)5.787 F 1.135
+.788(If the)5.788 F 1.136
(second form is used, the return status is that of the command re-e)144
-554.4 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 566.4 Q
+602.4 R -.15(xe)-.15 G 1.135(cuted, unless).15 F F1(cmd)3.835 E F0 1.135
+(does not)4.405 F(specify a v)144 614.4 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 583.2 Q F0([)2.5 E F1(jobspec)A F0(])A(Resume)
-144 595.2 Q F1(jobspec)5.654 E F0 1.413(in the fore)4.224 F 1.413
+(ailure.)-.1 E F2(fg)108 631.2 Q F0([)2.5 E F1(jobspec)A F0(])A(Resume)
+144 643.2 Q F1(jobspec)5.653 E F0 1.413(in the fore)4.223 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 607.2 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
-(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 619.2 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 631.2 Q
-F0 .004(does not specify a v)2.814 F .004(alid job or)-.25 F F1(jobspec)
+1.414(is not present, the)4.223 F(shell')144 655.2 Q 3.117(sn)-.55 G
+.617(otion of the)-3.117 F F1(curr)3.117 E .617(ent job)-.37 F F0 .617
+(is used.)3.117 F .617(The return v)5.617 F .616
+(alue is that of the command placed into the)-.25 F(fore)144 667.2 Q
+.362(ground, or f)-.15 F .362
+(ailure if run when job control is disabled or)-.1 F 2.862(,w)-.4 G .363
+(hen run with job control enabled, if)-2.862 F F1(jobspec)145.74 679.2 Q
+F0 .004(does not specify a v)2.815 F .004(alid job or)-.25 F F1(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 648 Q F1
+(as started without job control.)-.1 F F2(getopts)108 696 Q F1
(optstring name)2.5 E F0([)2.5 E F1(ar)A(gs)-.37 E F0(])A F2(getopts)144
-660 Q F0 .793
-(is used by shell procedures to parse positional parameters.)3.294 F F1
-(optstring)6.023 E F0 .793(contains the option)3.513 F .149
-(characters to be recognized; if a character is follo)144 672 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 684 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 696 R 1.665
-(Each time it is in)6.665 F -.2(vo)-.4 G -.1(ke).2 G(d,).1 E F2(getopts)
-4.165 E F0 1.665(places the ne)4.165 F(xt)-.15 E .797
-(option in the shell v)144 708 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(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 720 Q .085
-(gument to be processed into the v)-.18 F(ariable)-.25 E F3(OPTIND)2.585
-E/F5 9/Times-Roman@0 SF(.)A F3(OPTIND)4.585 E F0 .085
-(is initialized to 1 each time the shell)2.335 F(GNU Bash-4.2)72 768 Q
-(2004 Apr 20)148.735 E(8)203.725 E 0 Cg EP
+708 Q F0 .793
+(is used by shell procedures to parse positional parameters.)3.293 F F1
+(optstring)6.023 E F0 .793(contains the option)3.513 F .15
+(characters to be recognized; if a character is follo)144 720 R .149
+(wed by a colon, the option is e)-.25 F .149(xpected to ha)-.15 F .449
+-.15(ve a)-.2 H(n).15 E(GNU Bash-4.2)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 .846
-(or a shell script is in)144 84 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 10
-/Times-Bold@0 SF(getopts)3.345 E F0 .845(places that ar)3.345 F(gument)
--.18 E .803(into the v)144 96 R(ariable)-.25 E/F2 9/Times-Bold@0 SF(OPT)
-3.303 E(ARG)-.81 E/F3 9/Times-Roman@0 SF(.)A F0 .803
-(The shell does not reset)5.303 F F2(OPTIND)3.303 E F0 .804
-(automatically; it must be manually)3.054 F .294
-(reset between multiple calls to)144 108 R F1(getopts)2.793 E F0 .293
+(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E(ar)144 84 Q
+.578(gument, which should be separated from it by white space.)-.18 F
+.579(The colon and question mark char)5.579 F(-)-.2 E 1.665
+(acters may not be used as option characters.)144 96 R 1.665
+(Each time it is in)6.665 F -.2(vo)-.4 G -.1(ke).2 G(d,).1 E/F1 10
+/Times-Bold@0 SF(getopts)4.165 E F0 1.665(places the ne)4.165 F(xt)-.15
+E .796(option in the shell v)144 108 R(ariable)-.25 E/F2 10
+/Times-Italic@0 SF(name)3.296 E F0 3.296(,i).18 G(nitializing)-3.296 E
+F2(name)3.657 E F0 .797(if it does not e)3.477 F .797
+(xist, and the inde)-.15 F 3.297(xo)-.15 G 3.297(ft)-3.297 G .797(he ne)
+-3.297 F(xt)-.15 E(ar)144 120 Q .085(gument to be processed into the v)
+-.18 F(ariable)-.25 E/F3 9/Times-Bold@0 SF(OPTIND)2.585 E/F4 9
+/Times-Roman@0 SF(.)A F3(OPTIND)4.585 E F0 .085
+(is initialized to 1 each time the shell)2.335 F .845
+(or a shell script is in)144 132 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.346 E F0 .846(places that ar)3.346 F(gument)-.18 E .804
+(into the v)144 144 R(ariable)-.25 E F3(OPT)3.304 E(ARG)-.81 E F4(.)A F0
+.803(The shell does not reset)5.304 F F3(OPTIND)3.303 E F0 .803
+(automatically; it must be manually)3.053 F .293
+(reset between multiple calls to)144 156 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 120 Q
-2.043(When the end of options is encountered,)144 144 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 F2(OPTIND)144 156 Q F0
+2.793(ws)-.25 G .294(et of parameters)-2.793 F(is to be used.)144 168 Q
+2.044(When the end of options is encountered,)144 192 R F1(getopts)4.543
+E F0 -.15(ex)4.543 G 2.043(its with a return v).15 F 2.043
+(alue greater than zero.)-.25 F F3(OPTIND)144 204 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/F4 10/Times-Italic@0
-SF(name)2.5 E F0(is set to ?.)2.5 E F1(getopts)144 180 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 F4(ar)4.892 E(gs)-.37 E F0(,).27 E F1(getopts)144
-192 Q F0(parses those instead.)2.5 E F1(getopts)144 216 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 F4(optstring)3.895 E F0 1.166
-(is a colon,)3.886 F F4(silent)4.006 E F0(error)4.346 E 1.071
-(reporting is used.)144 228 R 1.071
-(In normal operation, diagnostic messages are printed when in)6.071 F
--.25(va)-.4 G 1.07(lid options or).25 F .393(missing option ar)144 240 R
-.393(guments are encountered.)-.18 F .394(If the v)5.394 F(ariable)-.25
-E F2(OPTERR)2.894 E F0 .394(is set to 0, no error messages)2.644 F
-(will be displayed, e)144 252 Q -.15(ve)-.25 G 2.5(ni).15 G 2.5(ft)-2.5
-G(he \214rst character of)-2.5 E F4(optstring)2.73 E F0(is not a colon.)
-2.72 E .667(If an in)144 276 R -.25(va)-.4 G .667(lid option is seen,)
-.25 F F1(getopts)3.167 E F0 .667(places ? into)3.167 F F4(name)3.527 E
-F0 .666(and, if not silent, prints an error message)3.347 F .399
-(and unsets)144 288 R F2(OPT)2.899 E(ARG)-.81 E F3(.)A F0(If)4.899 E F1
+(he \214rst non-option ar)-2.5 E(gument, and)-.18 E F2(name)2.5 E F0
+(is set to ?.)2.5 E F1(getopts)144 228 Q F0 2.392
+(normally parses the positional parameters, b)4.892 F 2.392
+(ut if more ar)-.2 F 2.393(guments are gi)-.18 F -.15(ve)-.25 G 4.893
+(ni).15 G(n)-4.893 E F2(ar)4.893 E(gs)-.37 E F0(,).27 E F1(getopts)144
+240 Q F0(parses those instead.)2.5 E F1(getopts)144 264 Q F0 1.166
+(can report errors in tw)3.666 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.165
+(is a colon,)3.885 F F2(silent)4.005 E F0(error)4.345 E 1.07
+(reporting is used.)144 276 R 1.071
+(In normal operation, diagnostic messages are printed when in)6.07 F
+-.25(va)-.4 G 1.071(lid options or).25 F .394(missing option ar)144 288
+R .394(guments are encountered.)-.18 F .394(If the v)5.394 F(ariable)
+-.25 E F3(OPTERR)2.894 E F0 .394(is set to 0, no error messages)2.644 F
+(will be displayed, e)144 300 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 .666(If an in)144 324 R -.25(va)-.4 G .666(lid option is seen,)
+.25 F F1(getopts)3.166 E F0 .667(places ? into)3.167 F F2(name)3.527 E
+F0 .667(and, if not silent, prints an error message)3.347 F .4
+(and unsets)144 336 R F3(OPT)2.9 E(ARG)-.81 E F4(.)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 F2(OPT)2.899
-E(ARG)-.81 E F0 .4(and no)2.65 F(diagnostic message is printed.)144 300
-Q 1.242(If a required ar)144 324 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
-F4(name)144 336 Q F0(,).18 E F2(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 348 Q F4(name)2.86 E F0(and)2.68 E F2(OPT)
-2.5 E(ARG)-.81 E F0(is set to the option character found.)2.25 E F1
-(getopts)144 372 Q F0 .902
+(is silent, the option character found is placed in)2.899 F F3(OPT)2.899
+E(ARG)-.81 E F0 .399(and no)2.649 F(diagnostic message is printed.)144
+348 Q 1.241(If a required ar)144 372 R 1.241(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.742(\)i).833 G 3.742(sp)-3.742 G 1.242
+(laced in)-3.742 F F2(name)144 384 Q F0(,).18 E F3(OPT)2.735 E(ARG)-.81
+E F0 .234(is unset, and a diagnostic message is printed.)2.485 F(If)
+5.234 E F1(getopts)2.734 E F0 .234(is silent, then a colon \()2.734 F F1
+(:).833 E F0(\)).833 E(is placed in)144 396 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 420 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 384 Q F1(hash)108 400.8
-Q F0([)2.5 E F1(\255lr)A F0 2.5(][)C F1<ad70>-2.5 E F4(\214lename)2.5 E
-F0 2.5(][)C F1(\255dt)-2.5 E F0 2.5(][)C F4(name)-2.5 E F0(])A .858
-(Each time)144 412.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 F4(name)
+3.401 F .902(It returns f)5.902 F .902(alse if the end of)-.1 F
+(options is encountered or an error occurs.)144 432 Q F1(hash)108 448.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 460.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 424.8 R F1($P)3.456 E -.95(AT)-.74 G(H).95 E F0
+(the directories in)144 472.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 .242(If the)144 436.8
-R F1<ad70>2.742 E F0 .243
-(option is supplied, no path search is performed, and)2.742 F F4
-(\214lename)4.653 E F0 .243(is used as the full \214lename)2.923 F 1.712
-(of the command.)144 448.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 F1<ad64>4.211 E F0
-.833(option causes the shell to for)144 460.8 R .833
-(get the remembered location of each)-.18 F F4(name)3.333 E F0 5.833(.I)
+(viously-remembered pathname is discarded.)-.25 F .243(If the)144 484.8
+R F1<ad70>2.743 E F0 .243
+(option is supplied, no path search is performed, and)2.743 F F2
+(\214lename)4.653 E F0 .242(is used as the full \214lename)2.923 F 1.711
+(of the command.)144 496.8 R(The)6.711 E F1<ad72>4.211 E F0 1.711
+(option causes the shell to for)4.211 F 1.712
+(get all remembered locations.)-.18 F(The)6.712 E F1<ad64>4.212 E F0
+.833(option causes the shell to for)144 508.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 F1<ad74>3.333 E F0 .833(option is sup-)
-3.333 F .704(plied, the full pathname to which each)144 472.8 R F4(name)
-3.204 E F0 .703(corresponds is printed.)3.204 F .703(If multiple)5.703 F
-F4(name)3.203 E F0(ar)3.203 E(guments)-.18 E .795(are supplied with)144
-484.8 R F1<ad74>3.295 E F0 3.295(,t)C(he)-3.295 E F4(name)3.295 E F0
+3.333 F .703(plied, the full pathname to which each)144 520.8 R F2(name)
+3.204 E F0 .704(corresponds is printed.)3.204 F .704(If multiple)5.704 F
+F2(name)3.204 E F0(ar)3.204 E(guments)-.18 E .795(are supplied with)144
+532.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
-496.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 508.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 520.8 Q F4(name)2.86
+544.8 R .934(If no ar)5.934 F .935(guments are gi)-.18 F -.15(ve)-.25 G
+.935(n, or if).15 F(only)144 556.8 Q F1<ad6c>2.822 E F0 .322
+(is supplied, information about remembered commands is printed.)2.822 F
+.321(The return status is true)5.321 F(unless a)144 568.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 F1(help)108 537.6 Q F0([)2.5 E F1(\255dms)A F0 2.5(][)C F4
-(pattern)-2.5 E F0(])A .867(Display helpful information about b)144
-549.6 R .867(uiltin commands.)-.2 F(If)5.867 E F4(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
-561.6 R F4(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 573.6 Q F1
-<ad64>144 585.6 Q F0(Display a short description of each)24.74 E F4
-(pattern)2.5 E F1<ad6d>144 597.6 Q F0(Display the description of each)
-21.97 E F4(pattern)2.5 E F0(in a manpage-lik)2.5 E 2.5(ef)-.1 G(ormat)
--2.5 E F1<ad73>144 609.6 Q F0
-(Display only a short usage synopsis for each)26.41 E F4(pattern)2.5 E
-F0(The return status is 0 unless no command matches)144 626.4 Q F4
-(pattern)2.5 E F0(.).24 E F1(history [)108 643.2 Q F4(n)A F1(])A
-(history \255c)108 655.2 Q(history \255d)108 667.2 Q F4(of)2.5 E(fset)
--.18 E F1(history \255anrw)108 679.2 Q F0([)2.5 E F4(\214lename)A F0(])A
-F1(history \255p)108 691.2 Q F4(ar)2.5 E(g)-.37 E F0([)2.5 E F4(ar)A 2.5
-(g.)-.37 G(..)-2.5 E F0(])A F1(history \255s)108 703.2 Q F4(ar)2.5 E(g)
--.37 E F0([)2.5 E F4(ar)A 2.5(g.)-.37 G(..)-2.5 E F0(])A -.4(Wi)144
-715.2 S .752
-(th no options, display the command history list with line numbers.).4 F
-.752(Lines listed with a)5.752 F F1(*)3.251 E F0(ha)3.251 E -.15(ve)-.2
-G 5.072(been modi\214ed.)144 727.2 R 5.072(An ar)10.072 F 5.072
-(gument of)-.18 F F4(n)7.932 E F0 5.073(lists only the last)7.813 F F4
-(n)7.933 E F0 7.573(lines. If)7.813 F 5.073(the shell v)7.573 F(ariable)
--.25 E(GNU Bash-4.2)72 768 Q(2004 Apr 20)148.735 E(9)203.725 E 0 Cg EP
+.25 E F1(help)108 585.6 Q F0([)2.5 E F1(\255dms)A F0 2.5(][)C F2
+(pattern)-2.5 E F0(])A .866(Display helpful information about b)144
+597.6 R .867(uiltin commands.)-.2 F(If)5.867 E F2(pattern)4.617 E F0
+.867(is speci\214ed,)3.607 F F1(help)3.367 E F0(gi)3.367 E -.15(ve)-.25
+G 3.367(sd).15 G(etailed)-3.367 E .307(help on all commands matching)144
+609.6 R F2(pattern)2.807 E F0 2.807(;o).24 G .307
+(therwise help for all the b)-2.807 F .306
+(uiltins and shell control struc-)-.2 F(tures is printed.)144 621.6 Q F1
+<ad64>144 633.6 Q F0(Display a short description of each)24.74 E F2
+(pattern)2.5 E F1<ad6d>144 645.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 F1<ad73>144 657.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)144 674.4 Q F2
+(pattern)2.5 E F0(.).24 E F1(history [)108 691.2 Q F2(n)A F1(])A
+(history \255c)108 703.2 Q F0(GNU Bash-4.2)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 9
-/Times-Bold@0 SF(HISTTIMEFORMA)144 84 Q(T)-.855 E F0 .618
-(is set and not null, it is used as a format string for)2.868 F/F2 10
-/Times-Italic@0 SF(strftime)3.117 E F0 .617(\(3\) to display the)B .42
-(time stamp associated with each displayed history entry)144 96 R 5.42
-(.N)-.65 G 2.92(oi)-5.42 G(nterv)-2.92 E .42
-(ening blank is printed between)-.15 F .23
-(the formatted time stamp and the history line.)144 108 R(If)5.23 E F2
-(\214lename)2.73 E F0 .23(is supplied, it is used as the name of the)
-2.73 F .374(history \214le; if not, the v)144 120 R .374(alue of)-.25 F
-F1(HISTFILE)2.875 E F0 .375(is used.)2.625 F .375
-(Options, if supplied, ha)5.375 F .675 -.15(ve t)-.2 H .375(he follo).15
-F .375(wing mean-)-.25 F(ings:)144 132 Q/F3 10/Times-Bold@0 SF<ad63>144
-144 Q F0(Clear the history list by deleting all the entries.)25.86 E F3
-<ad64>144 156 Q F2(of)2.5 E(fset)-.18 E F0
-(Delete the history entry at position)180 168 Q F2(of)2.5 E(fset)-.18 E
-F0(.)A F3<ad61>144 180 Q F0 .599(Append the `)25.3 F(`ne)-.74 E(w')-.25
-E 3.099('h)-.74 G .598
+(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10
+/Times-Bold@0 SF(history \255d)108 84 Q/F2 10/Times-Italic@0 SF(of)2.5 E
+(fset)-.18 E F1(history \255anrw)108 96 Q F0([)2.5 E F2(\214lename)A F0
+(])A F1(history \255p)108 108 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 120 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 132
+S .752
+(th no options, display the command history list with line numbers.).4 F
+.752(Lines listed with a)5.752 F F1(*)3.252 E F0(ha)3.252 E -.15(ve)-.2
+G .381(been modi\214ed.)144 144 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/F3 9
+/Times-Bold@0 SF(HISTTIMEFOR-)2.88 E(MA)144 156 Q(T)-.855 E F0 .264
+(is set and not null, it is used as a format string for)2.514 F F2
+(strftime)2.765 E F0 .265(\(3\) to display the time stamp asso-)B 1.02
+(ciated with each displayed history entry)144 168 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 180 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 192 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 F1<ad63>144 204 Q F0
+(Clear the history list by deleting all the entries.)25.86 E F1<ad64>144
+216 Q F2(of)2.5 E(fset)-.18 E F0(Delete the history entry at position)
+180 228 Q F2(of)2.5 E(fset)-.18 E F0(.)A F1<ad61>144 240 Q F0 .599
+(Append the `)25.3 F(`ne)-.74 E(w')-.25 E 3.099('h)-.74 G .598
(istory lines \(history lines entered since the be)-3.099 F .598
-(ginning of the current)-.15 F F3(bash)180 192 Q F0
-(session\) to the history \214le.)2.5 E F3<ad6e>144 204 Q F0 .854(Read \
+(ginning of the current)-.15 F F1(bash)180 252 Q F0
+(session\) to the history \214le.)2.5 E F1<ad6e>144 264 Q F0 .854(Read \
the history lines not already read from the history \214le into the cur\
rent history list.)24.74 F .773
-(These are lines appended to the history \214le since the be)180 216 R
-.772(ginning of the current)-.15 F F3(bash)3.272 E F0(ses-)3.272 E
-(sion.)180 228 Q F3<ad72>144 240 Q F0(Read the contents of the history \
-\214le and append them to the current history list.)25.86 E F3<ad77>144
-252 Q F0(Write the current history list to the history \214le, o)23.08 E
+(These are lines appended to the history \214le since the be)180 276 R
+.772(ginning of the current)-.15 F F1(bash)3.272 E F0(ses-)3.272 E
+(sion.)180 288 Q F1<ad72>144 300 Q F0(Read the contents of the history \
+\214le and append them to the current history list.)25.86 E F1<ad77>144
+312 Q F0(Write the current history list 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 F3<ad70>144 264 Q F0 .625
+(ontents.)-2.5 E F1<ad70>144 324 Q F0 .625
(Perform history substitution on the follo)24.74 F(wing)-.25 E F2(ar)
3.125 E(gs)-.37 E F0 .626(and display the result on the standard)3.125 F
-2.975(output. Does)180 276 R .475
+2.975(output. Does)180 336 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 288 Q(xpansion.)-.15 E F3<ad73>144 300 Q F0 .362
+(normal history e)180 348 Q(xpansion.)-.15 E F1<ad73>144 360 Q F0 .362
(Store the)26.41 F F2(ar)3.192 E(gs)-.37 E F0 .363
(in the history list as a single entry)3.132 F 5.363(.T)-.65 G .363
-(he last command in the history list is)-5.363 F(remo)180 312 Q -.15(ve)
+(he last command in the history list is)-5.363 F(remo)180 372 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 .146(If the)144 328.8 R F1(HISTTIMEFORMA)2.645 E(T)
+(are added.)2.77 E .146(If the)144 388.8 R F3(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 .668(entry is written to the history \214le, mark)144 340.8 R .669
+.25 F .668(entry is written to the history \214le, mark)144 400.8 R .669
(ed with the history comment character)-.1 F 5.669(.W)-.55 G .669
-(hen the history)-5.669 F .956(\214le is read, lines be)144 352.8 R .956
+(hen the history)-5.669 F .956(\214le is read, lines be)144 412.8 R .956
(ginning with the history comment character follo)-.15 F .955
(wed immediately by a digit)-.25 F .415
-(are interpreted as timestamps for the pre)144 364.8 R .416
+(are interpreted as timestamps for the pre)144 424.8 R .416
(vious history line.)-.25 F .416(The return v)5.416 F .416
(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 376.8 R -.25(va)-.4 G(lid).25 E F2(of)2.999 E(fset)-.18 E F0
-(is)2.999 E(supplied as an ar)144 388.8 Q(gument to)-.18 E F3<ad64>2.5 E
+, an in)144 436.8 R -.25(va)-.4 G(lid).25 E F2(of)2.999 E(fset)-.18 E F0
+(is)2.999 E(supplied as an ar)144 448.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 F3<ad70>2.5 E F0 -.1
-(fa)2.5 G(ils.).1 E F3(jobs)108 405.6 Q F0([)2.5 E F3(\255lnprs)A F0 2.5
-(][)C F2(jobspec)A F0(... ])2.5 E F3(jobs \255x)108 417.6 Q F2(command)
+(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 465.6 Q F0([)2.5 E F1(\255lnprs)A F0 2.5
+(][)C F2(jobspec)A F0(... ])2.5 E F1(jobs \255x)108 477.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 429.6 Q .3 -.15(ve j)-.25 H 2.5
+(The \214rst form lists the acti)144 489.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 F3<ad6c>144 441.6 Q F0
-(List process IDs in addition to the normal information.)27.52 E F3
-<ad6e>144 453.6 Q F0 .193(Display information only about jobs that ha)
+(wing meanings:)-.25 E F1<ad6c>144 501.6 Q F0
+(List process IDs in addition to the normal information.)27.52 E F1
+<ad6e>144 513.6 Q F0 .193(Display information only about jobs that ha)
24.74 F .494 -.15(ve c)-.2 H .194(hanged status since the user w).15 F
-.194(as last noti-)-.1 F(\214ed of their status.)180 465.6 Q F3<ad70>144
-477.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 F3<ad72>144 489.6 Q F0
-(Display only running jobs.)25.86 E F3<ad73>144 501.6 Q F0
-(Display only stopped jobs.)26.41 E(If)144 518.4 Q F2(jobspec)4.554 E F0
+.194(as last noti-)-.1 F(\214ed of their status.)180 525.6 Q F1<ad70>144
+537.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 549.6 Q F0
+(Display only running jobs.)25.86 E F1<ad73>144 561.6 Q F0
+(Display only stopped jobs.)26.41 E(If)144 578.4 Q F2(jobspec)4.554 E F0
.314(is gi)3.124 F -.15(ve)-.25 G .314
(n, output is restricted to information about that job).15 F 5.313(.T)
--.4 G .313(he return status is 0 unless)-5.313 F(an in)144 530.4 Q -.25
+-.4 G .313(he return status is 0 unless)-5.313 F(an in)144 590.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 .394(If the)144 547.2 R F3
-<ad78>2.894 E F0 .394(option is supplied,)2.894 F F3(jobs)2.894 E F0
+E F2(jobspec)4.24 E F0(is supplied.)2.81 E .394(If the)144 607.2 R F1
+<ad78>2.894 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 .395
-(with the corre-)3.164 F(sponding process group ID, and e)144 559.2 Q
+(with the corre-)3.164 F(sponding process group ID, and e)144 619.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
-F3(kill)108 576 Q F0([)2.5 E F3<ad73>A F2(sigspec)2.5 E F0(|)2.5 E F3
-<ad6e>2.5 E F2(signum)2.5 E F0(|)2.5 E F3<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 F3
-(kill \255l)108 588 Q F0([)2.5 E F2(sigspec)A F0(|)2.5 E F2 -.2(ex)2.5 G
-(it_status).2 E F0(])A .12(Send the signal named by)144 600 R F2
+F1(kill)108 636 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 648 Q F0([)2.5 E F2(sigspec)A F0(|)2.5 E F2 -.2(ex)2.5 G
+(it_status).2 E F0(])A .12(Send the signal named by)144 660 R F2
(sigspec)2.96 E F0(or)2.93 E F2(signum)2.96 E F0 .119
(to the processes named by)2.939 F F2(pid)3.869 E F0(or)3.389 E F2
(jobspec)2.619 E F0(.).31 E F2(sigspec)5.459 E F0(is)2.929 E .318
-(either a case-insensiti)144 612 R .618 -.15(ve s)-.25 H .318
-(ignal name such as).15 F F1(SIGKILL)2.818 E F0 .319
-(\(with or without the)2.569 F F1(SIG)2.819 E F0 .319
-(pre\214x\) or a signal)2.569 F(number;)144 624 Q F2(signum)4.189 E F0
+(either a case-insensiti)144 672 R .618 -.15(ve s)-.25 H .318
+(ignal name such as).15 F F3(SIGKILL)2.818 E F0 .319
+(\(with or without the)2.569 F F3(SIG)2.819 E F0 .319
+(pre\214x\) or a signal)2.569 F(number;)144 684 Q F2(signum)4.189 E F0
1.349(is a signal number)4.169 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 F1(SIGTERM)3.849 E F0
-1.348(is assumed.)3.599 F(An)6.348 E(ar)144 636 Q .522(gument of)-.18 F
-F3<ad6c>3.023 E F0 .523(lists the signal names.)3.023 F .523(If an)5.523
+4.189 E F0 1.349(is not present, then)4.159 F F3(SIGTERM)3.849 E F0
+1.348(is assumed.)3.599 F(An)6.348 E(ar)144 696 Q .522(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
-F3<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 648 R .28
+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 708 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 660 Q .377(gument to)-.18 F F3
-<ad6c>2.877 E F0 .378
-(is a number specifying either a signal number or the e)2.877 F .378
-(xit status of a process termi-)-.15 F .594(nated by a signal.)144 672 R
-F3(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 .593(alse if an error)-.1 F
-(occurs or an in)144 684 Q -.25(va)-.4 G(lid option is encountered.).25
-E F3(let)108 700.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 712.8 Q F2(ar)3.026 E(g)-.37 E F0 .196
-(is an arithmetic e)2.916 F .197(xpression to be e)-.15 F -.25(va)-.25 G
-.197(luated \(see).25 F F1 .197(ARITHMETIC EV)2.697 F(ALU)-1.215 E -.855
-(AT)-.54 G(ION).855 E F0(abo)2.447 E -.15(ve)-.15 G 2.697(\). If).15 F
-(the last)144 724.8 Q F2(ar)2.83 E(g)-.37 E F0 -.25(eva)2.72 G
-(luates to 0,).25 E F3(let)2.5 E F0(returns 1; 0 is returned otherwise.)
-2.5 E(GNU Bash-4.2)72 768 Q(2004 Apr 20)148.735 E(10)198.725 E 0 Cg EP
+-.2(ex)2.78 G(it_status).2 E F0(ar)144 720 Q 1.984(gument to)-.18 F F1
+<ad6c>4.484 E F0 1.985
+(is a number specifying either a signal number or the e)4.484 F 1.985
+(xit status of a process)-.15 F(GNU Bash-4.2)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/F1 10
-/Times-Bold@0 SF(local)108 84 Q F0([)2.5 E/F2 10/Times-Italic@0 SF
-(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 96 S 2.56(re).15 G .06(ach ar)-2.56 F .06
+(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E .672
+(terminated by a signal.)144 84 R/F1 10/Times-Bold@0 SF(kill)5.672 E F0
+.672(returns true if at least one signal w)3.172 F .671
+(as successfully sent, or f)-.1 F .671(alse if an)-.1 F
+(error occurs or an in)144 96 Q -.25(va)-.4 G
+(lid option is encountered.).25 E F1(let)108 112.8 Q/F2 10
+/Times-Italic@0 SF(ar)2.5 E(g)-.37 E F0([)2.5 E F2(ar)A(g)-.37 E F0
+(...])2.5 E(Each)144 124.8 Q F2(ar)3.026 E(g)-.37 E F0 .196
+(is an arithmetic e)2.916 F .197(xpression to be e)-.15 F -.25(va)-.25 G
+.197(luated \(see).25 F/F3 9/Times-Bold@0 SF .197(ARITHMETIC EV)2.697 F
+(ALU)-1.215 E -.855(AT)-.54 G(ION).855 E F0(abo)2.447 E -.15(ve)-.15 G
+2.697(\). If).15 F(the last)144 136.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 153.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 165.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 108 Q 3.152(yo)-.15
-G 3.152(ft)-3.152 G .652(he options accepted by)-3.152 F F1(declar)3.152
-E(e)-.18 E F0 5.652(.W)C(hen)-5.652 E F1(local)3.152 E F0 .653
+-5.06 E F2(option)2.56 E F0 .06(can be)2.56 F(an)144 177.6 Q 3.152(yo)
+-.15 G 3.152(ft)-3.152 G .652(he options accepted by)-3.152 F F1(declar)
+3.152 E(e)-.18 E F0 5.652(.W)C(hen)-5.652 E F1(local)3.152 E F0 .653
(is used within a function, it causes the v)3.152 F(ari-)-.25 E(able)144
-120 Q F2(name)3.721 E F0 .861(to ha)3.541 F 1.161 -.15(ve a v)-.2 H .861
-(isible scope restricted to that function and its children.).15 F -.4
-(Wi)5.86 G .86(th no operands,).4 F F1(local)144 132 Q F0 1.164
+189.6 Q F2(name)3.721 E F0 .861(to ha)3.541 F 1.161 -.15(ve a v)-.2 H
+.861(isible scope restricted to that function and its children.).15 F
+-.4(Wi)5.86 G .86(th no operands,).4 F F1(local)144 201.6 Q F0 1.164
(writes a list of local v)3.664 F 1.165
(ariables to the standard output.)-.25 F 1.165(It is an error to use)
6.165 F F1(local)3.665 E F0 1.165(when not)3.665 F .233
-(within a function.)144 144 R .233(The return status is 0 unless)5.233 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.092 E F0(is)2.912 E(supplied, or)144 156 Q
-F2(name)2.5 E F0(is a readonly v)2.5 E(ariable.)-.25 E F1(logout)108
-172.8 Q F0(Exit a login shell.)9.33 E F1(map\214le)108 189.6 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 201.6 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 .35
-(Read lines from the standard input into the inde)144 213.6 R -.15(xe)
+(within a function.)144 213.6 R .233(The return status is 0 unless)5.233
+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.092 E F0(is)2.912 E(supplied, or)144
+225.6 Q F2(name)2.5 E F0(is a readonly v)2.5 E(ariable.)-.25 E F1
+(logout)108 242.4 Q F0(Exit a login shell.)9.33 E F1(map\214le)108 259.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 271.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 .35
+(Read lines from the standard input into the inde)144 283.2 R -.15(xe)
-.15 G 2.851(da).15 G .351(rray v)-2.851 F(ariable)-.25 E F2(arr)2.851 E
(ay)-.15 E F0 2.851(,o).32 G 2.851(rf)-2.851 G .351
-(rom \214le descriptor)-2.851 F F2(fd)2.851 E F0 1.249(if the)144 225.6
+(rom \214le descriptor)-2.851 F F2(fd)2.851 E F0 1.249(if the)144 295.2
R F1<ad75>3.749 E F0 1.249(option is supplied.)3.749 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.748 E(ay)-.15 E F0 6.248(.O)C
-1.248(ptions, if supplied,)-6.248 F(ha)144 237.6 Q .3 -.15(ve t)-.2 H
-(he follo).15 E(wing meanings:)-.25 E F1<ad6e>144 249.6 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
-261.6 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 273.6
-Q F0(Discard the \214rst)26.41 E F2(count)2.5 E F0(lines read.)2.5 E F1
-<ad74>144 285.6 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 297.6 Q F0
+F(ariable)-.25 E F3(MAPFILE)3.749 E F0 1.249(is the def)3.499 F(ault)-.1
+E F2(arr)3.748 E(ay)-.15 E F0 6.248(.O)C 1.248(ptions, if supplied,)
+-6.248 F(ha)144 307.2 Q .3 -.15(ve t)-.2 H(he follo).15 E
+(wing meanings:)-.25 E F1<ad6e>144 319.2 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 331.2 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 343.2 Q F0
+(Discard the \214rst)26.41 E F2(count)2.5 E F0(lines read.)2.5 E F1
+<ad74>144 355.2 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 367.2 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 309.6 Q F0(Ev)23.08 E
+(instead of the standard input.)2.5 E F1<ad43>144 379.2 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 321.6
+(option speci\214es)2.5 E F2(quantum)2.5 E F0(.).32 E F1<ad63>144 391.2
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 338.4 Q F1<ad43>2.967 E F0 .467
+(callbac)2.5 E(k)-.2 E F0(.).67 E(If)144 408 Q F1<ad43>2.967 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 .262(plied the inde)144 350.4 R 2.762(xo)-.15
-G 2.762(ft)-2.762 G .262(he ne)-2.762 F .261(xt array element to be ass\
-igned and the line to be assigned to that element)-.15 F .274
-(as additional ar)144 362.4 R(guments.)-.18 E F2(callbac)5.274 E(k)-.2 E
+(luated, it is sup-).25 F .262(plied the inde)144 420 R 2.762(xo)-.15 G
+2.762(ft)-2.762 G .262(he ne)-2.762 F .261(xt array element to be assig\
+ned and the line to be assigned to that element)-.15 F .274
+(as additional ar)144 432 R(guments.)-.18 E F2(callbac)5.274 E(k)-.2 E
F0 .274(is e)2.774 F -.25(va)-.25 G .274
(luated after the line is read b).25 F .275
-(ut before the array element is)-.2 F(assigned.)144 374.4 Q
-(If not supplied with an e)144 391.2 Q(xplicit origin,)-.15 E F1
+(ut before the array element is)-.2 F(assigned.)144 444 Q
+(If not supplied with an e)144 460.8 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 408 Q F0 1.906
+(before assigning to it.)2.5 E F1(map\214le)144 477.6 Q F0 1.906
(returns successfully unless an in)4.406 F -.25(va)-.4 G 1.905
(lid option or option ar).25 F 1.905(gument is supplied,)-.18 F F2(arr)
-4.405 E(ay)-.15 E F0(is)4.405 E(in)144 420 Q -.25(va)-.4 G
+4.405 E(ay)-.15 E F0(is)4.405 E(in)144 489.6 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 436.8 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 448.8 Q -.15(ve)-.15 G 2.799
+F1(popd)108 506.4 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 518.4 Q -.15(ve)-.15 G 2.799
(se).15 G .299(ntries from the directory stack.)-2.799 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 .3(he top directory from the)-2.799 F 1.479(stack, and performs a)144
-460.8 R F1(cd)3.979 E F0 1.479(to the ne)3.979 F 3.979(wt)-.25 G 1.479
+530.4 R F1(cd)3.979 E F0 1.479(to the ne)3.979 F 3.979(wt)-.25 G 1.479
(op directory)-3.979 F 6.479(.A)-.65 G -.18(rg)-6.479 G 1.478
(uments, if supplied, ha).18 F 1.778 -.15(ve t)-.2 H 1.478(he follo).15
-F(wing)-.25 E(meanings:)144 472.8 Q F1<ad6e>144 484.8 Q F0 .551
+F(wing)-.25 E(meanings:)144 542.4 Q F1<ad6e>144 554.4 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 496.8 Q F1(+)144 508.8 Q F2(n)A
+(that only the stack is manipulated.)180 566.4 Q F1(+)144 578.4 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
-520.8 S 2.5(re).15 G(xample:)-2.65 E/F4 10/Courier@0 SF(popd +0)2.5 E F0
+590.4 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 532.8 Q F2(n)A F0
+-.65 E F4(popd +1)2.5 E F0(the second.)2.5 E F1<ad>144 602.4 Q F2(n)A F0
(Remo)25.3 E -.15(ve)-.15 G 3.759(st).15 G(he)-3.759 E F2(n)3.759 E F0
1.259(th entry counting from the right of the list sho)B 1.26(wn by)-.25
F F1(dirs)3.76 E F0 3.76(,s)C 1.26(tarting with)-3.76 F 2.5(zero. F)180
-544.8 R(or e)-.15 E(xample:)-.15 E F4(popd -0)2.5 E F0(remo)2.5 E -.15
+614.4 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 .644(If the)144 561.6 R F1(popd)
+E F0(the ne)2.5 E(xt to last.)-.15 E .644(If the)144 631.2 R F1(popd)
3.144 E F0 .644(command is successful, a)3.144 F F1(dirs)3.143 E F0 .643
(is performed as well, and the return status is 0.)3.143 F F1(popd)5.643
-E F0 .415(returns f)144 573.6 R .415(alse if an in)-.1 F -.25(va)-.4 G
+E F0 .415(returns f)144 643.2 R .415(alse if an in)-.1 F -.25(va)-.4 G
.415(lid option is encountered, the directory stack is empty).25 F 2.916
(,an)-.65 G(on-e)-2.916 E .416(xistent direc-)-.15 F
-(tory stack entry is speci\214ed, or the directory change f)144 585.6 Q
-(ails.)-.1 E F1(printf)108 602.4 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.437
-(Write the formatted)144 614.4 R F2(ar)3.937 E(guments)-.37 E F0 1.437
+(tory stack entry is speci\214ed, or the directory change f)144 655.2 Q
+(ails.)-.1 E F1(printf)108 672 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.437
+(Write the formatted)144 684 R F2(ar)3.937 E(guments)-.37 E F0 1.437
(to the standard output under the control of the)3.937 F F2(format)3.936
E F0 6.436(.T)C(he)-6.436 E F1<ad76>3.936 E F0 .126
-(option causes the output to be assigned to the v)144 626.4 R(ariable)
--.25 E F2(var)2.626 E F0 .126(rather than being printed to the standard)
-2.626 F(output.)144 638.4 Q(The)144 662.4 Q F2(format)3.018 E F0 .517(i\
-s a character string which contains three types of objects: plain chara\
-cters, which are)3.018 F .704(simply copied to standard output, charact\
-er escape sequences, which are con)144 674.4 R -.15(ve)-.4 G .704
-(rted and copied to).15 F .036(the standard output, and format speci\
-\214cations, each of which causes printing of the ne)144 686.4 R .036
-(xt successi)-.15 F -.15(ve)-.25 G F2(ar)144 698.4 Q(gument)-.37 E F0
-5.531(.I)C 3.031(na)-5.531 G .531(ddition to the standard)-3.031 F F2
-(printf)3.032 E F0 .532(\(1\) format speci\214cations,)B F1(printf)3.032
-E F0 .532(interprets the follo)3.032 F(w-)-.25 E(ing e)144 710.4 Q
-(xtensions:)-.15 E(GNU Bash-4.2)72 768 Q(2004 Apr 20)148.735 E(11)
+(option causes the output to be assigned to the v)144 696 R(ariable)-.25
+E F2(var)2.626 E F0 .126(rather than being printed to the standard)2.626
+F(output.)144 708 Q(GNU Bash-4.2)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/F1 10
-/Times-Bold@0 SF(%b)144 84 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 10
-/Times-Italic@0 SF(ar)5.115 E(gument)-.37 E F0(\(e)180 96 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
+(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.018 E F0 .517(is a character string w\
+hich contains three types of objects: plain characters, which are)3.018
+F .704(simply copied to standard output, character escape sequences, wh\
+ich are con)144 96 R -.15(ve)-.4 G .704(rted and copied to).15 F .036(t\
+he standard output, and format speci\214cations, each of which causes p\
+rinting of the ne)144 108 R .036(xt successi)-.15 F -.15(ve)-.25 G F1
+(ar)144 120 Q(gument)-.37 E F0 5.531(.I)C 3.031(na)-5.531 G .531
+(ddition to the standard)-3.031 F F1(printf)3.032 E F0 .532
+(\(1\) format speci\214cations,)B/F2 10/Times-Bold@0 SF(printf)3.032 E
+F0 .532(interprets the follo)3.032 F(w-)-.25 E(ing e)144 132 Q
+(xtensions:)-.15 E F2(%b)144 144 Q F0(causes)20.44 E F2(printf)5.115 E
+F0 2.615(to e)5.115 F 2.615
+(xpand backslash escape sequences in the corresponding)-.15 F F1(ar)
+5.115 E(gument)-.37 E F0(\(e)180 156 Q .608(xcept that)-.15 F F2(\\c)
+3.108 E F0 .608(terminates output, backslashes in)3.108 F F2<5c08>3.108
+E F0(,)A F2(\\")3.108 E F0 3.108(,a)C(nd)-3.108 E F2(\\?)3.108 E F0 .608
(are not remo)3.108 F -.15(ve)-.15 G .608(d, and octal).15 F(escapes be)
-180 108 Q(ginning with)-.15 E F1(\\0)2.5 E F0
-(may contain up to four digits\).)2.5 E F1(%q)144 120 Q F0(causes)20.44
-E F1(printf)2.51 E F0 .01(to output the corresponding)2.51 F F2(ar)2.51
+180 168 Q(ginning with)-.15 E F2(\\0)2.5 E F0
+(may contain up to four digits\).)2.5 E F2(%q)144 180 Q F0(causes)20.44
+E F2(printf)2.51 E F0 .01(to output the corresponding)2.51 F F1(ar)2.51
E(gument)-.37 E F0 .01(in a format that can be reused as shell)2.51 F
-(input.)180 132 Q F1(%\()144 144 Q F2(datefmt)A F1(\)T)A F0(causes)180
-156 Q F1(printf)4.403 E F0 1.904
-(to output the date-time string resulting from using)4.403 F F2(datefmt)
-4.404 E F0 1.904(as a format)4.404 F .381(string for)180 168 R F2
-(strftime)2.881 E F0 2.881(\(3\). The)B(corresponding)2.881 E F2(ar)
+(input.)180 192 Q F2(%\()144 204 Q F1(datefmt)A F2(\)T)A F0(causes)180
+216 Q F2(printf)4.403 E F0 1.904
+(to output the date-time string resulting from using)4.403 F F1(datefmt)
+4.404 E F0 1.904(as a format)4.404 F .381(string for)180 228 R F1
+(strftime)2.881 E F0 2.881(\(3\). The)B(corresponding)2.881 E F1(ar)
2.881 E(gument)-.37 E F0 .381(is an inte)2.881 F .381
(ger representing the number)-.15 F .457(of seconds since the epoch.)180
-180 R -1 -.8(Tw o)5.458 H .458(special ar)3.758 F .458(gument v)-.18 F
+240 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 192 Q(as in)
--.1 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E(Ar)144 208.8 Q .464(guments to n\
+(current time, and -2 represents the time the shell w)180 252 Q(as in)
+-.1 E -.2(vo)-.4 G -.1(ke).2 G(d.).1 E(Ar)144 268.8 Q .464(guments to n\
on-string format speci\214ers are treated as C constants, e)-.18 F .463
-(xcept that a leading plus or)-.15 F 1.258(minus sign is allo)144 220.8
+(xcept that a leading plus or)-.15 F 1.258(minus sign is allo)144 280.8
R 1.259
(wed, and if the leading character is a single or double quote, the v)
--.25 F 1.259(alue is the)-.25 F(ASCII v)144 232.8 Q(alue of the follo)
--.25 E(wing character)-.25 E(.)-.55 E(The)144 249.6 Q F2(format)3.424 E
-F0 .923(is reused as necessary to consume all of the)3.424 F F2(ar)3.423
-E(guments)-.37 E F0 5.923(.I)C 3.423(ft)-5.923 G(he)-3.423 E F2(format)
-3.423 E F0 .923(requires more)3.423 F F2(ar)144 261.6 Q(guments)-.37 E
+-.25 F 1.259(alue is the)-.25 F(ASCII v)144 292.8 Q(alue of the follo)
+-.25 E(wing character)-.25 E(.)-.55 E(The)144 309.6 Q F1(format)3.424 E
+F0 .923(is reused as necessary to consume all of the)3.424 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 .923(requires more)3.423 F F1(ar)144 321.6 Q(guments)-.37 E
F0 .033(than are supplied, the e)2.533 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 .034(alue or null string,)
--.25 F(as appropriate, had been supplied.)144 273.6 Q(The return v)5 E
-(alue is zero on success, non-zero on f)-.25 E(ailure.)-.1 E F1(pushd)
-108 290.4 Q F0([)2.5 E F1<ad6e>A F0 2.5(][)C(+)-2.5 E F2(n)A F0 2.5(][)C
-<ad>-2.5 E F2(n)A F0(])A F1(pushd)108 302.4 Q F0([)2.5 E F1<ad6e>A F0
-2.5(][)C F2(dir)-2.5 E F0(])A .64(Adds a directory to the top of the di\
-rectory stack, or rotates the stack, making the ne)144 314.4 R 3.139(wt)
--.25 G .639(op of the)-3.139 F 1.315(stack the current w)144 326.4 R
+-.25 F(as appropriate, had been supplied.)144 333.6 Q(The return v)5 E
+(alue is zero on success, non-zero on f)-.25 E(ailure.)-.1 E F2(pushd)
+108 350.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 362.4 Q F0([)2.5 E F2<ad6e>A F0
+2.5(][)C F1(dir)-2.5 E F0(])A .64(Adds a directory to the top of the di\
+rectory stack, or rotates the stack, making the ne)144 374.4 R 3.139(wt)
+-.25 G .639(op of the)-3.139 F 1.315(stack the current w)144 386.4 R
1.315(orking directory)-.1 F 6.315(.W)-.65 G 1.315(ith no ar)-6.715 F
1.315(guments, e)-.18 F 1.316(xchanges the top tw)-.15 F 3.816(od)-.1 G
1.316(irectories and)-3.816 F .872
-(returns 0, unless the directory stack is empty)144 338.4 R 5.871(.A)
+(returns 0, unless the directory stack is empty)144 398.4 R 5.871(.A)
-.65 G -.18(rg)-5.871 G .871(uments, if supplied, ha).18 F 1.171 -.15
-(ve t)-.2 H .871(he follo).15 F .871(wing mean-)-.25 F(ings:)144 350.4 Q
-F1<ad6e>144 362.4 Q F0 .902(Suppresses the normal change of directory w\
+(ve t)-.2 H .871(he follo).15 F .871(wing mean-)-.25 F(ings:)144 410.4 Q
+F2<ad6e>144 422.4 Q F0 .902(Suppresses the normal change of directory w\
hen adding directories to the stack, so that)24.74 F
-(only the stack is manipulated.)180 374.4 Q F1(+)144 386.4 Q F2(n)A F0
-1.268(Rotates the stack so that the)25.3 F F2(n)3.768 E F0 1.267
+(only the stack is manipulated.)180 434.4 Q F2(+)144 446.4 Q F1(n)A F0
+1.268(Rotates the stack so that the)25.3 F F1(n)3.768 E F0 1.267
(th directory \(counting from the left of the list sho)B 1.267(wn by)
--.25 F F1(dirs)180 398.4 Q F0 2.5(,s)C
-(tarting with zero\) is at the top.)-2.5 E F1<ad>144 410.4 Q F2(n)A F0
-.92(Rotates the stack so that the)25.3 F F2(n)3.42 E F0 .92
+-.25 F F2(dirs)180 458.4 Q F0 2.5(,s)C
+(tarting with zero\) is at the top.)-2.5 E F2<ad>144 470.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 F1(dirs)180 422.4 Q F0 2.5(,s)C(tarting with zero\) is at the top.)
--2.5 E F2(dir)144.35 434.4 Q F0(Adds)23.98 E F2(dir)3.138 E F0 .288
+F F2(dirs)180 482.4 Q F0 2.5(,s)C(tarting with zero\) is at the top.)
+-2.5 E F1(dir)144.35 494.4 Q F0(Adds)23.98 E F1(dir)3.138 E F0 .288
(to the directory stack at the top, making it the ne)3.518 F 2.787(wc)
-.25 G .287(urrent w)-2.787 F .287(orking directory as)-.1 F
-(if it had been supplied as the ar)180 446.4 Q(gument to the)-.18 E F1
-(cd)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E .488(If the)144 463.2 R F1(pushd)
-2.988 E F0 .488(command is successful, a)2.988 F F1(dirs)2.988 E F0 .488
+(if it had been supplied as the ar)180 506.4 Q(gument to the)-.18 E F2
+(cd)2.5 E F0 -.2(bu)2.5 G(iltin.).2 E .488(If the)144 523.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
-F1(pushd)2.989 E F0 1.04(returns 0 unless the cd to)144 475.2 R F2(dir)
+F2(pushd)2.989 E F0 1.04(returns 0 unless the cd to)144 535.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 F1(pushd)3.539 E F0 1.039(returns 0 unless the directory)3.539 F .846
-(stack is empty)144 487.2 R 3.346(,an)-.65 G(on-e)-3.346 E .847(xistent\
+F F2(pushd)3.539 E F0 1.039(returns 0 unless the directory)3.539 F .846
+(stack is empty)144 547.2 R 3.346(,an)-.65 G(on-e)-3.346 E .847(xistent\
directory stack element is speci\214ed, or the directory change to the)
--.15 F(speci\214ed ne)144 499.2 Q 2.5(wc)-.25 G(urrent directory f)-2.5
-E(ails.)-.1 E F1(pwd)108 516 Q F0([)2.5 E F1(\255LP)A F0(])A .845
-(Print the absolute pathname of the current w)144 528 R .845
+-.15 F(speci\214ed ne)144 559.2 Q 2.5(wc)-.25 G(urrent directory f)-2.5
+E(ails.)-.1 E F2(pwd)108 576 Q F0([)2.5 E F2(\255LP)A F0(])A .845
+(Print the absolute pathname of the current w)144 588 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
-540 R F1<ad50>2.681 E F0 .181(option is supplied or the)2.681 F F1 .181
-(\255o ph)2.681 F(ysical)-.15 E F0 .181(option to the)2.681 F F1(set)
+600 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 552 R(the)3.264 E F1<ad4c>3.264 E F0 .763
+144 612 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 564 R -.25(va)
--.4 G(lid).25 E(option is supplied.)144 576 Q F1 -.18(re)108 592.8 S(ad)
-.18 E F0([)3.817 E F1(\255ers)A F0 3.817(][)C F1<ad61>-3.817 E F2(aname)
-3.817 E F0 3.817(][)C F1<ad64>-3.817 E F2(delim)3.817 E F0 3.817(][)C F1
-<ad69>-3.817 E F2(te)3.817 E(xt)-.2 E F0 3.817(][)C F1<ad6e>-3.817 E F2
-(nc)3.816 E(har)-.15 E(s)-.1 E F0 3.816(][)C F1<ad4e>-3.816 E F2(nc)
-3.816 E(har)-.15 E(s)-.1 E F0 3.816(][)C F1<ad70>-3.816 E F2(pr)3.816 E
-(ompt)-.45 E F0 3.816(][)C F1<ad74>-3.816 E F2(timeout)3.816 E F0 3.816
-(][)C F1<ad75>-3.816 E F2(fd)3.816 E F0(])A([)108 604.8 Q F2(name)A F0
+ reading the name of the current directory or an in)144 624 R -.25(va)
+-.4 G(lid).25 E(option is supplied.)144 636 Q F2 -.18(re)108 652.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 664.8 Q F1(name)A F0
(...])2.5 E .516(One line is read from the standard input, or from the \
-\214le descriptor)144 616.8 R F2(fd)3.016 E F0 .516(supplied as an ar)
-3.016 F .516(gument to)-.18 F(the)144 628.8 Q F1<ad75>2.538 E F0 .038
+\214le descriptor)144 676.8 R F1(fd)3.016 E F0 .516(supplied as an ar)
+3.016 F .516(gument to)-.18 F(the)144 688.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 F2(name)2.539 E F0 2.539(,t).18 G .039(he second w)-2.539 F .039
-(ord to the second)-.1 F F2(name)2.539 E F0(,).18 E .42
-(and so on, with lefto)144 640.8 R -.15(ve)-.15 G 2.92(rw).15 G .42
+-.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 700.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 F2(name)2.92 E F0 5.42(.I)
-.18 G 2.92(ft)-5.42 G(here)-2.92 E .54(are fe)144 652.8 R .54(wer w)-.25
+(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 712.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 664.8 S 2.511(lues. The).25 F .011
+are assigned empty)-.1 F -.25(va)144 724.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 F1(\\)A F0 2.51(\)m)C(ay)-2.51 E 1.89
-(be used to remo)144 676.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 688.8 Q .3 -.15(ve t)-.2 H(he follo).15 E
-(wing meanings:)-.25 E F1<ad61>144 700.8 Q F2(aname)2.5 E F0 1.05(The w)
-180 712.8 R 1.049
-(ords are assigned to sequential indices of the array v)-.1 F(ariable)
--.25 E F2(aname)3.549 E F0 3.549(,s).18 G 1.049(tarting at 0.)-3.549 F
-F2(aname)180.33 724.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 F2(name)2.5 E F0
-(ar)2.5 E(guments are ignored.)-.18 E(GNU Bash-4.2)72 768 Q(2004 Apr 20)
-148.735 E(12)198.725 E 0 Cg EP
+(backslash character \()2.511 F F2(\\)A F0 2.51(\)m)C(ay)-2.51 E
+(GNU Bash-4.2)72 768 Q(2004 Apr 20)148.735 E(12)198.725 E 0 Cg EP
%%Page: 13 13
%%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<ad64>144 84 Q/F2 10/Times-Italic@0 SF(delim)2.5 E F0
-(The \214rst character of)180 96 Q F2(delim)2.5 E F0
+(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E 1.89
+(be used to remo)144 84 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 96 Q .3 -.15(ve t)-.2 H(he follo).15 E
+(wing meanings:)-.25 E/F1 10/Times-Bold@0 SF<ad61>144 108 Q/F2 10
+/Times-Italic@0 SF(aname)2.5 E F0 1.05(The w)180 120 R 1.049
+(ords are assigned to sequential indices of the array v)-.1 F(ariable)
+-.25 E F2(aname)3.549 E F0 3.549(,s).18 G 1.049(tarting at 0.)-3.549 F
+F2(aname)180.33 132 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 F2(name)2.5 E F0(ar)2.5
+E(guments are ignored.)-.18 E F1<ad64>144 144 Q F2(delim)2.5 E F0
+(The \214rst character of)180 156 Q F2(delim)2.5 E F0
(is used to terminate the input line, rather than ne)2.5 E(wline.)-.25 E
-F1<ad65>144 108 Q F0 .372
+F1<ad65>144 168 Q F0 .372
(If the standard input is coming from a terminal,)25.86 F F1 -.18(re)
2.873 G(adline).18 E F0(\(see)2.873 E/F3 9/Times-Bold@0 SF(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 120 R .218
+(sed)-2.873 E .218(to obtain the line.)180 180 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 132 Q -.15(ve)-.25 G 2.5(\)e).15 G(diting settings.)-2.5 E F1
-<ad69>144 144 Q F2(te)2.5 E(xt)-.2 E F0(If)10.78 E F1 -.18(re)2.715 G
+(acti)180 192 Q -.15(ve)-.25 G 2.5(\)e).15 G(diting settings.)-2.5 E F1
+<ad69>144 204 Q F2(te)2.5 E(xt)-.2 E F0(If)10.78 E F1 -.18(re)2.715 G
(adline).18 E F0 .216(is being used to read the line,)2.715 F F2(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 156 Q(gins.)-.15 E F1<ad6e>144
-168 Q F2(nc)2.5 E(har)-.15 E(s)-.1 E F1 -.18(re)180 180 S(ad).18 E F0
+.216(fer before edit-)-.25 F(ing be)180 216 Q(gins.)-.15 E F1<ad6e>144
+228 Q F2(nc)2.5 E(har)-.15 E(s)-.1 E F1 -.18(re)180 240 S(ad).18 E F0
1.395(returns after reading)3.895 F F2(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 192 Q
+(aiting for a complete line of)-.1 F(input, b)180 252 Q
(ut honor a delimiter if fe)-.2 E(wer than)-.25 E F2(nc)2.5 E(har)-.15 E
(s)-.1 E F0(characters are read before the delimiter)2.5 E(.)-.55 E F1
-<ad4e>144 204 Q F2(nc)2.5 E(har)-.15 E(s)-.1 E F1 -.18(re)180 216 S(ad)
+<ad4e>144 264 Q F2(nc)2.5 E(har)-.15 E(s)-.1 E F1 -.18(re)180 276 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 228 R F1 -.18(re)2.775
+(line of input, unless EOF is encountered or)180 288 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 240 R
+(tered in the input are not treated specially and do not cause)180 300 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 252 Q F1<ad70>144 264 Q
-F2(pr)2.5 E(ompt)-.45 E F0(Display)180 276 Q F2(pr)3.661 E(ompt)-.45 E
+E(har)-.15 E(s)-.1 E F0(characters are read.)180 312 Q F1<ad70>144 324 Q
+F2(pr)2.5 E(ompt)-.45 E F0(Display)180 336 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 288 Q 2.5(yi)-.15 G 2.5(nput. The)-2.5 F
+-.25 F(an)180 348 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 300 Q F0 .543(Backslash does not act as an escape character)
+<ad72>144 360 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 312 Q(In particular)5 E 2.5(,ab)-.4 G
+-5.543 F(the line.)180 372 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 324 Q F0(Silent mode.)26.41 E
+-.25 E F1<ad73>144 384 Q F0(Silent mode.)26.41 E
(If input is coming from a terminal, characters are not echoed.)5 E F1
-<ad74>144 336 Q F2(timeout)2.5 E F0(Cause)180 348 Q F1 -.18(re)3.549 G
+<ad74>144 396 Q F2(timeout)2.5 E F0(Cause)180 408 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 360 Q F0(seconds.)3.496 E F2(timeout)5.996 E F0 .997
+180 420 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 372 R .576(This option is only ef)
+-.25 E .576(the decimal point.)180 432 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 384 R .142
+(pipe, or other special \214le; it has no ef)180 444 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 396 S(ad).18 E
+F2(timeout)2.642 E F0 .142(is 0,)2.642 F F1 -.18(re)180 456 S(ad).18 E
F0 .61(returns immediately)3.11 F 3.11(,w)-.65 G .61
(ithout trying to read an)-3.11 F 3.11(yd)-.15 G 3.11(ata. The)-3.11 F
--.15(ex)3.11 G .61(it statis is 0 if input is).15 F -.2(av)180 408 S
+-.15(ex)3.11 G .61(it statis is 0 if input is).15 F -.2(av)180 468 S
1.223(ailable on the speci\214ed \214le descriptor)-.05 F 3.723(,n)-.4 G
1.223(on-zero otherwise.)-3.723 F 1.224(The e)6.223 F 1.224
-(xit status is greater)-.15 F(than 128 if the timeout is e)180 420 Q
-(xceeded.)-.15 E F1<ad75>144 432 Q F2(fd)2.5 E F0
+(xit status is greater)-.15 F(than 128 if the timeout is e)180 480 Q
+(xceeded.)-.15 E F1<ad75>144 492 Q F2(fd)2.5 E F0
(Read input from \214le descriptor)14.46 E F2(fd)2.5 E F0(.)A .192
-(If no)144 448.8 R F2(names)3.052 E F0 .192
+(If no)144 508.8 R F2(names)3.052 E F0 .192
(are supplied, the line read is assigned to the v)2.962 F(ariable)-.25 E
F3(REPL)2.691 E(Y)-.828 E/F4 9/Times-Roman@0 SF(.)A F0 .191
(The return code is zero,)4.691 F 1.343
-(unless end-of-\214le is encountered,)144 460.8 R F1 -.18(re)3.843 G(ad)
+(unless end-of-\214le is encountered,)144 520.8 R F1 -.18(re)3.843 G(ad)
.18 E F0 1.343
(times out \(in which case the return code is greater than)3.843 F .872
-(128\), a v)144 472.8 R .871
+(128\), a v)144 532.8 R .871
(ariable assignment error \(such as assigning to a readonly v)-.25 F
.871(ariable\) occurs, or an in)-.25 F -.25(va)-.4 G(lid).25 E
-(\214le descriptor is supplied as the ar)144 484.8 Q(gument to)-.18 E F1
-<ad75>2.5 E F0(.)A F1 -.18(re)108 501.6 S(adonly).18 E F0([)2.5 E F1
+(\214le descriptor is supplied as the ar)144 544.8 Q(gument to)-.18 E F1
+<ad75>2.5 E F0(.)A F1 -.18(re)108 561.6 S(adonly).18 E F0([)2.5 E F1
(\255aAf)A F0 2.5(][)C F1<ad70>-2.5 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 513.6 R -.15(ve)
+F2(wor)A(d)-.37 E F0 2.5(].)C(..])-2.5 E .77(The gi)144 573.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
-525.6 R 1.097(If the)6.097 F F1<ad66>3.597 E F0 1.097
+585.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 537.6 Q 3.334(ed. The)
+(names)3.596 E F0 1.096(are so)3.596 F(mark)144 597.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 .777(ables to associati)144 549.6 R 1.077 -.15(ve a)-.25 H 3.277
+-.25 E .777(ables to associati)144 609.6 R 1.077 -.15(ve a)-.25 H 3.277
(rrays. If).15 F .777(both options are supplied,)3.277 F F1<ad41>3.277 E
F0(tak)3.277 E .776(es precedence.)-.1 F .776(If no)5.776 F F2(name)
-3.636 E F0(ar)3.456 E(gu-)-.18 E .521(ments are gi)144 561.6 R -.15(ve)
+3.636 E F0(ar)3.456 E(gu-)-.18 E .521(ments are gi)144 621.6 R -.15(ve)
-.25 G .521(n, or if the).15 F F1<ad70>3.021 E F0 .521
(option is supplied, a list of all readonly names is printed.)3.021 F
.522(The other)5.521 F .295(options may be used to restrict the output \
-to a subset of the set of readonly names.)144 573.6 R(The)5.295 E F1
+to a subset of the set of readonly names.)144 633.6 R(The)5.295 E F1
<ad70>2.795 E F0(option)2.795 E .786
(causes output to be displayed in a format that may be reused as input.)
-144 585.6 R .786(If a v)5.786 F .786(ariable name is fol-)-.25 F(lo)144
-597.6 Q .718(wed by =)-.25 F F2(wor)A(d)-.37 E F0 3.218(,t)C .718(he v)
+144 645.6 R .786(If a v)5.786 F .786(ariable name is fol-)-.25 F(lo)144
+657.6 Q .718(wed by =)-.25 F F2(wor)A(d)-.37 E F0 3.218(,t)C .718(he v)
-3.218 F .718(alue of the v)-.25 F .718(ariable is set to)-.25 F F2(wor)
3.218 E(d)-.37 E F0 5.718(.T)C .718(he return status is 0 unless an in)
-5.718 F -.25(va)-.4 G(lid).25 E .26(option is encountered, one of the)
-144 609.6 R F2(names)3.12 E F0 .26(is not a v)3.03 F .26(alid shell v)
+144 669.6 R F2(names)3.12 E F0 .26(is not a v)3.03 F .26(alid shell v)
-.25 F .26(ariable name, or)-.25 F F1<ad66>2.76 E F0 .26
-(is supplied with a)2.76 F F2(name)144.36 621.6 Q F0
-(that is not a function.)2.68 E F1 -.18(re)108 638.4 S(tur).18 E(n)-.15
-E F0([)2.5 E F2(n)A F0(])A .021(Causes a function to stop e)144 650.4 R
+(is supplied with a)2.76 F F2(name)144.36 681.6 Q F0
+(that is not a function.)2.68 E F1 -.18(re)108 698.4 S(tur).18 E(n)-.15
+E F0([)2.5 E F2(n)A F0(])A .021(Causes a function to stop e)144 710.4 R
-.15(xe)-.15 G .021(cuting and return the v).15 F .021
(alue speci\214ed by)-.25 F F2(n)2.88 E F0 .02(to its caller)2.76 F 5.02
-(.I)-.55 G(f)-5.02 E F2(n)2.88 E F0 .02(is omitted,)2.76 F .469
-(the return status is that of the last command e)144 662.4 R -.15(xe)
--.15 G .469(cuted in the function body).15 F 5.469(.I)-.65 G(f)-5.469 E
-F1 -.18(re)2.969 G(tur).18 E(n)-.15 E F0 .469(is used out-)2.969 F .467
-(side a function, b)144 674.4 R .467(ut during e)-.2 F -.15(xe)-.15 G
-.467(cution of a script by the).15 F F1(.)2.967 E F0(\()5.467 E F1(sour)
-A(ce)-.18 E F0 2.966(\)c)C .466(ommand, it causes the shell to)-2.966 F
-.087(stop e)144 686.4 R -.15(xe)-.15 G .087
-(cuting that script and return either).15 F F2(n)2.947 E F0 .087
-(or the e)2.827 F .087(xit status of the last command e)-.15 F -.15(xe)
--.15 G .088(cuted within).15 F .613(the script as the e)144 698.4 R .613
-(xit status of the script.)-.15 F(If)5.613 E F2(n)3.113 E F0 .613
-(is supplied, the return v)3.113 F .613
-(alue is its least signi\214cant 8)-.25 F 2.51(bits. The)144 710.4 R .01
-(return status is non-zero if)2.51 F F1 -.18(re)2.511 G(tur).18 E(n)-.15
-E F0 .011(is supplied a non-numeric ar)2.511 F .011
-(gument, or is used outside)-.18 F 2.91(af)144 722.4 S .41
-(unction and not during e)-2.91 F -.15(xe)-.15 G .41
-(cution of a script by).15 F F1(.)2.91 E F0(or)3.743 E F1(sour)2.91 E
-(ce)-.18 E F0 5.41(.A)C .71 -.15(ny c)-5.41 H .409
-(ommand associated with the).15 F(GNU Bash-4.2)72 768 Q(2004 Apr 20)
-148.735 E(13)198.725 E 0 Cg EP
+(.I)-.55 G(f)-5.02 E F2(n)2.88 E F0 .02(is omitted,)2.76 F 1.591
+(the return status is that of the last command e)144 722.4 R -.15(xe)
+-.15 G 1.591(cuted in the function body).15 F 6.591(.I)-.65 G(f)-6.591 E
+F1 -.18(re)4.092 G(tur).18 E(n)-.15 E F0 1.592(is used)4.092 F
+(GNU Bash-4.2)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/F1 10
-/Times-Bold@0 SF(RETURN)144 84 Q F0(trap is e)2.5 E -.15(xe)-.15 G
-(cuted before e).15 E -.15(xe)-.15 G
-(cution resumes after the function or script.).15 E F1(set)108 100.8 Q
+(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E .347
+(outside a function, b)144 84 R .347(ut during e)-.2 F -.15(xe)-.15 G
+.347(cution of a script by the).15 F/F1 10/Times-Bold@0 SF(.)2.847 E F0
+(\()5.347 E F1(sour)A(ce)-.18 E F0 2.847(\)c)C .347
+(ommand, it causes the shell)-2.847 F 1.132(to stop e)144 96 R -.15(xe)
+-.15 G 1.133(cuting that script and return either).15 F/F2 10
+/Times-Italic@0 SF(n)3.993 E F0 1.133(or the e)3.873 F 1.133
+(xit status of the last command e)-.15 F -.15(xe)-.15 G(cuted).15 E .252
+(within the script as the e)144 108 R .252(xit status of the script.)
+-.15 F(If)5.252 E F2(n)2.751 E F0 .251(is supplied, the return v)2.751 F
+.251(alue is its least signi\214-)-.25 F .288(cant 8 bits.)144 120 R
+.288(The return status is non-zero if)5.288 F F1 -.18(re)2.788 G(tur).18
+E(n)-.15 E F0 .288(is supplied a non-numeric ar)2.788 F .289
+(gument, or is used)-.18 F .661(outside a function and not during e)144
+132 R -.15(xe)-.15 G .661(cution of a script by).15 F F1(.)3.161 E F0
+(or)3.994 E F1(sour)3.161 E(ce)-.18 E F0 5.661(.A)C .961 -.15(ny c)
+-5.661 H .661(ommand associated).15 F(with the)144 144 Q F1(RETURN)2.5 E
+F0(trap is e)2.5 E -.15(xe)-.15 G(cuted before e).15 E -.15(xe)-.15 G
+(cution resumes after the function or script.).15 E F1(set)108 160.8 Q
F0([)2.5 E F1(\255\255abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1<ad6f>-2.5 E
-/F2 10/Times-Italic@0 SF(option\255name)2.5 E F0 2.5(][)C F2(ar)-2.5 E
-(g)-.37 E F0(...])2.5 E F1(set)108 112.8 Q F0([)2.5 E F1
-(+abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1(+o)-2.5 E F2(option\255name)2.5 E
-F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E -.4(Wi)144 124.8 S .835
-(thout options, the name and v).4 F .835(alue of each shell v)-.25 F
-.836(ariable are displayed in a format that can be)-.25 F .784
-(reused as input for setting or resetting the currently-set v)144 136.8
+F2(option\255name)2.5 E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0(...])2.5 E
+F1(set)108 172.8 Q F0([)2.5 E F1(+abefhkmnptuvxBCEHPT)A F0 2.5(][)C F1
+(+o)-2.5 E F2(option\255name)2.5 E F0 2.5(][)C F2(ar)-2.5 E(g)-.37 E F0
+(...])2.5 E -.4(Wi)144 184.8 S .835(thout options, the name and v).4 F
+.835(alue of each shell v)-.25 F .836
+(ariable are displayed in a format that can be)-.25 F .784
+(reused as input for setting or resetting the currently-set v)144 196.8
R 3.284(ariables. Read-only)-.25 F -.25(va)3.284 G .783
-(riables cannot be).25 F 2.946(reset. In)144 148.8 R F2 .447(posix mode)
+(riables cannot be).25 F 2.946(reset. In)144 208.8 R F2 .447(posix mode)
2.946 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.531
-(locale. When)144 160.8 R 1.031(options are speci\214ed, the)3.531 F
+(locale. When)144 220.8 R 1.031(options are speci\214ed, the)3.531 F
3.531(ys)-.15 G 1.031(et or unset shell attrib)-3.531 F 3.53(utes. An)
-.2 F 3.53(ya)-.15 G -.18(rg)-3.53 G 1.03(uments remaining).18 F 1.623
-(after option processing are treated as v)144 172.8 R 1.624
+(after option processing are treated as v)144 232.8 R 1.624
(alues for the positional parameters and are assigned, in)-.25 F(order)
-144 184.8 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 244.8 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 196.8 Q
+-.15(ve t)-.2 H(he follo).15 E(wing meanings:)-.25 E F1<ad61>144 256.8 Q
F0 .54(Automatically mark v)29.3 F .539
(ariables and functions which are modi\214ed or created for e)-.25 F
-.539(xport to)-.15 F(the en)184 208.8 Q
-(vironment of subsequent commands.)-.4 E F1<ad62>144 220.8 Q F0 .131
+.539(xport to)-.15 F(the en)184 268.8 Q
+(vironment of subsequent commands.)-.4 E F1<ad62>144 280.8 Q F0 .131
(Report the status of terminated background jobs immediately)28.74 F
2.632(,r)-.65 G .132(ather than before the ne)-2.632 F(xt)-.15 E
-(primary prompt.)184 232.8 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 244.8 Q F0
+(primary prompt.)184 292.8 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 304.8 Q F0
.088(Exit immediately if a)29.86 F F2(pipeline)2.588 E F0 .087
(\(which may consist of a single)2.588 F F2 .087(simple command)2.587 F
-F0 .087(\), a)B F2(list)2.587 E F0 2.587(,o)C(r)-2.587 E(a)184 256.8 Q
+F0 .087(\), a)B F2(list)2.587 E F0 2.587(,o)C(r)-2.587 E(a)184 316.8 Q
F2 1.293(compound command)3.793 F F0(\(see)3.793 E/F3 9/Times-Bold@0 SF
1.293(SHELL GRAMMAR)3.793 F F0(abo)3.544 E -.15(ve)-.15 G 3.794(\), e)
.15 F 1.294(xits with a non-zero status.)-.15 F .08
-(The shell does not e)184 268.8 R .079(xit if the command that f)-.15 F
-.079(ails is part of the command list immediately)-.1 F(follo)184 280.8
+(The shell does not e)184 328.8 R .079(xit if the command that f)-.15 F
+.079(ails is part of the command list immediately)-.1 F(follo)184 340.8
Q 1.654(wing a)-.25 F F1(while)4.154 E F0(or)4.154 E F1(until)4.154 E F0
-.1(ke)4.154 G(yw)-.05 E 1.655(ord, part of the test follo)-.1 F 1.655
(wing the)-.25 F F1(if)4.155 E F0(or)4.155 E F1(elif)4.155 E F0(reserv)
-4.155 E(ed)-.15 E -.1(wo)184 292.8 S .582(rds, part of an).1 F 3.082(yc)
+4.155 E(ed)-.15 E -.1(wo)184 352.8 S .582(rds, part of an).1 F 3.082(yc)
-.15 G .582(ommand e)-3.082 F -.15(xe)-.15 G .581(cuted in a).15 F F1
(&&)3.081 E F0(or)3.081 E F1(||)3.081 E F0 .581(list e)3.081 F .581
-(xcept the command follo)-.15 F(wing)-.25 E .917(the \214nal)184 304.8 R
+(xcept the command follo)-.15 F(wing)-.25 E .917(the \214nal)184 364.8 R
F1(&&)3.417 E F0(or)3.417 E F1(||)3.417 E F0 3.417(,a)C 1.217 -.15(ny c)
-3.417 H .918(ommand in a pipeline b).15 F .918
(ut the last, or if the command')-.2 F 3.418(sr)-.55 G(eturn)-3.418 E
--.25(va)184 316.8 S .661(lue is being in).25 F -.15(ve)-.4 G .661
+-.25(va)184 376.8 S .661(lue is being in).25 F -.15(ve)-.4 G .661
(rted with).15 F F1(!)3.161 E F0 5.661(.I)C 3.161(fac)-5.661 G .66
(ompound command other than a subshell returns a)-3.161 F 1.112
-(non-zero status because a command f)184 328.8 R 1.112(ailed while)-.1 F
+(non-zero status because a command f)184 388.8 R 1.112(ailed while)-.1 F
F1<ad65>3.612 E F0 -.1(wa)3.612 G 3.612(sb).1 G 1.113
-(eing ignored, the shell does)-3.612 F .178(not e)184 340.8 R 2.678
+(eing ignored, the shell does)-3.612 F .178(not e)184 400.8 R 2.678
(xit. A)-.15 F .178(trap on)2.678 F F1(ERR)2.678 E F0 2.678(,i)C 2.678
(fs)-2.678 G .178(et, is e)-2.678 F -.15(xe)-.15 G .178
(cuted before the shell e).15 F 2.677(xits. This)-.15 F .177
-(option applies to)2.677 F .617(the shell en)184 352.8 R .617
+(option applies to)2.677 F .617(the shell en)184 412.8 R .617
(vironment and each subshell en)-.4 F .617(vironment separately \(see)
--.4 F F3 .618(COMMAND EXE-)3.118 F .643(CUTION ENVIR)184 364.8 R(ONMENT)
+-.4 F F3 .618(COMMAND EXE-)3.118 F .643(CUTION ENVIR)184 424.8 R(ONMENT)
-.27 E F0(abo)2.893 E -.15(ve)-.15 G .643
(\), and may cause subshells to e).15 F .643(xit before e)-.15 F -.15
-(xe)-.15 G .642(cuting all).15 F(the commands in the subshell.)184 376.8
-Q F1<ad66>144 388.8 Q F0(Disable pathname e)30.97 E(xpansion.)-.15 E F1
-<ad68>144 400.8 Q F0 2.238(Remember the location of commands as the)
+(xe)-.15 G .642(cuting all).15 F(the commands in the subshell.)184 436.8
+Q F1<ad66>144 448.8 Q F0(Disable pathname e)30.97 E(xpansion.)-.15 E F1
+<ad68>144 460.8 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
-412.8 Q(ault.)-.1 E F1<ad6b>144 424.8 Q F0 .514(All ar)28.74 F .514
+472.8 Q(ault.)-.1 E F1<ad6b>144 484.8 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 436.8 Q F1
-<ad6d>144 448.8 Q F0 .148(Monitor mode.)25.97 F .148
+(command, not just those that precede the command name.)184 496.8 Q F1
+<ad6d>144 508.8 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 .651
-(on systems that support it \(see)184 460.8 R F3 .651(JOB CONTR)3.151 F
+(on systems that support it \(see)184 520.8 R F3 .651(JOB CONTR)3.151 F
(OL)-.27 E F0(abo)2.901 E -.15(ve)-.15 G 3.151(\). All).15 F .65
-(processes run in a separate)3.151 F .678(process group.)184 472.8 R
+(processes run in a separate)3.151 F .678(process group.)184 532.8 R
.679(When a background job completes, the shell prints a line containin\
-g its)5.678 F -.15(ex)184 484.8 S(it status.).15 E F1<ad6e>144 496.8 Q
+g its)5.678 F -.15(ex)184 544.8 S(it status.).15 E F1<ad6e>144 556.8 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 508.8 Q(This is ignored by interacti)5 E .3
--.15(ve s)-.25 H(hells.).15 E F1<ad6f>144 520.8 Q F2(option\255name)2.5
-E F0(The)184 532.8 Q F2(option\255name)2.5 E F0(can be one of the follo)
-2.5 E(wing:)-.25 E F1(allexport)184 544.8 Q F0(Same as)224 556.8 Q F1
-<ad61>2.5 E F0(.)A F1(braceexpand)184 568.8 Q F0(Same as)224 580.8 Q F1
-<ad42>2.5 E F0(.)A F1(emacs)184 592.8 Q F0 .089
+5.653 F(syntax errors.)184 568.8 Q(This is ignored by interacti)5 E .3
+-.15(ve s)-.25 H(hells.).15 E F1<ad6f>144 580.8 Q F2(option\255name)2.5
+E F0(The)184 592.8 Q F2(option\255name)2.5 E F0(can be one of the follo)
+2.5 E(wing:)-.25 E F1(allexport)184 604.8 Q F0(Same as)224 616.8 Q F1
+<ad61>2.5 E F0(.)A F1(braceexpand)184 628.8 Q F0(Same as)224 640.8 Q F1
+<ad42>2.5 E F0(.)A F1(emacs)184 652.8 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 604.8 R -.15(ve)-.25 G 3.45(,u).15 G
+(when the shell is interacti)224 664.8 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 616.8 R(also af)2.5 E
+3.45 E F0 2.5(option. This)224 676.8 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 628.8 Q(exit)-.18 E F0(Same as)11.31 E
-F1<ad65>2.5 E F0(.)A F1(errtrace)184 640.8 Q F0(Same as)5.03 E F1<ad45>
-2.5 E F0(.)A F1(functrace)184 652.8 Q F0(Same as)224 664.8 Q F1<ad54>2.5
-E F0(.)A F1(hashall)184 676.8 Q F0(Same as)9.43 E F1<ad68>2.5 E F0(.)A
-F1(histexpand)184 688.8 Q F0(Same as)224 700.8 Q F1<ad48>2.5 E F0(.)A F1
-(history)184 712.8 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 F3(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 724.8 Q(ault in interacti)-.1
-E .3 -.15(ve s)-.25 H(hells.).15 E(GNU Bash-4.2)72 768 Q(2004 Apr 20)
-148.735 E(14)198.725 E 0 Cg EP
+(ad \255e).18 E F0(.)A F1(err)184 688.8 Q(exit)-.18 E F0(Same as)11.31 E
+F1<ad65>2.5 E F0(.)A F1(errtrace)184 700.8 Q F0(Same as)5.03 E F1<ad45>
+2.5 E F0(.)A(GNU Bash-4.2)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(ignor)184 84 Q(eeof)-.18 E F0 1.657(The ef)224 96 R
-1.657(fect is as if the shell command)-.25 F/F2 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 108 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 120 S(yw).1 E(ord)-.1 E F0(Same as)
-224 132 Q F1<ad6b>2.5 E F0(.)A F1(monitor)184 144 Q F0(Same as)5.56 E F1
-<ad6d>2.5 E F0(.)A F1(noclob)184 156 Q(ber)-.1 E F0(Same as)224 168 Q F1
-<ad43>2.5 E F0(.)A F1(noexec)184 180 Q F0(Same as)11.12 E F1<ad6e>2.5 E
-F0(.)A F1(noglob)184 192 Q F0(Same as)11.1 E F1<ad66>2.5 E F0(.)A F1
-(nolog)184 204 Q F0(Currently ignored.)16.66 E F1(notify)184 216 Q F0
-(Same as)15 E F1<ad62>2.5 E F0(.)A F1(nounset)184 228 Q F0(Same as)6.66
-E F1<ad75>2.5 E F0(.)A F1(onecmd)184 240 Q F0(Same as)6.67 E F1<ad74>2.5
-E F0(.)A F1(ph)184 252 Q(ysical)-.15 E F0(Same as)5.14 E F1<ad50>2.5 E
-F0(.)A F1(pipefail)184 264 Q F0 1.029(If set, the return v)7.77 F 1.029
+/Times-Bold@0 SF(functrace)184 84 Q F0(Same as)224 96 Q F1<ad54>2.5 E F0
+(.)A F1(hashall)184 108 Q F0(Same as)9.43 E F1<ad68>2.5 E F0(.)A F1
+(histexpand)184 120 Q F0(Same as)224 132 Q F1<ad48>2.5 E F0(.)A F1
+(history)184 144 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 9/Times-Bold@0 SF(HIST)3.087 E(OR)-.162 E(Y)-.315 E/F3 9
+/Times-Roman@0 SF(.)A F0 .587(This option is)5.087 F(on by def)224 156 Q
+(ault in interacti)-.1 E .3 -.15(ve s)-.25 H(hells.).15 E F1(ignor)184
+168 Q(eeof)-.18 E F0 1.657(The ef)224 180 R 1.657
+(fect is as if the shell command)-.25 F/F4 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
+192 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 204 S(yw).1 E(ord)-.1 E F0(Same as)224 216 Q F1
+<ad6b>2.5 E F0(.)A F1(monitor)184 228 Q F0(Same as)5.56 E F1<ad6d>2.5 E
+F0(.)A F1(noclob)184 240 Q(ber)-.1 E F0(Same as)224 252 Q F1<ad43>2.5 E
+F0(.)A F1(noexec)184 264 Q F0(Same as)11.12 E F1<ad6e>2.5 E F0(.)A F1
+(noglob)184 276 Q F0(Same as)11.1 E F1<ad66>2.5 E F0(.)A F1(nolog)184
+288 Q F0(Currently ignored.)16.66 E F1(notify)184 300 Q F0(Same as)15 E
+F1<ad62>2.5 E F0(.)A F1(nounset)184 312 Q F0(Same as)6.66 E F1<ad75>2.5
+E F0(.)A F1(onecmd)184 324 Q F0(Same as)6.67 E F1<ad74>2.5 E F0(.)A F1
+(ph)184 336 Q(ysical)-.15 E F0(Same as)5.14 E F1<ad50>2.5 E F0(.)A F1
+(pipefail)184 348 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 276 R
+(alue of the last \(rightmost\) com-)-.25 F 1.137(mand to e)224 360 R
1.136
(xit with a non-zero status, or zero if all commands in the pipeline)
--.15 F -.15(ex)224 288 S(it successfully).15 E 5(.T)-.65 G
-(his option is disabled by def)-5 E(ault.)-.1 E F1(posix)184 300 Q F0
+-.15 F -.15(ex)224 372 S(it successfully).15 E 5(.T)-.65 G
+(his option is disabled by def)-5 E(ault.)-.1 E F1(posix)184 384 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 312 Q
-/F3 10/Times-Italic@0 SF(posix mode)A F0(\).)A F1(pri)184 324 Q(vileged)
--.1 E F0(Same as)224 336 Q F1<ad70>2.5 E F0(.)A F1 -.1(ve)184 348 S
-(rbose).1 E F0(Same as)7.33 E F1<ad76>2.5 E F0(.)A F1(vi)184 360 Q F0
+(fers from the)-.25 F(POSIX standard to match the standard \()224 396 Q
+/F5 10/Times-Italic@0 SF(posix mode)A F0(\).)A F1(pri)184 408 Q(vileged)
+-.1 E F0(Same as)224 420 Q F1<ad70>2.5 E F0(.)A F1 -.1(ve)184 432 S
+(rbose).1 E F0(Same as)7.33 E F1<ad76>2.5 E F0(.)A F1(vi)184 444 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 372 Q(ace used for)-.1 E F1 -.18(re)2.5 G(ad \255e).18 E F0
-(.)A F1(xtrace)184 384 Q F0(Same as)13.35 E F1<ad78>2.5 E F0(.)A(If)184
-402 Q F1<ad6f>3.052 E F0 .552(is supplied with no)3.052 F F3
+(interf)224 456 Q(ace used for)-.1 E F1 -.18(re)2.5 G(ad \255e).18 E F0
+(.)A F1(xtrace)184 468 Q F0(Same as)13.35 E F1<ad78>2.5 E F0(.)A(If)184
+486 Q F1<ad6f>3.052 E F0 .552(is supplied with no)3.052 F F5
(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
-414 Q F0 1.072(is supplied with no)3.572 F F3(option\255name)3.572 E F0
+498 Q F0 1.072(is supplied with no)3.572 F F5(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 426 Q F1<ad70>
-144 438 Q F0 -.45(Tu)28.74 G 1.071(rn on).45 F F3(privile)4.821 E -.1
+(option settings is displayed on the standard output.)184 510 Q F1<ad70>
+144 522 Q F0 -.45(Tu)28.74 G 1.071(rn on).45 F F5(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
-/F4 9/Times-Bold@0 SF($ENV)3.572 E F0(and)3.322 E F4($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 450 R 1.5
-(vironment, and the)-.4 F F4(SHELLOPTS)4 E/F5 9/Times-Roman@0 SF(,)A F4
--.27(BA)184 462 S(SHOPTS).27 E F5(,)A F4(CDP)2.774 E -.855(AT)-.666 G(H)
-.855 E F5(,)A F0(and)2.774 E F4(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 474 R .38
+F2($ENV)3.572 E F0(and)3.322 E F2($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 534 R 1.5
+(vironment, and the)-.4 F F2(SHELLOPTS)4 E F3(,)A F2 -.27(BA)184 546 S
+(SHOPTS).27 E F3(,)A F2(CDP)2.774 E -.855(AT)-.666 G(H).855 E F3(,)A F0
+(and)2.774 E F2(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 558 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 486 R F1<ad70>2.961 E F0 .461
+(user \(group\) id, and the)184 570 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 498 Q .695 -.15(ve u)-.25 H .395
+(en and the ef)-.1 F(fec-)-.25 E(ti)184 582 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 510 R -.45(Tu)5.386 G
+E -.15(ve)-.25 G .386(user id is not reset.)184 594 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 522 Q F1<ad74>144 534 Q F0
+(set to the real user and group ids.)184 606 Q F1<ad74>144 618 Q F0
(Exit after reading and e)30.97 E -.15(xe)-.15 G(cuting one command.).15
-E F1<ad75>144 546 Q F0 -.35(Tr)28.74 G .044(eat unset v).35 F .044(aria\
+E F1<ad75>144 630 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 558 R 2.682
+-.25 F .182(error when performing parameter e)184 642 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 570 R 3.246(,t)-.4 G .746
+(able or parameter)184 654 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
-582 Q F1<ad76>144 594 Q F0(Print shell input lines as the)29.3 E 2.5(ya)
--.15 G(re read.)-2.5 E F1<ad78>144 606 Q F0 .315(After e)29.3 F .315
-(xpanding each)-.15 F F3 .315(simple command)2.815 F F0(,)A F1 -.25(fo)
+666 Q F1<ad76>144 678 Q F0(Print shell input lines as the)29.3 E 2.5(ya)
+-.15 G(re read.)-2.5 E F1<ad78>144 690 Q F0 .315(After e)29.3 F .315
+(xpanding each)-.15 F F5 .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 618 R F1
+F1(select)2.815 E F0(command,)2.815 E 1.236(or arithmetic)184 702 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 F4(PS4)3.736 E F5(,)A F0(follo)
-3.486 E 1.236(wed by the com-)-.25 F(mand and its e)184 630 Q
-(xpanded ar)-.15 E(guments or associated w)-.18 E(ord list.)-.1 E F1
-<ad42>144 642 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 654 Q
-(ault.)-.1 E F1<ad43>144 666 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 678 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 690 Q F1(>|)2.5 E F0(instead of)2.5 E F1(>)2.5 E F0(.)A F1
-<ad45>144 702 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 714 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 726 Q
+(xpanded v)-.15 F 1.236(alue of)-.25 F F2(PS4)3.736 E F3(,)A F0(follo)
+3.486 E 1.236(wed by the com-)-.25 F(mand and its e)184 714 Q
+(xpanded ar)-.15 E(guments or associated w)-.18 E(ord list.)-.1 E
(GNU Bash-4.2)72 768 Q(2004 Apr 20)148.735 E(15)198.725 E 0 Cg EP
%%Page: 16 16
%%BeginPageSetup
%%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<ad48>144 84 Q F0(Enable)26.52 E F1(!)3.032 E F0 .532
+/Times-Bold@0 SF<ad42>144 84 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 96 Q(ault.)-.1 E F1<ad43>144 108 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 120 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 132 Q F1(>|)2.5 E F0(instead of)2.5 E F1(>)2.5 E F0(.)A F1
+<ad45>144 144 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 156 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 168 Q F1
+<ad48>144 180 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 96 Q -.15(ve)
--.25 G(.).15 E F1<ad50>144 108 Q F0 .959
+F .531(ault when the shell is inter)-.1 F(-)-.2 E(acti)184 192 Q -.15
+(ve)-.25 G(.).15 E F1<ad50>144 204 Q F0 .959
(If set, the shell does not resolv)28.19 F 3.459(es)-.15 G .959
(ymbolic links when e)-3.459 F -.15(xe)-.15 G .96
(cuting commands such as).15 F F1(cd)3.46 E F0 2.822
-(that change the current w)184 120 R 2.822(orking directory)-.1 F 7.822
+(that change the current w)184 216 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 132 R(def)2.685
+(ysical directory structure)-.05 F 2.685(instead. By)184 228 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 144 Q(.)-.65 E F1<ad54>144
-156 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 240 Q(.)-.65 E F1<ad54>144
+252 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 168 R -.15(xe)-.15 G 1.932
+(substitutions, and commands e)184 264 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 180 Q F0
-(traps are normally not inherited in such cases.)2.5 E F1<adad>144 192 Q
+(UG)-.1 E F0(and)4.432 E F1(RETURN)184 276 Q F0
+(traps are normally not inherited in such cases.)2.5 E F1<adad>144 288 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 204 Q/F2
+(Otherwise,)5.4 E(the positional parameters are set to the)184 300 Q/F2
10/Times-Italic@0 SF(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 216 Q F0 1.944
+F0(.)A F1<ad>144 312 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 228 R F1
+(ssigned to the positional)-4.445 F 3.446(parameters. The)184 324 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 240 Q .425(The options are of)144
-256.8 R 2.925(fb)-.25 G 2.925(yd)-2.925 G(ef)-2.925 E .425
+(parameters remain unchanged.)184 336 Q .425(The options are of)144
+352.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 268.8 R 2.678(f. The)-.25 F .178
+(to be turned of)144 364.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 280.8 R F1<24ad>2.566 E F0
+(current set of options may be found in)144 376.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 292.8 Q F1(shift)108 309.6 Q F0([)2.5 E F2(n)A F0
-(])A .429(The positional parameters from)144 321.6 R F2(n)2.929 E F0
+(is encountered.)144 388.8 Q F1(shift)108 405.6 Q F0([)2.5 E F2(n)A F0
+(])A .429(The positional parameters from)144 417.6 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 333.6 Q F1($#)2.582
+.428(rameters represented by the num-).15 F(bers)144 429.6 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 345.6 R(If)5.06 E F2(n)2.92 E F0
+(is 0, no parameters are changed.)144 441.6 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 357.6 R
+(,t)C(he)-2.56 E .143(positional parameters are not changed.)144 453.6 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 369.6 Q F1(shopt)108 386.4 Q F0([)
+(or less than zero; otherwise 0.)144 465.6 Q F1(shopt)108 482.4 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 398.4 S .222(ggle the v).8 F .222
+-2.5 E F0(...])2.5 E -.8(To)144 494.4 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 410.4 R(The)
-144 422.4 Q F1<ad70>2.828 E F0 .327(option causes output to be displaye\
+ed, with an indication of whether or not each is set.)144 506.4 R(The)
+144 518.4 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 434.4 Q .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)
--.25 E F1<ad73>144 446.4 Q F0(Enable \(set\) each)26.41 E F2(optname)2.5
-E F0(.)A F1<ad75>144 458.4 Q F0(Disable \(unset\) each)24.74 E F2
-(optname)2.5 E F0(.)A F1<ad71>144 470.4 Q F0 .003(Suppresses normal out\
+5.327 F(ha)144 530.4 Q .3 -.15(ve t)-.2 H(he follo).15 E(wing meanings:)
+-.25 E F1<ad73>144 542.4 Q F0(Enable \(set\) each)26.41 E F2(optname)2.5
+E F0(.)A F1<ad75>144 554.4 Q F0(Disable \(unset\) each)24.74 E F2
+(optname)2.5 E F0(.)A F1<ad71>144 566.4 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 482.4 R .256
+(optname)2.504 E F0(is)2.504 E .256(set or unset.)180 578.4 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 494.4 Q F2(optnames)2.5 E F0(are enabled; non-zero otherwise.)
-2.5 E F1<ad6f>144 506.4 Q F0(Restricts the v)25.3 E(alues of)-.25 E F2
+(all)180 590.4 Q F2(optnames)2.5 E F0(are enabled; non-zero otherwise.)
+2.5 E F1<ad6f>144 602.4 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 .624
-(If either)144 523.2 R F1<ad73>3.124 E F0(or)3.124 E F1<ad75>3.124 E F0
+(If either)144 619.2 R F1<ad73>3.124 E F0(or)3.124 E F1<ad75>3.124 E F0
.624(is used with no)3.124 F F2(optname)3.124 E F0(ar)3.124 E(guments,)
-.18 E F1(shopt)3.124 E F0(sho)3.124 E .624
(ws only those options which are)-.25 F 2.234(set or unset, respecti)144
-535.2 R -.15(ve)-.25 G(ly).15 E 7.234(.U)-.65 G 2.234
+631.2 R -.15(ve)-.25 G(ly).15 E 7.234(.U)-.65 G 2.234
(nless otherwise noted, the)-7.234 F F1(shopt)4.734 E F0 2.234
-(options are disabled \(unset\) by)4.734 F(def)144 547.2 Q(ault.)-.1 E
-1.544(The return status when listing options is zero if all)144 564 R F2
+(options are disabled \(unset\) by)4.734 F(def)144 643.2 Q(ault.)-.1 E
+1.544(The return status when listing options is zero if all)144 660 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 576 R F2(optname)3.196 E F0 .696(is not a v)3.196 F .695(alid shell)
--.25 F(option.)144 588 Q(The list of)144 604.8 Q F1(shopt)2.5 E F0
-(options is:)2.5 E F1(autocd)144 622.8 Q F0 .199
+144 672 R F2(optname)3.196 E F0 .696(is not a v)3.196 F .695(alid shell)
+-.25 F(option.)144 684 Q(The list of)144 700.8 Q F1(shopt)2.5 E F0
+(options is:)2.5 E F1(autocd)144 718.8 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 634.8 Q F1(cd)2.5 E F0 2.5(command. This)2.5 F
+(ment to the)184 730.8 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 646.8 Q(ars)-.1 E F0 .156(If set, an ar)184 658.8 R .156
-(gument to the)-.18 F F1(cd)2.656 E F0 -.2(bu)2.656 G .155
+(GNU Bash-4.2)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(cdable_v)144 84 Q(ars)-.1 E F0 .156(If set, an ar)184
+96 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 670.8 Q(ariable whose v)-.25 E
-(alue is the directory to change to.)-.25 E F1(cdspell)144 682.8 Q F0
+(name of a v)184 108 Q(ariable whose v)-.25 E
+(alue is the directory to change to.)-.25 E F1(cdspell)144 120 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 694.8 R 1.488(errors check)3.988 F 1.487
+(corrected. The)184 132 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 .77(one character too man)184 706.8 R 4.57 -.65(y. I)
+-.4 G(nd)-3.987 E .77(one character too man)184 144 R 4.57 -.65(y. I)
-.15 H 3.27(fac).65 G .77
(orrection is found, the corrected \214lename is printed, and)-3.27 F
-(the command proceeds.)184 718.8 Q
-(This option is only used by interacti)5 E .3 -.15(ve s)-.25 H(hells.)
-.15 E(GNU Bash-4.2)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(checkhash)144 84 Q F0 2.08(If set,)184 96 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 108 S(cute it.).15 E
+(the command proceeds.)184 156 Q(This option is only used by interacti)5
+E .3 -.15(ve s)-.25 H(hells.).15 E F1(checkhash)144 168 Q F0 2.08
+(If set,)184 180 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 192 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 120 Q
-F0 .448(If set,)184 132 R F1(bash)2.948 E F0 .448
+(xists, a normal path search is performed.)-.15 E F1(checkjobs)144 204 Q
+F0 .448(If set,)184 216 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 144 R(an)3.439 E 3.439(yj)-.15 G
+F -.15(ve)-.25 G 3.439(shell. If)184 228 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 156 R 2.203(ening command \(see)-.15 F
+(attempted without an interv)184 240 R 2.203(ening command \(see)-.15 F
/F2 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 168 Q -.1(wa)-.1
+-.15(ve)-.15 G 4.703(\). The).15 F(shell)4.704 E(al)184 252 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 180 Q F0 .797(If set,)184
-192 R F1(bash)3.297 E F0 .797(checks the windo)3.297 F 3.297(ws)-.25 G
+(obs are stopped.)-2.5 E F1(checkwinsize)144 264 Q F0 .797(If set,)184
+276 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 204 S(lues of).25 E F2(LINES)2.5 E
+.796(pdates the)-3.296 F -.25(va)184 288 S(lues of).25 E F2(LINES)2.5 E
F0(and)2.25 E F2(COLUMNS)2.5 E/F3 9/Times-Roman@0 SF(.)A F1(cmdhist)144
-216 Q F0 1.202(If set,)6.11 F F1(bash)3.702 E F0 1.202(attempts to sa)
+300 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
-228 Q 5(.T)-.65 G(his allo)-5 E
-(ws easy re-editing of multi-line commands.)-.25 E F1(compat31)144 240 Q
-F0 .42(If set,)184 252 R F1(bash)2.92 E F0 .42(changes its beha)2.92 F
+312 Q 5(.T)-.65 G(his allo)-5 E
+(ws easy re-editing of multi-line commands.)-.25 E F1(compat31)144 324 Q
+F0 .42(If set,)184 336 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 .461(to the)184 264 R F1([[)2.961 E F0 .462
+-.15 F(guments)-.18 E .461(to the)184 348 R F1([[)2.961 E F0 .462
(conditional command')2.962 F(s)-.55 E F1(=~)2.962 E F0 .462
(operator and locale-speci\214c string comparison when)2.962 F .71
-(using the)184 276 R F1([[)3.21 E F0 .71(conditional command')3.21 F(s)
+(using the)184 360 R F1([[)3.21 E F0 .71(conditional command')3.21 F(s)
-.55 E F1(<)3.21 E F0(and)3.21 E F1(>)3.21 E F0 3.21(operators. Bash)
3.21 F -.15(ve)3.21 G .71(rsions prior to bash-4.1).15 F .82
-(use ASCII collation and)184 288 R/F4 10/Times-Italic@0 SF(str)3.321 E
+(use ASCII collation and)184 372 R/F4 10/Times-Italic@0 SF(str)3.321 E
(cmp)-.37 E F0 .821(\(3\); bash-4.1 and later use the current locale')
-.19 F 3.321(sc)-.55 G(ollation)-3.321 E(sequence and)184 300 Q F4(str)
-2.5 E(coll)-.37 E F0(\(3\).).51 E F1(compat32)144 312 Q F0 1.41(If set,)
-184 324 R F1(bash)3.91 E F0 1.41(changes its beha)3.91 F 1.409
+.19 F 3.321(sc)-.55 G(ollation)-3.321 E(sequence and)184 384 Q F4(str)
+2.5 E(coll)-.37 E F0(\(3\).).51 E F1(compat32)144 396 Q F0 1.41(If set,)
+184 408 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 3.2 with respect to locale-speci\214c)-.15 F .422
-(string comparison when using the)184 336 R F1([[)2.922 E F0 .422
+(string comparison when using the)184 420 R F1([[)2.922 E F0 .422
(conditional command')2.922 F(s)-.55 E F1(<)2.922 E F0(and)2.922 E F1(>)
-2.923 E F0 .423(operators \(see pre-)2.923 F(vious item\).)184 348 Q F1
-(compat40)144 360 Q F0 1.41(If set,)184 372 R F1(bash)3.91 E F0 1.41
+2.923 E F0 .423(operators \(see pre-)2.923 F(vious item\).)184 432 Q F1
+(compat40)144 444 Q F0 1.41(If set,)184 456 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 2.007
-(string comparison when using the)184 384 R F1([[)4.507 E F0 2.008
+(string comparison when using the)184 468 R F1([[)4.507 E F0 2.008
(conditional command')4.507 F(s)-.55 E F1(<)4.508 E F0(and)4.508 E F1(>)
-4.508 E F0 2.008(operators \(see)4.508 F .77(description of)184 396 R F1
+4.508 E F0 2.008(operators \(see)4.508 F .77(description of)184 480 R F1
(compat31)3.27 E F0 3.269(\)a)C .769(nd the ef)-3.269 F .769
(fect of interrupting a command list.)-.25 F .769(Bash v)5.769 F
(ersions)-.15 E .086
-(4.0 and later interrupt the list as if the shell recei)184 408 R -.15
+(4.0 and later interrupt the list as if the shell recei)184 492 R -.15
(ve)-.25 G 2.587(dt).15 G .087(he interrupt; pre)-2.587 F .087(vious v)
--.25 F .087(ersions con-)-.15 F(tinue with the ne)184 420 Q
-(xt command in the list.)-.15 E F1(compat41)144 432 Q F0 1.444(If set,)
-184 444 R F1(bash)3.944 E F0 3.944(,w)C 1.443
+-.25 F .087(ersions con-)-.15 F(tinue with the ne)184 504 Q
+(xt command in the list.)-.15 E F1(compat41)144 516 Q F0 1.444(If set,)
+184 528 R F1(bash)3.944 E F0 3.944(,w)C 1.443
(hen in posix mode, treats a single quote in a double-quoted parameter)
--3.944 F -.15(ex)184 456 S .958(pansion as a special character).15 F
+-3.944 F -.15(ex)184 540 S .958(pansion as a special character).15 F
5.958(.T)-.55 G .959(he single quotes must match \(an e)-5.958 F -.15
(ve)-.25 G 3.459(nn).15 G .959(umber\) and)-3.459 F .59
-(the characters between the single quotes are considered quoted.)184 468
+(the characters between the single quotes are considered quoted.)184 552
R .59(This is the beha)5.59 F .59(vior of)-.2 F .589
-(posix mode through v)184 480 R .589(ersion 4.1.)-.15 F .589(The def)
+(posix mode through v)184 564 R .589(ersion 4.1.)-.15 F .589(The def)
5.589 F .589(ault bash beha)-.1 F .589(vior remains as in pre)-.2 F .59
-(vious v)-.25 F(er)-.15 E(-)-.2 E(sions.)184 492 Q F1
-(complete_fullquote)144 504 Q F0 .654(If set,)184 516 R F1(bash)3.153 E
+(vious v)-.25 F(er)-.15 E(-)-.2 E(sions.)184 576 Q F1
+(complete_fullquote)144 588 Q F0 .654(If set,)184 600 R F1(bash)3.153 E
F0 .653(quotes all shell metacharacters in \214lenames and directory na\
-mes when per)3.153 F(-)-.2 E 1.524(forming completion.)184 528 R 1.524
+mes when per)3.153 F(-)-.2 E 1.524(forming completion.)184 612 R 1.524
(If not set,)6.524 F F1(bash)4.024 E F0(remo)4.024 E -.15(ve)-.15 G
4.024(sm).15 G 1.524(etacharacters such as the dollar sign)-4.024 F
2.667(from the set of characters that will be quoted in completed \214l\
-enames when these)184 540 R .028(metacharacters appear in shell v)184
-552 R .028(ariable references in w)-.25 F .029(ords to be completed.)-.1
-F .029(This means)5.029 F 1.073(that dollar signs in v)184 564 R 1.073
+enames when these)184 624 R .028(metacharacters appear in shell v)184
+636 R .028(ariable references in w)-.25 F .029(ords to be completed.)-.1
+F .029(This means)5.029 F 1.073(that dollar signs in v)184 648 R 1.073
(ariable names that e)-.25 F 1.073
(xpand to directories will not be quoted; ho)-.15 F(w-)-.25 E -2.15 -.25
-(ev e)184 576 T 1.922 -.4(r, a).25 H 1.422 -.15(ny d).4 H 1.123
+(ev e)184 660 T 1.922 -.4(r, a).25 H 1.422 -.15(ny d).4 H 1.123
(ollar signs appearing in \214lenames will not be quoted, either).15 F
6.123(.T)-.55 G 1.123(his is acti)-6.123 F -.15(ve)-.25 G .59
(only when bash is using backslashes to quote completed \214lenames.)184
-588 R .59(This v)5.59 F .59(ariable is set)-.25 F(by def)184 600 Q
+672 R .59(This v)5.59 F .59(ariable is set)-.25 F(by def)184 684 Q
(ault, which is the def)-.1 E(ault bash beha)-.1 E(vior in v)-.2 E
-(ersions through 4.2.)-.15 E F1(dir)144 612 Q(expand)-.18 E F0 .486
-(If set,)184 624 R F1(bash)2.986 E F0 .486
+(ersions through 4.2.)-.15 E F1(dir)144 696 Q(expand)-.18 E F0 .486
+(If set,)184 708 R F1(bash)2.986 E F0 .486
(replaces directory names with the results of w)2.986 F .486(ord e)-.1 F
.487(xpansion when perform-)-.15 F .18(ing \214lename completion.)184
-636 R .179(This changes the contents of the readline editing b)5.18 F
-(uf)-.2 E(fer)-.25 E 5.179(.I)-.55 G 2.679(fn)-5.179 G(ot)-2.679 E(set,)
-184 648 Q F1(bash)2.5 E F0(attempts to preserv)2.5 E 2.5(ew)-.15 G
-(hat the user typed.)-2.5 E F1(dirspell)144 660 Q F0 .858(If set,)7.77 F
-F1(bash)3.358 E F0 .858
+720 R .179(This changes the contents of the readline editing b)5.18 F
+(uf)-.2 E(fer)-.25 E 5.179(.I)-.55 G 2.679(fn)-5.179 G(ot)-2.679 E
+(GNU Bash-4.2)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(set,)184 84
+Q/F1 10/Times-Bold@0 SF(bash)2.5 E F0(attempts to preserv)2.5 E 2.5(ew)
+-.15 G(hat the user typed.)-2.5 E F1(dirspell)144 96 Q F0 .858(If set,)
+7.77 F F1(bash)3.358 E F0 .858
(attempts spelling correction on directory names during w)3.358 F .859
(ord completion if)-.1 F
-(the directory name initially supplied does not e)184 672 Q(xist.)-.15 E
-F1(dotglob)144 684 Q F0 .165(If set,)7.77 F F1(bash)2.665 E F0 .165
+(the directory name initially supplied does not e)184 108 Q(xist.)-.15 E
+F1(dotglob)144 120 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 696 Q F0 1.386
+(xpansion.)-.15 E F1(execfail)144 132 Q F0 1.386
(If set, a non-interacti)7.79 F 1.686 -.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.387(cute the \214le speci\214ed as an).15 F(ar)184 708 Q
+1.387(cute the \214le speci\214ed as an).15 F(ar)184 144 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(GNU Bash-4.2)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(expand_aliases)144 84 Q F0 .717(If set, aliases are e)
-184 96 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 .716(This option is enabled)5.217 F(by def)184 108 Q
-(ault for interacti)-.1 E .3 -.15(ve s)-.25 H(hells.).15 E F1(extdeb)144
-120 Q(ug)-.2 E F0(If set, beha)184 132 Q(vior intended for use by deb)
--.2 E(uggers is enabled:)-.2 E F1(1.)184 144 Q F0(The)28.5 E F1<ad46>
-4.25 E F0 1.75(option to the)4.25 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 156 Q
-(gument.)-.18 E F1(2.)184 168 Q F0 1.667(If the command run by the)28.5
+E F1(exec)2.5 E F0 -.1(fa)2.5 G(ils.).1 E F1(expand_aliases)144 156 Q F0
+.717(If set, aliases are e)184 168 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 .716(This option is enabled)5.217 F
+(by def)184 180 Q(ault for interacti)-.1 E .3 -.15(ve s)-.25 H(hells.)
+.15 E F1(extdeb)144 192 Q(ug)-.2 E F0(If set, beha)184 204 Q
+(vior intended for use by deb)-.2 E(uggers is enabled:)-.2 E F1(1.)184
+216 Q F0(The)28.5 E F1<ad46>4.25 E F0 1.75(option to the)4.25 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 228 Q
+(gument.)-.18 E F1(2.)184 240 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 180
-Q -.15(xe)-.15 G(cuted.).15 E F1(3.)184 192 Q F0 .84
+1.667(alue, the ne)-.25 F(xt)-.15 E(command is skipped and not e)220 252
+Q -.15(xe)-.15 G(cuted.).15 E F1(3.)184 264 Q F0 .84
(If the command run by the)28.5 F F1(DEB)3.34 E(UG)-.1 E F0 .841
(trap returns a v)3.341 F .841(alue of 2, and the shell is)-.25 F -.15
-(exe)220 204 S .488
+(exe)220 276 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 216 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 228 Q
+(sour)220 288 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 300 Q
F2 -.27(BA)28.5 G(SH_ARGC).27 E F0(and)3.153 E F2 -.27(BA)3.403 G
(SH_ARGV).27 E F0 .904(are updated as described in their descriptions)
-3.154 F(abo)220 240 Q -.15(ve)-.15 G(.).15 E F1(5.)184 252 Q F0 1.359
+3.154 F(abo)220 312 Q -.15(ve)-.15 G(.).15 E F1(5.)184 324 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
-264 Q -.2(vo)-.4 G -.1(ke).2 G 2.5(dw).1 G(ith)-2.5 E F1(\()2.5 E/F4 10
+336 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 276 Q F0 .804(Error tracing is enabled:)28.5 F .805
-(command substitution, shell functions, and subshells)5.804 F(in)220 288
+184 348 Q F0 .804(Error tracing is enabled:)28.5 F .805
+(command substitution, shell functions, and subshells)5.804 F(in)220 360
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 300 Q F0 .4(If set, the e)8.89 F .4
+2.5 E F1(extglob)144 372 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 312 Q
-F0(are enabled.)2.5 E F1(extquote)144 324 Q F0 2.473(If set,)184 336 R
+-.15 H(nder).15 E F1 -.1(Pa)2.9 G .4(thname Expan-).1 F(sion)184 384 Q
+F0(are enabled.)2.5 E F1(extquote)144 396 Q F0 2.473(If set,)184 408 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 348 Q
-(This option is enabled by def)5 E(ault.)-.1 E F1(failglob)144 360 Q F0
+(pansions).15 E(enclosed in double quotes.)184 420 Q
+(This option is enabled by def)5 E(ault.)-.1 E F1(failglob)144 432 Q F0
1.425(If set, patterns which f)7.77 F 1.425
(ail to match \214lenames during pathname e)-.1 F 1.424
-(xpansion result in an)-.15 F -.15(ex)184 372 S(pansion error).15 E(.)
--.55 E F1 -.25(fo)144 384 S -.18(rc).25 G(e_\214gnor).18 E(e)-.18 E F0
-.936(If set, the suf)184 396 R<8c78>-.25 E .936(es speci\214ed by the)
+(xpansion result in an)-.15 F -.15(ex)184 444 S(pansion error).15 E(.)
+-.55 E F1 -.25(fo)144 456 S -.18(rc).25 G(e_\214gnor).18 E(e)-.18 E F0
+.936(If set, the suf)184 468 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 .937(ords to be ignored)-.1 F .32(when performing w)184 408 R .32
+-.25 F .937(ords to be ignored)-.1 F .32(when performing w)184 480 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.947
-(pletions. See)184 420 R F2 .447(SHELL V)2.947 F(ARIABLES)-1.215 E F0
+(pletions. See)184 492 R F2 .447(SHELL V)2.947 F(ARIABLES)-1.215 E F0
(abo)2.697 E .747 -.15(ve f)-.15 H .448(or a description of).15 F F2
(FIGNORE)2.948 E F3(.)A F0 .448(This option is)4.948 F(enabled by def)
-184 432 Q(ault.)-.1 E F1(globasciiranges)144 444 Q F0 .806
-(If set, range e)184 456 R .806
+184 504 Q(ault.)-.1 E F1(globasciiranges)144 516 Q F0 .806
+(If set, range e)184 528 R .806
(xpressions used in pattern matching \(see)-.15 F F2 -.09(Pa)3.305 G
(tter).09 E 3.055(nM)-.135 G(atching)-3.055 E F0(abo)3.055 E -.15(ve)
-.15 G 3.305(\)b).15 G(eha)-3.305 E -.15(ve)-.2 G 2.089
-(as if in the traditional C locale when performing comparisons.)184 468
-R 2.09(That is, the current)7.089 F(locale')184 480 Q 2.614(sc)-.55 G
+(as if in the traditional C locale when performing comparisons.)184 540
+R 2.09(That is, the current)7.089 F(locale')184 552 Q 2.614(sc)-.55 G
.114(ollating sequence is not tak)-2.614 F .113(en into account, so)-.1
F F1(b)2.613 E F0 .113(will not collate between)2.613 F F1(A)2.613 E F0
-(and)2.613 E F1(B)184 492 Q F0 2.5(,a)C(nd upper)-2.5 E(-case and lo)-.2
+(and)2.613 E F1(B)184 564 Q F0 2.5(,a)C(nd upper)-2.5 E(-case and lo)-.2
E(wer)-.25 E(-case ASCII characters will collate together)-.2 E(.)-.55 E
-F1(globstar)144 504 Q F0 .518(If set, the pattern)5 F F1(**)3.018 E F0
+F1(globstar)144 576 Q F0 .518(If set, the pattern)5 F F1(**)3.018 E F0
.519(used in a pathname e)3.019 F .519(xpansion conte)-.15 F .519
(xt will match all \214les and zero)-.15 F .432
-(or more directories and subdirectories.)184 516 R .431
+(or more directories and subdirectories.)184 588 R .431
(If the pattern is follo)5.432 F .431(wed by a)-.25 F F1(/)2.931 E F0
2.931(,o)C .431(nly directories)-2.931 F(and subdirectories match.)184
-528 Q F1(gnu_errfmt)144 540 Q F0(If set, shell error messages are writt\
-en in the standard GNU error message format.)184 552 Q F1(histappend)144
-564 Q F0 .676
+600 Q F1(gnu_errfmt)144 612 Q F0(If set, shell error messages are writt\
+en in the standard GNU error message format.)184 624 Q F1(histappend)144
+636 Q F0 .676
(If set, the history list is appended to the \214le named by the v)184
-576 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 588 Q(xits, rather than o)-.15 E
--.15(ve)-.15 G(rwriting the \214le.).15 E F1(histr)144 600 Q(eedit)-.18
-E F0 .576(If set, and)184 612 R F1 -.18(re)3.076 G(adline).18 E F0 .575
+648 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 660 Q(xits, rather than o)-.15 E
+-.15(ve)-.15 G(rwriting the \214le.).15 E F1(histr)144 672 Q(eedit)-.18
+E F0 .576(If set, and)184 684 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 624 Q F1(histv)144 636 Q(erify)-.1 E F0 .402
-(If set, and)184 648 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 660 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 672 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 684 Q F0 1.181(If set, and)184 696 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
-708 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(READLINE)3.88 E F0(abo)184 720 Q -.15(ve)-.15 G 2.5(\). This).15 F
-(is enabled by def)2.5 E(ault.)-.1 E(GNU Bash-4.2)72 768 Q(2004 Apr 20)
-148.735 E(18)198.725 E 0 Cg EP
+(tory substitution.)184 696 Q(GNU Bash-4.2)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(huponexit)144 84 Q F0(If set,)184 96 Q F1(bash)2.5 E F0
-(will send)2.5 E/F2 9/Times-Bold@0 SF(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 108 Q -.1(ve)-.1 G(_comments).1 E F0
-.33(If set, allo)184 120 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 132 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 144 Q
-(ault.)-.1 E F1(lastpipe)144 156 Q F0 1.211
+/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 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
+240 Q(ault.)-.1 E F1(lastpipe)144 252 Q F0 1.211
(If set, and job control is not acti)6.66 F -.15(ve)-.25 G 3.712(,t).15
G 1.212(he shell runs the last command of a pipeline not)-3.712 F -.15
-(exe)184 168 S(cuted in the background in the current shell en).15 E
-(vironment.)-.4 E F1(lithist)144 180 Q F0 .655(If set, and the)15.55 F
+(exe)184 264 S(cuted in the background in the current shell en).15 E
+(vironment.)-.4 E F1(lithist)144 276 Q F0 .655(If set, and the)15.55 F
F1(cmdhist)3.155 E F0 .654
(option is enabled, multi-line commands are sa)3.154 F -.15(ve)-.2 G
3.154(dt).15 G 3.154(ot)-3.154 G .654(he history)-3.154 F
-(with embedded ne)184 192 Q
+(with embedded ne)184 288 Q
(wlines rather than using semicolon separators where possible.)-.25 E F1
-(login_shell)144 204 Q F0 .486
+(login_shell)144 300 Q F0 .486
(The shell sets this option if it is started as a login shell \(see)184
-216 R F2(INV)2.987 E(OCA)-.405 E(TION)-.855 E F0(abo)2.737 E -.15(ve)
--.15 G 2.987(\). The).15 F -.25(va)184 228 S(lue may not be changed.).25
-E F1(mailwar)144 240 Q(n)-.15 E F0 .815(If set, and a \214le that)184
-252 R F1(bash)3.315 E F0 .814
+312 R F2(INV)2.987 E(OCA)-.405 E(TION)-.855 E F0(abo)2.737 E -.15(ve)
+-.15 G 2.987(\). The).15 F -.25(va)184 324 S(lue may not be changed.).25
+E F1(mailwar)144 336 Q(n)-.15 E F0 .815(If set, and a \214le that)184
+348 R F1(bash)3.315 E F0 .814
(is checking for mail has been accessed since the last time it)3.315 F
--.1(wa)184 264 S 2.5(sc).1 G(heck)-2.5 E(ed, the message `)-.1 E
+-.1(wa)184 360 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 276 Q F0 .324(If set, and)184 288 R F1 -.18
+(no_empty_cmd_completion)144 372 Q F0 .324(If set, and)184 384 R F1 -.18
(re)2.824 G(adline).18 E F0 .324(is being used,)2.824 F F1(bash)2.824 E
F0 .324(will not attempt to search the)2.824 F F2 -.666(PA)2.825 G(TH)
-.189 E F0 .325(for possible)2.575 F
-(completions when completion is attempted on an empty line.)184 300 Q F1
-(nocaseglob)144 312 Q F0 .437(If set,)184 324 R F1(bash)2.937 E F0 .436
+(completions when completion is attempted on an empty line.)184 396 Q F1
+(nocaseglob)144 408 Q F0 .437(If set,)184 420 R F1(bash)2.937 E F0 .436
(matches \214lenames in a case\255insensiti)2.937 F .736 -.15(ve f)-.25
-H .436(ashion when performing pathname).05 F -.15(ex)184 336 S
+H .436(ashion when performing pathname).05 F -.15(ex)184 432 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 348 Q F0 1.193(If set,)184
-360 R F1(bash)3.693 E F0 1.194(matches patterns in a case\255insensiti)
+-.15(ve)-.15 G(\).).15 E F1(nocasematch)144 444 Q F0 1.193(If set,)184
+456 R F1(bash)3.693 E F0 1.194(matches patterns in a case\255insensiti)
3.693 F 1.494 -.15(ve f)-.25 H 1.194(ashion when performing matching).05
-F(while e)184 372 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 384 Q F0
-.855(If set,)184 396 R F1(bash)3.355 E F0(allo)3.355 E .855
+F(while e)184 468 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 480 Q F0
+.855(If set,)184 492 R F1(bash)3.355 E F0(allo)3.355 E .855
(ws patterns which match no \214les \(see)-.25 F F1 -.1(Pa)3.354 G .854
(thname Expansion).1 F F0(abo)3.354 E -.15(ve)-.15 G 3.354(\)t).15 G(o)
--3.354 E -.15(ex)184 408 S(pand to a null string, rather than themselv)
-.15 E(es.)-.15 E F1(pr)144 420 Q(ogcomp)-.18 E F0 .676
-(If set, the programmable completion f)184 432 R .677(acilities \(see)
+-3.354 E -.15(ex)184 504 S(pand to a null string, rather than themselv)
+.15 E(es.)-.15 E F1(pr)144 516 Q(ogcomp)-.18 E F0 .676
+(If set, the programmable completion f)184 528 R .677(acilities \(see)
-.1 F F1(Pr)3.177 E .677(ogrammable Completion)-.18 F F0(abo)3.177 E
--.15(ve)-.15 G(\)).15 E(are enabled.)184 444 Q
-(This option is enabled by def)5 E(ault.)-.1 E F1(pr)144 456 Q(omptv)
--.18 E(ars)-.1 E F0 1.448(If set, prompt strings under)184 468 R 1.448
+-.15(ve)-.15 G(\)).15 E(are enabled.)184 540 Q
+(This option is enabled by def)5 E(ault.)-.1 E F1(pr)144 552 Q(omptv)
+-.18 E(ars)-.1 E F0 1.448(If set, prompt strings under)184 564 R 1.448
(go parameter e)-.18 F 1.447(xpansion, command substitution, arithmetic)
--.15 F -.15(ex)184 480 S .17(pansion, and quote remo).15 F -.25(va)-.15
+-.15 F -.15(ex)184 576 S .17(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.671 E(OMPTING)-.27 E F0(abo)2.421 E -.15(ve)-.15 G(.).15
-E(This option is enabled by def)184 492 Q(ault.)-.1 E F1 -.18(re)144 504
+E(This option is enabled by def)184 588 Q(ault.)-.1 E F1 -.18(re)144 600
S(stricted_shell).18 E F0 1.069
(The shell sets this option if it is started in restricted mode \(see)
-184 516 R F2 1.069(RESTRICTED SHELL)3.569 F F0(belo)184 528 Q 4.178
+184 612 R F2 1.069(RESTRICTED SHELL)3.569 F F0(belo)184 624 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 540 S(cuted, allo).15 E(wing the startup \214les to disco)-.25 E
+184 636 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 552 Q(erbose)-.1 E F0 .502(If set, the)184 564 R F1
+F1(shift_v)144 648 Q(erbose)-.1 E F0 .502(If set, the)184 660 R F1
(shift)3.002 E F0 -.2(bu)3.002 G .501
(iltin prints an error message when the shift count e).2 F .501
-(xceeds the number)-.15 F(of positional parameters.)184 576 Q F1(sour)
-144 588 Q(cepath)-.18 E F0 .77(If set, the)184 600 R F1(sour)3.27 E(ce)
+(xceeds the number)-.15 F(of positional parameters.)184 672 Q F1(sour)
+144 684 Q(cepath)-.18 E F0 .77(If set, the)184 696 R F1(sour)3.27 E(ce)
-.18 E F0(\()3.27 E F1(.)A F0 3.27(\)b)C .77(uiltin uses the v)-3.47 F
.771(alue of)-.25 F F2 -.666(PA)3.271 G(TH)-.189 E F0 .771
(to \214nd the directory containing the)3.021 F
-(\214le supplied as an ar)184 612 Q 2.5(gument. This)-.18 F
-(option is enabled by def)2.5 E(ault.)-.1 E F1(xpg_echo)144 624 Q F0
-(If set, the)184 636 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 652.8 Q F0([)2.5 E F1<ad66>A F0(])A 1.002(Suspend the e)144 664.8 R
--.15(xe)-.15 G 1.002(cution of this shell until it recei).15 F -.15(ve)
--.25 G 3.501(sa).15 G F2(SIGCONT)A F0 3.501(signal. A)3.251 F 1.001
-(login shell cannot be)3.501 F .022(suspended; the)144 676.8 R F1<ad66>
+(\214le supplied as an ar)184 708 Q 2.5(gument. This)-.18 F
+(option is enabled by def)2.5 E(ault.)-.1 E(GNU Bash-4.2)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 10
+/Times-Bold@0 SF(xpg_echo)144 84 Q F0(If set, the)184 96 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 112.8 Q F0([)2.5 E F1<ad66>A F0(])A
+1.002(Suspend the e)144 124.8 R -.15(xe)-.15 G 1.002
+(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.501(signal. A)3.251 F 1.001
+(login shell cannot be)3.501 F .022(suspended; the)144 136.8 R F1<ad66>
2.522 E F0 .022(option can be used to o)2.522 F -.15(ve)-.15 G .022
(rride this and force the suspension.).15 F .023(The return status is)
-5.023 F 2.5(0u)144 688.8 S(nless the shell is a login shell and)-2.5 E
+5.023 F 2.5(0u)144 148.8 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 705.6 Q F3 -.2(ex)2.5 G(pr).2 E F1([)108 717.6 Q F3 -.2
-(ex)2.5 G(pr).2 E F1(])2.5 E F0 .878
+E F1(test)108 165.6 Q/F3 10/Times-Italic@0 SF -.2(ex)2.5 G(pr).2 E F1([)
+108 177.6 Q F3 -.2(ex)2.5 G(pr).2 E F1(])2.5 E F0 .878
(Return a status of 0 \(true\) or 1 \(f)6.77 F .877
(alse\) depending on the e)-.1 F -.25(va)-.25 G .877
-(luation of the conditional e).25 F(xpression)-.15 E F3 -.2(ex)144 729.6
+(luation of the conditional e).25 F(xpression)-.15 E F3 -.2(ex)144 189.6
S(pr).2 E F0 5.53(.E).73 G .53
(ach operator and operand must be a separate ar)-5.53 F 3.03
-(gument. Expressions)-.18 F .53(are composed of the)3.03 F(GNU Bash-4.2)
-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 3.08
-(primaries described abo)144 84 R 3.38 -.15(ve u)-.15 H(nder).15 E/F1 9
-/Times-Bold@0 SF(CONDITION)5.58 E 3.079(AL EXPRESSIONS)-.18 F/F2 9
-/Times-Roman@0 SF(.)A/F3 10/Times-Bold@0 SF(test)7.579 E F0 3.079
-(does not accept an)5.579 F(y)-.15 E
-(options, nor does it accept and ignore an ar)144 96 Q(gument of)-.18 E
-F3<adad>2.5 E F0(as signifying the end of options.)2.5 E .785
-(Expressions may be combined using the follo)144 114 R .786
+(gument. Expressions)-.18 F .53(are composed of the)3.03 F 3.08
+(primaries described abo)144 201.6 R 3.38 -.15(ve u)-.15 H(nder).15 E F2
+(CONDITION)5.58 E 3.079(AL EXPRESSIONS)-.18 F/F4 9/Times-Roman@0 SF(.)A
+F1(test)7.579 E F0 3.079(does not accept an)5.579 F(y)-.15 E
+(options, nor does it accept and ignore an ar)144 213.6 Q(gument of)-.18
+E F1<adad>2.5 E F0(as signifying the end of options.)2.5 E .785
+(Expressions may be combined using the follo)144 231.6 R .786
(wing operators, listed in decreasing order of prece-)-.25 F 3.412
-(dence. The)144 126 R -.25(eva)3.412 G .912
+(dence. The)144 243.6 R -.25(eva)3.412 G .912
(luation depends on the number of ar).25 F .911(guments; see belo)-.18 F
4.711 -.65(w. O)-.25 H .911(perator precedence is).65 F
-(used when there are \214v)144 138 Q 2.5(eo)-.15 G 2.5(rm)-2.5 G(ore ar)
--2.5 E(guments.)-.18 E F3(!)144 150 Q/F4 10/Times-Italic@0 SF -.2(ex)2.5
-G(pr).2 E F0 -.35(Tr)12.6 G(ue if).35 E F4 -.2(ex)2.5 G(pr).2 E F0(is f)
-3.23 E(alse.)-.1 E F3(\()144 162 Q F4 -.2(ex)2.5 G(pr).2 E F3(\))2.5 E
-F0 .26(Returns the v)6.77 F .26(alue of)-.25 F F4 -.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 174 Q F4 -.2(ex)
-144 186 S(pr1).2 E F0<ad>2.5 E F3(a)A F4 -.2(ex)2.5 G(pr2).2 E F0 -.35
-(Tr)180 198 S(ue if both).35 E F4 -.2(ex)2.5 G(pr1).2 E F0(and)2.5 E F4
--.2(ex)2.5 G(pr2).2 E F0(are true.)2.52 E F4 -.2(ex)144 210 S(pr1).2 E
-F0<ad>2.5 E F3(o)A F4 -.2(ex)2.5 G(pr2).2 E F0 -.35(Tr)180 222 S
-(ue if either).35 E F4 -.2(ex)2.5 G(pr1).2 E F0(or)2.5 E F4 -.2(ex)2.5 G
-(pr2).2 E F0(is true.)2.52 E F3(test)144 238.8 Q F0(and)2.5 E F3([)2.5 E
-F0 -.25(eva)2.5 G(luate conditional e).25 E
+(used when there are \214v)144 255.6 Q 2.5(eo)-.15 G 2.5(rm)-2.5 G
+(ore ar)-2.5 E(guments.)-.18 E F1(!)144 267.6 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 279.6 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 291.6 Q F3 -.2
+(ex)144 303.6 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 315.6 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 327.6 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
+339.6 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 356.4 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 256.8 S -.18(rg)-2.5 G(uments).18 E(The e)
-180 268.8 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 280.8 S -.18
-(rg)-2.5 G(ument).18 E(The e)180 292.8 Q
+(guments.)-.18 E 2.5(0a)144 374.4 S -.18(rg)-2.5 G(uments).18 E(The e)
+180 386.4 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(1a)144 398.4 S -.18
+(rg)-2.5 G(ument).18 E(The e)180 410.4 Q
(xpression is true if and only if the ar)-.15 E(gument is not null.)-.18
-E 2.5(2a)144 304.8 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar)
-180 316.8 R .37(gument is)-.18 F F3(!)2.87 E F0 2.87(,t)C .37(he e)-2.87
+E 2.5(2a)144 422.4 S -.18(rg)-2.5 G(uments).18 E .37(If the \214rst ar)
+180 434.4 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 328.8 R .38
+(gument is null.)-.18 F .379(If the \214rst ar)180 446.4 R .38
(gument is one of the unary conditional operators listed abo)-.18 F .68
--.15(ve u)-.15 H(nder).15 E F1(CONDI-)2.88 E(TION)180 340.8 Q .553
-(AL EXPRESSIONS)-.18 F F2(,)A F0 .552(the e)2.802 F .552
+-.15(ve u)-.15 H(nder).15 E F2(CONDI-)2.88 E(TION)180 458.4 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 352.8 Q
+(If the \214rst ar)5.552 F(gu-)-.18 E(ment is not a v)180 470.4 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 364.8 S -.18(rg)-2.5 G
-(uments).18 E .236(The follo)180 376.8 R .236
+(xpression is f)-.15 E(alse.)-.1 E 2.5(3a)144 482.4 S -.18(rg)-2.5 G
+(uments).18 E .236(The follo)180 494.4 R .236
(wing conditions are applied in the order listed.)-.25 F .236
(If the second ar)5.236 F .236(gument is one of)-.18 F .855
-(the binary conditional operators listed abo)180 388.8 R 1.155 -.15
-(ve u)-.15 H(nder).15 E F1(CONDITION)3.355 E .855(AL EXPRESSIONS)-.18 F
-F2(,)A F0(the)3.104 E .578(result of the e)180 400.8 R .578(xpression i\
+(the binary conditional operators listed abo)180 506.4 R 1.155 -.15
+(ve u)-.15 H(nder).15 E F2(CONDITION)3.355 E .855(AL EXPRESSIONS)-.18 F
+F4(,)A F0(the)3.104 E .578(result of the e)180 518.4 R .578(xpression i\
s the result of the binary test using the \214rst and third ar)-.15 F
-(guments)-.18 E 1.333(as operands.)180 412.8 R(The)6.333 E F3<ad61>3.833
-E F0(and)3.833 E F3<ad6f>3.832 E F0 1.332
+(guments)-.18 E 1.333(as operands.)180 530.4 R(The)6.333 E F1<ad61>3.833
+E F0(and)3.833 E F1<ad6f>3.832 E F0 1.332
(operators are considered binary operators when there are)3.832 F .558
-(three ar)180 424.8 R 3.058(guments. If)-.18 F .558(the \214rst ar)3.058
-F .558(gument is)-.18 F F3(!)3.058 E F0 3.058(,t)C .558(he v)-3.058 F
+(three ar)180 542.4 R 3.058(guments. If)-.18 F .558(the \214rst ar)3.058
+F .558(gument is)-.18 F F1(!)3.058 E F0 3.058(,t)C .558(he v)-3.058 F
.558(alue is the ne)-.25 F -.05(ga)-.15 G .558(tion of the tw).05 F
(o-ar)-.1 E(gument)-.18 E .521(test using the second and third ar)180
-436.8 R 3.021(guments. If)-.18 F .521(the \214rst ar)3.021 F .52
-(gument is e)-.18 F(xactly)-.15 E F3(\()3.02 E F0 .52(and the third)3.02
-F(ar)180 448.8 Q .485(gument is e)-.18 F(xactly)-.15 E F3(\))2.985 E F0
+554.4 R 3.021(guments. If)-.18 F .521(the \214rst ar)3.021 F .52
+(gument is e)-.18 F(xactly)-.15 E F1(\()3.02 E F0 .52(and the third)3.02
+F(ar)180 566.4 Q .485(gument is e)-.18 F(xactly)-.15 E F1(\))2.985 E F0
2.985(,t)C .485(he result is the one-ar)-2.985 F .485
(gument test of the second ar)-.18 F 2.985(gument. Other)-.18 F(-)-.2 E
-(wise, the e)180 460.8 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(4a)144
-472.8 S -.18(rg)-2.5 G(uments).18 E .385(If the \214rst ar)180 484.8 R
-.385(gument is)-.18 F F3(!)2.885 E F0 2.885(,t)C .385
+(wise, the e)180 578.4 Q(xpression is f)-.15 E(alse.)-.1 E 2.5(4a)144
+590.4 S -.18(rg)-2.5 G(uments).18 E .385(If the \214rst ar)180 602.4 R
+.385(gument is)-.18 F F1(!)2.885 E F0 2.885(,t)C .385
(he result is the ne)-2.885 F -.05(ga)-.15 G .384(tion of the three-ar)
.05 F .384(gument e)-.18 F .384(xpression com-)-.15 F 1.647
-(posed of the remaining ar)180 496.8 R 4.147(guments. Otherwise,)-.18 F
+(posed of the remaining ar)180 614.4 R 4.147(guments. Otherwise,)-.18 F
1.647(the e)4.147 F 1.648(xpression is parsed and e)-.15 F -.25(va)-.25
G(luated).25 E(according to precedence using the rules listed abo)180
-508.8 Q -.15(ve)-.15 G(.).15 E 2.5(5o)144 520.8 S 2.5(rm)-2.5 G(ore ar)
--2.5 E(guments)-.18 E 1.635(The e)180 532.8 R 1.635
+626.4 Q -.15(ve)-.15 G(.).15 E 2.5(5o)144 638.4 S 2.5(rm)-2.5 G(ore ar)
+-2.5 E(guments)-.18 E 1.635(The e)180 650.4 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
-544.8 Q -.15(ve)-.15 G(.).15 E(When used with)144 562.8 Q F3(test)2.5 E
-F0(or)2.5 E F3([)2.5 E F0 2.5(,t)C(he)-2.5 E F3(<)2.5 E F0(and)2.5 E F3
+662.4 Q -.15(ve)-.15 G(.).15 E(When used with)144 680.4 Q F1(test)2.5 E
+F0(or)2.5 E F1([)2.5 E F0 2.5(,t)C(he)-2.5 E F1(<)2.5 E F0(and)2.5 E F1
(>)2.5 E F0(operators sort le)2.5 E
-(xicographically using ASCII ordering.)-.15 E F3(times)108 579.6 Q F0
+(xicographically using ASCII ordering.)-.15 E F1(times)108 697.2 Q F0
1.229(Print the accumulated user and system times for the shell and for\
- processes run from the shell.)13.23 F(The return status is 0.)144 591.6
-Q F3(trap)108 608.4 Q F0([)2.5 E F3(\255lp)A F0 2.5(][)C([)-2.5 E F4(ar)
-A(g)-.37 E F0(])A F4(sigspec)2.5 E F0(...])2.5 E .703(The command)144
-620.4 R F4(ar)3.533 E(g)-.37 E F0 .703(is to be read and e)3.423 F -.15
-(xe)-.15 G .702(cuted when the shell recei).15 F -.15(ve)-.25 G 3.202
-(ss).15 G(ignal\(s\))-3.202 E F4(sigspec)3.202 E F0 5.702(.I).31 G(f)
--5.702 E F4(ar)3.532 E(g)-.37 E F0(is)3.422 E .608
-(absent \(and there is a single)144 632.4 R F4(sigspec)3.108 E F0 3.108
-(\)o)C(r)-3.108 E F3<ad>3.108 E F0 3.108(,e)C .608
-(ach speci\214ed signal is reset to its original disposition)-3.108 F
-.659(\(the v)144 644.4 R .659(alue it had upon entrance to the shell\).)
--.25 F(If)5.658 E F4(ar)3.488 E(g)-.37 E F0 .658
-(is the null string the signal speci\214ed by each)3.378 F F4(sigspec)
-144.34 656.4 Q F0 .58(is ignored by the shell and by the commands it in)
-3.39 F -.2(vo)-.4 G -.1(ke).2 G 3.081(s. If).1 F F4(ar)3.411 E(g)-.37 E
-F0 .581(is not present and)3.301 F F3<ad70>3.081 E F0(has)3.081 E 1.215
-(been supplied, then the trap commands associated with each)144 668.4 R
-F4(sigspec)4.054 E F0 1.214(are displayed.)4.024 F 1.214(If no ar)6.214
-F(gu-)-.18 E .86(ments are supplied or if only)144 680.4 R F3<ad70>3.36
-E F0 .86(is gi)3.36 F -.15(ve)-.25 G(n,).15 E F3(trap)3.36 E F0 .86
-(prints the list of commands associated with each)3.36 F 2.83
-(signal. The)144 692.4 R F3<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.31
-(bers. Each)144 704.4 R F4(sigspec)4.65 E F0 1.811
-(is either a signal name de\214ned in <)4.62 F F4(signal.h)A F0 1.811
-(>, or a signal number)B 6.811(.S)-.55 G(ignal)-6.811 E
-(names are case insensiti)144 716.4 Q .3 -.15(ve a)-.25 H(nd the).15 E
-F1(SIG)2.5 E F0(pre\214x is optional.)2.25 E(GNU Bash-4.2)72 768 Q
-(2004 Apr 20)148.735 E(20)198.725 E 0 Cg EP
+ processes run from the shell.)13.23 F(The return status is 0.)144 709.2
+Q(GNU Bash-4.2)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 1.649(If a)
-144 84 R/F1 10/Times-Italic@0 SF(sigspec)4.489 E F0(is)4.459 E/F2 9
-/Times-Bold@0 SF(EXIT)4.149 E F0 1.649(\(0\) the command)3.899 F F1(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.648(xit from the shell.)-.15 F 1.648(If a)6.648 F F1(sigspec)
-4.488 E F0(is)4.458 E F2(DEB)144 96 Q(UG)-.09 E/F3 9/Times-Roman@0 SF(,)
-A F0 1.167(the command)3.417 F F1(ar)3.997 E(g)-.37 E F0 1.167(is e)
-3.887 F -.15(xe)-.15 G 1.167(cuted before e).15 F -.15(ve)-.25 G(ry).15
-E F1 1.168(simple command)3.667 F F0(,)A F1(for)3.668 E F0(command,)
-3.668 E F1(case)3.668 E F0(com-)3.668 E(mand,)144 108 Q F1(select)2.647
-E F0 .147(command, e)2.647 F -.15(ve)-.25 G .147(ry arithmetic).15 F F1
-(for)2.647 E F0 .146(command, and before the \214rst command e)2.647 F
--.15(xe)-.15 G .146(cutes in a).15 F .145(shell function \(see)144 120 R
-F2 .145(SHELL GRAMMAR)2.645 F F0(abo)2.395 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.646 E(ug)-.2 E F0 .146(option to)2.646 F(the)
-144 132 Q F4(shopt)3.201 E F0 -.2(bu)3.201 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 F1(sigspec)3.54 E F0(is)3.51 E F2
-(RETURN)3.2 E F3(,)A F0 .7(the com-)2.95 F(mand)144 144 Q F1(ar)3.473 E
-(g)-.37 E F0 .643(is e)3.363 F -.15(xe)-.15 G .643
+(TINS\(1\) B)-.92 F(ASH_B)-.35 E(UIL)-.1 E(TINS\(1\))-.92 E/F1 10
+/Times-Bold@0 SF(trap)108 84 Q F0([)2.5 E F1(\255lp)A F0 2.5(][)C([)-2.5
+E/F2 10/Times-Italic@0 SF(ar)A(g)-.37 E F0(])A F2(sigspec)2.5 E F0(...])
+2.5 E .703(The command)144 96 R F2(ar)3.533 E(g)-.37 E F0 .703
+(is to be read and e)3.423 F -.15(xe)-.15 G .702
+(cuted when the shell recei).15 F -.15(ve)-.25 G 3.202(ss).15 G
+(ignal\(s\))-3.202 E F2(sigspec)3.202 E F0 5.702(.I).31 G(f)-5.702 E F2
+(ar)3.532 E(g)-.37 E F0(is)3.422 E .608(absent \(and there is a single)
+144 108 R F2(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
+.659(\(the v)144 120 R .659(alue it had upon entrance to the shell\).)
+-.25 F(If)5.658 E F2(ar)3.488 E(g)-.37 E F0 .658
+(is the null string the signal speci\214ed by each)3.378 F F2(sigspec)
+144.34 132 Q F0 .58(is ignored by the shell and by the commands it in)
+3.39 F -.2(vo)-.4 G -.1(ke).2 G 3.081(s. If).1 F F2(ar)3.411 E(g)-.37 E
+F0 .581(is not present and)3.301 F F1<ad70>3.081 E F0(has)3.081 E 1.215
+(been supplied, then the trap commands associated with each)144 144 R F2
+(sigspec)4.054 E F0 1.214(are displayed.)4.024 F 1.214(If no ar)6.214 F
+(gu-)-.18 E .86(ments are supplied or if only)144 156 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 168 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.31
+(bers. Each)144 180 R F2(sigspec)4.65 E F0 1.811
+(is either a signal name de\214ned in <)4.62 F F2(signal.h)A F0 1.811
+(>, or a signal number)B 6.811(.S)-.55 G(ignal)-6.811 E
+(names are case insensiti)144 192 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.649(If a)
+144 210 R F2(sigspec)4.489 E F0(is)4.459 E F3(EXIT)4.149 E F0 1.649
+(\(0\) the command)3.899 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.648(xit from the shell.)-.15 F
+1.648(If a)6.648 F F2(sigspec)4.488 E F0(is)4.458 E F3(DEB)144 222 Q(UG)
+-.09 E/F4 9/Times-Roman@0 SF(,)A F0 1.167(the command)3.417 F F2(ar)
+3.997 E(g)-.37 E F0 1.167(is e)3.887 F -.15(xe)-.15 G 1.167
+(cuted before e).15 F -.15(ve)-.25 G(ry).15 E F2 1.168(simple command)
+3.667 F F0(,)A F2(for)3.668 E F0(command,)3.668 E F2(case)3.668 E F0
+(com-)3.668 E(mand,)144 234 Q F2(select)2.647 E F0 .147(command, e)2.647
+F -.15(ve)-.25 G .147(ry arithmetic).15 F F2(for)2.647 E F0 .146
+(command, and before the \214rst command e)2.647 F -.15(xe)-.15 G .146
+(cutes in a).15 F .145(shell function \(see)144 246 R F3 .145
+(SHELL GRAMMAR)2.645 F F0(abo)2.395 E -.15(ve)-.15 G 2.646(\). Refer).15
+F .146(to the description of the)2.646 F F1(extdeb)2.646 E(ug)-.2 E F0
+.146(option to)2.646 F(the)144 258 Q F1(shopt)3.201 E F0 -.2(bu)3.201 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 .7(the com-)2.95 F(mand)144 270 Q F2(ar)3.473
+E(g)-.37 E F0 .643(is e)3.363 F -.15(xe)-.15 G .643
(cuted each time a shell function or a script e).15 F -.15(xe)-.15 G
-.644(cuted with the).15 F F4(.)3.144 E F0(or)3.144 E F4(sour)3.144 E(ce)
--.18 E F0 -.2(bu)3.144 G(iltins).2 E(\214nishes e)144 156 Q -.15(xe)-.15
-G(cuting.).15 E .929(If a)144 174 R F1(sigspec)3.769 E F0(is)3.739 E F2
-(ERR)3.429 E F3(,)A F0 .929(the command)3.179 F F1(ar)3.759 E(g)-.37 E
+.644(cuted with the).15 F F1(.)3.144 E F0(or)3.144 E F1(sour)3.144 E(ce)
+-.18 E F0 -.2(bu)3.144 G(iltins).2 E(\214nishes e)144 282 Q -.15(xe)-.15
+G(cuting.).15 E .929(If a)144 300 R F2(sigspec)3.769 E F0(is)3.739 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 .928(imple command has a non\255zero)-3.429 F -.15(ex)
-144 186 S 1.008(it status, subject to the follo).15 F 1.009
-(wing conditions.)-.25 F(The)6.009 E F2(ERR)3.509 E F0 1.009
+144 312 S 1.008(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.009(cuted if the f).15 F 1.009
(ailed com-)-.1 F .324
-(mand is part of the command list immediately follo)144 198 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 324 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 .151(in an)144
-210 R F1(if)2.661 E F0 .151(statement, part of a command e)4.611 F -.15
-(xe)-.15 G .151(cuted in a).15 F F4(&&)2.651 E F0(or)2.651 E F4(||)2.651
+336 R F2(if)2.661 E F0 .151(statement, part of a command e)4.611 F -.15
+(xe)-.15 G .151(cuted in a).15 F F1(&&)2.651 E F0(or)2.651 E F1(||)2.651
E F0 .151(list, or if the command')2.651 F 2.651(sr)-.55 G .151(eturn v)
--2.651 F(alue)-.25 E(is being in)144 222 Q -.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(exit)-.18 E F0(option.)2.5 E 1.095
+-2.651 F(alue)-.25 E(is being in)144 348 Q -.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
-240 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 252 R .662
+366 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 378 R .662
(alues in a subshell or subshell en)-.25 F .662(vironment when one is)
--.4 F 2.5(created. The)144 264 R(return status is f)2.5 E(alse if an)-.1
-E(y)-.15 E F1(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
-280.8 Q F0([)2.5 E F4(\255aftpP)A F0(])A F1(name)2.5 E F0([)2.5 E F1
-(name)A F0(...])2.5 E -.4(Wi)144 292.8 S .174
-(th no options, indicate ho).4 F 2.674(we)-.25 G(ach)-2.674 E F1(name)
+-.4 F 2.5(created. The)144 390 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
+406.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 418.8 S .174
+(th no options, indicate ho).4 F 2.674(we)-.25 G(ach)-2.674 E F2(name)
3.034 E F0 -.1(wo)2.854 G .173
(uld be interpreted if used as a command name.).1 F .173(If the)5.173 F
-F4<ad74>144 304.8 Q F0 .842(option is used,)3.342 F F4(type)3.342 E F0
-.843(prints a string which is one of)3.343 F F1(alias)3.343 E F0(,).27 E
-F1 -.1(ke)3.343 G(ywor)-.2 E(d)-.37 E F0(,).77 E F1(function)3.343 E F0
-(,).24 E F1 -.2(bu)3.343 G(iltin).2 E F0 3.343(,o).24 G(r)-3.343 E F1
-(\214le)5.253 E F0(if)3.523 E F1(name)144.36 316.8 Q F0 .087
+F1<ad74>144 430.8 Q F0 .842(option is used,)3.342 F F1(type)3.342 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.343 G(iltin).2 E F0 3.343(,o).24 G(r)-3.343 E F2
+(\214le)5.253 E F0(if)3.523 E F2(name)144.36 442.8 Q F0 .087
(is an alias, shell reserv)2.767 F .087(ed w)-.15 F .087
(ord, function, b)-.1 F .086(uiltin, or disk \214le, respecti)-.2 F -.15
-(ve)-.25 G(ly).15 E 5.086(.I)-.65 G 2.586(ft)-5.086 G(he)-2.586 E F1
+(ve)-.25 G(ly).15 E 5.086(.I)-.65 G 2.586(ft)-5.086 G(he)-2.586 E F2
(name)2.946 E F0 .086(is not)2.766 F .118
-(found, then nothing is printed, and an e)144 328.8 R .118
+(found, then nothing is printed, and an e)144 454.8 R .118
(xit status of f)-.15 F .118(alse is returned.)-.1 F .119(If the)5.119 F
-F4<ad70>2.619 E F0 .119(option is used,)2.619 F F4(type)2.619 E F0 .855
-(either returns the name of the disk \214le that w)144 340.8 R .855
-(ould be e)-.1 F -.15(xe)-.15 G .855(cuted if).15 F F1(name)3.715 E F0
+F1<ad70>2.619 E F0 .119(option is used,)2.619 F F1(type)2.619 E F0 .855
+(either returns the name of the disk \214le that w)144 466.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 .64(mand name, or nothing if)144
-352.8 R/F5 10/Courier@0 SF .64(type -t name)3.14 F F0 -.1(wo)3.14 G .641
-(uld not return).1 F F1(\214le)3.141 E F0 5.641(.T).18 G(he)-5.641 E F4
-<ad50>3.141 E F0 .641(option forces a)3.141 F F2 -.666(PA)3.141 G(TH)
--.189 E F0 .113(search for each)144 364.8 R F1(name)2.613 E F0 2.613(,e)
+478.8 R/F5 10/Courier@0 SF .64(type -t name)3.14 F F0 -.1(wo)3.14 G .641
+(uld not return).1 F F2(\214le)3.141 E F0 5.641(.T).18 G(he)-5.641 E F1
+<ad50>3.141 E F0 .641(option forces a)3.141 F F3 -.666(PA)3.141 G(TH)
+-.189 E F0 .113(search for each)144 490.8 R F2(name)2.613 E F0 2.613(,e)
C -.15(ve)-2.863 G 2.613(ni).15 G(f)-2.613 E F5 .113(type -t name)2.613
-F F0 -.1(wo)2.613 G .113(uld not return).1 F F1(\214le)2.613 E F0 5.113
-(.I).18 G 2.613(fa)-5.113 G .112(command is hashed,)-.001 F F4<ad70>
-2.612 E F0(and)144 376.8 Q F4<ad50>3.23 E F0 .73(print the hashed v)3.23
+F F0 -.1(wo)2.613 G .113(uld not return).1 F F2(\214le)2.613 E F0 5.113
+(.I).18 G 2.613(fa)-5.113 G .112(command is hashed,)-.001 F F1<ad70>
+2.612 E F0(and)144 502.8 Q F1<ad50>3.23 E F0 .73(print the hashed v)3.23
F .731
(alue, which is not necessarily the \214le that appears \214rst in)-.25
-F F2 -.666(PA)3.231 G(TH)-.189 E F3(.)A F0 .731(If the)5.231 F F4<ad61>
-144 388.8 Q F0 1.749(option is used,)4.249 F F4(type)4.248 E F0 1.748
+F F3 -.666(PA)3.231 G(TH)-.189 E F4(.)A F0 .731(If the)5.231 F F1<ad61>
+144 514.8 Q F0 1.749(option is used,)4.249 F F1(type)4.248 E F0 1.748
(prints all of the places that contain an e)4.248 F -.15(xe)-.15 G 1.748
-(cutable named).15 F F1(name)4.248 E F0 6.748(.T).18 G(his)-6.748 E .744
-(includes aliases and functions, if and only if the)144 400.8 R F4<ad70>
+(cutable named).15 F F2(name)4.248 E F0 6.748(.T).18 G(his)-6.748 E .744
+(includes aliases and functions, if and only if the)144 526.8 R F1<ad70>
3.244 E F0 .744(option is not also used.)3.244 F .744
(The table of hashed)5.744 F 1.223(commands is not consulted when using)
-144 412.8 R F4<ad61>3.723 E F0 6.223(.T)C(he)-6.223 E F4<ad66>3.723 E F0
+144 538.8 R F1<ad61>3.723 E F0 6.223(.T)C(he)-6.223 E F1<ad66>3.723 E F0
1.223(option suppresses shell function lookup, as)3.723 F .325(with the)
-144 424.8 R F4(command)2.825 E F0 -.2(bu)2.825 G(iltin.).2 E F4(type)
+144 550.8 R F1(command)2.825 E F0 -.2(bu)2.825 G(iltin.).2 E F1(type)
5.325 E F0 .325(returns true if all of the ar)2.825 F .326
(guments are found, f)-.18 F .326(alse if an)-.1 F 2.826(ya)-.15 G .326
-(re not)-2.826 F(found.)144 436.8 Q F4(ulimit)108 453.6 Q F0([)2.5 E F4
-(\255HST)A(abcde\214lmnpqrstuvx)-.92 E F0([)2.5 E F1(limit)A F0(]])A
-(Pro)144 465.6 Q .244(vides control o)-.15 F -.15(ve)-.15 G 2.744(rt).15
+(re not)-2.826 F(found.)144 562.8 Q F1(ulimit)108 579.6 Q F0([)2.5 E F1
+(\255HST)A(abcde\214lmnpqrstuvx)-.92 E F0([)2.5 E F2(limit)A F0(]])A
+(Pro)144 591.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 477.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 603.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 489.6 Q -.15(ve)-.25 G 2.709(nr).15 G 2.709(esource. A)-2.709 F .208
+144 615.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 501.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 627.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
-513.6 R .139(The v)5.139 F .139(alue of)-.25 F F1(limit)2.729 E F0 .139
+639.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 525.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 651.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 537.6 R -.15(ve)-.25 G(ly).15 E
-5.78(.I)-.65 G(f)-5.78 E F1(limit)3.37 E F0 .78
+(soft limit, and no limit, respecti)144 663.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 549.6 R F4<ad48>2.999 E F0
+F .498(resource is printed, unless the)144 675.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 561.6 Q 2.5
-(alue. Other)-.25 F(options are interpreted as follo)2.5 E(ws:)-.25 E F4
-<ad61>144 573.6 Q F0(All current limits are reported)25.3 E F4<ad62>144
-585.6 Q F0(The maximum sock)24.74 E(et b)-.1 E(uf)-.2 E(fer size)-.25 E
-F4<ad63>144 597.6 Q F0(The maximum size of core \214les created)25.86 E
-F4<ad64>144 609.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 621.6 Q F0
-(The maximum scheduling priority \("nice"\))25.86 E F4<ad66>144 633.6 Q
-F0(The maximum size of \214les written by the shell and its children)
-26.97 E F4<ad69>144 645.6 Q F0(The maximum number of pending signals)
-27.52 E F4<ad6c>144 657.6 Q F0(The maximum size that may be lock)27.52 E
-(ed into memory)-.1 E F4<ad6d>144 669.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 681.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
-693.6 Q F4<ad70>144 705.6 Q F0
-(The pipe size in 512-byte blocks \(this may not be set\))24.74 E F4
-<ad71>144 717.6 Q F0
-(The maximum number of bytes in POSIX message queues)24.74 E
+(limit name and unit are printed before the v)144 687.6 Q 2.5
+(alue. Other)-.25 F(options are interpreted as follo)2.5 E(ws:)-.25 E F1
+<ad61>144 699.6 Q F0(All current limits are reported)25.3 E F1<ad62>144
+711.6 Q F0(The maximum sock)24.74 E(et b)-.1 E(uf)-.2 E(fer size)-.25 E
(GNU Bash-4.2)72 768 Q(2004 Apr 20)148.735 E(21)198.725 E 0 Cg EP
%%Page: 22 22
%%BeginPageSetup
%%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
-(The maximum real-time scheduling priority)25.86 E F1<ad73>144 96 Q F0
-(The maximum stack size)26.41 E F1<ad74>144 108 Q F0
-(The maximum amount of cpu time in seconds)26.97 E F1<ad75>144 120 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 132 Q F0 .47
+/Times-Bold@0 SF<ad63>144 84 Q F0
+(The maximum size of core \214les created)25.86 E F1<ad64>144 96 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 108 Q F0
+(The maximum scheduling priority \("nice"\))25.86 E F1<ad66>144 120 Q F0
+(The maximum size of \214les written by the shell and its children)26.97
+E F1<ad69>144 132 Q F0(The maximum number of pending signals)27.52 E F1
+<ad6c>144 144 Q F0(The maximum size that may be lock)27.52 E
+(ed into memory)-.1 E F1<ad6d>144 156 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 F1<ad6e>144 168 Q F0 .791(The \
+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
+180 Q F1<ad70>144 192 Q F0
+(The pipe size in 512-byte blocks \(this may not be set\))24.74 E F1
+<ad71>144 204 Q F0(The maximum number of bytes in POSIX message queues)
+24.74 E F1<ad72>144 216 Q F0(The maximum real-time scheduling priority)
+25.86 E F1<ad73>144 228 Q F0(The maximum stack size)26.41 E F1<ad74>144
+240 Q F0(The maximum amount of cpu time in seconds)26.97 E F1<ad75>144
+252 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 264 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 144
-Q F1<ad78>144 156 Q F0(The maximum number of \214le locks)25.3 E F1
-<ad54>144 168 Q F0(The maximum number of threads)23.63 E(If)144 184.8 Q
+(ilable to the shell and, on some systems, to).25 F(its children)180 276
+Q F1<ad78>144 288 Q F0(The maximum number of \214le locks)25.3 E F1
+<ad54>144 300 Q F0(The maximum number of threads)23.63 E(If)144 316.8 Q
/F2 10/Times-Italic@0 SF(limit)3.058 E F0 .468(is gi)3.648 F -.15(ve)
-.25 G .468(n, and the).15 F F1<ad61>2.968 E F0 .468
(option is not used,)2.968 F F2(limit)2.968 E F0 .468(is the ne)2.968 F
2.968(wv)-.25 G .468(alue of the speci\214ed resource.)-3.218 F(If)5.468
-E .044(no option is gi)144 196.8 R -.15(ve)-.25 G .044(n, then).15 F F1
+E .044(no option is gi)144 328.8 R -.15(ve)-.25 G .044(n, then).15 F F1
<ad66>2.544 E F0 .045(is assumed.)2.545 F -1.11(Va)5.045 G .045
(lues are in 1024-byte increments, e)1.11 F .045(xcept for)-.15 F F1
<ad74>2.545 E F0 2.545(,w)C .045(hich is)-2.545 F .403(in seconds;)144
-208.8 R F1<ad70>2.903 E F0 2.903(,w)C .402
+340.8 R F1<ad70>2.903 E F0 2.903(,w)C .402
(hich is in units of 512-byte blocks; and)-2.903 F F1<ad54>2.902 E F0(,)
A F1<ad62>2.902 E F0(,)A F1<ad6e>2.902 E F0 2.902(,a)C(nd)-2.902 E F1
<ad75>2.902 E F0 2.902(,w)C .402(hich are unscaled)-2.902 F -.25(va)144
-220.8 S 3.082(lues. The).25 F .583(return status is 0 unless an in)3.083
+352.8 S 3.082(lues. The).25 F .583(return status is 0 unless an in)3.083
F -.25(va)-.4 G .583(lid option or ar).25 F .583
(gument is supplied, or an error occurs)-.18 F(while setting a ne)144
-232.8 Q 2.5(wl)-.25 G(imit.)-2.5 E F1(umask)108 249.6 Q F0([)2.5 E F1
+364.8 Q 2.5(wl)-.25 G(imit.)-2.5 E F1(umask)108 381.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 261.6 R F2(mode)2.7 E F0
+(The user \214le-creation mask is set to)144 393.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 273.6 R F2 -.15(ch)2.566 G(mod).15 E F0(\(1\).).77 E(If)144
-285.6 Q F2(mode)3.263 E F0 .382(is omitted, the current v)3.063 F .382
+pted by)144 405.6 R F2 -.15(ch)2.566 G(mod).15 E F0(\(1\).).77 E(If)144
+417.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 297.6 R .547
+(printed in symbolic form; the def)144 429.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 309.6 Q F0 .552
+(mode)144.38 441.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 321.6 Q
+F .551(The return status is 0 if the)5.551 F(mode w)144 453.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 338.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 350.4 Q 1.955 -.15(ve e)-.15 H(ach).15 E F2(name)
+(unalias)108 470.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 482.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 362.4 Q -.15(ve)-.15 G 2.5(d. The).15 F(return v)2.5 E
+F(remo)144 494.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 379.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 391.2 S 3.828
-(re).15 G(ach)-3.828 E F2(name)3.828 E F0 3.828(,r).18 G(emo)-3.828 E
-1.628 -.15(ve t)-.15 H 1.328(he corresponding v).15 F 1.327
-(ariable or function.)-.25 F 1.327(If the)6.327 F F1<ad76>3.827 E F0
-1.327(option is gi)3.827 F -.15(ve)-.25 G 1.327(n, each).15 F F2(name)
-144.36 403.2 Q F0 1.55(refers to a shell v)4.23 F 1.551
-(ariable, and that v)-.25 F 1.551(ariable is remo)-.25 F -.15(ve)-.15 G
-4.051(d. Read-only).15 F -.25(va)4.051 G 1.551(riables may not be).25 F
-4.642(unset. If)144 415.2 R F1<ad66>4.642 E F0 2.142
-(is speci\214ed, each)4.642 F F2(name)5.001 E F0 2.141
-(refers to a shell function, and the function de\214nition is)4.821 F
-(remo)144 427.2 Q -.15(ve)-.15 G 2.898(d. If).15 F .398
-(no options are supplied, each)2.898 F F2(name)2.898 E F0 .398
-(refers to a v)2.898 F .399(ariable; if there is no v)-.25 F .399
-(ariable by that)-.25 F .579(name, an)144 439.2 R 3.079(yf)-.15 G .579
-(unction with that name is unset.)-3.079 F .579(Each unset v)5.579 F
-.579(ariable or function is remo)-.25 F -.15(ve)-.15 G 3.078(df).15 G
-.578(rom the)-3.078 F(en)144 451.2 Q .045
-(vironment passed to subsequent commands.)-.4 F .046(If an)5.046 F 2.546
-(yo)-.15 G(f)-2.546 E/F3 9/Times-Bold@0 SF(COMP_W)2.546 E(ORDBREAKS)-.09
-E/F4 9/Times-Roman@0 SF(,)A F3(RANDOM)2.296 E F4(,)A F3(SEC-)2.296 E
-(ONDS)144 463.2 Q F4(,)A F3(LINENO)2.641 E F4(,)A F3(HISTCMD)2.641 E F4
-(,)A F3(FUNCN)2.641 E(AME)-.18 E F4(,)A F3(GR)2.64 E(OUPS)-.27 E F4(,)A
-F0(or)2.64 E F3(DIRST)2.89 E -.495(AC)-.81 G(K).495 E F0 .39
-(are unset, the)2.64 F 2.89(yl)-.15 G .39(ose their spe-)-2.89 F .726
-(cial properties, e)144 475.2 R -.15(ve)-.25 G 3.226(ni).15 G 3.226(ft)
--3.226 G(he)-3.226 E 3.226(ya)-.15 G .726(re subsequently reset.)-3.226
-F .726(The e)5.726 F .727(xit status is true unless a)-.15 F F2(name)
-3.587 E F0 .727(is read-)3.407 F(only)144 487.2 Q(.)-.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
+(is not a de\214ned alias.)2.68 E F1(unset)108 511.2 Q F0<5bad>2.5 E F1
+(fv)A F0 2.5(][)C<ad>-2.5 E F1(n)A F0 2.5(][)C F2(name)-2.5 E F0(...])
+2.5 E -.15(Fo)144 523.2 S 3.828(re).15 G(ach)-3.828 E F2(name)3.828 E F0
+3.828(,r).18 G(emo)-3.828 E 1.628 -.15(ve t)-.15 H 1.328
+(he corresponding v).15 F 1.327(ariable or function.)-.25 F 1.327
+(If the)6.327 F F1<ad76>3.827 E F0 1.327(option is gi)3.827 F -.15(ve)
+-.25 G 1.327(n, each).15 F F2(name)144.36 535.2 Q F0 1.55
+(refers to a shell v)4.23 F 1.551(ariable, and that v)-.25 F 1.551
+(ariable is remo)-.25 F -.15(ve)-.15 G 4.051(d. Read-only).15 F -.25(va)
+4.051 G 1.551(riables may not be).25 F 4.642(unset. If)144 547.2 R F1
+<ad66>4.642 E F0 2.142(is speci\214ed, each)4.642 F F2(name)5.001 E F0
+2.141(refers to a shell function, and the function de\214nition is)4.821
+F(remo)144 559.2 Q -.15(ve)-.15 G 2.537(d. If).15 F(the)2.537 E F1<ad6e>
+2.537 E F0 .037(option is supplied, and)2.537 F F2(name)2.537 E F0 .037
+(is a v)2.537 F .037(ariable with the)-.25 F F2(namer)2.537 E(ef)-.37 E
+F0(attrib)2.537 E(ute,)-.2 E F2(name)2.537 E F0(will)2.538 E .492
+(be unset rather than the v)144 571.2 R .492(ariable it references.)-.25
+F F1<ad6e>5.492 E F0 .492(has no ef)2.992 F .492(fect if the)-.25 F F1
+<ad66>2.992 E F0 .492(option is supplied.)2.992 F .492(If no)5.492 F .22
+(options are supplied, each)144 583.2 R F2(name)2.72 E F0 .22
+(refers to a v)2.72 F .221(ariable; if there is no v)-.25 F .221
+(ariable by that name, an)-.25 F 2.721(yf)-.15 G(unc-)-2.721 E 1.189
+(tion with that name is unset.)144 595.2 R 1.189(Each unset v)6.189 F
+1.189(ariable or function is remo)-.25 F -.15(ve)-.15 G 3.688(df).15 G
+1.188(rom the en)-3.688 F(vironment)-.4 E 3.205
+(passed to subsequent commands.)144 607.2 R 3.206(If an)8.206 F 5.706
+(yo)-.15 G(f)-5.706 E/F3 9/Times-Bold@0 SF(COMP_W)5.706 E(ORDBREAKS)-.09
+E/F4 9/Times-Roman@0 SF(,)A F3(RANDOM)5.456 E F4(,)A F3(SECONDS)5.456 E
+F4(,)A F3(LINENO)144 619.2 Q F4(,)A F3(HISTCMD)4.348 E F4(,)A F3(FUNCN)
+4.348 E(AME)-.18 E F4(,)A F3(GR)4.348 E(OUPS)-.27 E F4(,)A F0(or)4.348 E
+F3(DIRST)4.598 E -.495(AC)-.81 G(K).495 E F0 2.098(are unset, the)4.348
+F 4.597(yl)-.15 G 2.097(ose their special)-4.597 F(properties, e)144
+631.2 Q -.15(ve)-.25 G 2.5(ni).15 G 2.5(ft)-2.5 G(he)-2.5 E 2.5(ya)-.15
+G(re subsequently reset.)-2.5 E(The e)5 E(xit status is true unless a)
+-.15 E F2(name)2.86 E F0(is readonly)2.68 E(.)-.65 E F1(wait)108 648 Q
+F0([)2.5 E F2 2.5(n.)C(..)-2.5 E F0(])A -.8(Wa)144 660 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 528 R -.15(ve)-.25 G .722
+(Each)5.288 E F2(n)3.148 E F0 .288(may be a process ID or a)3.028 F .722
+(job speci\214cation; if a job spec is gi)144 672 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 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 552 R .457
+-3.222 F .722(aited for)-.1 F 5.722(.I)-.55 G(f)-5.722 E F2(n)3.582 E F0
+(is)3.462 E 1.265(not gi)144 684 R -.15(ve)-.25 G 1.265
+(n, all currently acti).15 F 1.565 -.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.266
+(nd the return status is zero.)-3.765 F(If)6.266 E F2(n)4.126 E F0 .457
+(speci\214es a non-e)144 696 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 564 S
+(Otherwise, the return status is the)5.457 F -.15(ex)144 708 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 580.8 Q F0(bash\(1\), sh\(1\))108
-592.8 Q(GNU Bash-4.2)72 768 Q(2004 Apr 20)148.735 E(22)198.725 E 0 Cg EP
+(GNU Bash-4.2)72 768 Q(2004 Apr 20)148.735 E(22)198.725 E 0 Cg EP
+%%Page: 23 23
+%%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.95
+/Times-Bold@0 SF(SEE ALSO)72 84 Q F0(bash\(1\), sh\(1\))108 96 Q
+(GNU Bash-4.2)72 768 Q(2004 Apr 20)148.735 E(23)198.725 E 0 Cg EP
%%Trailer
end
%%EOF
%!PS-Adobe-3.0
%%Creator: groff version 1.19.2
-%%CreationDate: Mon Mar 5 21:30:56 2012
+%%CreationDate: Thu Jul 5 20:43:03 2012
%%DocumentNeededResources: font Times-Roman
%%+ font Times-Bold
%%DocumentSuppliedResources: procset grops 1.19 2
Copyright (C) 1988-2012 Free Software Foundation, Inc.
@end ignore
-@set LASTCHANGE Sun May 27 20:28:13 EDT 2012
+@set LASTCHANGE Thu Jul 5 19:37:34 EDT 2012
@set EDITION 4.2
@set VERSION 4.2
-@set UPDATED 27 May 2012
-@set UPDATED-MONTH May 2012
-
+@set UPDATED 5 July 2012
+@set UPDATED-MONTH July 2012
--- /dev/null
+#
+# Simple makefile for the sample loadable builtins
+#
+# Copyright (C) 1996 Free Software Foundation, Inc.
+
+# This program 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 2, or (at your option)
+# any later version.
+
+# This program 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 this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
+
+# Include some boilerplate Gnu makefile definitions.
+prefix = @prefix@
+
+exec_prefix = @exec_prefix@
+bindir = @bindir@
+libdir = @libdir@
+infodir = @infodir@
+includedir = @includedir@
+
+topdir = @top_srcdir@
+BUILD_DIR = @BUILD_DIR@
+srcdir = @srcdir@
+VPATH = .:@srcdir@
+
+@SET_MAKE@
+CC = @CC@
+RM = rm -f
+
+SHELL = @MAKE_SHELL@
+
+host_os = @host_os@
+host_cpu = @host_cpu@
+host_vendor = @host_vendor@
+
+CFLAGS = @CFLAGS@
+LOCAL_CFLAGS = @LOCAL_CFLAGS@
+DEFS = @DEFS@
+LOCAL_DEFS = @LOCAL_DEFS@
+
+CPPFLAGS = @CPPFLAGS@
+
+BASHINCDIR = ${topdir}/include
+
+LIBBUILD = ${BUILD_DIR}/lib
+
+INTL_LIBSRC = ${topdir}/lib/intl
+INTL_BUILDDIR = ${LIBBUILD}/intl
+INTL_INC = @INTL_INC@
+LIBINTL_H = @LIBINTL_H@
+
+CCFLAGS = $(DEFS) $(LOCAL_DEFS) $(LOCAL_CFLAGS) $(CFLAGS)
+
+#
+# These values are generated for configure by ${topdir}/support/shobj-conf.
+# If your system is not supported by that script, but includes facilities for
+# dynamic loading of shared objects, please update the script and send the
+# changes to bash-maintainers@gnu.org.
+#
+SHOBJ_CC = @SHOBJ_CC@
+SHOBJ_CFLAGS = @SHOBJ_CFLAGS@
+SHOBJ_LD = @SHOBJ_LD@
+SHOBJ_LDFLAGS = @SHOBJ_LDFLAGS@
+SHOBJ_XLDFLAGS = @SHOBJ_XLDFLAGS@
+SHOBJ_LIBS = @SHOBJ_LIBS@
+SHOBJ_STATUS = @SHOBJ_STATUS@
+
+INC = -I. -I.. -I$(topdir) -I$(topdir)/lib -I$(topdir)/builtins \
+ -I$(BASHINCDIR) -I$(BUILD_DIR) -I$(LIBBUILD) \
+ -I$(BUILD_DIR)/builtins $(INTL_INC)
+
+.c.o:
+ $(SHOBJ_CC) $(SHOBJ_CFLAGS) $(CCFLAGS) $(INC) -c -o $@ $<
+
+
+ALLPROG = print truefalse sleep pushd finfo logname basename dirname \
+ tty pathchk tee head mkdir rmdir printenv id whoami \
+ uname sync push ln unlink cut realpath getconf strftime
+OTHERPROG = necho hello cat
+
+all: $(SHOBJ_STATUS)
+
+supported: $(ALLPROG)
+others: $(OTHERPROG)
+
+unsupported:
+ @echo "Your system (${host_os}) is not supported by the"
+ @echo "${topdir}/support/shobj-conf script."
+ @echo "If your operating system provides facilities for dynamic"
+ @echo "loading of shared objects using the dlopen(3) interface,"
+ @echo "please update the script and re-run configure.
+ @echo "Please send the changes you made to bash-maintainers@gnu.org"
+ @echo "for inclusion in future bash releases."
+
+everything: supported others
+
+print: print.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ print.o $(SHOBJ_LIBS)
+
+necho: necho.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ necho.o $(SHOBJ_LIBS)
+
+getconf: getconf.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ getconf.o $(SHOBJ_LIBS)
+
+hello: hello.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ hello.o $(SHOBJ_LIBS)
+
+truefalse: truefalse.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ truefalse.o $(SHOBJ_LIBS)
+
+sleep: sleep.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ sleep.o $(SHOBJ_LIBS)
+
+finfo: finfo.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ finfo.o $(SHOBJ_LIBS)
+
+cat: cat.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ cat.o $(SHOBJ_LIBS)
+
+logname: logname.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ logname.o $(SHOBJ_LIBS)
+
+basename: basename.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ basename.o $(SHOBJ_LIBS)
+
+dirname: dirname.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ dirname.o $(SHOBJ_LIBS)
+
+tty: tty.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ tty.o $(SHOBJ_LIBS)
+
+pathchk: pathchk.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ pathchk.o $(SHOBJ_LIBS)
+
+tee: tee.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ tee.o $(SHOBJ_LIBS)
+
+mkdir: mkdir.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ mkdir.o $(SHOBJ_LIBS)
+
+rmdir: rmdir.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ rmdir.o $(SHOBJ_LIBS)
+
+head: head.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ head.o $(SHOBJ_LIBS)
+
+printenv: printenv.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ printenv.o $(SHOBJ_LIBS)
+
+id: id.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ id.o $(SHOBJ_LIBS)
+
+whoami: whoami.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ whoami.o $(SHOBJ_LIBS)
+
+uname: uname.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ uname.o $(SHOBJ_LIBS)
+
+sync: sync.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ sync.o $(SHOBJ_LIBS)
+
+push: push.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ push.o $(SHOBJ_LIBS)
+
+ln: ln.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ ln.o $(SHOBJ_LIBS)
+
+unlink: unlink.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ unlink.o $(SHOBJ_LIBS)
+
+cut: cut.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ cut.o $(SHOBJ_LIBS)
+
+realpath: realpath.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ realpath.o $(SHOBJ_LIBS)
+
+strftime: strftime.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ strftime.o $(SHOBJ_LIBS)
+
+# pushd is a special case. We use the same source that the builtin version
+# uses, with special compilation options.
+#
+pushd.c: ${topdir}/builtins/pushd.def
+ $(RM) $@
+ ${BUILD_DIR}/builtins/mkbuiltins -D ${topdir}/builtins ${topdir}/builtins/pushd.def
+
+pushd.o: pushd.c
+ $(RM) $@
+ $(SHOBJ_CC) -DHAVE_CONFIG_H -DPUSHD_AND_POPD -DLOADABLE_BUILTIN $(SHOBJ_CFLAGS) $(CFLAGS) $(CPPFLAGS) $(INC) -c -o $@ $<
+
+pushd: pushd.o
+ $(SHOBJ_LD) $(SHOBJ_LDFLAGS) $(SHOBJ_XLDFLAGS) -o $@ pushd.o $(SHOBJ_LIBS)
+
+clean:
+ $(RM) $(ALLPROG) $(OTHERPROG) *.o
+ -( cd perl && ${MAKE} ${MFLAGS} $@ )
+
+mostlyclean: clean
+ -( cd perl && ${MAKE} ${MFLAGS} $@ )
+
+distclean maintainer-clean: clean
+ $(RM) Makefile pushd.c
+ -( cd perl && ${MAKE} ${MFLAGS} $@ )
+
+print.o: print.c
+truefalse.o: truefalse.c
+sleep.o: sleep.c
+finfo.o: finfo.c
+logname.o: logname.c
+basename.o: basename.c
+dirname.o: dirname.c
+tty.o: tty.c
+pathchk.o: pathchk.c
+tee.o: tee.c
+head.o: head.c
+rmdir.o: rmdir.c
+necho.o: necho.c
+getconf.o: getconf.c
+hello.o: hello.c
+cat.o: cat.c
+printenv.o: printenv.c
+id.o: id.c
+whoami.o: whoami.c
+uname.o: uname.c
+sync.o: sync.c
+push.o: push.c
+mkdir.o: mkdir.c
+realpath.o: realpath.c
+strftime.o: strftime.c
--- /dev/null
+#!/bin/bash
+# ash -- "Adventure shell"
+# last edit: 86/04/21 D A Gwyn
+# SCCS ID: @(#)ash.sh 1.4
+
+OPATH=$PATH
+
+ask()
+{
+ echo -n "$@" '[y/n] '
+ read ans
+
+ case "$ans" in
+ y*|Y*)
+ return 0
+ ;;
+ *)
+ return 1
+ ;;
+ esac
+}
+
+CAT=${PAGER:-more}
+
+ash_inst()
+{
+ cat <<- EOF
+
+ Instructions for the Adventure shell
+
+ Welcome to the Adventure shell! In this exploration of the UNIX file
+ system, I will act as your eyes and hands. As you move around, I will
+ describe whatever is visible and will carry out your commands. The
+ general form of a command is
+ Verb Object Extra_stuff.
+ Most commands pay no attention to the "Extra_stuff", and many do not
+ need an "Object". A typical command is
+ get all
+ which picks up all files in the current "room" (directory). You can
+ find out what you are carrying by typing the command
+ inventory
+ The command "help" results in a full description of all commands that I
+ understand. To quit the Adventure shell, type
+ quit
+
+ There are UNIX monsters lurking in the background. These are also
+ known as "commands with arguments".
+
+ Good luck!
+ EOF
+}
+
+ash_help()
+{
+echo "I understand the following commands (synonyms in parentheses):"
+echo ""
+
+echo "change OBJECT to NEW_NAME changes the name of the object"
+echo "clone OBJECT as NEW_NAME duplicates the object"
+echo "drop OBJECTS leaves the objects in the room"
+echo "enter (go) PASSAGE takes the labeled passage"
+echo "examine OBJECTS describes the objects in detail"
+echo "feed OBJECT to MONSTER stuffs the object into a UNIX monster"
+echo "get (take) OBJECTS picks up the specified objects"
+echo "gripe (bug) report a problem with the Adventure shell"
+echo "help prints this summary"
+echo "inventory (i) tells what you are carrying"
+echo "kill (destroy) OBJECTS destroys the objects"
+echo "look (l) describes the room, including hidden objects"
+echo "open (read) OBJECT shows the contents of an object"
+echo "quit (exit) leaves the Adventure shell"
+echo "resurrect OBJECTS attempts to restore dead objects"
+echo "steal OBJECT from MONSTER obtains the object from a UNIX monster"
+echo "throw OBJECT at daemon feeds the object to the printer daemon"
+echo "up takes the overhead passage"
+echo "wake MONSTER awakens a UNIX monster"
+echo "where (w) tells you where you are"
+echo "xyzzy moves you to your home"
+}
+
+MAINT=chet@ins.cwru.edu
+
+PATH=/usr/ucb:/bin:/usr/bin:/usr/local/bin:.
+export PATH
+
+trap 'echo Ouch!' 2 3
+#trap '' 18 # disable Berkeley job control
+
+ash_lk(){ echo " $1 " | fgrep " $2 " >&- 2>&-; }
+ash_pr(){ echo $* | tr ' ' '\012' | pr -5 -t -w75 -l$[ ( $# + 4 ) / 5 ]; }
+ash_rm(){ echo " $1 " | sed -e "s/ $2 / /" -e 's/^ //' -e 's/ $//'; }
+
+# enable history, bang history expansion, and emacs editing
+set -o history
+set -o histexpand
+set -o emacs
+
+cd
+LIM=.limbo # $HOME/$LIM contains "destroyed" objects
+mkdir $LIM >&- 2>&-
+KNAP=.knapsack # $HOME/$KNAP contains objects being "carried"
+if [ ! -d $KNAP ]
+then mkdir $KNAP >&- 2>&-
+ if [ $? = 0 ]
+ then echo 'You found a discarded empty knapsack.'
+ else echo 'You have no knapsack to carry things in.'
+ exit 1
+ fi
+else echo 'One moment while I peek in your old knapsack...'
+fi
+
+kn=`echo \`ls -a $KNAP | sed -e '/^\.$/d' -e '/^\.\.$/d'\``
+
+if ask 'Welcome to the Adventure shell! Do you need instructions?'
+then
+ ash_inst
+ echo -n 'Type a newline to continue: '
+ read
+fi
+
+wiz=false
+cha=false
+prev=$LIM
+while :
+do room=`pwd`
+ if [ $room != $prev ]
+ then if [ $room = $HOME ]
+ then echo 'You are in your own home.'
+ else echo "You have entered $room."
+ fi
+ exs=
+ obs=
+ hexs=
+ hobs=
+ f=false
+ for i in `ls -a`
+ do case $i in
+ .|..) ;;
+ .*) if [ -f $i ]
+ then hobs="$hobs $i"
+ elif [ -d $i ]
+ then hexs="$hexs $i"
+ else f=true
+ fi
+ ;;
+ *) if [ -f $i ]
+ then obs="$obs $i"
+ elif [ -d $i ]
+ then exs="$exs $i"
+ else f=true
+ fi
+ ;;
+ esac
+ done
+ if [ "$obs" ]
+ then echo 'This room contains:'
+ ash_pr $obs
+ else echo 'The room looks empty.'
+ fi
+ if [ "$exs" ]
+ then echo 'There are exits labeled:'
+ ash_pr $exs
+ echo 'as well as a passage overhead.'
+ else echo 'There is a passage overhead.'
+ fi
+ if sh -c $f
+ then echo 'There are shadowy figures in the corner.'
+ fi
+ prev=$room
+ fi
+
+ read -e -p '-advsh> ' verb obj x # prompt is '-advsh> '
+ if [ $? != 0 ]
+ then verb=quit # EOF
+ fi
+
+ case $verb in
+ change) if [ "$obj" ]
+ then if ash_lk "$obs $hobs" "$obj"
+ then set -- $x
+ case "$1" in
+ to) if [ "$2" ]
+ then if [ -f $2 ]
+ then echo "You must destroy $2 first."
+ set --
+ fi
+ if [ "$2" ]
+ then if mv $obj $2 >&- 2>&-
+ then echo "The $obj shimmers and turns into $2."
+ obs=`ash_rm "$2 $obs" "$obj"`
+ else echo "There is a cloud of smoke but the $obj is unchanged."
+ fi
+ fi
+ else echo 'To what?'
+ fi
+ ;;
+ *) echo "Change $obj to what?"
+ ;;
+ esac
+ else if ash_lk "$kn" "$obj"
+ then echo 'You must drop it first.'
+ else echo "I see no $obj here."
+ fi
+ fi
+ else echo 'Change what?'
+ fi
+ ;;
+ clone) if [ "$obj" ]
+ then if ash_lk "$obs $hobs" "$obj"
+ then if [ ! -r $obj ]
+ then echo "The $obj does not wish to be cloned."
+ else set -- $x
+ case "$1" in
+ as) if [ "$2" ]
+ then if [ -f $2 ]
+ then echo "You must destroy $2 first."
+ else if cp $obj $2 >&- 2>&-
+ then echo "Poof! When the smoke clears, you see the new $2."
+ obs="$obs $2"
+ else echo 'You hear a dull thud but no clone appears.'
+ fi
+ fi
+ else echo 'As what?'
+ fi
+ ;;
+ *) echo "Clone $obj as what?"
+ ;;
+ esac
+ fi
+ else if ash_lk "$kn" "$obj"
+ then echo 'You must drop it first.'
+ else echo "I see no $obj here."
+ fi
+ fi
+ else echo 'Clone what?'
+ fi
+ ;;
+ drop) if [ "$obj" ]
+ then for it in $obj $x
+ do if ash_lk "$kn" "$it"
+ then if [ -w $it ]
+ then echo "You must destroy $it first."
+ else if mv $HOME/$KNAP/$it $it >&- 2>&-
+ then echo "$it: dropped."
+ kn=`ash_rm "$kn" "$it"`
+ obs=`echo $it $obs`
+ else echo "The $it is caught in your knapsack."
+ fi
+ fi
+ else echo "You're not carrying the $it!"
+ fi
+ done
+ else echo 'Drop what?'
+ fi
+ ;;
+ enter|go) if [ "$obj" ]
+ then if [ $obj != up ]
+ then if ash_lk "$exs $hexs" "$obj"
+ then if [ -x $obj ]
+ then if cd $obj
+ then echo 'You squeeze through the passage.'
+ else echo "You can't go that direction."
+ fi
+ else echo 'An invisible force blocks your way.'
+ fi
+ else echo 'I see no such passage.'
+ fi
+ else if cd ..
+ then echo 'You struggle upwards.'
+ else echo "You can't reach that high."
+ fi
+ fi
+ else echo 'Which passage?'
+ fi
+ ;;
+ examine) if [ "$obj" ]
+ then if [ $obj = all ]
+ then $obj=`echo $obs $exs`
+ x=
+ fi
+ for it in $obj $x
+ do if ash_lk "$obs $hobs $exs $hexs" "$it"
+ then echo "Upon close inspection of the $it, you see:"
+ ls -ld $it 2>&-
+ if [ $? != 0 ]
+ then echo "-- when you look directly at the $it, it vanishes."
+ fi
+ else if ash_lk "$kn" "$it"
+ then echo 'You must drop it first.'
+ else echo "I see no $it here."
+ fi
+ fi
+ done
+ else echo 'Examine what?'
+ fi
+ ;;
+ feed) if [ "$obj" ]
+ then if ash_lk "$obs $hobs" "$obj"
+ then set -- $x
+ case "$1" in
+ to) if [ "$2" ]
+ then shift
+ if PATH=$OPATH $* <$obj 2>&-
+ then echo "The $1 monster devours your $obj."
+ if rm -f $obj >&- 2>&-
+ then obs=`ash_rm "$obs" "$obj"`
+ else echo 'But he spits it back up.'
+ fi
+ else echo "The $1 monster holds his nose in disdain."
+ fi
+ else echo 'To what?'
+ fi
+ ;;
+ *) echo "Feed $obj to what?"
+ ;;
+ esac
+ else if ash_lk "$kn" "$obj"
+ then echo 'You must drop it first.'
+ else echo "I see no $obj here."
+ fi
+ fi
+ else echo 'Feed what?'
+ fi
+ ;;
+ get|take) if [ "$obj" ]
+ then if [ $obj = all ]
+ then obj="$obs"
+ x=
+ fi
+ for it in $obj $x
+ do if ash_lk "$obs $hobs" "$it"
+ then if ash_lk "$kn" "$it"
+ then echo 'You already have one.'
+ else if mv $it $HOME/$KNAP/$it >&- 2>&-
+ then echo "$it: taken."
+ kn="$it $kn"
+ obs=`ash_rm "$obs" "$it"`
+ else echo "The $it is too heavy."
+ fi
+ fi
+ else echo "I see no $it here."
+ fi
+ done
+ else echo 'Get what?'
+ fi
+ ;;
+ gripe|bug) echo 'Please describe the problem and your situation at the time it failed.\nEnd the bug report with a line containing just a Ctrl-D.'
+ cat | mail $MAINT -s 'ash bug'
+ echo 'Thank you!'
+ ;;
+ help) ash_help
+ ;;
+ inventory|i) if [ "$kn" ]
+ then echo 'Your knapsack contains:'
+ ash_pr $kn
+ else echo 'You are poverty-stricken.'
+ fi
+ ;;
+ kill|destroy) if [ "$obj" ]
+ then if [ $obj = all ]
+ then x=
+ if ask "Do you really want to attempt to $verb them all?"
+ then obj=`echo $obs`
+ else echo 'Chicken!'
+ obj=
+ fi
+ fi
+ for it in $obj $x
+ do if ash_lk "$obs $hobs" "$it"
+ then if mv $it $HOME/$LIM <&- >&- 2>&-
+ then if [ $verb = kill ]
+ then echo "The $it cannot defend himself; he dies."
+ else echo "You have destroyed the $it; it vanishes."
+ fi
+ obs=`ash_rm "$obs" "$it"`
+ else if [ $verb = kill ]
+ then echo "Your feeble blows are no match for the $it."
+ else echo "The $it is indestructible."
+ fi
+ fi
+ else if ash_lk "$kn" "$it"
+ then echo "You must drop the $it first."
+ found=false
+ else echo "I see no $it here."
+ fi
+ fi
+ done
+ else echo 'Kill what?'
+ fi
+ ;;
+ look|l) obs=`echo $obs $hobs`
+ hobs=
+ if [ "$obs" ]
+ then echo 'The room contains:'
+ ash_pr $obs
+ else echo 'The room is empty.'
+ fi
+ exs=`echo $exs $hexs`
+ hexs=
+ if [ "$exs" ]
+ then echo 'There are exits plainly labeled:'
+ ash_pr $exs
+ echo 'and a passage directly overhead.'
+ else echo 'The only exit is directly overhead.'
+ fi
+ ;;
+ magic) if [ "$obj" = mode ]
+ then if sh -c $cha
+ then echo 'You had your chance and you blew it.'
+ else if ask 'Are you a wizard?'
+ then echo -n 'Prove it! Say the magic word: '
+ read obj
+ if [ "$obj" = armadillo ]
+ then echo 'Yes, master!!'
+ wiz=true
+ else echo "Homie says: I don't think so"
+ cha=true
+ fi
+ else echo "I didn't think so."
+ fi
+ fi
+ else echo 'Nice try.'
+ fi
+ ;;
+ open|read) if [ "$obj" ]
+ then if ash_lk "$obs $hobs" "$obj"
+ then if [ -r $obj ]
+ then if [ -s $obj ]
+ then echo "Opening the $obj reveals:"
+ $CAT < $obj
+ if [ $? != 0 ]
+ then echo '-- oops, you lost the contents!'
+ fi
+ else echo "There is nothing inside the $obj."
+ fi
+ else echo "You do not have the proper tools to open the $obj."
+ fi
+ else if ash_lk "$kn" "$obj"
+ then echo 'You must drop it first.'
+ found=false
+ else echo "I see no $obj here."
+ fi
+ fi
+ else echo 'Open what?'
+ fi
+ ;;
+ quit|exit) if ask 'Do you really want to quit now?'
+ then if [ "$kn" ]
+ then echo 'The contents of your knapsack will still be there next time.'
+ fi
+ rm -rf $HOME/$LIM
+ echo 'See you later!'
+ exit 0
+ fi
+ ;;
+ resurrect) if [ "$obj" ]
+ then for it in $obj $x
+ do if ash_lk "$obs $hobs" "$it"
+ then echo "The $it is already alive and well."
+ else if mv $HOME/$LIM/$it $it <&- >&- 2>&-
+ then echo "The $it staggers to his feet."
+ obs=`echo $it $obs`
+ else echo "There are sparks but no $it appears."
+ fi
+ fi
+ done
+ else echo 'Resurrect what?'
+ fi
+ ;;
+ steal) if [ "$obj" ]
+ then if ash_lk "$obs $hobs" "$obj"
+ then echo 'There is already one here.'
+ else set -- $x
+ case "$1" in
+ from) if [ "$2" ]
+ then shift
+ if PATH=$OPATH $* >$obj 2>&-
+ then echo "The $1 monster drops the $obj."
+ obs=`echo $obj $obs`
+ else echo "The $1 monster runs away as you approach."
+ rm -f $obj >&- 2>&-
+ fi
+ else echo 'From what?'
+ fi
+ ;;
+ *) echo "Steal $obj from what?"
+ ;;
+ esac
+ fi
+ else echo 'Steal what?'
+ fi
+ ;;
+ throw) if [ "$obj" ]
+ then if ash_lk "$obs $hobs" "$obj"
+ then set -- $x
+ case "$1" in
+ at) case "$2" in
+ daemon) if sh -c "lpr -r $obj"
+ then echo "The daemon catches the $obj, turns it into paper,\nand leaves it in the basket."
+ obs=`ash_rm "$obs" "$obj"`
+ else echo "The daemon is nowhere to be found."
+ fi
+ ;;
+ *) echo 'At what?'
+ ;;
+ esac
+ ;;
+ *) echo "Throw $obj at what?"
+ ;;
+ esac
+ else if ash_lk "$kn" "$obj"
+ then echo 'It is in your knapsack.'
+ found=false
+ else echo "I see no $obj here."
+ fi
+ fi
+ else echo 'Throw what?'
+ fi
+ ;;
+ u|up) if cd ..
+ then echo 'You pull yourself up a level.'
+ else echo "You can't reach that high."
+ fi
+ ;;
+ wake) if [ "$obj" ]
+ then echo "You awaken the $obj monster:"
+ PATH=$OPATH $obj $x
+ echo 'The monster slithers back into the darkness.'
+ else echo 'Wake what?'
+ fi
+ ;;
+ w|where) echo "You are in $room."
+ ;;
+ xyzzy) if cd
+ then echo 'A strange feeling comes over you.'
+ else echo 'Your spell fizzles out.'
+ fi
+ ;;
+ *) if [ "$verb" ]
+ then if sh -c $wiz
+ then PATH=$OPATH $verb $obj $x
+ else echo "I don't know how to \"$verb\"."
+ echo 'Type "help" for assistance.'
+ fi
+ else echo 'Say something!'
+ fi
+ ;;
+ esac
+done
/* Convert the strings into wide characters. */
n = xdupmbstowcs (&wpathname, NULL, pathname);
if (n == (size_t) -1)
- /* Something wrong. Fall back to single-byte */
- return udequote_pathname (pathname);
+ {
+ /* Something wrong. Fall back to single-byte */
+ udequote_pathname (pathname);
+ return;
+ }
orig_wpathname = wpathname;
for (i = j = 0; wpathname && wpathname[i]; )
--- /dev/null
+/* glob.c -- file-name wildcard pattern matching for Bash.
+
+ Copyright (C) 1985-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/>.
+*/
+
+/* To whomever it may concern: I have never seen the code which most
+ Unix programs use to perform this function. I wrote this from scratch
+ based on specifications for the pattern matching. --RMS. */
+
+#include <config.h>
+
+#if !defined (__GNUC__) && !defined (HAVE_ALLOCA_H) && defined (_AIX)
+ #pragma alloca
+#endif /* _AIX && RISC6000 && !__GNUC__ */
+
+#include "bashtypes.h"
+
+#if defined (HAVE_UNISTD_H)
+# include <unistd.h>
+#endif
+
+#include "bashansi.h"
+#include "posixdir.h"
+#include "posixstat.h"
+#include "shmbutil.h"
+#include "xmalloc.h"
+
+#include "filecntl.h"
+#if !defined (F_OK)
+# define F_OK 0
+#endif
+
+#include "stdc.h"
+#include "memalloc.h"
+
+#include <signal.h>
+
+#include "shell.h"
+
+#include "glob.h"
+#include "strmatch.h"
+
+#if !defined (HAVE_BCOPY) && !defined (bcopy)
+# define bcopy(s, d, n) ((void) memcpy ((d), (s), (n)))
+#endif /* !HAVE_BCOPY && !bcopy */
+
+#if !defined (NULL)
+# if defined (__STDC__)
+# define NULL ((void *) 0)
+# else
+# define NULL 0x0
+# endif /* __STDC__ */
+#endif /* !NULL */
+
+#if !defined (FREE)
+# define FREE(x) if (x) free (x)
+#endif
+
+/* Don't try to alloca() more than this much memory for `struct globval'
+ in glob_vector() */
+#ifndef ALLOCA_MAX
+# define ALLOCA_MAX 100000
+#endif
+
+struct globval
+ {
+ struct globval *next;
+ char *name;
+ };
+
+extern void throw_to_top_level __P((void));
+extern int sh_eaccess __P((char *, int));
+extern char *sh_makepath __P((const char *, const char *, int));
+
+extern int extended_glob;
+
+/* Global variable which controls whether or not * matches .*.
+ Non-zero means don't match .*. */
+int noglob_dot_filenames = 1;
+
+/* Global variable which controls whether or not filename globbing
+ is done without regard to case. */
+int glob_ignore_case = 0;
+
+/* Global variable to return to signify an error in globbing. */
+char *glob_error_return;
+
+static struct globval finddirs_error_return;
+
+/* Some forward declarations. */
+static int skipname __P((char *, char *, int));
+#if HANDLE_MULTIBYTE
+static int mbskipname __P((char *, char *, int));
+#endif
+#if HANDLE_MULTIBYTE
+static void udequote_pathname __P((char *));
+static void wdequote_pathname __P((char *));
+#else
+# define dequote_pathname udequote_pathname
+#endif
+static void dequote_pathname __P((char *));
+static int glob_testdir __P((char *));
+static char **glob_dir_to_array __P((char *, char **, int));
+
+/* Make sure these names continue to agree with what's in smatch.c */
+extern char *glob_patscan __P((char *, char *, int));
+extern wchar_t *glob_patscan_wc __P((wchar_t *, wchar_t *, int));
+
+/* Compile `glob_loop.c' for single-byte characters. */
+#define CHAR unsigned char
+#define INT int
+#define L(CS) CS
+#define INTERNAL_GLOB_PATTERN_P internal_glob_pattern_p
+#include "glob_loop.c"
+
+/* Compile `glob_loop.c' again for multibyte characters. */
+#if HANDLE_MULTIBYTE
+
+#define CHAR wchar_t
+#define INT wint_t
+#define L(CS) L##CS
+#define INTERNAL_GLOB_PATTERN_P internal_glob_wpattern_p
+#include "glob_loop.c"
+
+#endif /* HANDLE_MULTIBYTE */
+
+/* And now a function that calls either the single-byte or multibyte version
+ of internal_glob_pattern_p. */
+int
+glob_pattern_p (pattern)
+ const char *pattern;
+{
+#if HANDLE_MULTIBYTE
+ size_t n;
+ wchar_t *wpattern;
+ int r;
+
+ if (MB_CUR_MAX == 1)
+ return (internal_glob_pattern_p ((unsigned char *)pattern));
+
+ /* Convert strings to wide chars, and call the multibyte version. */
+ n = xdupmbstowcs (&wpattern, NULL, pattern);
+ if (n == (size_t)-1)
+ /* Oops. Invalid multibyte sequence. Try it as single-byte sequence. */
+ return (internal_glob_pattern_p ((unsigned char *)pattern));
+
+ r = internal_glob_wpattern_p (wpattern);
+ free (wpattern);
+
+ return r;
+#else
+ return (internal_glob_pattern_p (pattern));
+#endif
+}
+
+#if EXTENDED_GLOB
+/* Return 1 if all subpatterns in the extended globbing pattern PAT indicate
+ that the name should be skipped. XXX - doesn't handle pattern negation,
+ not sure if it should */
+static int
+extglob_skipname (pat, dname, flags)
+ char *pat, *dname;
+ int flags;
+{
+ char *pp, *pe, *t;
+ int n, r;
+
+ pp = pat + 2;
+ pe = pp + strlen (pp) - 1; /*(*/
+ if (*pe != ')')
+ return 0;
+ if ((t = strchr (pp, '|')) == 0) /* easy case first */
+ {
+ *pe = '\0';
+ r = skipname (pp, dname, flags); /*(*/
+ *pe = ')';
+ return r;
+ }
+ while (t = glob_patscan (pp, pe, '|'))
+ {
+ n = t[-1];
+ t[-1] = '\0';
+ r = skipname (pp, dname, flags);
+ t[-1] = n;
+ if (r == 0) /* if any pattern says not skip, we don't skip */
+ return r;
+ pp = t;
+ } /*(*/
+
+ if (pp == pe) /* glob_patscan might find end of pattern */
+ return r;
+
+ *pe = '\0';
+ r = mbskipname (pp, dname, flags); /*(*/
+ *pe = ')';
+ return r;
+}
+#endif
+
+/* Return 1 if DNAME should be skipped according to PAT. Mostly concerned
+ with matching leading `.'. */
+static int
+skipname (pat, dname, flags)
+ char *pat;
+ char *dname;
+ int flags;
+{
+#if EXTENDED_GLOB
+ if (extglob_pattern (pat)) /* XXX */
+ return (extglob_skipname (pat, dname, flags));
+#endif
+
+ /* If a leading dot need not be explicitly matched, and the pattern
+ doesn't start with a `.', don't match `.' or `..' */
+ if (noglob_dot_filenames == 0 && pat[0] != '.' &&
+ (pat[0] != '\\' || pat[1] != '.') &&
+ (dname[0] == '.' &&
+ (dname[1] == '\0' || (dname[1] == '.' && dname[2] == '\0'))))
+ return 1;
+
+ /* If a dot must be explicity matched, check to see if they do. */
+ else if (noglob_dot_filenames && dname[0] == '.' && pat[0] != '.' &&
+ (pat[0] != '\\' || pat[1] != '.'))
+ return 1;
+
+ return 0;
+}
+
+#if HANDLE_MULTIBYTE
+
+static int
+wchkname (pat_wc, dn_wc)
+ wchar_t *pat_wc, *dn_wc;
+{
+ /* If a leading dot need not be explicitly matched, and the
+ pattern doesn't start with a `.', don't match `.' or `..' */
+ if (noglob_dot_filenames == 0 && pat_wc[0] != L'.' &&
+ (pat_wc[0] != L'\\' || pat_wc[1] != L'.') &&
+ (dn_wc[0] == L'.' &&
+ (dn_wc[1] == L'\0' || (dn_wc[1] == L'.' && dn_wc[2] == L'\0'))))
+ return 1;
+
+ /* If a leading dot must be explicity matched, check to see if the
+ pattern and dirname both have one. */
+ else if (noglob_dot_filenames && dn_wc[0] == L'.' &&
+ pat_wc[0] != L'.' &&
+ (pat_wc[0] != L'\\' || pat_wc[1] != L'.'))
+ return 1;
+
+ return 0;
+}
+
+static int
+wextglob_skipname (pat, dname, flags)
+ wchar_t *pat, *dname;
+ int flags;
+{
+#if EXTENDED_GLOB
+ wchar_t *pp, *pe, *t, n;
+ int r;
+
+ pp = pat + 2;
+ pe = pp + wcslen (pp) - 1; /*(*/
+ if (*pe != L')')
+ return 0;
+ if ((t = wcschr (pp, L'|')) == 0)
+ {
+ *pe = L'\0';
+ r = wchkname (pp, dname); /*(*/
+ *pe = L')';
+ return r;
+ }
+ while (t = glob_patscan_wc (pp, pe, '|'))
+ {
+ n = t[-1];
+ t[-1] = L'\0';
+ r = wchkname (pp, dname);
+ t[-1] = n;
+ if (r == 0)
+ return 0;
+ pp = t;
+ }
+
+ if (pp == pe) /* glob_patscan_wc might find end of pattern */
+ return r;
+
+ *pe = L'\0';
+ r = wchkname (pp, dname); /*(*/
+ *pe = L')';
+ return r;
+#else
+ return (wchkname (pat, dname));
+#endif
+}
+
+/* Return 1 if DNAME should be skipped according to PAT. Handles multibyte
+ characters in PAT and DNAME. Mostly concerned with matching leading `.'. */
+static int
+mbskipname (pat, dname, flags)
+ char *pat, *dname;
+ int flags;
+{
+ int ret, ext;
+ wchar_t *pat_wc, *dn_wc;
+ size_t pat_n, dn_n;
+
+ if (mbsmbchar (dname) == 0 && mbsmbchar (pat) == 0)
+ return (skipname (pat, dname, flags));
+
+ ext = 0;
+#if EXTENDED_GLOB
+ ext = extglob_pattern (pat);
+#endif
+
+ pat_wc = dn_wc = (wchar_t *)NULL;
+
+ pat_n = xdupmbstowcs (&pat_wc, NULL, pat);
+ if (pat_n != (size_t)-1)
+ dn_n = xdupmbstowcs (&dn_wc, NULL, dname);
+
+ ret = 0;
+ if (pat_n != (size_t)-1 && dn_n !=(size_t)-1)
+ ret = ext ? wextglob_skipname (pat_wc, dn_wc, flags) : wchkname (pat_wc, dn_wc);
+ else
+ ret = skipname (pat, dname, flags);
+
+ FREE (pat_wc);
+ FREE (dn_wc);
+
+ return ret;
+}
+#endif /* HANDLE_MULTIBYTE */
+
+/* Remove backslashes quoting characters in PATHNAME by modifying PATHNAME. */
+static void
+udequote_pathname (pathname)
+ char *pathname;
+{
+ register int i, j;
+
+ for (i = j = 0; pathname && pathname[i]; )
+ {
+ if (pathname[i] == '\\')
+ i++;
+
+ pathname[j++] = pathname[i++];
+
+ if (pathname[i - 1] == 0)
+ break;
+ }
+ if (pathname)
+ pathname[j] = '\0';
+}
+
+#if HANDLE_MULTIBYTE
+/* Remove backslashes quoting characters in PATHNAME by modifying PATHNAME. */
+static void
+wdequote_pathname (pathname)
+ char *pathname;
+{
+ mbstate_t ps;
+ size_t len, n;
+ wchar_t *wpathname;
+ int i, j;
+ wchar_t *orig_wpathname;
+
+ len = strlen (pathname);
+ /* Convert the strings into wide characters. */
+ n = xdupmbstowcs (&wpathname, NULL, pathname);
+ if (n == (size_t) -1)
+ /* Something wrong. Fall back to single-byte */
+ return udequote_pathname (pathname);
+ orig_wpathname = wpathname;
+
+ for (i = j = 0; wpathname && wpathname[i]; )
+ {
+ if (wpathname[i] == L'\\')
+ i++;
+
+ wpathname[j++] = wpathname[i++];
+
+ if (wpathname[i - 1] == L'\0')
+ break;
+ }
+ if (wpathname)
+ wpathname[j] = L'\0';
+
+ /* Convert the wide character string into unibyte character set. */
+ memset (&ps, '\0', sizeof(mbstate_t));
+ n = wcsrtombs(pathname, (const wchar_t **)&wpathname, len, &ps);
+ pathname[len] = '\0';
+
+ /* Can't just free wpathname here; wcsrtombs changes it in many cases. */
+ free (orig_wpathname);
+}
+
+static void
+dequote_pathname (pathname)
+ char *pathname;
+{
+ if (MB_CUR_MAX > 1)
+ wdequote_pathname (pathname);
+ else
+ udequote_pathname (pathname);
+}
+#endif /* HANDLE_MULTIBYTE */
+
+/* Test whether NAME exists. */
+
+#if defined (HAVE_LSTAT)
+# define GLOB_TESTNAME(name) (lstat (name, &finfo))
+#else /* !HAVE_LSTAT */
+# if !defined (AFS)
+# define GLOB_TESTNAME(name) (sh_eaccess (name, F_OK))
+# else /* AFS */
+# define GLOB_TESTNAME(name) (access (name, F_OK))
+# endif /* AFS */
+#endif /* !HAVE_LSTAT */
+
+/* Return 0 if DIR is a directory, -1 otherwise. */
+static int
+glob_testdir (dir)
+ char *dir;
+{
+ struct stat finfo;
+
+/*itrace("glob_testdir: testing %s", dir);*/
+ if (stat (dir, &finfo) < 0)
+ return (-1);
+
+ if (S_ISDIR (finfo.st_mode) == 0)
+ return (-1);
+
+ return (0);
+}
+
+/* Recursively scan SDIR for directories matching PAT (PAT is always `**').
+ FLAGS is simply passed down to the recursive call to glob_vector. Returns
+ a list of matching directory names. EP, if non-null, is set to the last
+ element of the returned list. NP, if non-null, is set to the number of
+ directories in the returned list. These two variables exist for the
+ convenience of the caller (always glob_vector). */
+static struct globval *
+finddirs (pat, sdir, flags, ep, np)
+ char *pat;
+ char *sdir;
+ int flags;
+ struct globval **ep;
+ int *np;
+{
+ char **r, *n;
+ int ndirs;
+ struct globval *ret, *e, *g;
+
+/*itrace("finddirs: pat = `%s' sdir = `%s' flags = 0x%x", pat, sdir, flags);*/
+ e = ret = 0;
+ r = glob_vector (pat, sdir, flags);
+ if (r == 0 || r[0] == 0)
+ {
+ if (np)
+ *np = 0;
+ if (ep)
+ *ep = 0;
+ if (r && r != &glob_error_return)
+ free (r);
+ return (struct globval *)0;
+ }
+ for (ndirs = 0; r[ndirs] != 0; ndirs++)
+ {
+ g = (struct globval *) malloc (sizeof (struct globval));
+ if (g == 0)
+ {
+ while (ret) /* free list built so far */
+ {
+ g = ret->next;
+ free (ret);
+ ret = g;
+ }
+
+ free (r);
+ if (np)
+ *np = 0;
+ if (ep)
+ *ep = 0;
+ return (&finddirs_error_return);
+ }
+ if (e == 0)
+ e = g;
+
+ g->next = ret;
+ ret = g;
+
+ g->name = r[ndirs];
+ }
+
+ free (r);
+ if (ep)
+ *ep = e;
+ if (np)
+ *np = ndirs;
+
+ return ret;
+}
+
+/* Return a vector of names of files in directory DIR
+ whose names match glob pattern PAT.
+ The names are not in any particular order.
+ Wildcards at the beginning of PAT do not match an initial period.
+
+ The vector is terminated by an element that is a null pointer.
+
+ To free the space allocated, first free the vector's elements,
+ then free the vector.
+
+ Return 0 if cannot get enough memory to hold the pointer
+ and the names.
+
+ Return -1 if cannot access directory DIR.
+ Look in errno for more information. */
+
+char **
+glob_vector (pat, dir, flags)
+ char *pat;
+ char *dir;
+ int flags;
+{
+ DIR *d;
+ register struct dirent *dp;
+ struct globval *lastlink, *e, *dirlist;
+ register struct globval *nextlink;
+ register char *nextname, *npat, *subdir;
+ unsigned int count;
+ int lose, skip, ndirs, isdir, sdlen, add_current, patlen;
+ register char **name_vector;
+ register unsigned int i;
+ int mflags; /* Flags passed to strmatch (). */
+ int pflags; /* flags passed to sh_makepath () */
+ int nalloca;
+ struct globval *firstmalloc, *tmplink;
+ char *convfn;
+
+ lastlink = 0;
+ count = lose = skip = add_current = 0;
+
+ firstmalloc = 0;
+ nalloca = 0;
+
+/*itrace("glob_vector: pat = `%s' dir = `%s' flags = 0x%x", pat, dir, flags);*/
+ /* If PAT is empty, skip the loop, but return one (empty) filename. */
+ if (pat == 0 || *pat == '\0')
+ {
+ if (glob_testdir (dir) < 0)
+ return ((char **) &glob_error_return);
+
+ nextlink = (struct globval *)alloca (sizeof (struct globval));
+ if (nextlink == NULL)
+ return ((char **) NULL);
+
+ nextlink->next = (struct globval *)0;
+ nextname = (char *) malloc (1);
+ if (nextname == 0)
+ lose = 1;
+ else
+ {
+ lastlink = nextlink;
+ nextlink->name = nextname;
+ nextname[0] = '\0';
+ count = 1;
+ }
+
+ skip = 1;
+ }
+
+ patlen = (pat && *pat) ? strlen (pat) : 0;
+
+ /* If the filename pattern (PAT) does not contain any globbing characters,
+ we can dispense with reading the directory, and just see if there is
+ a filename `DIR/PAT'. If there is, and we can access it, just make the
+ vector to return and bail immediately. */
+ if (skip == 0 && glob_pattern_p (pat) == 0)
+ {
+ int dirlen;
+ struct stat finfo;
+
+ if (glob_testdir (dir) < 0)
+ return ((char **) &glob_error_return);
+
+ dirlen = strlen (dir);
+ nextname = (char *)malloc (dirlen + patlen + 2);
+ npat = (char *)malloc (patlen + 1);
+ if (nextname == 0 || npat == 0)
+ {
+ FREE (nextname);
+ FREE (npat);
+ lose = 1;
+ }
+ else
+ {
+ strcpy (npat, pat);
+ dequote_pathname (npat);
+
+ strcpy (nextname, dir);
+ nextname[dirlen++] = '/';
+ strcpy (nextname + dirlen, npat);
+
+ if (GLOB_TESTNAME (nextname) >= 0)
+ {
+ free (nextname);
+ nextlink = (struct globval *)alloca (sizeof (struct globval));
+ if (nextlink)
+ {
+ nextlink->next = (struct globval *)0;
+ lastlink = nextlink;
+ nextlink->name = npat;
+ count = 1;
+ }
+ else
+ {
+ free (npat);
+ lose = 1;
+ }
+ }
+ else
+ {
+ free (nextname);
+ free (npat);
+ }
+ }
+
+ skip = 1;
+ }
+
+ if (skip == 0)
+ {
+ /* Open the directory, punting immediately if we cannot. If opendir
+ is not robust (i.e., it opens non-directories successfully), test
+ that DIR is a directory and punt if it's not. */
+#if defined (OPENDIR_NOT_ROBUST)
+ if (glob_testdir (dir) < 0)
+ return ((char **) &glob_error_return);
+#endif
+
+ d = opendir (dir);
+ if (d == NULL)
+ return ((char **) &glob_error_return);
+
+ /* Compute the flags that will be passed to strmatch(). We don't
+ need to do this every time through the loop. */
+ mflags = (noglob_dot_filenames ? FNM_PERIOD : 0) | FNM_PATHNAME;
+
+#ifdef FNM_CASEFOLD
+ if (glob_ignore_case)
+ mflags |= FNM_CASEFOLD;
+#endif
+
+ if (extended_glob)
+ mflags |= FNM_EXTMATCH;
+
+ add_current = ((flags & (GX_ALLDIRS|GX_ADDCURDIR)) == (GX_ALLDIRS|GX_ADDCURDIR));
+
+ /* Scan the directory, finding all names that match.
+ For each name that matches, allocate a struct globval
+ on the stack and store the name in it.
+ Chain those structs together; lastlink is the front of the chain. */
+ while (1)
+ {
+ /* Make globbing interruptible in the shell. */
+ if (interrupt_state || terminating_signal)
+ {
+ lose = 1;
+ break;
+ }
+ else if (signal_is_pending (SIGINT)) /* XXX - make SIGINT traps responsive */
+ {
+ lose = 1;
+ break;
+ }
+
+ dp = readdir (d);
+ if (dp == NULL)
+ break;
+
+ /* If this directory entry is not to be used, try again. */
+ if (REAL_DIR_ENTRY (dp) == 0)
+ continue;
+
+#if 0
+ if (dp->d_name == 0 || *dp->d_name == 0)
+ continue;
+#endif
+
+#if HANDLE_MULTIBYTE
+ if (MB_CUR_MAX > 1 && mbskipname (pat, dp->d_name, flags))
+ continue;
+ else
+#endif
+ if (skipname (pat, dp->d_name, flags))
+ continue;
+
+ /* If we're only interested in directories, don't bother with files */
+ if (flags & (GX_MATCHDIRS|GX_ALLDIRS))
+ {
+ pflags = (flags & GX_ALLDIRS) ? MP_RMDOT : 0;
+ if (flags & GX_NULLDIR)
+ pflags |= MP_IGNDOT;
+ subdir = sh_makepath (dir, dp->d_name, pflags);
+ isdir = glob_testdir (subdir);
+ if (isdir < 0 && (flags & GX_MATCHDIRS))
+ {
+ free (subdir);
+ continue;
+ }
+ }
+
+ if (flags & GX_ALLDIRS)
+ {
+ if (isdir == 0)
+ {
+ dirlist = finddirs (pat, subdir, (flags & ~GX_ADDCURDIR), &e, &ndirs);
+ if (dirlist == &finddirs_error_return)
+ {
+ free (subdir);
+ lose = 1;
+ break;
+ }
+ if (ndirs) /* add recursive directories to list */
+ {
+ if (firstmalloc == 0)
+ firstmalloc = e;
+ e->next = lastlink;
+ lastlink = dirlist;
+ count += ndirs;
+ }
+ }
+
+ nextlink = (struct globval *) malloc (sizeof (struct globval));
+ if (firstmalloc == 0)
+ firstmalloc = nextlink;
+ sdlen = strlen (subdir);
+ nextname = (char *) malloc (sdlen + 1);
+ if (nextlink == 0 || nextname == 0)
+ {
+ FREE (nextlink);
+ FREE (nextname);
+ free (subdir);
+ lose = 1;
+ break;
+ }
+ nextlink->next = lastlink;
+ lastlink = nextlink;
+ nextlink->name = nextname;
+ bcopy (subdir, nextname, sdlen + 1);
+ free (subdir);
+ ++count;
+ continue;
+ }
+ else if (flags & GX_MATCHDIRS)
+ free (subdir);
+
+ convfn = fnx_fromfs (dp->d_name, D_NAMLEN (dp));
+ if (strmatch (pat, convfn, mflags) != FNM_NOMATCH)
+ {
+ if (nalloca < ALLOCA_MAX)
+ {
+ nextlink = (struct globval *) alloca (sizeof (struct globval));
+ nalloca += sizeof (struct globval);
+ }
+ else
+ {
+ nextlink = (struct globval *) malloc (sizeof (struct globval));
+ if (firstmalloc == 0)
+ firstmalloc = nextlink;
+ }
+
+ nextname = (char *) malloc (D_NAMLEN (dp) + 1);
+ if (nextlink == 0 || nextname == 0)
+ {
+ FREE (nextlink);
+ FREE (nextname);
+ lose = 1;
+ break;
+ }
+ nextlink->next = lastlink;
+ lastlink = nextlink;
+ nextlink->name = nextname;
+ bcopy (dp->d_name, nextname, D_NAMLEN (dp) + 1);
+ ++count;
+ }
+ }
+
+ (void) closedir (d);
+ }
+
+ /* compat: if GX_ADDCURDIR, add the passed directory also. Add an empty
+ directory name as a placeholder if GX_NULLDIR (in which case the passed
+ directory name is "."). */
+ if (add_current)
+ {
+ sdlen = strlen (dir);
+ nextname = (char *)malloc (sdlen + 1);
+ nextlink = (struct globval *) malloc (sizeof (struct globval));
+ if (nextlink == 0 || nextname == 0)
+ {
+ FREE (nextlink);
+ FREE (nextname);
+ lose = 1;
+ }
+ else
+ {
+ nextlink->name = nextname;
+ nextlink->next = lastlink;
+ lastlink = nextlink;
+ if (flags & GX_NULLDIR)
+ nextname[0] = '\0';
+ else
+ bcopy (dir, nextname, sdlen + 1);
+ ++count;
+ }
+ }
+
+ if (lose == 0)
+ {
+ name_vector = (char **) malloc ((count + 1) * sizeof (char *));
+ lose |= name_vector == NULL;
+ }
+
+ /* Have we run out of memory? */
+ if (lose)
+ {
+ tmplink = 0;
+
+ /* Here free the strings we have got. */
+ while (lastlink)
+ {
+ /* Since we build the list in reverse order, the first N entries
+ will be allocated with malloc, if firstmalloc is set, from
+ lastlink to firstmalloc. */
+ if (firstmalloc)
+ {
+ if (lastlink == firstmalloc)
+ firstmalloc = 0;
+ tmplink = lastlink;
+ }
+ else
+ tmplink = 0;
+ free (lastlink->name);
+ lastlink = lastlink->next;
+ FREE (tmplink);
+ }
+
+ /* Don't call QUIT; here; let higher layers deal with it. */
+
+ return ((char **)NULL);
+ }
+
+ /* Copy the name pointers from the linked list into the vector. */
+ for (tmplink = lastlink, i = 0; i < count; ++i)
+ {
+ name_vector[i] = tmplink->name;
+ tmplink = tmplink->next;
+ }
+
+ name_vector[count] = NULL;
+
+ /* If we allocated some of the struct globvals, free them now. */
+ if (firstmalloc)
+ {
+ tmplink = 0;
+ while (lastlink)
+ {
+ tmplink = lastlink;
+ if (lastlink == firstmalloc)
+ lastlink = firstmalloc = 0;
+ else
+ lastlink = lastlink->next;
+ free (tmplink);
+ }
+ }
+
+ return (name_vector);
+}
+
+/* Return a new array which is the concatenation of each string in ARRAY
+ to DIR. This function expects you to pass in an allocated ARRAY, and
+ it takes care of free()ing that array. Thus, you might think of this
+ function as side-effecting ARRAY. This should handle GX_MARKDIRS. */
+static char **
+glob_dir_to_array (dir, array, flags)
+ char *dir, **array;
+ int flags;
+{
+ register unsigned int i, l;
+ int add_slash;
+ char **result, *new;
+ struct stat sb;
+
+ l = strlen (dir);
+ if (l == 0)
+ {
+ if (flags & GX_MARKDIRS)
+ for (i = 0; array[i]; i++)
+ {
+ if ((stat (array[i], &sb) == 0) && S_ISDIR (sb.st_mode))
+ {
+ l = strlen (array[i]);
+ new = (char *)realloc (array[i], l + 2);
+ if (new == 0)
+ return NULL;
+ new[l] = '/';
+ new[l+1] = '\0';
+ array[i] = new;
+ }
+ }
+ return (array);
+ }
+
+ add_slash = dir[l - 1] != '/';
+
+ i = 0;
+ while (array[i] != NULL)
+ ++i;
+
+ result = (char **) malloc ((i + 1) * sizeof (char *));
+ if (result == NULL)
+ return (NULL);
+
+ for (i = 0; array[i] != NULL; i++)
+ {
+ /* 3 == 1 for NUL, 1 for slash at end of DIR, 1 for GX_MARKDIRS */
+ result[i] = (char *) malloc (l + strlen (array[i]) + 3);
+
+ if (result[i] == NULL)
+ {
+ int ind;
+ for (ind = 0; ind < i; ind++)
+ free (result[ind]);
+ free (result);
+ return (NULL);
+ }
+
+ strcpy (result[i], dir);
+ if (add_slash)
+ result[i][l] = '/';
+ strcpy (result[i] + l + add_slash, array[i]);
+ if (flags & GX_MARKDIRS)
+ {
+ if ((stat (result[i], &sb) == 0) && S_ISDIR (sb.st_mode))
+ {
+ size_t rlen;
+ rlen = strlen (result[i]);
+ result[i][rlen] = '/';
+ result[i][rlen+1] = '\0';
+ }
+ }
+ }
+ result[i] = NULL;
+
+ /* Free the input array. */
+ for (i = 0; array[i] != NULL; i++)
+ free (array[i]);
+ free ((char *) array);
+
+ return (result);
+}
+
+/* Do globbing on PATHNAME. Return an array of pathnames that match,
+ marking the end of the array with a null-pointer as an element.
+ If no pathnames match, then the array is empty (first element is null).
+ If there isn't enough memory, then return NULL.
+ If a file system error occurs, return -1; `errno' has the error code. */
+char **
+glob_filename (pathname, flags)
+ char *pathname;
+ int flags;
+{
+ char **result;
+ unsigned int result_size;
+ char *directory_name, *filename, *dname;
+ unsigned int directory_len;
+ int free_dirname; /* flag */
+ int dflags;
+
+ result = (char **) malloc (sizeof (char *));
+ result_size = 1;
+ if (result == NULL)
+ return (NULL);
+
+ result[0] = NULL;
+
+ directory_name = NULL;
+
+ /* Find the filename. */
+ filename = strrchr (pathname, '/');
+ if (filename == NULL)
+ {
+ filename = pathname;
+ directory_name = "";
+ directory_len = 0;
+ free_dirname = 0;
+ }
+ else
+ {
+ directory_len = (filename - pathname) + 1;
+ directory_name = (char *) malloc (directory_len + 1);
+
+ if (directory_name == 0) /* allocation failed? */
+ return (NULL);
+
+ bcopy (pathname, directory_name, directory_len);
+ directory_name[directory_len] = '\0';
+ ++filename;
+ free_dirname = 1;
+ }
+
+ /* If directory_name contains globbing characters, then we
+ have to expand the previous levels. Just recurse. */
+ if (glob_pattern_p (directory_name))
+ {
+ char **directories;
+ register unsigned int i;
+
+ dflags = flags & ~GX_MARKDIRS;
+ if ((flags & GX_GLOBSTAR) && directory_name[0] == '*' && directory_name[1] == '*' && (directory_name[2] == '/' || directory_name[2] == '\0'))
+ dflags |= GX_ALLDIRS|GX_ADDCURDIR;
+
+ if (directory_name[directory_len - 1] == '/')
+ directory_name[directory_len - 1] = '\0';
+
+ directories = glob_filename (directory_name, dflags);
+
+ if (free_dirname)
+ {
+ free (directory_name);
+ directory_name = NULL;
+ }
+
+ if (directories == NULL)
+ goto memory_error;
+ else if (directories == (char **)&glob_error_return)
+ {
+ free ((char *) result);
+ return ((char **) &glob_error_return);
+ }
+ else if (*directories == NULL)
+ {
+ free ((char *) directories);
+ free ((char *) result);
+ return ((char **) &glob_error_return);
+ }
+
+ /* We have successfully globbed the preceding directory name.
+ For each name in DIRECTORIES, call glob_vector on it and
+ FILENAME. Concatenate the results together. */
+ for (i = 0; directories[i] != NULL; ++i)
+ {
+ char **temp_results;
+
+ /* XXX -- we've recursively scanned any directories resulting from
+ a `**', so turn off the flag. We turn it on again below if
+ filename is `**' */
+ /* Scan directory even on a NULL filename. That way, `*h/'
+ returns only directories ending in `h', instead of all
+ files ending in `h' with a `/' appended. */
+ dname = directories[i];
+ dflags = flags & ~(GX_MARKDIRS|GX_ALLDIRS|GX_ADDCURDIR);
+ if ((flags & GX_GLOBSTAR) && filename[0] == '*' && filename[1] == '*' && filename[2] == '\0')
+ dflags |= GX_ALLDIRS|GX_ADDCURDIR;
+ if (dname[0] == '\0' && filename[0])
+ {
+ dflags |= GX_NULLDIR;
+ dname = "."; /* treat null directory name and non-null filename as current directory */
+ }
+ temp_results = glob_vector (filename, dname, dflags);
+
+ /* Handle error cases. */
+ if (temp_results == NULL)
+ goto memory_error;
+ else if (temp_results == (char **)&glob_error_return)
+ /* This filename is probably not a directory. Ignore it. */
+ ;
+ else
+ {
+ char **array;
+ register unsigned int l;
+
+ /* If we're expanding **, we don't need to glue the directory
+ name to the results; we've already done it in glob_vector */
+ if ((dflags & GX_ALLDIRS) && filename[0] == '*' && filename[1] == '*' && filename[2] == '\0')
+ array = temp_results;
+ else
+ array = glob_dir_to_array (directories[i], temp_results, flags);
+ l = 0;
+ while (array[l] != NULL)
+ ++l;
+
+ result =
+ (char **)realloc (result, (result_size + l) * sizeof (char *));
+
+ if (result == NULL)
+ goto memory_error;
+
+ for (l = 0; array[l] != NULL; ++l)
+ result[result_size++ - 1] = array[l];
+
+ result[result_size - 1] = NULL;
+
+ /* Note that the elements of ARRAY are not freed. */
+ if (array != temp_results)
+ free ((char *) array);
+ else if ((dflags & GX_ALLDIRS) && filename[0] == '*' && filename[1] == '*' && filename[2] == '\0')
+ free (temp_results); /* expanding ** case above */
+ }
+ }
+ /* Free the directories. */
+ for (i = 0; directories[i]; i++)
+ free (directories[i]);
+
+ free ((char *) directories);
+
+ return (result);
+ }
+
+ /* If there is only a directory name, return it. */
+ if (*filename == '\0')
+ {
+ result = (char **) realloc ((char *) result, 2 * sizeof (char *));
+ if (result == NULL)
+ return (NULL);
+ /* Handle GX_MARKDIRS here. */
+ result[0] = (char *) malloc (directory_len + 1);
+ if (result[0] == NULL)
+ goto memory_error;
+ bcopy (directory_name, result[0], directory_len + 1);
+ if (free_dirname)
+ free (directory_name);
+ result[1] = NULL;
+ return (result);
+ }
+ else
+ {
+ char **temp_results;
+
+ /* There are no unquoted globbing characters in DIRECTORY_NAME.
+ Dequote it before we try to open the directory since there may
+ be quoted globbing characters which should be treated verbatim. */
+ if (directory_len > 0)
+ dequote_pathname (directory_name);
+
+ /* We allocated a small array called RESULT, which we won't be using.
+ Free that memory now. */
+ free (result);
+
+ /* Just return what glob_vector () returns appended to the
+ directory name. */
+ /* If flags & GX_ALLDIRS, we're called recursively */
+ dflags = flags & ~GX_MARKDIRS;
+ if (directory_len == 0)
+ dflags |= GX_NULLDIR;
+ if ((flags & GX_GLOBSTAR) && filename[0] == '*' && filename[1] == '*' && filename[2] == '\0')
+ {
+ dflags |= GX_ALLDIRS|GX_ADDCURDIR;
+#if 0
+ /* If we want all directories (dflags & GX_ALLDIRS) and we're not
+ being called recursively as something like `echo [star][star]/[star].o'
+ ((flags & GX_ALLDIRS) == 0), we want to prevent glob_vector from
+ adding a null directory name to the front of the temp_results
+ array. We turn off ADDCURDIR if not called recursively and
+ dlen == 0 */
+#endif
+ if (directory_len == 0 && (flags & GX_ALLDIRS) == 0)
+ dflags &= ~GX_ADDCURDIR;
+ }
+ temp_results = glob_vector (filename,
+ (directory_len == 0 ? "." : directory_name),
+ dflags);
+
+ if (temp_results == NULL || temp_results == (char **)&glob_error_return)
+ {
+ if (free_dirname)
+ free (directory_name);
+ QUIT; /* XXX - shell */
+ run_pending_traps ();
+ return (temp_results);
+ }
+
+ result = glob_dir_to_array ((dflags & GX_ALLDIRS) ? "" : directory_name, temp_results, flags);
+ if (free_dirname)
+ free (directory_name);
+ return (result);
+ }
+
+ /* We get to memory_error if the program has run out of memory, or
+ if this is the shell, and we have been interrupted. */
+ memory_error:
+ if (result != NULL)
+ {
+ register unsigned int i;
+ for (i = 0; result[i] != NULL; ++i)
+ free (result[i]);
+ free ((char *) result);
+ }
+
+ if (free_dirname && directory_name)
+ free (directory_name);
+
+ QUIT;
+ run_pending_traps ();
+
+ return (NULL);
+}
+
+#if defined (TEST)
+
+main (argc, argv)
+ int argc;
+ char **argv;
+{
+ unsigned int i;
+
+ for (i = 1; i < argc; ++i)
+ {
+ char **value = glob_filename (argv[i], 0);
+ if (value == NULL)
+ puts ("Out of memory.");
+ else if (value == &glob_error_return)
+ perror (argv[i]);
+ else
+ for (i = 0; value[i] != NULL; i++)
+ puts (value[i]);
+ }
+
+ exit (0);
+}
+#endif /* TEST. */
--- /dev/null
+# This makefile for Readline library documentation is in -*- text -*- mode.
+# Emacs likes it that way.
+RM = rm -f
+
+MAKEINFO = makeinfo
+TEXI2DVI = texi2dvi
+TEXI2HTML = texi2html
+QUIETPS = #set this to -q to shut up dvips
+DVIPS = dvips -D 300 $(QUIETPS) -o $@ # tricky
+
+INSTALL_DATA = cp
+infodir = /usr/local/info
+
+RLSRC = rlman.texinfo rluser.texinfo rltech.texinfo
+HISTSRC = hist.texinfo hsuser.texinfo hstech.texinfo
+
+DVIOBJ = readline.dvi history.dvi
+INFOOBJ = readline.info history.info
+PSOBJ = readline.ps history.ps
+HTMLOBJ = readline.html history.html
+
+all: info dvi html ps
+nodvi: info html
+
+readline.dvi: $(RLSRC)
+ $(TEXI2DVI) rlman.texinfo
+ mv rlman.dvi readline.dvi
+
+readline.info: $(RLSRC)
+ $(MAKEINFO) --no-split -o $@ rlman.texinfo
+
+history.dvi: ${HISTSRC}
+ $(TEXI2DVI) hist.texinfo
+ mv hist.dvi history.dvi
+
+history.info: ${HISTSRC}
+ $(MAKEINFO) --no-split -o $@ hist.texinfo
+
+readline.ps: readline.dvi
+ $(RM) $@
+ $(DVIPS) readline.dvi
+
+history.ps: history.dvi
+ $(RM) $@
+ $(DVIPS) history.dvi
+
+readline.html: ${RLSRC}
+ $(TEXI2HTML) rlman.texinfo
+ sed -e 's:rlman.html:readline.html:' -e 's:rlman_toc.html:readline_toc.html:' rlman.html > readline.html
+ sed -e 's:rlman.html:readline.html:' -e 's:rlman_toc.html:readline_toc.html:' rlman_toc.html > readline_toc.html
+ $(RM) rlman.html rlman_toc.html
+
+history.html: ${HISTSRC}
+ $(TEXI2HTML) hist.texinfo
+ sed -e 's:hist.html:history.html:' -e 's:hist_toc.html:history_toc.html:' hist.html > history.html
+ sed -e 's:hist.html:history.html:' -e 's:hist_toc.html:history_toc.html:' hist_toc.html > history_toc.html
+ $(RM) hist.html hist_toc.html
+
+info: $(INFOOBJ)
+dvi: $(DVIOBJ)
+ps: $(PSOBJ)
+html: $(HTMLOBJ)
+
+clean:
+ $(RM) *.aux *.cp *.fn *.ky *.log *.pg *.toc *.tp *.vr *.cps *.pgs \
+ *.fns *.kys *.tps *.vrs *.o core
+
+distclean: clean
+mostlyclean: clean
+
+maintainer-clean: clean
+ $(RM) *.dvi *.info *.info-* *.ps *.html
+
+install: info
+ ${INSTALL_DATA} readline.info $(infodir)/readline.info
+ ${INSTALL_DATA} history.info $(infodir)/history.info
msgstr ""
"Project-Id-Version: bash-4.2\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-05 22:17-0500\n"
-"PO-Revision-Date: 2011-03-19 19:38+0100\n"
+"POT-Creation-Date: 2011-01-28 22:09-0500\n"
+"PO-Revision-Date: 2012-07-07 21:52+0100\n"
"Last-Translator: Christophe Combelles <ccomb@free.fr>\n"
"Language-Team: French <traduc@traduc.org>\n"
"Language: fr\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-#: arrayfunc.c:51
+#: arrayfunc.c:50
msgid "bad array subscript"
msgstr "mauvais indice de tableau"
-#: arrayfunc.c:330 builtins/declare.def:487
+#: arrayfunc.c:313 builtins/declare.def:487
#, c-format
msgid "%s: cannot convert indexed to associative array"
msgstr "%s : impossible de convertir un tableau indexé en associatif"
-#: arrayfunc.c:513
+#: arrayfunc.c:480
#, c-format
msgid "%s: invalid associative array key"
msgstr "%s : clé non valable pour le tableau associatif"
-#: arrayfunc.c:515
+#: arrayfunc.c:482
#, c-format
msgid "%s: cannot assign to non-numeric index"
msgstr "%s : impossible d'assigner à un index non numérique"
-#: arrayfunc.c:557
+#: arrayfunc.c:518
#, c-format
msgid "%s: %s: must use subscript when assigning associative array"
-msgstr ""
-"%s : %s : l'assignation d'un tableau associatif doit se faire avec un indice"
+msgstr "%s : %s : l'assignation d'un tableau associatif doit se faire avec un indice"
-#: bashhist.c:388
+#: bashhist.c:387
#, c-format
msgid "%s: cannot create: %s"
msgstr "%s : impossible de créer : %s"
-#: bashline.c:3868
+#: bashline.c:3498
msgid "bash_execute_unix_command: cannot find keymap for command"
-msgstr ""
-"bash_execute_unix_command : impossible de trouver le mappage clavier pour la "
-"commande"
+msgstr "bash_execute_unix_command : impossible de trouver le mappage clavier pour la commande"
-#: bashline.c:3955
+#: bashline.c:3584
#, c-format
msgid "%s: first non-whitespace character is not `\"'"
msgstr "%s : le premier caractère non vide n'est pas « \" »"
-#: bashline.c:3984
+#: bashline.c:3613
#, c-format
msgid "no closing `%c' in %s"
msgstr "pas de « %c » de fermeture dans %s"
-#: bashline.c:4018
+#: bashline.c:3647
#, c-format
msgid "%s: missing colon separator"
msgstr "%s : virgule de séparation manquante"
msgid "`%s': invalid alias name"
msgstr "« %s » : nom d'alias non valable"
-#: builtins/bind.def:123 builtins/bind.def:126
+#: builtins/bind.def:120 builtins/bind.def:123
msgid "line editing not enabled"
msgstr "édition de ligne non activée"
-#: builtins/bind.def:212
+#: builtins/bind.def:206
#, c-format
msgid "`%s': invalid keymap name"
msgstr "« %s » : nom du mappage clavier invalide"
-#: builtins/bind.def:251
+#: builtins/bind.def:245
#, c-format
msgid "%s: cannot read: %s"
msgstr "%s : impossible de lire : %s"
-#: builtins/bind.def:266
+#: builtins/bind.def:260
#, c-format
msgid "`%s': cannot unbind"
msgstr "%s : impossible à délier"
-#: builtins/bind.def:304 builtins/bind.def:334
+#: builtins/bind.def:295 builtins/bind.def:325
#, c-format
msgid "`%s': unknown function name"
msgstr "%s : nom de fonction inconnu"
-#: builtins/bind.def:312
+#: builtins/bind.def:303
#, c-format
msgid "%s is not bound to any keys.\n"
msgstr "%s n'est lié à aucune touche.\n"
-#: builtins/bind.def:316
+#: builtins/bind.def:307
#, c-format
msgid "%s can be invoked via "
msgstr "%s peut être appelé via "
" \n"
" Sans EXPR, renvoie"
-#: builtins/cd.def:239
+#: builtins/cd.def:235
msgid "HOME not set"
msgstr "« HOME » non défini"
-#: builtins/cd.def:247 builtins/common.c:166 test.c:832
-msgid "too many arguments"
-msgstr "trop d'arguments"
-
-#: builtins/cd.def:258
+#: builtins/cd.def:247
msgid "OLDPWD not set"
msgstr "« OLDPWD » non défini"
msgid "line %d: "
msgstr "ligne %d : "
-#: builtins/common.c:139 error.c:265
+#: builtins/common.c:139 error.c:261
#, c-format
msgid "warning: "
msgstr "avertissement :"
msgid "%s: usage: "
msgstr "%s : utilisation :"
-#: builtins/common.c:191 shell.c:504 shell.c:786
+#: builtins/common.c:166 test.c:832
+msgid "too many arguments"
+msgstr "trop d'arguments"
+
+#: builtins/common.c:191 shell.c:500 shell.c:782
#, c-format
msgid "%s: option requires an argument"
msgstr "%s : l'option nécessite un argument"
msgid "%s: not found"
msgstr "%s : non trouvé"
-#: builtins/common.c:214 shell.c:799
+#: builtins/common.c:214 shell.c:795
#, c-format
msgid "%s: invalid option"
msgstr "%s : option non valable"
msgid "%s: invalid option name"
msgstr "%s : nom d'option non valable"
-#: builtins/common.c:228 general.c:234 general.c:239
+#: builtins/common.c:228 general.c:231 general.c:236
#, c-format
msgid "`%s': not a valid identifier"
msgstr "« %s » : identifiant non valable"
#: builtins/common.c:238
msgid "invalid octal number"
-msgstr "Nombre octal non valable"
+msgstr "nombre octal non valable"
#: builtins/common.c:240
msgid "invalid hex number"
msgstr "nombre hexadécimal non valable"
-#: builtins/common.c:242 expr.c:1431
+#: builtins/common.c:242 expr.c:1362
msgid "invalid number"
msgstr "nombre non valable"
#: builtins/common.c:257
#, c-format
msgid "`%s': not a pid or valid job spec"
-msgstr ""
-"« %s » : ce n'est pas un n° de processus ou une spécification de tâche "
-"valable"
+msgstr "« %s » : ce n'est pas un n° de processus ou une spécification de tâche valable"
-#: builtins/common.c:264 error.c:458
+#: builtins/common.c:264 error.c:454
#, c-format
msgid "%s: readonly variable"
msgstr "%s : variable en lecture seule"
msgid "%s: ambiguous job spec"
msgstr "%s : spécification de tâche ambiguë"
-#: builtins/complete.def:277
+#: builtins/complete.def:276
#, c-format
msgid "%s: invalid action name"
msgstr "%s : nom d'action non valable"
-#: builtins/complete.def:450 builtins/complete.def:645
-#: builtins/complete.def:855
+#: builtins/complete.def:449 builtins/complete.def:644
+#: builtins/complete.def:853
#, c-format
msgid "%s: no completion specification"
msgstr "%s : pas d'indication de complètement"
-#: builtins/complete.def:697
+#: builtins/complete.def:696
msgid "warning: -F option may not work as you expect"
-msgstr ""
-"avertissement : l'option « -F » peut fonctionner différemment de ce à quoi "
-"vous vous attendez"
+msgstr "avertissement : l'option « -F » peut fonctionner différemment de ce à quoi vous vous attendez"
-#: builtins/complete.def:699
+#: builtins/complete.def:698
msgid "warning: -C option may not work as you expect"
-msgstr ""
-"avertissement : l'option « -C » peut fonctionner différemment de ce à quoi "
-"vous vous attendez"
+msgstr "avertissement : l'option « -C » peut fonctionner différemment de ce à quoi vous vous attendez"
-#: builtins/complete.def:828
+#: builtins/complete.def:826
msgid "not currently executing completion function"
msgstr "fonction de completion actuellement non en cours d'exécution"
msgid "cannot use `-f' to make functions"
msgstr "« -f » ne peut pas être utilisé pour fabriquer des fonctions"
-#: builtins/declare.def:378 execute_cmd.c:5253
+#: builtins/declare.def:378 execute_cmd.c:5105
#, c-format
msgid "%s: readonly function"
msgstr "%s : fonction en lecture seule"
msgid "%s: cannot destroy array variables in this way"
msgstr "%s : impossible de détruire des variables tableaux de cette façon"
-#: builtins/declare.def:481 builtins/read.def:702
+#: builtins/declare.def:481
#, c-format
msgid "%s: cannot convert associative to indexed array"
msgstr "%s : impossible de convertir un tableau indexé en tableau associatif"
msgid "%s: cannot delete: %s"
msgstr "%s : impossible d'effacer : %s"
-#: builtins/evalfile.c:135 builtins/hash.def:171 execute_cmd.c:5100
-#: shell.c:1461
+#: builtins/evalfile.c:135 builtins/hash.def:171 execute_cmd.c:4961
+#: shell.c:1457
#, c-format
msgid "%s: is a directory"
msgstr "%s : ceci est un répertoire"
msgid "%s: file is too large"
msgstr "%s : le fichier est trop grand"
-#: builtins/evalfile.c:182 builtins/evalfile.c:200 shell.c:1471
+#: builtins/evalfile.c:182 builtins/evalfile.c:200 execute_cmd.c:5032
+#: shell.c:1467
#, c-format
msgid "%s: cannot execute binary file"
msgstr "%s : fichier binaire impossible à lancer"
#: builtins/help.def:168
#, c-format
-msgid ""
-"no help topics match `%s'. Try `help help' or `man -k %s' or `info %s'."
-msgstr ""
-"Aucune rubrique d'aide ne correspond à « %s ». Essayez « help help », « man -"
-"k %s » ou « info %s »."
+msgid "no help topics match `%s'. Try `help help' or `man -k %s' or `info %s'."
+msgstr "Aucune rubrique d'aide ne correspond à « %s ». Essayez « help help », « man -k %s » ou « info %s »."
#: builtins/help.def:185
#, c-format
"A star (*) next to a name means that the command is disabled.\n"
"\n"
msgstr ""
-"Ces commandes de shell sont définies de manière interne.Tapez « help » pour "
-"voir cette liste.\n"
-"Tapez « help nom » pour en savoir plus sur la fonction qui s'appelle « nom "
-"».\n"
+"Ces commandes de shell sont définies de manière interne. Saisissez « help » pour voir cette liste.\n"
+"Tapez « help nom » pour en savoir plus sur la fonction qui s'appelle « nom ».\n"
"Utilisez « info bash » pour en savoir plus sur le shell en général.\n"
"Utilisez « man -k » ou « info » pour en savoir plus sur les commandes qui\n"
"ne font pas partie de cette liste.\n"
msgid "history position"
msgstr "position dans l'historique"
-#: builtins/history.def:366
+#: builtins/history.def:365
#, c-format
msgid "%s: history expansion failed"
msgstr "%s : l'expansion de l'historique a échoué"
#: builtins/kill.def:198
#, c-format
msgid "%s: arguments must be process or job IDs"
-msgstr ""
-"%s : les arguments doivent être des identifiants de tâche ou de processus"
+msgstr "%s : les arguments doivent être des identifiants de tâche ou de processus"
#: builtins/kill.def:261
msgid "Unknown error"
msgstr "Erreur inconnue"
-#: builtins/let.def:95 builtins/let.def:120 expr.c:577 expr.c:592
+#: builtins/let.def:95 builtins/let.def:120 expr.c:552 expr.c:567
msgid "expression expected"
msgstr "une expression est attendue"
msgid "%s: not an indexed array"
msgstr "%s : n'est pas un tableau indexé"
-#: builtins/mapfile.def:256 builtins/read.def:299
+#: builtins/mapfile.def:256 builtins/read.def:279
#, c-format
msgid "%s: invalid file descriptor specification"
msgstr "%s : spécification de descripteur de fichier non valable"
-#: builtins/mapfile.def:264 builtins/read.def:306
+#: builtins/mapfile.def:264 builtins/read.def:286
#, c-format
msgid "%d: invalid file descriptor: %s"
msgstr "%d : descripteur de fichier non valable : %s"
msgid "array variable support required"
msgstr "nécessité de prise en charge des variables tableaux"
-#: builtins/printf.def:397
+#: builtins/printf.def:394
#, c-format
msgid "`%s': missing format character"
msgstr "« %s » : caractère de format manquant"
-#: builtins/printf.def:451
+#: builtins/printf.def:448
#, c-format
msgid "`%c': invalid time format specification"
msgstr "`%c' : spécification de format d'heure incorrecte"
-#: builtins/printf.def:647
+#: builtins/printf.def:635
#, c-format
msgid "`%c': invalid format character"
msgstr "« %c » : caractère de format non permis"
-#: builtins/printf.def:673
+#: builtins/printf.def:662
#, c-format
msgid "warning: %s: %s"
msgstr "avertissement : %s: %s"
-#: builtins/printf.def:854
+#: builtins/printf.def:840
msgid "missing hex digit for \\x"
msgstr "chiffre hexadécimal manquant pour \\x"
-#: builtins/printf.def:869
+#: builtins/printf.def:855
#, c-format
msgid "missing unicode digit for \\%c"
msgstr "chiffre unicode manquant pour \\%c"
" \twith its position in the stack\n"
" \n"
" Arguments:\n"
-" +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
+" +N\tDisplays the Nth entry counting from the left of the list shown by\n"
" \tdirs when invoked without options, starting with zero.\n"
" \n"
-" -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
+" -N\tDisplays the Nth entry counting from the right of the list shown by\n"
"\tdirs when invoked without options, starting with zero."
msgstr ""
"Affiche la liste des répertoires actuellement mémorisés. Les répertoires\n"
-" sont insérés dans la liste avec la commande « pushd ». Vous pouvez "
-"remonter\n"
+" sont insérés dans la liste avec la commande « pushd ». Vous pouvez remonter\n"
" dans la liste en enlevant des éléments avec la commande « popd ».\n"
" \n"
" Options :\n"
" \tavec la position dans la pile\n"
" \n"
" Arguments :\n"
-" +N\t affiche le Nième élément en comptant de zéro depuis la gauche de "
-"la\n"
+" +N\t affiche le Nième élément en comptant de zéro depuis la gauche de la\n"
" liste affichée par « dirs » lorsque celle-ci est appelée sans option.\n"
" \n"
-" -N\t affiche le Nième élément en comptant de zéro depuis la droite de "
-"la\n"
+" -N\t affiche le Nième élément en comptant de zéro depuis la droite de la\n"
" liste affichée par « dirs » lorsque celle-ci est appelée sans option."
#: builtins/pushd.def:705
" \n"
" Arguments :\n"
" +N\tPermute la pile de façon que le Nième répertoire se place en haut,\n"
-" \ten comptant de zéro depuis la gauche de la liste fournie par « dirs "
-"».\n"
+" \ten comptant de zéro depuis la gauche de la liste fournie par « dirs ».\n"
" \n"
" -N\tPermute la pile de façon que le Nième répertoire se place en haut,\n"
-" \ten comptant de zéro depuis la droite de la liste fournie par « dirs "
-"».\n"
+" \ten comptant de zéro depuis la droite de la liste fournie par « dirs ».\n"
" \n"
-" dir\tajoute le répertoire DIR en haut de la pile, et en fait le "
-"nouveau\n"
+" dir\tajoute le répertoire DIR en haut de la pile, et en fait le nouveau\n"
" \trépertoire de travail.\n"
" \n"
" Vous pouvez voir la pile des répertoires avec la commande « dirs »."
" \n"
" Vous pouvez voir la pile des répertoires avec la commande « dirs »."
-#: builtins/read.def:272
+#: builtins/read.def:252
#, c-format
msgid "%s: invalid timeout specification"
msgstr "%s : spécification de délai d'expiration non valable"
-#: builtins/read.def:644
+#: builtins/read.def:588
#, c-format
msgid "read error: %d: %s"
msgstr "Erreur de lecture : %d : %s"
-#: builtins/return.def:75
+#: builtins/return.def:73
msgid "can only `return' from a function or sourced script"
-msgstr ""
-"« return » n'est possible que depuis une fonction ou depuis un script "
-"exécuté par « source »"
+msgstr "« return » n'est possible que depuis une fonction ou depuis un script exécuté par « source »"
#: builtins/set.def:771
msgid "cannot simultaneously unset a function and a variable"
-msgstr ""
-"« unset » ne peut pas s'appliquer simultanément à une fonction et à une "
-"variable"
+msgstr "« unset » ne peut pas s'appliquer simultanément à une fonction et à une variable"
-#: builtins/set.def:812
+#: builtins/set.def:808
#, c-format
msgid "%s: cannot unset"
msgstr "%s : « unset » impossible"
-#: builtins/set.def:829
+#: builtins/set.def:815
#, c-format
msgid "%s: cannot unset: readonly %s"
msgstr "%s : « unset » impossible : %s est en lecture seule"
-#: builtins/set.def:841
+#: builtins/set.def:826
#, c-format
msgid "%s: not an array variable"
msgstr "%s : n'est pas une variable tableau"
msgid "shift count"
msgstr "nombre de « shift »"
-#: builtins/shopt.def:277
+#: builtins/shopt.def:264
msgid "cannot set and unset shell options simultaneously"
-msgstr ""
-"les options du shell ne peuvent pas être simultanément activées et "
-"désactivées"
+msgstr "les options du shell ne peuvent pas être simultanément activées et désactivées"
-#: builtins/shopt.def:342
+#: builtins/shopt.def:329
#, c-format
msgid "%s: invalid shell option name"
msgstr "%s : nom d'option du shell non valable"
msgid "%s is a shell builtin\n"
msgstr "%s est une primitive du shell\n"
-#: builtins/type.def:317 builtins/type.def:393
+#: builtins/type.def:317 builtins/type.def:391
#, c-format
msgid "%s is %s\n"
msgstr "%s est %s\n"
msgid "%s is hashed (%s)\n"
msgstr "%s est haché (%s)\n"
-#: builtins/ulimit.def:379
+#: builtins/ulimit.def:376
#, c-format
msgid "%s: invalid limit argument"
msgstr "%s : argument de limite non valable"
-#: builtins/ulimit.def:405
+#: builtins/ulimit.def:402
#, c-format
msgid "`%c': bad command"
msgstr "« %c » : mauvaise commande"
-#: builtins/ulimit.def:434
+#: builtins/ulimit.def:431
#, c-format
msgid "%s: cannot get limit: %s"
msgstr "%s : impossible d'obtenir la limite : %s"
-#: builtins/ulimit.def:460
+#: builtins/ulimit.def:457
msgid "limit"
msgstr "limite"
-#: builtins/ulimit.def:472 builtins/ulimit.def:772
+#: builtins/ulimit.def:469 builtins/ulimit.def:769
#, c-format
msgid "%s: cannot modify limit: %s"
msgstr "%s : impossible de modifier la limite : %s"
#: builtins/umask.def:118
msgid "octal number"
-msgstr "Nombre octal"
+msgstr "nombre octal"
#: builtins/umask.def:231
#, c-format
msgid "`%c': invalid symbolic mode character"
msgstr "« %c » : caractère de mode symbolique non valable"
-#: error.c:90 error.c:325 error.c:327 error.c:329
+#: error.c:90 error.c:321 error.c:323 error.c:325
msgid " line "
-msgstr " ligne"
+msgstr " ligne "
#: error.c:165
#, c-format
msgid "Aborting..."
msgstr "Annulation..."
-#: error.c:410
+#: error.c:406
msgid "unknown command error"
msgstr "erreur de commande inconnue"
-#: error.c:411
+#: error.c:407
msgid "bad command type"
msgstr "mauvais type de commande"
-#: error.c:412
+#: error.c:408
msgid "bad connector"
msgstr "mauvais connecteur"
-#: error.c:413
+#: error.c:409
msgid "bad jump"
msgstr "mauvais saut"
-#: error.c:451
+#: error.c:447
#, c-format
msgid "%s: unbound variable"
msgstr "%s : variable sans liaison"
msgid "cannot redirect standard input from /dev/null: %s"
msgstr "l'entrée standard ne peut pas être redirigée depuis /dev/null : %s"
-#: execute_cmd.c:1199
+#: execute_cmd.c:1168
#, c-format
msgid "TIMEFORMAT: `%c': invalid format character"
msgstr "TIMEFORMAT : « %c » : caractère de format non valable"
-#: execute_cmd.c:2240
+#: execute_cmd.c:2121
msgid "pipe error"
msgstr "erreur de tube"
-#: execute_cmd.c:4284
-#, c-format
-msgid "%s: maximum function nesting level exceeded (%d)"
-msgstr ""
-
-#: execute_cmd.c:4777
+#: execute_cmd.c:4640
#, c-format
msgid "%s: restricted: cannot specify `/' in command names"
-msgstr ""
-"%s : restriction : « / » ne peut pas être spécifié dans un nom de commande"
+msgstr "%s : restriction : « / » ne peut pas être spécifié dans un nom de commande"
-#: execute_cmd.c:4872
+#: execute_cmd.c:4735
#, c-format
msgid "%s: command not found"
msgstr "%s : commande introuvable"
-#: execute_cmd.c:5098
+#: execute_cmd.c:4959
#, c-format
msgid "%s: %s"
msgstr "%s : %s"
-#: execute_cmd.c:5135
+#: execute_cmd.c:4995
#, c-format
msgid "%s: %s: bad interpreter"
msgstr "%s : %s : mauvais interpréteur"
-#: execute_cmd.c:5172
-#, fuzzy, c-format
-msgid "%s: cannot execute binary file: %s"
-msgstr "%s : fichier binaire impossible à lancer"
-
-#: execute_cmd.c:5244
-#, fuzzy, c-format
-msgid "`%s': is a special builtin"
-msgstr "%s est une primitive du shell\n"
-
-#: execute_cmd.c:5296
+#: execute_cmd.c:5144
#, c-format
msgid "cannot duplicate fd %d to fd %d"
-msgstr "Impossible de dupliquer le fd %d vers le fd %d"
+msgstr "impossible de dupliquer le fd %d vers le fd %d"
-#: expr.c:258
+#: expr.c:256
msgid "expression recursion level exceeded"
-msgstr "Dépassement du niveau de récursivité dans l'expression"
+msgstr "dépassement du niveau de récursivité dans l'expression"
-#: expr.c:282
+#: expr.c:280
msgid "recursion stack underflow"
-msgstr "Débordement négatif de la pile de récursivité"
+msgstr "débordement négatif de la pile de récursivité"
-#: expr.c:430
+#: expr.c:422
msgid "syntax error in expression"
msgstr "erreur de syntaxe dans l'expression"
-#: expr.c:474
+#: expr.c:463
msgid "attempted assignment to non-variable"
msgstr "tentative d'affectation à une non-variable"
-#: expr.c:493 expr.c:838
+#: expr.c:486 expr.c:491 expr.c:807
msgid "division by 0"
msgstr "division par 0"
-#: expr.c:540
+#: expr.c:517
msgid "bug: bad expassign token"
msgstr "bogue : mauvais symbole pour expassign"
-#: expr.c:589
+#: expr.c:564
msgid "`:' expected for conditional expression"
msgstr "« : » attendu pour une expression conditionnelle."
-#: expr.c:895
+#: expr.c:832
msgid "exponent less than 0"
msgstr "exposant négatif"
-#: expr.c:948
+#: expr.c:887
msgid "identifier expected after pre-increment or pre-decrement"
msgstr "identifiant attendu après un pré-incrément ou un pré-décrément"
-#: expr.c:973
+#: expr.c:910
msgid "missing `)'"
msgstr "« ) » manquante"
-#: expr.c:1024 expr.c:1351
+#: expr.c:959 expr.c:1282
msgid "syntax error: operand expected"
msgstr "erreur de syntaxe : opérande attendue"
-#: expr.c:1353
+#: expr.c:1284
msgid "syntax error: invalid arithmetic operator"
msgstr "erreur de syntaxe : opérateur arithmétique non valable"
-#: expr.c:1377
+#: expr.c:1308
#, c-format
msgid "%s%s%s: %s (error token is \"%s\")"
msgstr "%s%s%s : %s (le symbole erroné est \"%s\")"
-#: expr.c:1435
+#: expr.c:1366
msgid "invalid arithmetic base"
msgstr "base arithmétique non valable"
-#: expr.c:1455
+#: expr.c:1386
msgid "value too great for base"
msgstr "valeur trop grande pour la base"
-#: expr.c:1504
+#: expr.c:1435
#, c-format
msgid "%s: expression error\n"
msgstr "%s : erreur d'expression\n"
msgid "getcwd: cannot access parent directories"
msgstr "getcwd : ne peut accéder aux répertoires parents"
-#: input.c:99 subst.c:5094
+#: input.c:94 subst.c:5082
#, c-format
msgid "cannot reset nodelay mode for fd %d"
msgstr "Impossible de réinitialiser le mode « nodelay » pour le fd %d"
-#: input.c:265
+#: input.c:260
#, c-format
msgid "cannot allocate new file descriptor for bash input from fd %d"
-msgstr ""
-"impossible d'allouer un nouveau descripteur de fichier pour l'entrée de bash "
-"depuis le fd %d"
+msgstr "impossible d'allouer un nouveau descripteur de fichier pour l'entrée de bash depuis le fd %d"
-#: input.c:273
+#: input.c:268
#, c-format
msgid "save_bash_input: buffer already exists for new fd %d"
msgstr "save_bash_input : le tampon existe déjà pour le nouveau fd %d"
-#: jobs.c:470
+#: jobs.c:468
msgid "start_pipeline: pgrp pipe"
msgstr "start_pipeline : pgrp pipe"
-#: jobs.c:891
+#: jobs.c:889
#, c-format
msgid "forked pid %d appears in running job %d"
msgstr "le processus cloné n°%d apparaît dans la tâche en fonctionnement %d"
-#: jobs.c:1009
+#: jobs.c:1007
#, c-format
msgid "deleting stopped job %d with process group %ld"
msgstr "suppression de la tâche stoppée %d avec le groupe de processus %ld"
-#: jobs.c:1114
+#: jobs.c:1112
#, c-format
msgid "add_process: process %5ld (%s) in the_pipeline"
msgstr "add_process : processus %5ld (%s) dans le_pipeline"
-#: jobs.c:1117
+#: jobs.c:1115
#, c-format
msgid "add_process: pid %5ld (%s) marked as still alive"
msgstr "add_process : pid %5ld (%s) signalé toujours en vie"
-#: jobs.c:1432
+#: jobs.c:1430
#, c-format
msgid "describe_pid: %ld: no such pid"
msgstr "describe_pid : %ld : n° de processus inexistant"
-#: jobs.c:1447
+#: jobs.c:1445
#, c-format
msgid "Signal %d"
msgstr "Signal %d"
-#: jobs.c:1461 jobs.c:1486
+#: jobs.c:1459 jobs.c:1484
msgid "Done"
msgstr "Fini"
-#: jobs.c:1466 siglist.c:123
+#: jobs.c:1464 siglist.c:123
msgid "Stopped"
msgstr "Stoppé"
-#: jobs.c:1470
+#: jobs.c:1468
#, c-format
msgid "Stopped(%s)"
msgstr "Stoppé(%s)"
-#: jobs.c:1474
+#: jobs.c:1472
msgid "Running"
msgstr "En cours d'exécution"
-#: jobs.c:1488
+#: jobs.c:1486
#, c-format
msgid "Done(%d)"
msgstr "Fini(%d)"
-#: jobs.c:1490
+#: jobs.c:1488
#, c-format
msgid "Exit %d"
msgstr "Termine %d"
-#: jobs.c:1493
+#: jobs.c:1491
msgid "Unknown status"
msgstr "État inconnu"
-#: jobs.c:1580
+#: jobs.c:1578
#, c-format
msgid "(core dumped) "
msgstr "(core dumped)"
-#: jobs.c:1599
+#: jobs.c:1597
#, c-format
msgid " (wd: %s)"
msgstr " (wd : %s)"
-#: jobs.c:1807
+#: jobs.c:1805
#, c-format
msgid "child setpgid (%ld to %ld)"
msgstr "fils setpgid (%ld à %ld)"
-#: jobs.c:2135 nojobs.c:585
+#: jobs.c:2133 nojobs.c:585
#, c-format
msgid "wait: pid %ld is not a child of this shell"
msgstr "wait : le processus n°%ld n'est pas un fils de ce shell."
-#: jobs.c:2372
+#: jobs.c:2360
#, c-format
msgid "wait_for: No record of process %ld"
msgstr "wait_for : aucun enregistrement du processus n°%ld"
-#: jobs.c:2653
+#: jobs.c:2637
#, c-format
msgid "wait_for_job: job %d is stopped"
msgstr "wait_for_job : la tâche %d est stoppée"
-#: jobs.c:2875
+#: jobs.c:2859
#, c-format
msgid "%s: job has terminated"
msgstr "%s : la tâche s'est terminée"
-#: jobs.c:2884
+#: jobs.c:2868
#, c-format
msgid "%s: job %d already in background"
msgstr "%s : la tâche %d est déjà en arrière plan"
-#: jobs.c:3105
+#: jobs.c:3089
msgid "waitchld: turning on WNOHANG to avoid indefinite block"
msgstr "waitchld : activation de WNOHANG pour éviter un blocage définitif"
-#: jobs.c:3571
+#: jobs.c:3538
#, c-format
msgid "%s: line %d: "
msgstr "%s : ligne %d : "
-#: jobs.c:3585 nojobs.c:818
+#: jobs.c:3552 nojobs.c:814
#, c-format
msgid " (core dumped)"
msgstr " (core dumped)"
-#: jobs.c:3597 jobs.c:3610
+#: jobs.c:3564 jobs.c:3577
#, c-format
msgid "(wd now: %s)\n"
msgstr "(maintenant, wd : %s)\n"
-#: jobs.c:3642
+#: jobs.c:3609
msgid "initialize_job_control: getpgrp failed"
msgstr "initialize_job_control : getpgrp a échoué"
-#: jobs.c:3703
+#: jobs.c:3669
msgid "initialize_job_control: line discipline"
msgstr "initialize_job_control : discipline de ligne"
-#: jobs.c:3713
+#: jobs.c:3679
msgid "initialize_job_control: setpgid"
msgstr "initialize_job_control : setpgid"
-#: jobs.c:3734 jobs.c:3743
+#: jobs.c:3707
#, c-format
msgid "cannot set terminal process group (%d)"
msgstr "impossible de régler le groupe de processus du terminlal (%d)"
-#: jobs.c:3748
+#: jobs.c:3712
msgid "no job control in this shell"
msgstr "pas de contrôle de tâche dans ce shell"
#: lib/malloc/malloc.c:1022
msgid "realloc: start and end chunk sizes differ"
-msgstr ""
-"realloc : les tailles de fragment au début et à la fin sont différentes"
+msgstr "realloc : les tailles de fragment au début et à la fin sont différentes"
#: lib/malloc/table.c:177
#, c-format
msgid "register_free: %p already in table as free?\n"
msgstr "register_free : %p déjà libre selon la table ?\n"
-#: lib/sh/fmtulong.c:102
+#: lib/sh/fmtulong.c:101
msgid "invalid base"
msgstr "base non valable"
msgid "network operations not supported"
msgstr "opérations sur le réseau non prises en charge"
-#: locale.c:204
+#: locale.c:192
#, c-format
msgid "setlocale: LC_ALL: cannot change locale (%s)"
msgstr "setlocale : LC_ALL : impossible de changer le paramètre de langue (%s)"
-#: locale.c:206
+#: locale.c:194
#, c-format
msgid "setlocale: LC_ALL: cannot change locale (%s): %s"
-msgstr ""
-"setlocale : LC_ALL : impossible de changer le paramètre de langue (%s) : %s"
+msgstr "setlocale : LC_ALL : impossible de changer le paramètre de langue (%s) : %s"
-#: locale.c:263
+#: locale.c:247
#, c-format
msgid "setlocale: %s: cannot change locale (%s)"
msgstr "setlocale : %s : impossible de changer le paramètre de langue (%s)"
-#: locale.c:265
+#: locale.c:249
#, c-format
msgid "setlocale: %s: cannot change locale (%s): %s"
-msgstr ""
-"setlocale : %s : impossible de changer le paramètre de langue (%s) : %s"
+msgstr "setlocale : %s : impossible de changer le paramètre de langue (%s) : %s"
#: mailcheck.c:433
msgid "You have mail in $_"
#: make_cmd.c:323
msgid "syntax error: arithmetic expression required"
-msgstr "Erreur de syntaxe : expression arithmétique nécessaire"
+msgstr "erreur de syntaxe : expression arithmétique nécessaire"
#: make_cmd.c:325
msgid "syntax error: `;' unexpected"
-msgstr "Erreur de syntaxe : « ; » non attendu"
+msgstr "erreur de syntaxe : « ; » non attendu"
#: make_cmd.c:326
#, c-format
msgid "syntax error: `((%s))'"
-msgstr "Erreur de syntaxe : « ((%s)) »"
+msgstr "erreur de syntaxe : « ((%s)) »"
-#: make_cmd.c:578
+#: make_cmd.c:575
#, c-format
msgid "make_here_document: bad instruction type %d"
msgstr "make_here_document : le type d'instruction %d est incorrect"
-#: make_cmd.c:662
+#: make_cmd.c:659
#, c-format
msgid "here-document at line %d delimited by end-of-file (wanted `%s')"
-msgstr ""
-"« here-document » à la ligne %d délimité par la fin du fichier (au lieu de « "
-"%s »)"
+msgstr "« here-document » à la ligne %d délimité par la fin du fichier (au lieu de « %s »)"
-#: make_cmd.c:759
+#: make_cmd.c:756
#, c-format
msgid "make_redirection: redirection instruction `%d' out of range"
msgstr "make_redirection : l'instruction de redirection « %d » est hors plage"
-#: parse.y:3173 parse.y:3448
+#: parse.y:3173 parse.y:3444
#, c-format
msgid "unexpected EOF while looking for matching `%c'"
-msgstr ""
-"Caractère de fin de fichier (EOF) prématuré lors de la recherche du « %c » "
-"correspondant"
+msgstr "caractère de fin de fichier (EOF) prématuré lors de la recherche du « %c » correspondant"
-#: parse.y:4038
+#: parse.y:4025
msgid "unexpected EOF while looking for `]]'"
-msgstr ""
-"Caractère de fin de fichier (EOF) prématuré lors de la recherche de « ]] »"
+msgstr "caractère de fin de fichier (EOF) prématuré lors de la recherche de « ]] »"
-#: parse.y:4043
+#: parse.y:4030
#, c-format
msgid "syntax error in conditional expression: unexpected token `%s'"
-msgstr ""
-"Erreur de syntaxe dans une expression conditionnelle : symbole « %s » "
-"inattendu"
+msgstr "erreur de syntaxe dans une expression conditionnelle : symbole « %s » inattendu"
-#: parse.y:4047
+#: parse.y:4034
msgid "syntax error in conditional expression"
-msgstr "Erreur de syntaxe dans une expression conditionnelle"
+msgstr "erreur de syntaxe dans une expression conditionnelle"
-#: parse.y:4125
+#: parse.y:4112
#, c-format
msgid "unexpected token `%s', expected `)'"
-msgstr "Symbole inattendu « %s » au lieu de « ) »"
+msgstr "symbole inattendu « %s » au lieu de « ) »"
-#: parse.y:4129
+#: parse.y:4116
msgid "expected `)'"
msgstr "« ) » attendu"
-#: parse.y:4157
+#: parse.y:4144
#, c-format
msgid "unexpected argument `%s' to conditional unary operator"
msgstr "argument inattendu « %s » pour l'opérateur conditionnel à un argument"
-#: parse.y:4161
+#: parse.y:4148
msgid "unexpected argument to conditional unary operator"
msgstr "argument inattendu pour l'opérateur conditionnel à un argument"
-#: parse.y:4207
+#: parse.y:4194
#, c-format
msgid "unexpected token `%s', conditional binary operator expected"
-msgstr "Symbole « %s » trouvé à la place d'un opérateur binaire conditionnel"
+msgstr "symbole « %s » trouvé à la place d'un opérateur binaire conditionnel"
-#: parse.y:4211
+#: parse.y:4198
msgid "conditional binary operator expected"
msgstr "opérateur binaire conditionnel attendu"
-#: parse.y:4233
+#: parse.y:4220
#, c-format
msgid "unexpected argument `%s' to conditional binary operator"
msgstr "argument « %s » inattendu pour l'opérateur binaire conditionnel"
-#: parse.y:4237
+#: parse.y:4224
msgid "unexpected argument to conditional binary operator"
msgstr "argument inattendu pour l'opérateur binaire conditionnel"
-#: parse.y:4248
+#: parse.y:4235
#, c-format
msgid "unexpected token `%c' in conditional command"
-msgstr "Symbole « %c » inattendu dans la commande conditionnelle"
+msgstr "symbole « %c » inattendu dans la commande conditionnelle"
-#: parse.y:4251
+#: parse.y:4238
#, c-format
msgid "unexpected token `%s' in conditional command"
-msgstr "Symbole « %s » inattendu dans la commande conditionnelle"
+msgstr "symbole « %s » inattendu dans la commande conditionnelle"
-#: parse.y:4255
+#: parse.y:4242
#, c-format
msgid "unexpected token %d in conditional command"
-msgstr "Symbole « %d » inattendu dans la commande conditionnelle"
+msgstr "symbole « %d » inattendu dans la commande conditionnelle"
-#: parse.y:5590
+#: parse.y:5566
#, c-format
msgid "syntax error near unexpected token `%s'"
-msgstr "Erreur de syntaxe près du symbole inattendu « %s »"
+msgstr "erreur de syntaxe près du symbole inattendu « %s »"
-#: parse.y:5608
+#: parse.y:5584
#, c-format
msgid "syntax error near `%s'"
-msgstr "Erreur de syntaxe près de « %s »"
+msgstr "erreur de syntaxe près de « %s »"
-#: parse.y:5618
+#: parse.y:5594
msgid "syntax error: unexpected end of file"
-msgstr "Erreur de syntaxe : fin de fichier prématurée"
+msgstr "erreur de syntaxe : fin de fichier prématurée"
-#: parse.y:5618
+#: parse.y:5594
msgid "syntax error"
-msgstr "Erreur de syntaxe"
+msgstr "erreur de syntaxe"
-#: parse.y:5680
+#: parse.y:5656
#, c-format
msgid "Use \"%s\" to leave the shell.\n"
msgstr "Utilisez « %s » pour quitter le shell.\n"
-#: parse.y:5842
+#: parse.y:5818
msgid "unexpected EOF while looking for matching `)'"
-msgstr ""
-"Caractère de fin de fichier (EOF) prématuré lors de la recherche d'un « ) » "
-"correspondant"
+msgstr "caractère de fin de fichier (EOF) prématuré lors de la recherche d'un « ) » correspondant"
-#: pcomplete.c:1079
+#: pcomplete.c:1030
#, c-format
msgid "completion: function `%s' not found"
msgstr "complètement : fonction « %s » non trouvée"
msgid "progcomp_insert: %s: NULL COMPSPEC"
msgstr "progcomp_insert : %s : NULL COMPSPEC"
-#: print_cmd.c:300
+#: print_cmd.c:296
#, c-format
msgid "print_command: bad connector `%d'"
msgstr "print_command : mauvais connecteur « %d »"
-#: print_cmd.c:373
+#: print_cmd.c:368
#, c-format
msgid "xtrace_set: %d: invalid file descriptor"
msgstr "xtrace_set : %d : descripteur de fichier non valable"
-#: print_cmd.c:378
+#: print_cmd.c:373
msgid "xtrace_set: NULL file pointer"
msgstr "xtrace_set : pointeur de fichier NULL"
-#: print_cmd.c:382
+#: print_cmd.c:377
#, c-format
msgid "xtrace fd (%d) != fileno xtrace fp (%d)"
msgstr "xtrace fd (%d) != fileno xtrace fp (%d)"
-#: print_cmd.c:1503
+#: print_cmd.c:1478
#, c-format
msgid "cprintf: `%c': invalid format character"
msgstr "cprintf : « %c » : caractère de format invalide"
#: redir.c:192
#, c-format
msgid "cannot create temp file for here-document: %s"
-msgstr ""
-"impossible de créer un fichier temporaire pour le « here-document » : %s"
+msgstr "impossible de créer un fichier temporaire pour le « here-document » : %s"
#: redir.c:196
#, c-format
msgid "/dev/(tcp|udp)/host/port not supported without networking"
msgstr "/dev/(tcp|udp)/host/port non pris en charge sans réseau"
-#: redir.c:818 redir.c:930 redir.c:993 redir.c:1142
+#: redir.c:818 redir.c:930 redir.c:993 redir.c:1136
msgid "redirection error: cannot duplicate fd"
-msgstr ""
-"Erreur de redirection : impossible de dupliquer le descripteur de fichier"
+msgstr "erreur de redirection : impossible de dupliquer le descripteur de fichier"
-#: shell.c:337
+#: shell.c:333
msgid "could not find /tmp, please create!"
msgstr "« /tmp » introuvable, veuillez le créer !"
-#: shell.c:341
+#: shell.c:337
msgid "/tmp must be a valid directory name"
msgstr "« /tmp » doit être un nom de répertoire correct"
-#: shell.c:888
+#: shell.c:884
#, c-format
msgid "%c%c: invalid option"
msgstr "%c%c : option non valable"
-#: shell.c:1662
+#: shell.c:1652
msgid "I have no name!"
msgstr "Je n'ai pas de nom !"
-#: shell.c:1807
+#: shell.c:1795
#, c-format
msgid "GNU bash, version %s-(%s)\n"
msgstr "GNU bash, version %s-(%s)\n"
-#: shell.c:1808
+#: shell.c:1796
#, c-format
msgid ""
"Usage:\t%s [GNU long option] [option] ...\n"
"Utilisation :\t%s [option longue GNU] [option] ...\n"
"\t%s [option longue GNU] [option] fichier-script ...\n"
-#: shell.c:1810
+#: shell.c:1798
msgid "GNU long options:\n"
msgstr "Options longues GNU :\n"
-#: shell.c:1814
+#: shell.c:1802
msgid "Shell options:\n"
msgstr "Options du shell :\n"
-#: shell.c:1815
+#: shell.c:1803
msgid "\t-irsD or -c command or -O shopt_option\t\t(invocation only)\n"
msgstr "\t-irsD ou -c commande ou -O shopt_option\t\t(invocation seulement)\n"
-#: shell.c:1830
+#: shell.c:1818
#, c-format
msgid "\t-%s or -o option\n"
msgstr "\t-%s ou -o option\n"
-#: shell.c:1836
+#: shell.c:1824
#, c-format
msgid "Type `%s -c \"help set\"' for more information about shell options.\n"
-msgstr ""
-"Pour en savoir plus sur les options du shell, tapez « %s -c \"help set\" ».\n"
+msgstr "Pour en savoir plus sur les options du shell, saisissez « %s -c \"help set\" ».\n"
-#: shell.c:1837
+#: shell.c:1825
#, c-format
msgid "Type `%s -c help' for more information about shell builtin commands.\n"
-msgstr ""
-"Pour en savoir plus sur les primitives du shell, tapez « %s -c help ».\n"
+msgstr "Pour en savoir plus sur les primitives du shell, saisissez « %s -c help ».\n"
-#: shell.c:1838
+#: shell.c:1826
#, c-format
msgid "Use the `bashbug' command to report bugs.\n"
msgstr "Utilisez la commande « bashbug » pour faire un rapport de bogue.\n"
-#: sig.c:647
+#: sig.c:638
#, c-format
msgid "sigprocmask: %d: invalid operation"
msgstr "sigprocmask : %d : operation non valable"
#: siglist.c:183
msgid "HFT input data pending"
-msgstr "Données d'entrée HFT en attente"
+msgstr "données d'entrée HFT en attente"
#: siglist.c:187
msgid "power failure imminent"
-msgstr "Coupure d'alimentation imminente"
+msgstr "coupure d'alimentation imminente"
#: siglist.c:191
msgid "system crash imminent"
-msgstr "Panne système imminente"
+msgstr "panne système imminente"
#: siglist.c:195
msgid "migrate process to another CPU"
-msgstr "Migration processus vers un autre CPU"
+msgstr "migration processus vers un autre CPU"
#: siglist.c:199
msgid "programming error"
msgid "Unknown Signal #%d"
msgstr "Signal n°%d inconnu"
-#: subst.c:1335 subst.c:1506
+#: subst.c:1333 subst.c:1502
#, c-format
msgid "bad substitution: no closing `%s' in %s"
msgstr "Mauvaise substitution : pas de « %s » de fermeture dans %s"
-#: subst.c:2801
+#: subst.c:2795
#, c-format
msgid "%s: cannot assign list to array member"
msgstr "%s : impossible d'affecter une liste à un élément de tableau"
-#: subst.c:4991 subst.c:5007
+#: subst.c:4979 subst.c:4995
msgid "cannot make pipe for process substitution"
-msgstr "Impossible de fabriquer un tube pour une substitution de processus"
+msgstr "impossible de fabriquer un tube pour une substitution de processus"
-#: subst.c:5039
+#: subst.c:5027
msgid "cannot make child for process substitution"
-msgstr "Impossible de fabriquer un fils pour une substitution de processus"
+msgstr "impossible de fabriquer un fils pour une substitution de processus"
-#: subst.c:5084
+#: subst.c:5072
#, c-format
msgid "cannot open named pipe %s for reading"
-msgstr "Impossible d'ouvrir le tube nommé « %s » en lecture"
+msgstr "impossible d'ouvrir le tube nommé « %s » en lecture"
-#: subst.c:5086
+#: subst.c:5074
#, c-format
msgid "cannot open named pipe %s for writing"
-msgstr "Impossible d'ouvrir le tube nommé « %s » en écriture"
+msgstr "impossible d'ouvrir le tube nommé « %s » en écriture"
-#: subst.c:5104
+#: subst.c:5092
#, c-format
msgid "cannot duplicate named pipe %s as fd %d"
-msgstr "Impossible de dupliquer le tube nommé « %s » vers le fd %d"
+msgstr "impossible de dupliquer le tube nommé « %s » vers le fd %d"
-#: subst.c:5296
+#: subst.c:5284
msgid "cannot make pipe for command substitution"
-msgstr "Impossible de fabriquer un tube pour une substitution de commande"
+msgstr "impossible de fabriquer un tube pour une substitution de commande"
-#: subst.c:5334
+#: subst.c:5322
msgid "cannot make child for command substitution"
-msgstr ""
-"Impossible de fabriquer un processus fils pour une substitution de commande"
+msgstr "impossible de fabriquer un processus fils pour une substitution de commande"
-#: subst.c:5351
+#: subst.c:5339
msgid "command_substitute: cannot duplicate pipe as fd 1"
msgstr "command_substitute : impossible de dupliquer le tube vers le fd 1"
-#: subst.c:5875
+#: subst.c:5859
#, c-format
msgid "%s: parameter null or not set"
msgstr "%s : paramètre vide ou non défini"
-#: subst.c:6141 subst.c:6156
+#: subst.c:6125 subst.c:6140
#, c-format
msgid "%s: substring expression < 0"
msgstr "%s : expression de sous-chaîne négative"
-#: subst.c:7284
+#: subst.c:7271
#, c-format
msgid "%s: bad substitution"
msgstr "%s : mauvaise substitution"
-#: subst.c:7361
+#: subst.c:7347
#, c-format
msgid "$%s: cannot assign in this way"
msgstr "$%s : affectation impossible de cette façon"
-#: subst.c:7697
-msgid ""
-"future versions of the shell will force evaluation as an arithmetic "
-"substitution"
-msgstr ""
-"Les versions futures du shell forceront l'évaluation comme une substitution "
-"arithmétique"
+#: subst.c:7684
+msgid "future versions of the shell will force evaluation as an arithmetic substitution"
+msgstr "Les versions futures du shell forceront l'évaluation comme une substitution arithmétique"
-#: subst.c:8165
+#: subst.c:8149
#, c-format
msgid "bad substitution: no closing \"`\" in %s"
msgstr "Mauvais remplacement : pas de « ` » de fermeture dans %s"
-#: subst.c:9056
+#: subst.c:9036
#, c-format
msgid "no match: %s"
-msgstr "Pas de correspondance : %s"
+msgstr "pas de correspondance : %s"
#: test.c:146
msgid "argument expected"
msgid "missing `]'"
msgstr "« ] » manquant"
-#: trap.c:209
+#: trap.c:207
msgid "invalid signal number"
-msgstr "Numéro de signal non valable"
+msgstr "numéro de signal non valable"
-#: trap.c:329
+#: trap.c:337
#, c-format
msgid "run_pending_traps: bad value in trap_list[%d]: %p"
msgstr "run_pending_traps : mauvaise valeur dans trap_list[%d] : %p"
-#: trap.c:333
+#: trap.c:341
#, c-format
-msgid ""
-"run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
-msgstr ""
-"run_pending_traps : le gestionnaire de signal est SIG_DFL, %d (%s) renvoyé à "
-"moi-même"
+msgid "run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
+msgstr "run_pending_traps : le gestionnaire de signal est SIG_DFL, %d (%s) renvoyé à moi-même"
-#: trap.c:379
+#: trap.c:393
#, c-format
msgid "trap_handler: bad signal %d"
msgstr "trap_handler : mauvais signal %d"
-#: variables.c:366
+#: variables.c:363
#, c-format
msgid "error importing function definition for `%s'"
msgstr "erreur lors de l'import de la définition de fonction pour « %s »"
-#: variables.c:764
+#: variables.c:755
#, c-format
msgid "shell level (%d) too high, resetting to 1"
msgstr "niveau de shell trop élevé (%d), initialisation à 1"
-#: variables.c:1941
+#: variables.c:1932
msgid "make_local_variable: no function context at current scope"
-msgstr ""
-"make_local_variable : aucun contexte de fonction dans le champ d'application "
-"actuel"
+msgstr "make_local_variable : aucun contexte de fonction dans le champ d'application actuel"
-#: variables.c:3192
+#: variables.c:3182
msgid "all_local_variables: no function context at current scope"
-msgstr ""
-"all_local_variables : aucun contexte de fonction dans le champ d'application "
-"actuel"
+msgstr "all_local_variables : aucun contexte de fonction dans le champ d'application actuel"
-#: variables.c:3437
+#: variables.c:3427
#, c-format
msgid "%s has null exportstr"
msgstr "%s a un « exportstr » vide"
-#: variables.c:3442 variables.c:3451
+#: variables.c:3432 variables.c:3441
#, c-format
msgid "invalid character %d in exportstr for %s"
msgstr "caractère %d non valable dans « exportstr » pour %s"
-#: variables.c:3457
+#: variables.c:3447
#, c-format
msgid "no `=' in exportstr for %s"
msgstr "Pas de « = » dans « exportstr » pour %s"
-#: variables.c:3917
+#: variables.c:3891
msgid "pop_var_context: head of shell_variables not a function context"
-msgstr ""
-"pop_var_context : le début de « shell_variables » n'est pas un contexte de "
-"fonction"
+msgstr "pop_var_context : le début de « shell_variables » n'est pas un contexte de fonction"
-#: variables.c:3930
+#: variables.c:3904
msgid "pop_var_context: no global_variables context"
msgstr "pop_var_context : aucun contexte à « global_variables »"
-#: variables.c:4004
+#: variables.c:3978
msgid "pop_scope: head of shell_variables not a temporary environment scope"
-msgstr ""
-"pop_scope : le début de « shell_variables » n'est pas un champ d'application "
-"temporaire d'environnement"
+msgstr "pop_scope : le début de « shell_variables » n'est pas un champ d'application temporaire d'environnement"
-#: variables.c:4821
+#: variables.c:4786
#, c-format
msgid "%s: %s: cannot open as FILE"
msgstr "%s : %s : impossible d'ouvrir comme FILE"
-#: variables.c:4826
+#: variables.c:4791
#, c-format
msgid "%s: %s: invalid value for trace file descriptor"
msgstr "%s : %s : valeur non valable pour un descripteur de fichier de trace"
msgstr "Copyright (C) 2011 Free Software Foundation, Inc."
#: version.c:47
-msgid ""
-"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-msgstr ""
-"Licence GPLv3+ : GNU GPL version 3 ou ultérieure <http://gnu.org/licenses/"
-"gpl.html>\n"
+msgid "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\n"
+msgstr "Licence GPLv3+ : GNU GPL version 3 ou ultérieure <http://gnu.org/licenses/gpl.html>\n"
#: version.c:86 version2.c:83
#, c-format
#: version.c:91 version2.c:88
#, c-format
msgid "This is free software; you are free to change and redistribute it.\n"
-msgstr ""
-"Ceci est un logiciel libre ; vous être libre de le modifier et de le "
-"redistribuer.\n"
+msgstr "Ceci est un logiciel libre ; vous être libre de le modifier et de le redistribuer.\n"
#: version.c:92 version2.c:89
#, c-format
msgid "There is NO WARRANTY, to the extent permitted by law.\n"
-msgstr ""
-"Aucune garantie n'est fournie, dans la mesure de ce que la loi autorise.\n"
+msgstr "Aucune garantie n'est fournie, dans la mesure de ce que la loi autorise.\n"
#: version2.c:86
#, c-format
#: version2.c:87
#, c-format
-msgid ""
-"License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-msgstr ""
-"Licence GPLv2+ : GNU GPL version 2 ou ultérieure <http://gnu.org/licenses/"
-"gpl.html>\n"
+msgid "License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>\n"
+msgstr "Licence GPLv2+ : GNU GPL version 2 ou ultérieure <http://gnu.org/licenses/gpl.html>\n"
#: xmalloc.c:91
#, c-format
msgstr "unalias [-a] nom [nom ...]"
#: builtins.c:51
-#, fuzzy
-msgid ""
-"bind [-lpsvPSVX] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-"
-"x keyseq:shell-command] [keyseq:readline-function or readline-command]"
-msgstr ""
-"bind [-lpvsPVS] [-m keymap] [-f nomfichier] [-q nom] [-u nom] [-r seqtouche] "
-"[-x seqtouche:commande-shell] [seqtouche:fonction-readline ou commande-"
-"readline]"
+msgid "bind [-lpvsPVS] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-x keyseq:shell-command] [keyseq:readline-function or readline-command]"
+msgstr "bind [-lpvsPVS] [-m keymap] [-f nomfichier] [-q nom] [-u nom] [-r seqtouche] [-x seqtouche:commande-shell] [seqtouche:fonction-readline ou commande-readline]"
#: builtins.c:54
msgid "break [n]"
#: builtins.c:103
msgid "fc [-e ename] [-lnr] [first] [last] or fc -s [pat=rep] [command]"
-msgstr ""
-"fc [-e ename] [-lnr] [premier] [dernier] ou fc -s [ancien=nouveau] [commande]"
+msgstr "fc [-e ename] [-lnr] [premier] [dernier] ou fc -s [ancien=nouveau] [commande]"
#: builtins.c:107
msgid "fg [job_spec]"
msgstr "help [-dms] [motif ...]"
#: builtins.c:121
-msgid ""
-"history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg "
-"[arg...]"
-msgstr ""
-"history [-c] [-d décalage] [n] ou history -anrw [nomfichier] ou history -ps "
-"arg [arg...]"
+msgid "history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg...]"
+msgstr "history [-c] [-d décalage] [n] ou history -anrw [nomfichier] ou history -ps arg [arg...]"
#: builtins.c:125
msgid "jobs [-lnprs] [jobspec ...] or jobs -x command [args]"
msgstr "disown [-h] [-ar] [jobspec ...]"
#: builtins.c:132
-msgid ""
-"kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l "
-"[sigspec]"
-msgstr ""
-"kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... ou kill -l "
-"[sigspec]"
+msgid "kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]"
+msgstr "kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... ou kill -l [sigspec]"
#: builtins.c:134
msgid "let arg [arg ...]"
msgstr "let arg [arg ...]"
#: builtins.c:136
-msgid ""
-"read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-N nchars] [-p "
-"prompt] [-t timeout] [-u fd] [name ...]"
-msgstr ""
-"read [-ers] [-a tableau] [-d delim] [-i texte] [-n nchars] [-N nchars] [-p "
-"prompt] [-t timeout] [-u fd] [nom ...]"
+msgid "read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [name ...]"
+msgstr "read [-ers] [-a tableau] [-d delim] [-i texte] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [nom ...]"
#: builtins.c:138
msgid "return [n]"
msgstr "type [-afptP] nom [nom ...]"
#: builtins.c:169
-#, fuzzy
-msgid "ulimit [-SHabcdefilmnpqrstuvxT] [limit]"
+msgid "ulimit [-SHacdefilmnpqrstuvx] [limit]"
msgstr "ulimit [-SHacdefilmnpqrstuvx] [limite]"
#: builtins.c:172
msgstr "umask [-p] [-S] [mode]"
#: builtins.c:175
-#, fuzzy
-msgid "wait [id ...]"
+msgid "wait [id]"
msgstr "wait [id]"
#: builtins.c:179
msgstr "case MOT in [MOTIF [| MOTIF]...) COMMANDES ;;]... esac"
#: builtins.c:192
-msgid ""
-"if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else "
-"COMMANDS; ] fi"
-msgstr ""
-"if COMMANDES; then COMMANDES; [ elif COMMANDES; then COMMANDES; ]... [ else "
-"COMMANDES; ] fi"
+msgid "if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else COMMANDS; ] fi"
+msgstr "if COMMANDES; then COMMANDES; [ elif COMMANDES; then COMMANDES; ]... [ else COMMANDES; ] fi"
#: builtins.c:194
msgid "while COMMANDS; do COMMANDS; done"
msgstr "printf [-v var] format [arguments]"
#: 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 ""
-"complete [-abcdefgjksuv] [-pr] [-DE] [-o option] [-A action] [-G motif_glob] "
-"[-W liste_mots] [-F fonction] [-C commande] [-X motif_filtre] [-P prefixe] "
-"[-S suffixe] [nom ...]"
+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 "complete [-abcdefgjksuv] [-pr] [-DE] [-o option] [-A action] [-G motif_glob] [-W liste_mots] [-F fonction] [-C commande] [-X motif_filtre] [-P prefixe] [-S suffixe] [nom ...]"
#: 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 ""
-"compgen [-abcdefgjksuv] [-o option] [-A action] [-G motif_glob] [-W "
-"liste_mots] [-F fonction] [-C commande] [-X motif_filtre] [-P prefixe] [-S "
-"suffixe] [mot]"
+msgid "compgen [-abcdefgjksuv] [-o option] [-A action] [-G globpat] [-W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [word]"
+msgstr "compgen [-abcdefgjksuv] [-o option] [-A action] [-G motif_glob] [-W liste_mots] [-F fonction] [-C commande] [-X motif_filtre] [-P prefixe] [-S suffixe] [mot]"
#: builtins.c:237
msgid "compopt [-o|+o option] [-DE] [name ...]"
msgstr "compopt [-o|+o option] [-DE] [nom ...]"
#: builtins.c:240
-msgid ""
-"mapfile [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c "
-"quantum] [array]"
-msgstr ""
-"mapfile [-n nombre] [-O origine] [-s nombre] [-t] [-u fd] [-C callback] [-c "
-"quantum] [tableau]"
+msgid "mapfile [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array]"
+msgstr "mapfile [-n nombre] [-O origine] [-s nombre] [-t] [-u fd] [-C callback] [-c quantum] [tableau]"
#: builtins.c:242
-msgid ""
-"readarray [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c "
-"quantum] [array]"
-msgstr ""
-"readarray [-n nombre] [-O origine] [-s nombre] [-t] [-u fd] [-C callback] [-"
-"c quantum] [tableau]"
+msgid "readarray [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array]"
+msgstr "readarray [-n nombre] [-O origine] [-s nombre] [-t] [-u fd] [-C callback] [-c quantum] [tableau]"
#: builtins.c:254
msgid ""
" -p\tPrint all defined aliases in a reusable format\n"
" \n"
" Exit Status:\n"
-" alias returns true unless a NAME is supplied for which no alias has "
-"been\n"
+" alias returns true unless a NAME is supplied for which no alias has been\n"
" defined."
msgstr ""
"Définit ou affiche des alias.\n"
" \n"
-" Sans argument, « alias » affiche la liste des alias avec le format "
-"réutilisable\n"
+" Sans argument, « alias » affiche la liste des alias avec le format réutilisable\n"
" « alias NOM=VALEUR » sur la sortie standard.\n"
" \n"
-" Sinon, un alias est définit pour chaque NOM dont la VALEUR est donnée.\n"
-" Une espace à la fin de la VALEUR entraine le remplacement d'alias dans "
-"le mot\n"
+" Sinon, un alias est défini pour chaque NOM dont la VALEUR est donnée.\n"
+" Une espace à la fin de la VALEUR entraine le remplacement d'alias dans le mot\n"
" suivant, lorsque l'alias est développé.\n"
" \n"
" Options :\n"
" -p\tAfficher tous les alias actuels dans un format réutilisable\n"
" \n"
" Code de sortie :\n"
-" « alias » renvoie la valeur vraie à moins que NOM ne soit fourni et que "
-"celui-ci n'aie\n"
+" « alias » renvoie la valeur vraie à moins que NOM ne soit fourni et que celui-ci n'aie\n"
" pas d'alias."
#: builtins.c:276
" Renvoie le code de succès à moins que NOM ne soit pas un alias existant."
#: builtins.c:289
-#, fuzzy
msgid ""
"Set Readline key bindings and variables.\n"
" \n"
" Options:\n"
" -m keymap Use KEYMAP as the keymap for the duration of this\n"
" command. Acceptable keymap names are emacs,\n"
-" emacs-standard, emacs-meta, emacs-ctlx, vi, vi-"
-"move,\n"
+" emacs-standard, emacs-meta, emacs-ctlx, vi, vi-move,\n"
" vi-command, and vi-insert.\n"
" -l List names of functions.\n"
" -P List function names and bindings.\n"
" -p List functions and bindings in a form that can be\n"
" reused as input.\n"
-" -S List key sequences that invoke macros and their "
-"values\n"
-" -s List key sequences that invoke macros and their "
-"values\n"
+" -S List key sequences that invoke macros and their values\n"
+" -s List key sequences that invoke macros and their values\n"
" in a form that can be reused as input.\n"
" -V List variable names and values\n"
" -v List variable names and values in a form that can\n"
" be reused as input.\n"
" -q function-name Query about which keys invoke the named function.\n"
-" -u function-name Unbind all keys which are bound to the named "
-"function.\n"
+" -u function-name Unbind all keys which are bound to the named function.\n"
" -r keyseq Remove the binding for KEYSEQ.\n"
" -f filename Read key bindings from FILENAME.\n"
" -x keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
" \t\t\t\tKEYSEQ is entered.\n"
-" -X\t\t List key sequences bound with -x and associated commands\n"
-" in a form that can be reused as input.\n"
" \n"
" Exit Status:\n"
" bind returns 0 unless an unrecognized option is given or an error occurs."
msgstr ""
"Définit les associations de touches et les variables de « Readline ».\n"
" \n"
-" Associe une séquence de touches à une fonction « Readline » ou définit "
-"une\n"
-" variable « Readline ». Les arguments non-options suivent une syntaxe "
-"équivalente à celle\n"
-" du fichier ~/.inputrc, mais doivent être transmis comme arguments "
-"uniques :\n"
+" Associe une séquence de touches à une fonction « Readline » ou définit une\n"
+" variable « Readline ». Les arguments non-options suivent une syntaxe équivalente à celle\n"
+" du fichier ~/.inputrc, mais doivent être transmis comme arguments uniques :\n"
" ex : bind '\"\\C-x\\C-r\" : re-read-init-file'.\n"
" Options :\n"
" -m keymap Utilise KEYMAP comme mappage clavier pendant la\n"
-" durée de cette commande. Des noms de mappage "
-"valables sont « emacs », « emacs-standard », « emacs-"
-"meta », \n"
-" « emacs-ctlx », « vi », « vi-move », « vi-command » "
-"et\n"
+" durée de cette commande. Des noms de mappage valables sont « emacs », « emacs-standard », « emacs-meta », \n"
+" « emacs-ctlx », « vi », « vi-move », « vi-command » et\n"
" « vi-insert ».\n"
" -l Affiche les noms de fonctions.\n"
" -P Affiche les noms et associations des fonctions.\n"
-" -p Affiche les fonctions et associations dans une "
-"forme qui\n"
+" -p Affiche les fonctions et associations dans une forme qui\n"
" peut être réutilisée comme entrée.\n"
-" -S Affiche les séquences de touches qui invoquent des "
-"macros,\n"
+" -S Affiche les séquences de touches qui invoquent des macros,\n"
" et leurs valeurs.\n"
-" -s Affiche les séquences de touches qui invoquent des "
-"macros,\n"
-" et leurs valeurs sous une forme qui peut être "
-"utilisée comme entrée. -r seqtouche Enlève l'association pour "
-"« seqtouche ».\n"
+" -s Affiche les séquences de touches qui invoquent des macros,\n"
+" et leurs valeurs sous une forme qui peut être utilisée comme entrée. -r seqtouche Enlève l'association pour « seqtouche ».\n"
" -V Affiche les noms et valeurs des variables\n"
-" -v Affiche les noms et valeurs des variables dans une "
-"forme qui peut\n"
+" -v Affiche les noms et valeurs des variables dans une forme qui peut\n"
" être réutilisée comme entrée.\n"
-" -q nom-fonction Permet de savoir quelles touches appellent la "
-"fonction.\n"
-" -u nom-fonction Enlève toutes les associations de touches liée à la "
-"fonction.\n"
+" -q nom-fonction Permet de savoir quelles touches appellent la fonction.\n"
+" -u nom-fonction Enlève toutes les associations de touches liée à la fonction.\n"
" -r seqtouches Supprime l'association pour SEQTOUCHES.\n"
" -f nomfichier Lit l'association de touches depuis NOMFICHIER.\n"
-" -x seqtouche:commande-shell\tEntraîne l'exécution de la commande-"
-"shell\n"
+" -x seqtouche:commande-shell\tEntraîne l'exécution de la commande-shell\n"
" \t\t\t\tlorsque « seqtouche » est entrée.\n"
" \n"
" Code de sortie :\n"
-" « bind » renvoie 0 à moins qu'une option non reconnue ne soit donnée "
-"ou qu'une erreur ne survienne."
+" « bind » renvoie 0 à moins qu'une option non reconnue ne soit donnée ou qu'une erreur ne survienne."
-#: builtins.c:328
+#: builtins.c:326
msgid ""
"Exit for, while, or until loops.\n"
" \n"
msgstr ""
"Sort des boucles for, while, ou until.\n"
" \n"
-" Sort d'une boucle FOR, WHILE ou UNTIL. Si N est spécifié, sort de N "
-"boucles\n"
+" Sort d'une boucle FOR, WHILE ou UNTIL. Si N est spécifié, sort de N boucles\n"
" imbriquées.\n"
" \n"
" Code de retour :\n"
" Le code de retour est 0 à moins que N ne soit pas supérieur ou égal à 1."
-#: builtins.c:340
+#: builtins.c:338
msgid ""
"Resume for, while, or until loops.\n"
" \n"
msgstr ""
"Reprend l'exécution des boucles for, while ou until.\n"
" \n"
-" Reprend l'itération suivante de la boucle FOR, WHILE ou UNTIL de niveau "
-"supérieur.\n"
+" Reprend l'itération suivante de la boucle FOR, WHILE ou UNTIL de niveau supérieur.\n"
" Si N est précisé, reprend à N-ième boucle supérieure.\n"
" \n"
" Code de sortie :\n"
" Le code de sortie est 0 à moins que N ne soit pas supérieur ou égale à 1."
-#: builtins.c:352
+#: builtins.c:350
msgid ""
"Execute shell builtins.\n"
" \n"
" Execute SHELL-BUILTIN with arguments ARGs without performing command\n"
" lookup. This is useful when you wish to reimplement a shell builtin\n"
-" as a shell function, but need to execute the builtin within the "
-"function.\n"
+" as a shell function, but need to execute the builtin within the function.\n"
" \n"
" Exit Status:\n"
" Returns the exit status of SHELL-BUILTIN, or false if SHELL-BUILTIN is\n"
msgstr ""
"Exécute des commandes shell intégrées.\n"
" \n"
-" Exécute SHELL-BUILTIN avec les arguments ARGs sans effectuer de "
-"recherche\n"
-" de commande. Ceci est utile lorsque vous souhaitez remplacer une "
-"commande\n"
-" intégrée par une fonction shell, mais nécessite d'exécuter la commande "
-"intégrée\n"
+" Exécute SHELL-BUILTIN avec les arguments ARGs sans effectuer de recherche\n"
+" de commande. Ceci est utile lorsque vous souhaitez remplacer une commande\n"
+" intégrée par une fonction shell, mais nécessite d'exécuter la commande intégrée\n"
" dans la fonction.\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de retour de SHELL-BUILTIN, ou false si SHELL-BUILTIN "
-"n'est\n"
+" Renvoie le code de retour de SHELL-BUILTIN, ou false si SHELL-BUILTIN n'est\n"
" pas une commande intégrée.."
-#: builtins.c:367
+#: builtins.c:365
msgid ""
"Return the context of the current subroutine call.\n"
" \n"
"Renvoie le contexte de l'appel de sous-routine actuel.\n"
" \n"
" Sans EXPR, renvoie « $ligne $nomfichier ». Avec EXPR,\n"
-" renvoie « $ligne $sousroutine $nomfichier »; ces informations "
-"supplémentaires\n"
+" renvoie « $ligne $sousroutine $nomfichier »; ces informations supplémentaires\n"
" peuvent être utilisées pour fournir une trace de la pile.\n"
" \n"
-" La valeur de EXPR indique le nombre de cadres d'appels duquel il faut "
-"revenir en arrière\n"
+" La valeur de EXPR indique le nombre de cadres d'appels duquel il faut revenir en arrière\n"
" avant le cadre actuel ; le cadre supérieur est le cadre 0.\n"
" \n"
" Code de sortie :\n"
-" Renvoie 0 à moins que le shell ne soit pas en train d'exécuter une "
-"fonction ou que EXPR\n"
+" Renvoie 0 à moins que le shell ne soit pas en train d'exécuter une fonction ou que EXPR\n"
" ne soit pas valable."
-#: builtins.c:385
-#, fuzzy
+#: builtins.c:383
msgid ""
"Change the shell working directory.\n"
" \n"
-" Change the current directory to DIR. The default DIR is the value of "
-"the\n"
+" Change the current directory to DIR. The default DIR is the value of the\n"
" HOME shell variable.\n"
" \n"
-" The variable CDPATH defines the search path for the directory "
-"containing\n"
-" DIR. Alternative directory names in CDPATH are separated by a colon "
-"(:).\n"
-" A null directory name is the same as the current directory. If DIR "
-"begins\n"
+" The variable CDPATH defines the search path for the directory containing\n"
+" DIR. Alternative directory names in CDPATH are separated by a colon (:).\n"
+" A null directory name is the same as the current directory. If DIR begins\n"
" with a slash (/), then CDPATH is not used.\n"
" \n"
-" If the directory is not found, and the shell option `cdable_vars' is "
-"set,\n"
-" the word is assumed to be a variable name. If that variable has a "
-"value,\n"
+" If the directory is not found, and the shell option `cdable_vars' is set,\n"
+" the word is assumed to be a variable name. If that variable has a value,\n"
" its value is used for DIR.\n"
" \n"
" Options:\n"
-" -L\tforce symbolic links to be followed: resolve symbolic links in\n"
-" \tDIR after processing instances of `..'\n"
+" -L\tforce symbolic links to be followed\n"
" -P\tuse the physical directory structure without following symbolic\n"
-" \tlinks: resolve symbolic links in DIR before processing instances\n"
-" \tof `..'\n"
+" \tlinks\n"
" -e\tif the -P option is supplied, and the current working directory\n"
" \tcannot be determined successfully, exit with a non-zero status\n"
" \n"
" The default is to follow symbolic links, as if `-L' were specified.\n"
-" `..' is processed by removing the immediately previous pathname "
-"component\n"
-" back to a slash or the beginning of DIR.\n"
" \n"
" Exit Status:\n"
-" Returns 0 if the directory is changed, and if $PWD is set successfully "
-"when\n"
+" Returns 0 if the directory is changed, and if $PWD is set successfully when\n"
" -P is used; non-zero otherwise."
msgstr ""
"Change le répertoire de travail du shell.\n"
" \n"
" Change le répertoire actuel vers DIR. Le répertoire DIR par défaut\n"
" est donné par la variable « $HOME ». \n"
-" La variable CDPATH définit le chemin de recherche du répertoire "
-"contenant\n"
-" DIR. Les noms de répertoires alternatifs dans CDPATH sont séparés par un "
-"deux-point « : ».\n"
-" Un nom de répertoire vide est identique au répertoire actuel. Si DIR "
-"commence\n"
+" La variable CDPATH définit le chemin de recherche du répertoire contenant\n"
+" DIR. Les noms de répertoires alternatifs dans CDPATH sont séparés par un deux-point « : ».\n"
+" Un nom de répertoire vide est identique au répertoire actuel. Si DIR commence\n"
" avec une barre oblique « / », alors CDPATH n'est pas utilisé.\n"
" \n"
-" Si le répertoire n'est pas trouvé et que l'option « cdable_vars » du "
-"shell est définie,\n"
-" alors le mot est essayé comme nom de variable. Si la variable possède "
-"une valeur,\n"
+" Si le répertoire n'est pas trouvé et que l'option « cdable_vars » du shell est définie,\n"
+" alors le mot est essayé comme nom de variable. Si la variable possède une valeur,\n"
" alors cette valeur est utilisée pour DIR.\n"
" \n"
" Options :\n"
" -L\tforcer le suivi des liens symboliques.\n"
" -P\tutiliser la structure physique des répertoires sans suivre\n"
" les liens symboliques\n"
-" -e\tsi l'option -P est fournie et que le répertoire de travail "
-"actuel ne peut pas\n"
-" \têtre déterminé avec succès, alors sortir avec un code de retour non "
-"nul\n"
+" -e\tsi l'option -P est fournie et que le répertoire de travail actuel ne peut pas\n"
+" \têtre déterminé avec succès, alors sortir avec un code de retour non nul\n"
" \n"
-" Le comportement par défaut est de suivre les liens symboliques, comme si "
-"« -L » était précisé.\n"
+" Le comportement par défaut est de suivre les liens symboliques, comme si « -L » était précisé.\n"
" \n"
" Code de sortie :\n"
-" Renvoie 0 si le répertoire est changé et si $PWD est correctement "
-"défini\n"
+" Renvoie 0 si le répertoire est changé et si $PWD est correctement défini\n"
" quand -P est utilisé ; sinon autre chose que 0."
-#: builtins.c:420
+#: builtins.c:414
msgid ""
"Print the name of the current working directory.\n"
" \n"
"Affiche le nom du répertoire de travail courant.\n"
" \n"
" Options :\n"
-" -L\taffiche la valeur de $PWD s'il nomme le répertoire de travail "
-"courant\n"
+" -L\taffiche la valeur de $PWD s'il nomme le répertoire de travail courant\n"
" \t\n"
" -P\taffiche le répertoire physique, sans aucun lien symbolique\n"
" \n"
" Par défaut, « pwd » se comporte comme si « -L » était spécifié.\n"
" \n"
" Code de retour :\n"
-" Renvoie 0 à moins qu'une option non valable ne soit donnée ou que le "
-"répertoire\n"
+" Renvoie 0 à moins qu'une option non valable ne soit donnée ou que le répertoire\n"
" courant ne peut pas être lu."
-#: builtins.c:437
+#: builtins.c:431
msgid ""
"Null command.\n"
" \n"
" Code de retour :\n"
" Renvoie toujours le code de succès."
-#: builtins.c:448
+#: builtins.c:442
msgid ""
"Return a successful result.\n"
" \n"
" Code de retour :\n"
" Succès."
-#: builtins.c:457
+#: builtins.c:451
msgid ""
"Return an unsuccessful result.\n"
" \n"
" Code de sortie :\n"
" Toujours l'échec."
-#: builtins.c:466
+#: builtins.c:460
msgid ""
"Execute a simple command or display information about commands.\n"
" \n"
" Runs COMMAND with ARGS suppressing shell function lookup, or display\n"
-" information about the specified COMMANDs. Can be used to invoke "
-"commands\n"
+" information about the specified COMMANDs. Can be used to invoke commands\n"
" on disk when a function with the same name exists.\n"
" \n"
" Options:\n"
msgstr ""
"Exécute une simple commande ou affiche des informations sur les commandes.\n"
" \n"
-" Lance la COMMANDE avec des ARGS en court-circuitant la recherche de "
-"commande, ou affiche\n"
-" des informations sur les COMMANDEs spécifiées. Ceci peut être utilisé "
-"pour invoquer des commandes\n"
-" sur le disque lorsqu'il y a conflit avec une fonction portant le même "
-"nom.\n"
+" Lance la COMMANDE avec des ARGS en court-circuitant la recherche de commande, ou affiche\n"
+" des informations sur les COMMANDEs spécifiées. Ceci peut être utilisé pour invoquer des commandes\n"
+" sur le disque lorsqu'il y a conflit avec une fonction portant le même nom.\n"
" \n"
" Options :\n"
" -p\tutilise une valeur par défaut pour CHEMIN qui garantit de trouver\n"
" \ttous les utilitaires standards\n"
-" -v\taffiche une description de la COMMANDE similaire à la commande "
-"intégrée « type »\n"
+" -v\taffiche une description de la COMMANDE similaire à la commande intégrée « type »\n"
" -V\taffiche une description plus détaillées de chaque COMMANDE\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de sortie de la COMMANDE, ou le code d'échec si la "
-"COMMANDE est introuvable."
+" Renvoie le code de sortie de la COMMANDE, ou le code d'échec si la COMMANDE est introuvable."
-#: builtins.c:485
+#: builtins.c:479
msgid ""
"Set variable values and attributes.\n"
" \n"
" Variables with the integer attribute have arithmetic evaluation (see\n"
" the `let' command) performed when the variable is assigned a value.\n"
" \n"
-" When used in a function, `declare' makes NAMEs local, as with the "
-"`local'\n"
+" When used in a function, `declare' makes NAMEs local, as with the `local'\n"
" command. The `-g' option suppresses this behavior.\n"
" \n"
" Exit Status:\n"
msgstr ""
"Définit les valeurs et les attributs des variables.\n"
" \n"
-" Permet de déclarer des variables et de leur donner des attributs. Si "
-"aucun NOM n'est donné,\n"
+" Permet de déclarer des variables et de leur donner des attributs. Si aucun NOM n'est donné,\n"
" affiche les attributs et les valeurs de toutes les variables.\n"
" \n"
" Options :\n"
-" -f\trestreint l'action ou l'affichage aux noms et définitions de "
-"fonctions\n"
-" -F\trestreint l'affichage aux noms des fonctions uniquement (avec le "
-"numéro de ligne\n"
+" -f\trestreint l'action ou l'affichage aux noms et définitions de fonctions\n"
+" -F\trestreint l'affichage aux noms des fonctions uniquement (avec le numéro de ligne\n"
" \tet le fichier source lors du débogage)\n"
-" -g\tcrée des variables globales lorsqu'utilisée dans une fonction "
-"shell ; ignoré sinon\n"
+" -g\tcrée des variables globales lorsqu'utilisée dans une fonction shell ; ignoré sinon\n"
" -p\taffiche les attributs et la valeur de chaque NOM\n"
" \n"
" Options qui définissent des attributs :\n"
" \n"
" Utiliser « + » au lieu de « - » permet de désactiver l'attribut donné.\n"
" \n"
-" Les variables avec l'attribut « integer » ont une évaluation "
-"arithmétique (voir\n"
-" la commande « let ») effectuée lorsqu'un valeur est affectée à la "
-"variable.\n"
+" Les variables avec l'attribut « integer » ont une évaluation arithmétique (voir\n"
+" la commande « let ») effectuée lorsqu'un valeur est affectée à la variable.\n"
" \n"
-" Lorsqu'utilisée dans une fonction, « declare » permet aux NOMs d'être "
-"locaux,\n"
-" comme avec la commande « local ». L'option « -g » supprime ce "
-"comportement.\n"
+" Lorsqu'utilisée dans une fonction, « declare » permet aux NOMs d'être locaux,\n"
+" comme avec la commande « local ». L'option « -g » supprime ce comportement.\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de succès à moins qu'un option non valable soit fournie "
-"ou qu'une erreur ne survienne."
+" Renvoie le code de succès à moins qu'un option non valable soit fournie ou qu'une erreur ne survienne."
-#: builtins.c:523
+#: builtins.c:517
msgid ""
"Set variable values and attributes.\n"
" \n"
" \n"
" Obsolète. Essayez « help declare »."
-#: builtins.c:531
+#: builtins.c:525
msgid ""
"Define local variables.\n"
" \n"
msgstr ""
"Définit des variables locales.\n"
" \n"
-" Crée une variable locale nommée NOM, avec une valeur VALEUR. OPTION "
-"peut\n"
+" Crée une variable locale nommée NOM, avec une valeur VALEUR. OPTION peut\n"
" être n'importe quelle option acceptée par « declare ».\n"
" \n"
-" Les variables locales peut seulement être utilisée à l'intérieur d'une "
-"fonction; elles ne sont visibles\n"
-" que des fonctions où elles ont été définies et dans ses fonctions "
-"filles.\n"
+" Les variables locales peut seulement être utilisée à l'intérieur d'une fonction; elles ne sont visibles\n"
+" que des fonctions où elles ont été définies et dans ses fonctions filles.\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de succès à moins qu'une option non valable ne soit "
-"fournie, qu'une erreur ne survienne,\n"
+" Renvoie le code de succès à moins qu'une option non valable ne soit fournie, qu'une erreur ne survienne,\n"
" ou que l'inteprète ne soit pas dans une fonction."
-#: builtins.c:548
-#, fuzzy
+#: builtins.c:542
msgid ""
"Write arguments to the standard output.\n"
" \n"
-" Display the ARGs, separated by a single space character and followed by "
-"a\n"
-" newline, on the standard output.\n"
+" Display the ARGs on the standard output followed by a newline.\n"
" \n"
" Options:\n"
" -n\tdo not append a newline\n"
" \\b\tbackspace\n"
" \\c\tsuppress further output\n"
" \\e\tescape character\n"
-" \\E\tescape character\n"
" \\f\tform feed\n"
" \\n\tnew line\n"
" \\r\tcarriage return\n"
" \n"
" Options :\n"
" -n\tne pas ajouter de saut de ligne\n"
-" -e\tactive l'interpretation des barres contre-obliques d'échappement "
-"ci-dessous\n"
-" -E\tsupprime explicitement l'interpretation des barres contre-obliques "
-"d'échappement\n"
+" -e\tactive l'interpretation des barres contre-obliques d'échappement ci-dessous\n"
+" -E\tsupprime explicitement l'interpretation des barres contre-obliques d'échappement\n"
" \n"
-" « echo » interprète les caractères suivants comme des séquences "
-"d'échappement :\n"
+" « echo » interprète les caractères suivants comme des séquences d'échappement :\n"
" \\a\talerte (cloche)\n"
" \\b\tretour arrière\n"
" \\c\tsupprime caractère suivant\n"
" \\t\ttabulation horizontale\n"
" \\v\ttabulation verticale\n"
" \\\\\tbarre contre-oblique\n"
-" \\0nnn\tle caractère dont le code ASCII est NNN (en octal). NNN peut "
-"être\n"
+" \\0nnn\tle caractère dont le code ASCII est NNN (en octal). NNN peut être\n"
" \tlong de 0 à 3 chiffres octaux\n"
" \\xHH\tle caractère à 8 bits dont la valeur est HH (hexadecimal). HH\n"
" \tpeut être long de 1 ou 2 chiffres hexadécimaux\n"
" Code de sortie :\n"
" Renvoie le code de succès à moins qu'une erreur ne survienne."
-#: builtins.c:584
+#: builtins.c:576
msgid ""
"Write arguments to the standard output.\n"
" \n"
" Code de sortie :\n"
" Renvoie le code de succès à moins qu'une erreur ne survienne."
-#: builtins.c:599
+#: builtins.c:591
msgid ""
"Enable and disable shell builtins.\n"
" \n"
msgstr ""
"Active et désactive les commandes intégrées.\n"
" \n"
-" Active et désactive les commandes intégrées du shell. Les désactiver "
-"vous permet\n"
-" d'exécuter une commande du disque ayant le même nom qu'une commande du "
-"shell\n"
+" Active et désactive les commandes intégrées du shell. Les désactiver vous permet\n"
+" d'exécuter une commande du disque ayant le même nom qu'une commande du shell\n"
" sans utiliser le chemin compler vers le fichier.\n"
" \n"
" Options :\n"
-" -a\taffiche la liste des commandes intégrées et leur état "
-"d'activation\n"
-" -n\tdésactive chaque NOM ou affiche la liste des commandes "
-"désactivées\n"
+" -a\taffiche la liste des commandes intégrées et leur état d'activation\n"
+" -n\tdésactive chaque NOM ou affiche la liste des commandes désactivées\n"
" -p\taffiche la liste des commandes dans un format réutilisable\n"
-" -s\taffiche seulement les noms des commandes Posix de type « special "
-"»\n"
+" -s\taffiche seulement les noms des commandes Posix de type « special »\n"
" \n"
" Options contrôlant le chargement dynamique :\n"
-" -f\tCharge la commande intégrée NOM depuis la bibliothèque partagée "
-"FILENAME\n"
+" -f\tCharge la commande intégrée NOM depuis la bibliothèque partagée FILENAME\n"
" -d\tDécharge une commande chargée avec « -f »\n"
" \n"
" S'il n'y a pas d'option, chaque commande NOM est activée.\n"
" \n"
-" Pour utiliser le « test » trouvé dans $PATH au lieu de celui intégré au "
-"shell,\n"
-" tapez « enable -n test ».\n"
+" Pour utiliser le « test » trouvé dans $PATH au lieu de celui intégré au shell,\n"
+" saisissez « enable -n test ».\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins que NOM ne soit pas une commande "
-"intégrée ou qu'une erreur ne survienne."
+" Renvoie le code de succès à moins que NOM ne soit pas une commande intégrée ou qu'une erreur ne survienne."
-#: builtins.c:627
+#: builtins.c:619
msgid ""
"Execute arguments as a shell command.\n"
" \n"
-" Combine ARGs into a single string, use the result as input to the "
-"shell,\n"
+" Combine ARGs into a single string, use the result as input to the shell,\n"
" and execute the resulting commands.\n"
" \n"
" Exit Status:\n"
msgstr ""
"Exécute des arguments comme s'ils étaient une commande du shell.\n"
" \n"
-" Combine des ARGs en une chaîne unique, utilise le résultat comme entrée "
-"du shell,\n"
+" Combine des ARGs en une chaîne unique, utilise le résultat comme entrée du shell,\n"
" puis exécute la commande résultante.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le même code de sortie que la commande, ou le code de succès si "
-"la commande est vide."
+" Renvoie le même code de sortie que la commande, ou le code de succès si la commande est vide."
-#: builtins.c:639
+#: builtins.c:631
msgid ""
"Parse option arguments.\n"
" \n"
" argument séparé d'elle par une espace.\n"
" \n"
" À chaque fois qu'elle est appelée, « getopts » place l'option suivante\n"
-" dans la variable de shell « $nom », en l'initialisant si elle n'existe "
-"pas,\n"
-" et place l'index de l'argument suivant dans la variable de shell "
-"OPTIND.\n"
-" OPTIND est initialisé à 1 à chaque fois que le shell ou qu'un script "
-"shell\n"
-" est appelé. Lorsqu'une option nécessite un argument, « getopts » place "
-"cet\n"
+" dans la variable de shell « $nom », en l'initialisant si elle n'existe pas,\n"
+" et place l'index de l'argument suivant dans la variable de shell OPTIND.\n"
+" OPTIND est initialisé à 1 à chaque fois que le shell ou qu'un script shell\n"
+" est appelé. Lorsqu'une option nécessite un argument, « getopts » place cet\n"
" argument dans la variable de shell OPTARG.\n"
" \n"
-" « getopts » signale les erreurs d'une façon parmi deux. Si le premier "
-"caractère\n"
-" d'OPTSTRING est un deux-points, « getopts » utilise un signalement "
-"d'erreur\n"
-" silencieux. Dans ce mode aucun message d'erreur n'est affiché. Si une "
-"option\n"
-" incorrecte est rencontrée, « getopts » place dans OPTARG le caractère "
-"d'option\n"
-" trouvé. Si un argument nécessaire n'est pas trouvé, « getopts » place un "
-"« : »\n"
-" dans NOM et place dans OPTARG le caractère d'option trouvé. Si « "
-"getopts »\n"
-" n'est pas en mode silencieux et qu'une option incorrecte est rencontrée, "
-"il\n"
-" place « ? » dans NAME et efface OPTARG. Si un argument nécessaire n'est "
-"pas\n"
-" trouvé, un « ? » est placé dans NAME, OPTARG est effacé et un message de "
-"diagnostic\n"
+" « getopts » signale les erreurs d'une façon parmi deux. Si le premier caractère\n"
+" d'OPTSTRING est un deux-points, « getopts » utilise un signalement d'erreur\n"
+" silencieux. Dans ce mode aucun message d'erreur n'est affiché. Si une option\n"
+" incorrecte est rencontrée, « getopts » place dans OPTARG le caractère d'option\n"
+" trouvé. Si un argument nécessaire n'est pas trouvé, « getopts » place un « : »\n"
+" dans NOM et place dans OPTARG le caractère d'option trouvé. Si « getopts »\n"
+" n'est pas en mode silencieux et qu'une option incorrecte est rencontrée, il\n"
+" place « ? » dans NAME et efface OPTARG. Si un argument nécessaire n'est pas\n"
+" trouvé, un « ? » est placé dans NAME, OPTARG est effacé et un message de diagnostic\n"
" est affiché.\n"
" \n"
-" Si la variable de shell OPTERR possède la valeur 0, « getopts » "
-"désactive\n"
-" l'affichage des messages d'erreur, même si le premier caractère "
-"d'OPTSTRING\n"
+" Si la variable de shell OPTERR possède la valeur 0, « getopts » désactive\n"
+" l'affichage des messages d'erreur, même si le premier caractère d'OPTSTRING\n"
" n'est pas un deux-points. OPTERR possède la valeur 1 par défaut.\n"
" \n"
-" « getopts » analyse habituellement les paramètres de position ($0 - $9), "
-"mais\n"
+" « getopts » analyse habituellement les paramètres de position ($0 - $9), mais\n"
" si plus d'argument sont données, ils sont analysés à la place.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès si une option est trouvée, le code d'échec si "
-"la fin des options\n"
+" Renvoie le code de succès si une option est trouvée, le code d'échec si la fin des options\n"
" est rencontrée ou si une erreur survient."
-#: builtins.c:681
+#: builtins.c:673
msgid ""
"Replace the shell with the given command.\n"
" \n"
" Execute COMMAND, replacing this shell with the specified program.\n"
-" ARGUMENTS become the arguments to COMMAND. If COMMAND is not "
-"specified,\n"
+" ARGUMENTS become the arguments to COMMAND. If COMMAND is not specified,\n"
" any redirections take effect in the current shell.\n"
" \n"
" Options:\n"
" -c\t\texecute COMMAND with an empty environment\n"
" -l\t\tplace a dash in the zeroth argument to COMMAND\n"
" \n"
-" If the command cannot be executed, a non-interactive shell exits, "
-"unless\n"
+" If the command cannot be executed, a non-interactive shell exits, unless\n"
" the shell option `execfail' is set.\n"
" \n"
" Exit Status:\n"
-" Returns success unless COMMAND is not found or a redirection error "
-"occurs."
+" Returns success unless COMMAND is not found or a redirection error occurs."
msgstr ""
"Remplace le shell par la commande fournie.\n"
" \n"
" Exécute la COMMANDE, en remplaçant ce shell par le programme spécifiée.\n"
-" Les ARGUMENTS deviennent ceux de la COMMANDE. Si la COMMANDE n'est pas "
-"fournie,\n"
+" Les ARGUMENTS deviennent ceux de la COMMANDE. Si la COMMANDE n'est pas fournie,\n"
" les redirections prennent effet dans le shell courant.\n"
" \n"
" Options :\n"
" -c\t\texécute la COMMANDE avec un environnement vide\n"
" -l\t\tplace un tiret comme argument numéro 0 de la COMMANDE\n"
" \n"
-" Si la commande ne peut pas être exécutée, un shell non-interactif se "
-"termine, à moins\n"
+" Si la commande ne peut pas être exécutée, un shell non-interactif se termine, à moins\n"
" que l'option « execfail » ne soit définie.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins que la COMMANDE ne soit pas trouvée ou "
-"qu'une erreur de redirection ne survienne."
+" Renvoie le code de succès à moins que la COMMANDE ne soit pas trouvée ou qu'une erreur de redirection ne survienne."
-#: builtins.c:702
+#: builtins.c:694
msgid ""
"Exit the shell.\n"
" \n"
" Termine le shell avec le code de retour « N ». Si N est omis, le code\n"
" de retour est celui de la dernière commande exécutée."
-#: builtins.c:711
+#: builtins.c:703
msgid ""
"Exit a login shell.\n"
" \n"
-" Exits a login shell with exit status N. Returns an error if not "
-"executed\n"
+" Exits a login shell with exit status N. Returns an error if not executed\n"
" in a login shell."
msgstr ""
"Termine un shell de connexion.\n"
" \n"
-" Termine un shell de connexion avec le code de sortie N. Renvoie une "
-"erreur s'il n'est pas exécuté\n"
+" Termine un shell de connexion avec le code de sortie N. Renvoie une erreur s'il n'est pas exécuté\n"
" dans un shell de connexion."
-#: builtins.c:721
+#: builtins.c:713
msgid ""
"Display or execute commands from the history list.\n"
" \n"
-" fc is used to list or edit and re-execute commands from the history "
-"list.\n"
+" fc is used to list or edit and re-execute commands from the history list.\n"
" FIRST and LAST can be numbers specifying the range, or FIRST can be a\n"
" string, which means the most recent command beginning with that\n"
" string.\n"
" \n"
" Options:\n"
-" -e ENAME\tselect which editor to use. Default is FCEDIT, then "
-"EDITOR,\n"
+" -e ENAME\tselect which editor to use. Default is FCEDIT, then EDITOR,\n"
" \t\tthen vi\n"
" -l \tlist lines instead of editing\n"
" -n\tomit line numbers when listing\n"
" the last command.\n"
" \n"
" Exit Status:\n"
-" Returns success or status of executed command; non-zero if an error "
-"occurs."
+" Returns success or status of executed command; non-zero if an error occurs."
msgstr ""
"Affiche ou exécute des commandes issues de l'historique.\n"
" \n"
-" « fc » est utilisé pour afficher ou modifier puis ré-exécuter les "
-"commandes\n"
-" de l'historique des commandes. PREMIER et DERNIER peuvent être des "
-"nombres\n"
+" « fc » est utilisé pour afficher ou modifier puis ré-exécuter les commandes\n"
+" de l'historique des commandes. PREMIER et DERNIER peuvent être des nombres\n"
" indiquant la plage ou PREMIER peut être une chaîne donnant le début de la\n"
" commande la plus récente recherchée.\n"
" \n"
" Options :\n"
-" -e ENAME définit quel éditeur utiliser. Par défaut il s'agit de « "
-"FCEDIT »\n"
+" -e ENAME définit quel éditeur utiliser. Par défaut il s'agit de « FCEDIT »\n"
" puis « EDITOR », puis « vi ».\n"
" \n"
" -l affiche les les lignes au lieu de les éditer.\n"
" -n n'affiche pas les numéros de ligne.\n"
" -r inverse l'ordre des lignes (les plus récentes en premier).\n"
" \n"
-" En tapant « fc -s [ancien=nouveau ...] [commande] », la commande est ré-"
-"exécutée\n"
+" En tapant « fc -s [ancien=nouveau ...] [commande] », la commande est ré-exécutée\n"
" après avoir effectué le remplacement ANCIEN=NOUVEAU.\n"
" \n"
" Un alias utile est « r='fc -s' » de sorte qu'en tapant « r cc »,\n"
-" la dernière commande commençant par « cc » est ré-exécutée et avec « r "
-"», la\n"
+" la dernière commande commençant par « cc » est ré-exécutée et avec « r », la\n"
" dernière commande est ré-exécutée.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès ou le code de sortie de la commande exécutée ; "
-"autre chose que 0 si une erreur survient."
+" Renvoie le code de succès ou le code de sortie de la commande exécutée ; autre chose que 0 si une erreur survient."
-#: builtins.c:751
+#: builtins.c:743
msgid ""
"Move job to the foreground.\n"
" \n"
" de tâche actuelle.\n"
" \n"
" Code de sortie :\n"
-" celui de la commande placée au premier plan ou le code d'échec si une "
-"erreur survient."
+" celui de la commande placée au premier plan ou le code d'échec si une erreur survient."
-#: builtins.c:766
+#: builtins.c:758
msgid ""
"Move jobs to the background.\n"
" \n"
-" Place the jobs identified by each JOB_SPEC in the background, as if "
-"they\n"
-" had been started with `&'. If JOB_SPEC is not present, the shell's "
-"notion\n"
+" Place the jobs identified by each JOB_SPEC in the background, as if they\n"
+" had been started with `&'. If JOB_SPEC is not present, the shell's notion\n"
" of the current job is used.\n"
" \n"
" Exit Status:\n"
msgstr ""
"Déplace des tâches vers l'arrière plan.\n"
" \n"
-" Place chaque JOB_SPEC en arrière plan comme s'il avait été démarré avec "
-"« & ».\n"
+" Place chaque JOB_SPEC en arrière plan comme s'il avait été démarré avec « & ».\n"
" Si JOB_SPEC n'est pas fourni, le shell utilise sa propre notion\n"
" de tâche actuelle.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins que le contrôle de tâche ne soit pas "
-"activé ou qu'une erreur ne survienne."
+" Renvoie le code de succès à moins que le contrôle de tâche ne soit pas activé ou qu'une erreur ne survienne."
-#: builtins.c:780
+#: builtins.c:772
msgid ""
"Remember or display program locations.\n"
" \n"
" Determine and remember the full pathname of each command NAME. If\n"
-" no arguments are given, information about remembered commands is "
-"displayed.\n"
+" no arguments are given, information about remembered commands is displayed.\n"
" \n"
" Options:\n"
" -d\t\tforget the remembered location of each NAME\n"
"Mémorise ou affiche l'emplacement des programmes.\n"
" \n"
" Détermine et mémorise le chemin complet de chaque commande NOM. Si\n"
-" aucun argument n'est donné, une information sur les commandes mémorisées "
-"est affichée.\n"
+" aucun argument n'est donné, une information sur les commandes mémorisées est affichée.\n"
" \n"
" Options :\n"
" -d\t\toublier l'emplacement mémorisé de chaque NOM\n"
" \t\tdes commandes mémorisée.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins que le NOM ne soit pas trouvé ou "
-"qu'une option non valable ne soit donnée."
+" Renvoie le code de succès à moins que le NOM ne soit pas trouvé ou qu'une option non valable ne soit donnée."
-#: builtins.c:805
+#: builtins.c:797
msgid ""
"Display information about builtin commands.\n"
" \n"
" PATTERN\tPattern specifiying a help topic\n"
" \n"
" Exit Status:\n"
-" Returns success unless PATTERN is not found or an invalid option is "
-"given."
+" Returns success unless PATTERN is not found or an invalid option is given."
msgstr ""
"Affiche des informations sur les commandes intégrées.\n"
" \n"
" Affiche de courts résumés des commandes intégrées. Si MOTIF est\n"
-" spécifié, une aide détaillée de toutes les commandes correspondantes au "
-"MOTIF sont affichées,\n"
-" sinon la liste des sujets d'aide est affichée.\n"
+" spécifié, une aide détaillée de toutes les commandes correspondantes\n"
+" au MOTIF est affichée, sinon la liste des sujets d'aide est affichée.\n"
" \n"
" Options :\n"
" -d\tafficher une courte description pour chaque sujet\n"
" -m\tafficher l'aide dans un format proche des pages de man(uel)\n"
" -s\tn'afficher qu'une courte aide pour chaque sujet correspondant au\n"
-" \tMOTIF\n"
+" \t\tMOTIF\n"
" \n"
" Arguments :\n"
" MOTIF\tMotif spécifiant un sujet d'aide\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de succès à moins que le MOTIF ne soit pas trouvé ou "
-"qu'une option non valable ne soit donnée."
+" Renvoie le code de succès à moins que le MOTIF ne soit pas trouvé ou qu'une\n"
+" option non valable ne soit donnée."
-#: builtins.c:829
+#: builtins.c:821
msgid ""
"Display or manipulate the history list.\n"
" \n"
" \n"
" If the $HISTTIMEFORMAT variable is set and not null, its value is used\n"
" as a format string for strftime(3) to print the time stamp associated\n"
-" with each displayed history entry. No time stamps are printed "
-"otherwise.\n"
+" with each displayed history entry. No time stamps are printed otherwise.\n"
" \n"
" Exit Status:\n"
" Returns success unless an invalid option is given or an error occurs."
msgstr ""
"Affiche ou manipule l''historique.\n"
" \n"
-" Affiche l'historique avec les numéros de lignes en préfixant chaque "
-"élément\n"
-" modifié d'un « * ». Un argument égal à N limite la liste aux N derniers "
-"éléments.\n"
+" Affiche l'historique avec les numéros de lignes en préfixant chaque élément\n"
+" modifié d'un « * ». Un argument égal à N limite la liste aux N derniers éléments.\n"
" \n"
" Options :\n"
" -c\tefface la liste d'historique en effaçant tous les éléments\n"
" -d offset\tefface l'élément d'historique à l'emplacement OFFSET.\n"
" \n"
-" -a\tajouter les lignes d'historique de cette session au fichier "
-"d'historique\n"
-" -n\tlire toutes les lignes d'historique non déjà lues depuis le "
-"fichier d'historique\n"
-" -r\tlire le fichier d'historique et ajouter le contenu à la liste "
-"d'historique\n"
+" -a\tajouter les lignes d'historique de cette session au fichier d'historique\n"
+" -n\tlire toutes les lignes d'historique non déjà lues depuis le fichier d'historique\n"
+" -r\tlire le fichier d'historique et ajouter le contenu à la liste d'historique\n"
" -w\técrire l'historique actuel dans le fichier d'historique\n"
" \tet l'ajoute à la liste d'historique\n"
" \n"
-" -p\teffectuer un développement de l'historique sur chaque ARG et "
-"afficher le résultat\n"
+" -p\teffectuer un développement de l'historique sur chaque ARG et afficher le résultat\n"
" \tsans le stocker dans la liste d'historique\n"
" -s\tajoute les ARGs à la liste d'historique comme entrée unique\n"
" \n"
-" Si NOMFICHIER est donné, il est utilisé comme fichier d'historique. "
-"Sinon,\n"
-" si $HISTFILE contient une valeur, celle-ci est utilisée, sinon ~/."
-"bash_history.\n"
+" Si NOMFICHIER est donné, il est utilisé comme fichier d'historique. Sinon,\n"
+" si $HISTFILE contient une valeur, celle-ci est utilisée, sinon ~/.bash_history.\n"
" \n"
-" Si la variable $HISTTIMEFORMAT est définie et n'est pas vide, sa valeur "
-"est utillisée\n"
-" comme chaîne de format pour que strftime(3) affiche l'horodatage "
-"associé\n"
+" Si la variable $HISTTIMEFORMAT est définie et n'est pas vide, sa valeur est utillisée\n"
+" comme chaîne de format pour que strftime(3) affiche l'horodatage associé\n"
" à chaque entrée d'historique. Sinin, aucun horodatage n'est affiché.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins qu'une option non valable soit donnée "
-"ou qu'une erreur ne survienne."
+" Renvoie le code de succès à moins qu'une option non valable soit donnée ou qu'une erreur ne survienne."
-#: builtins.c:865
+#: builtins.c:857
msgid ""
"Display status of jobs.\n"
" \n"
msgstr ""
"Affiche l'état des tâches.\n"
" \n"
-" Affiche la liste des tâches actives. JOBSPEC restreint l'affichage à "
-"cette tâche.\n"
-" S'il n'y a pas d'option, l'état de toutes les tâches actives est "
-"affiché.\n"
+" Affiche la liste des tâches actives. JOBSPEC restreint l'affichage à cette tâche.\n"
+" S'il n'y a pas d'option, l'état de toutes les tâches actives est affiché.\n"
" \n"
" Options :\n"
" -l\tafficher les IDs de processus en plus des informations normales\n"
-" -n\tafficher seulement les processus dont l'état a changé depuis la "
-"dernière\n"
+" -n\tafficher seulement les processus dont l'état a changé depuis la dernière\n"
" \tnotification\n"
" -p\tafficher seulement les IDs de processus\n"
" -r\trestreindre l'affichage aux tâches en cours d'exécution\n"
" -s\trestreindre l'affichage aux tâches stoppées\n"
" \n"
-" Si « -x » est fournie, la COMMANDE est lancée après que toutes les "
-"spécifications\n"
-" qui apparaissent dans ARGs ont été remplacées par l'ID de processus du "
-"leader de groupe\n"
+" Si « -x » est fournie, la COMMANDE est lancée après que toutes les spécifications\n"
+" qui apparaissent dans ARGs ont été remplacées par l'ID de processus du leader de groupe\n"
" de processus de cette tâche.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins qu'une option non valable ne soit "
-"donnée ou qu'une erreur ne survienne.\n"
+" Renvoie le code de succès à moins qu'une option non valable ne soit donnée ou qu'une erreur ne survienne.\n"
" Si « -x » est utilisée, le code de sortie de la COMMANDE est renvoyé."
-#: builtins.c:892
+#: builtins.c:884
msgid ""
"Remove jobs from current shell.\n"
" \n"
" \n"
" Options :\n"
" -a\tretirer toutes lestâches si JOBSPEC n'est pas fourni\n"
-" -h\tmarque chaque JOBSPEC de façon que SIGHUP ne soit pas envoyé à la "
-"tâche\n"
+" -h\tmarque chaque JOBSPEC de façon que SIGHUP ne soit pas envoyé à la tâche\n"
" \tsi le shell reçoit un SIGHUP\n"
" -r\tretire seulement les tâches en cours de fonctionnement\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins qu'une option ou un JOBSPEC non "
-"valable ne soit donné."
+" Renvoie le code de succès à moins qu'une option ou un JOBSPEC non valable ne soit donné."
-#: builtins.c:911
+#: builtins.c:903
msgid ""
"Send a signal to a job.\n"
" \n"
msgstr ""
"Envoie un signal à une tâche.\n"
" \n"
-" Envoie le signal nommé par SIGSPEC ou SIGNUM au processus identifié par "
-"PID ou JOBSPEC.\n"
+" Envoie le signal nommé par SIGSPEC ou SIGNUM au processus identifié par PID ou JOBSPEC.\n"
" Si SIGSPEC et SIGNUM ne sont pas donnés, alors SIGTERM est envoyé.\n"
" \n"
" Options :\n"
" -s sig\tSIG est un nom de signal\n"
" -n sig\tSIG est un numéro de signal\n"
-" -l\tafficher la liste des noms de signaux ; si des arguments suivent « "
-"-l », ils sont supposés être\n"
+" -l\tafficher la liste des noms de signaux ; si des arguments suivent « -l », ils sont supposés être\n"
" \tdes numéro de signaux pour lesquels les noms doivent être affichés\n"
" \n"
-" « kill » est une commande intégrée pour deux raisons : elle permet aux "
-"IDs de tâches d'être utilisées\n"
-" à la place des IDs de processus et elle permet aux processus d'être tués "
-"si la limite du nombre de processus\n"
+" « kill » est une commande intégrée pour deux raisons : elle permet aux IDs de tâches d'être utilisées\n"
+" à la place des IDs de processus et elle permet aux processus d'être tués si la limite du nombre de processus\n"
" que vous pouvez créer est atteinte.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins qu'une option non valable soit donnée "
-"ou qu'une erreur ne survienne."
+" Renvoie le code de succès à moins qu'une option non valable soit donnée ou qu'une erreur ne survienne."
-#: builtins.c:934
+#: builtins.c:926
msgid ""
"Evaluate arithmetic expressions.\n"
" \n"
" Evaluate each ARG as an arithmetic expression. Evaluation is done in\n"
" fixed-width integers with no check for overflow, though division by 0\n"
" is trapped and flagged as an error. The following list of operators is\n"
-" grouped into levels of equal-precedence operators. The levels are "
-"listed\n"
+" grouped into levels of equal-precedence operators. The levels are listed\n"
" in order of decreasing precedence.\n"
" \n"
" \tid++, id--\tvariable post-increment, post-decrement\n"
" \t&=, ^=, |=\taffectation\n"
" \n"
" Les variables de shell sont autorisées comme opérandes. Le nom de la\n"
-" variable est remplacé par sa valeur (contrainte à un entier de largeur "
-"fixe)\n"
-" à l'intérieur d'une expression. La variable n'a pas besoin d'avoir son "
-"attribut\n"
+" variable est remplacé par sa valeur (contrainte à un entier de largeur fixe)\n"
+" à l'intérieur d'une expression. La variable n'a pas besoin d'avoir son attribut\n"
" d'entier activé pour être utilisée dans une expression.\n"
" \n"
-" Les opérateurs sont évalués dans leur ordre de priorité. Les sous-"
-"expressions entre\n"
-" parenthèses sont évaluées en premier et peuvent être prioritaires sur "
-"les règles\n"
+" Les opérateurs sont évalués dans leur ordre de priorité. Les sous-expressions entre\n"
+" parenthèses sont évaluées en premier et peuvent être prioritaires sur les règles\n"
" ci-dessus.\n"
" \n"
" Code de sortie :\n"
" Si le dernier ARG est évalué à 0, « let » renvoie 1, sinon 0 est renvoyé."
-#: builtins.c:979
-#, fuzzy
+#: builtins.c:971
msgid ""
"Read a line from the standard input and split it into fields.\n"
" \n"
" Reads a single line from the standard input, or from file descriptor FD\n"
-" if the -u option is supplied. The line is split into fields as with "
-"word\n"
+" if the -u option is supplied. The line is split into fields as with word\n"
" splitting, and the first word is assigned to the first NAME, the second\n"
" word to the second NAME, and so on, with any leftover words assigned to\n"
-" the last NAME. Only the characters found in $IFS are recognized as "
-"word\n"
+" the last NAME. Only the characters found in $IFS are recognized as word\n"
" delimiters.\n"
" \n"
-" If no NAMEs are supplied, the line read is stored in the REPLY "
-"variable.\n"
+" If no NAMEs are supplied, the line read is stored in the REPLY variable.\n"
" \n"
" Options:\n"
" -a array\tassign the words read to sequential indices of the array\n"
" -n nchars\treturn after reading NCHARS characters rather than waiting\n"
" \t\tfor a newline, but honor a delimiter if fewer than NCHARS\n"
" \t\tcharacters are read before the delimiter\n"
-" -N nchars\treturn only after reading exactly NCHARS characters, "
-"unless\n"
+" -N nchars\treturn only after reading exactly NCHARS characters, unless\n"
" \t\tEOF is encountered or read times out, ignoring any delimiter\n"
" -p prompt\toutput the string PROMPT without a trailing newline before\n"
" \t\tattempting to read\n"
" -r\t\tdo not allow backslashes to escape any characters\n"
" -s\t\tdo not echo input coming from a terminal\n"
-" -t timeout\ttime out and return failure if a complete line of input "
-"is\n"
+" -t timeout\ttime out and return failure if a complete line of input is\n"
" \t\tnot read withint TIMEOUT seconds. The value of the TMOUT\n"
" \t\tvariable is the default timeout. TIMEOUT may be a\n"
-" \t\tfractional number. If TIMEOUT is 0, read returns immediately,\n"
-" \t\twithout trying to read any data, returning success only if\n"
-" \t\tinput is available on the specified file descriptor. The\n"
+" \t\tfractional number. If TIMEOUT is 0, read returns success only\n"
+" \t\tif input is available on the specified file descriptor. The\n"
" \t\texit status is greater than 128 if the timeout is exceeded\n"
" -u fd\t\tread from file descriptor FD instead of the standard input\n"
" \n"
" Exit Status:\n"
-" The return code is zero, unless end-of-file is encountered, read times "
-"out\n"
-" (in which case it's greater than 128), a variable assignment error "
-"occurs,\n"
+" The return code is zero, unless end-of-file is encountered, read times out,\n"
" or an invalid file descriptor is supplied as the argument to -u."
msgstr ""
"Lit une ligne depuis l'entrée standard et la découper en morceaux.\n"
" \n"
-" Lit une simple ligne depuis l'entrée standard ou depuis le descripteur "
-"de fichier FD\n"
-" si l'option « -u » est fournie. La ligne est découpée en morceaux comme "
-"des mots,\n"
-" et le premier mot est assigné au premier NOM, le deuxième mot au "
-"deuxième NOM,\n"
-" et ainsi de suite, le dernier NOM récupérant la liste des mots "
-"restants.\n"
+" Lit une simple ligne depuis l'entrée standard ou depuis le descripteur de fichier FD\n"
+" si l'option « -u » est fournie. La ligne est découpée en morceaux comme des mots,\n"
+" et le premier mot est assigné au premier NOM, le deuxième mot au deuxième NOM,\n"
+" et ainsi de suite, le dernier NOM récupérant la liste des mots restants.\n"
" Seul les caractères trouvés dans $IFS sont reconnus comme délimiteurs\n"
" de mots\n"
" \n"
-" Si aucun NOM n'est fourni, la ligne lue est stockée dans la variable "
-"REPLY.\n"
+" Si aucun NOM n'est fourni, la ligne lue est stockée dans la variable REPLY.\n"
" \n"
" Options :\n"
-" -a tableau\taffecter les indices de la variable tableau "
-"séquentiellement aux mots lus,\n"
+" -a tableau\taffecter les indices de la variable tableau séquentiellement aux mots lus,\n"
" \t\ten commançant à 0\n"
-" -d délim\tcontinuer jusqu'à ce que le premier caractère de DELIM soit "
-"lu,\n"
+" -d délim\tcontinuer jusqu'à ce que le premier caractère de DELIM soit lu,\n"
" \t\tau lieu du retour à la ligne\n"
-" -e\t\tutiliser « Readline » pour obtenir la ligne dans un shell "
-"interactif\n"
+" -e\t\tutiliser « Readline » pour obtenir la ligne dans un shell interactif\n"
" -i texte\tUtiliser TEXTE comme texte initial pour « Readline »\n"
" -n n\tterminer après avoir lu N caractères plutôt que d'attendre\n"
-" \t\tun retour à la ligne, mais obéir à un délimiteur si moins de N "
-"caractères\n"
+" \t\tun retour à la ligne, mais obéir à un délimiteur si moins de N caractères\n"
" \t\tsont lus avant le délimiteur\n"
-" -N n\ttermine seulement après avoir lu exactement N caractères, à "
-"moins\n"
-" \t\tque le caractère EOF soit recontré ou que le délai de lecture "
-"n'expire, en ignorant tout délimiteur\n"
-" -p prompt\taffiche la chaîne PROMPT sans retour à la ligne final, "
-"avant de tenter une\n"
+" -N n\ttermine seulement après avoir lu exactement N caractères, à moins\n"
+" \t\tque le caractère EOF soit recontré ou que le délai de lecture n'expire, en ignorant tout délimiteur\n"
+" -p prompt\taffiche la chaîne PROMPT sans retour à la ligne final, avant de tenter une\n"
" \t\tlecture\n"
-" -r\t\tne pas permettre aux barres obliques inverses de se comporter "
-"comme des caractères d'échappement\n"
+" -r\t\tne pas permettre aux barres obliques inverses de se comporter comme des caractères d'échappement\n"
" -s\t\tne pas répéter l'entrée provenant d'un terminal\n"
-" -t timeout\texpire et renvoie un code d'échec si une ligne d'entrée "
-"complète n'est pas\n"
+" -t timeout\texpire et renvoie un code d'échec si une ligne d'entrée complète n'est pas\n"
" \t\tlue en moins de TIMEOUT secondes. La valeur de la variable TIMEOUT\n"
-" \t\test le délai d'expiration par défaut. TIMEOUT peut être un nombre à "
-"virgule\n"
+" \t\test le délai d'expiration par défaut. TIMEOUT peut être un nombre à virgule\n"
" \t\tSi TIMEOUT est à, la lecture renvoie un code de succès seulement\n"
" \t\tsi l'entrée est disponible sur le descripteut de fichier. Le code\n"
" \t\tde sortie est supérieur à 128 si le délai a expiré\n"
-" -u fd\t\tlire depuis le descripteur de fichier FD plutôt que l'entrée "
-"standard\n"
+" -u fd\t\tlire depuis le descripteur de fichier FD plutôt que l'entrée standard\n"
" \n"
" Code de sortie :\n"
-" Le code de retour est 0, à moins qu'une fin de fichier ne survienne, que "
-"le délai expire,\n"
-" ou qu'un descripteur de fichier non valable ne soit fourni comme "
-"argument à « -u »."
+" Le code de retour est 0, à moins qu'une fin de fichier ne survienne, que le délai expire,\n"
+" ou qu'un descripteur de fichier non valable ne soit fourni comme argument à « -u »."
-#: builtins.c:1024
+#: builtins.c:1014
msgid ""
"Return from a shell function.\n"
" \n"
msgstr ""
"Termine depuis une fonction du shell.\n"
" \n"
-" Entraine l'arrêt d'une fonction ou d'un script sourcé, avec le code de "
-"retour spécifié par N.\n"
-" Si N est omis, le code de retour est celui de la dernière commande "
-"exécutée\n"
+" Entraine l'arrêt d'une fonction ou d'un script sourcé, avec le code de retour spécifié par N.\n"
+" Si N est omis, le code de retour est celui de la dernière commande exécutée\n"
" à l'intérieur de la fonction ou du script\n"
" \n"
" Code de retour :\n"
-" Renvoie N ou le code d'échec si le shell n'est pas en train d'exécuter "
-"une fonction ou un script."
+" Renvoie N ou le code d'échec si le shell n'est pas en train d'exécuter une fonction ou un script."
-#: builtins.c:1037
-#, fuzzy
+#: builtins.c:1027
msgid ""
"Set or unset values of shell options and positional parameters.\n"
" \n"
" physical same as -P\n"
" pipefail the return value of a pipeline is the status of\n"
" the last command to exit with a non-zero status,\n"
-" or zero if no command exited with a non-zero "
-"status\n"
+" or zero if no command exited with a non-zero status\n"
" posix change the behavior of bash where the default\n"
" operation differs from the Posix standard to\n"
" match the standard\n"
" -E If set, the ERR trap is inherited by shell functions.\n"
" -H Enable ! style history substitution. This flag is on\n"
" by default when the shell is interactive.\n"
-" -P If set, do not resolve symbolic links when executing commands\n"
+" -P If set, do not follow symbolic links when executing commands\n"
" such as cd which change the current directory.\n"
" -T If set, the DEBUG trap is inherited by shell functions.\n"
" -- Assign any remaining arguments to the positional parameters.\n"
" Exit Status:\n"
" Returns success unless an invalid option is given."
msgstr ""
-"Définit ou invalide des valeurs d'options et des paramètres de position du "
-"shell.\n"
+"Définit ou invalide des valeurs d'options et des paramètres de position du shell.\n"
" \n"
-" Change la valeur des attributs du shell et des paramètres de position, "
-"ou\n"
+" Change la valeur des attributs du shell et des paramètres de position, ou\n"
" affiche les noms et valeurs des variables du shell.\n"
" \n"
" Options :\n"
-" -a Marquer pour l'export toutes les variables qui sont modifiées ou "
-"créées.\n"
+" -a Marquer pour l'export toutes les variables qui sont modifiées ou créées.\n"
" -b Avertir immédiatement de la fin d'une tâche.\n"
-" -e Terminer immédiatement si une commande s'arrête avec un code de "
-"retour non nul.\n"
+" -e Terminer immédiatement si une commande s'arrête avec un code de retour non nul.\n"
" -f Désactiver la génération de nom de fichier (globbing).\n"
" -h Mémoriser l'emplacement des commandes après leur recherche.\n"
-" -k Placer dans l'environnement tous les arguments d'affectation "
-"pour une commande,\n"
+" -k Placer dans l'environnement tous les arguments d'affectation pour une commande,\n"
" pas seulement ceux qui précèdent le nom de la commande.\n"
" -m Activer le contrôle de tâche.\n"
" -n Lire les commandes, mais ne pas les exécuter.\n"
" hashall identique à -h\n"
" histexpand identique à -H\n"
" history activer l'historique des commandes\n"
-" ignoreeof ne pas terminer le shell à la lecture d'un « "
-"EOF »\n"
+" ignoreeof ne pas terminer le shell à la lecture d'un « EOF »\n"
" interactive-comments\n"
-" permet aux commentaires d'apparaître dans les "
-"commandes interactives\n"
+" permet aux commentaires d'apparaître dans les commandes interactives\n"
" keyword identique à -k\n"
" monitor identique à -m\n"
" noclobber identique à -C\n"
" nounset identique à -u\n"
" onecmd identique à -t\n"
" physical identique à -P\n"
-" pipefail le code de retour d'un tube est celui de la "
-"dernière commande\n"
+" pipefail le code de retour d'un tube est celui de la dernière commande\n"
" qui s'est terminée avec un code non nul,\n"
-" ou zéro si aucune commande ne s'est arrêtée "
-"avec un code non nul.\n"
-" posix modifie le comportement de « bash » pour qu'il "
-"se comporte comme\n"
-" le standard 1003.2 aux endroits où il diffère "
-"par défaut.\n"
+" ou zéro si aucune commande ne s'est arrêtée avec un code non nul.\n"
+" posix modifie le comportement de « bash » pour qu'il se comporte comme\n"
+" le standard 1003.2 aux endroits où il diffère par défaut.\n"
" privileged identique à -p\n"
" verbose identique à -v\n"
" vi utiliser une édition de ligne façon « vi »\n"
" xtrace identique à -x\n"
-" -p Option activée lorsque les n° d'identifiants utilisateurs réels "
-"et effectifs ne\n"
-" sont pas les mêmes. Désactive le traitement du fichier $ENV et "
-"l'import des\n"
-" fonctions du shell. Désactiver cette option permet de définir "
-"les uid et gid\n"
+" -p Option activée lorsque les n° d'identifiants utilisateurs réels et effectifs ne\n"
+" sont pas les mêmes. Désactive le traitement du fichier $ENV et l'import des\n"
+" fonctions du shell. Désactiver cette option permet de définir les uid et gid\n"
" effectifs à la valeur des uid et gid réels.\n"
" -t Terminer après la lecture et l'exécution d'une commande.\n"
-" -u Traiter les variables non définies comme des erreurs lors de la "
-"substitution.\n"
+" -u Traiter les variables non définies comme des erreurs lors de la substitution.\n"
" -v Afficher les lignes d'entrée du shell à leur lecture.\n"
-" -x Afficher les commandes et leurs arguments au moment de leur "
-"exécution.\n"
+" -x Afficher les commandes et leurs arguments au moment de leur exécution.\n"
" -B Effectuer l'expansion des accolades\n"
-" -C Si définit, empêche les fichiers réguliers existants d'être "
-"écrasés par une\n"
+" -C Si définit, empêche les fichiers réguliers existants d'être écrasés par une\n"
" redirection de la sortie.\n"
-" -E Si définit, l'interception ERR est héritée par les fonctions du "
-"shell.\n"
-" -H Activer la substitution d'historique façon « ! ». Ceci est actif "
-"par défaut\n"
+" -E Si définit, l'interception ERR est héritée par les fonctions du shell.\n"
+" -H Activer la substitution d'historique façon « ! ». Ceci est actif par défaut\n"
" lorsque le shell est interactif.\n"
-" -P Si définit, les liens symboliques ne sont pas suivis lors de "
-"l'exécution des\n"
+" -P Si définit, les liens symboliques ne sont pas suivis lors de l'exécution des\n"
" commandes telles que « cd » qui changent le répertoire courant.\n"
-" -T Si définit, l'interception DEBUG est héritée par les fonctions "
-"du shell.\n"
+" -T Si définit, l'interception DEBUG est héritée par les fonctions du shell.\n"
" -- Affecte tous les arguments restants aux paramètres de position.\n"
-" S'il n'y a plus d'argument, les paramètres de position sont "
-"indéfinis.\n"
-" - Affecter tous les arguments restants aux paramètres de "
-"position.\n"
+" S'il n'y a plus d'argument, les paramètres de position sont indéfinis.\n"
+" - Affecter tous les arguments restants aux paramètres de position.\n"
" Les options « -x » et « -v » sont désactivées.\n"
" \n"
-" Ces indicateurs peuvent être désactivés en utilisant « + » plutôt que « "
-"- ». Ils peuvent\n"
-" être utilisés lors de l'appel au shell. Le jeu d'indicateurs actuel peut "
-"être trouvé\n"
-" dans « $- ». Les n ARGs restants sont des paramètres de position et "
-"sont affectés,\n"
-" dans l'ordre, à $1, $2, .. $n. Si aucun ARG n'est donné, toutes les "
-"variables du shell\n"
+" Ces indicateurs peuvent être désactivés en utilisant « + » plutôt que « - ». Ils peuvent\n"
+" être utilisés lors de l'appel au shell. Le jeu d'indicateurs actuel peut être trouvé\n"
+" dans « $- ». Les n ARGs restants sont des paramètres de position et sont affectés,\n"
+" dans l'ordre, à $1, $2, .. $n. Si aucun ARG n'est donné, toutes les variables du shell\n"
" sont affichées. \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins qu'une option non valable ne soit "
-"donnée."
+" Renvoie le code de succès à moins qu'une option non valable ne soit donnée."
-#: builtins.c:1122
+#: builtins.c:1112
msgid ""
"Unset values and attributes of shell variables and functions.\n"
" \n"
" -f\ttreat each NAME as a shell function\n"
" -v\ttreat each NAME as a shell variable\n"
" \n"
-" Without options, unset first tries to unset a variable, and if that "
-"fails,\n"
+" Without options, unset first tries to unset a variable, and if that fails,\n"
" tries to unset a function.\n"
" \n"
" Some variables cannot be unset; also see `readonly'.\n"
" Sans option, « unset » essaye d'abord d'annuler une variable et, \n"
" en cas d'échec, essaye d'annuler la fonction.\n"
" \n"
-" Certaines variables ne peuvent pas être annulées ; consultez aussi « "
-"readonly ».\n"
+" Certaines variables ne peuvent pas être annulées ; consultez aussi « readonly ».\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de succès à moins qu'une option non valable ne soit "
-"donnée ou que NOM soit en lecture seule."
+" Renvoie le code de succès à moins qu'une option non valable ne soit donnée ou que NOM soit en lecture seule."
-#: builtins.c:1142
+#: builtins.c:1132
msgid ""
"Set export attribute for shell variables.\n"
" \n"
" Marks each NAME for automatic export to the environment of subsequently\n"
-" executed commands. If VALUE is supplied, assign VALUE before "
-"exporting.\n"
+" executed commands. If VALUE is supplied, assign VALUE before exporting.\n"
" \n"
" Options:\n"
" -f\trefer to shell functions\n"
msgstr ""
"Définit l'attribut « export » pour des variables du shell.\n"
" \n"
-" Marque chaque NOM pour export automatique vers l'environnement des "
-"commandes\n"
-" exécutées ultérieurement. Si VALEUR est fournie, affecte la VALEUR "
-"avant l'export.\n"
+" Marque chaque NOM pour export automatique vers l'environnement des commandes\n"
+" exécutées ultérieurement. Si VALEUR est fournie, affecte la VALEUR avant l'export.\n"
" \n"
" Options :\n"
" -f\tse référer aux fonctions du shell\n"
" L'argument « -- » désactive tout traitement postérieur d'options.\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de succès à moins qu'une option non valable ne soit "
-"données ou que NOM ne soit pas valable."
+" Renvoie le code de succès à moins qu'une option non valable ne soit données ou que NOM ne soit pas valable."
-#: builtins.c:1161
+#: builtins.c:1151
msgid ""
"Mark shell variables as unchangeable.\n"
" \n"
msgstr ""
"Marque des variables du shell comme non modifiables.\n"
" \n"
-" Marque chaque NOM comme étant en lecture seule ; les valeurs de ces NOMs "
-"ne peuvent plus\n"
-" être modifiées par des affectations ultérieures. Si VALEUR est founie, "
-"lui affecter la VALEUR avant le\n"
+" Marque chaque NOM comme étant en lecture seule ; les valeurs de ces NOMs ne peuvent plus\n"
+" être modifiées par des affectations ultérieures. Si VALEUR est founie, lui affecter la VALEUR avant le\n"
" passage en lecture seule.\n"
" \n"
" Options :\n"
" -a\tse référer à des variables étant des tableaux indexés\n"
" -A\tse référer à des variables étant des tableaux associatifs\n"
" -f\tse référer à des fonctions du shell\n"
-" -p\tafficher une liste des toutes les fonctions et variables en "
-"lecture seule\n"
+" -p\tafficher une liste des toutes les fonctions et variables en lecture seule\n"
" \n"
" Un argument « -- » désactive tout traitement postérieur d'options.\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de succès à moins qu'une options non valable ne soit "
-"données ou que NOM ne soit pas valable."
+" Renvoie le code de succès à moins qu'une options non valable ne soit données ou que NOM ne soit pas valable."
-#: builtins.c:1182
+#: builtins.c:1172
msgid ""
"Shift positional parameters.\n"
" \n"
msgstr ""
"Décale des paramètres de position.\n"
" \n"
-" Renomme les paramètres de position $N+1,$N+2 ... à $1,$2 ... Si N n'est "
-"pas\n"
+" Renomme les paramètres de position $N+1,$N+2 ... à $1,$2 ... Si N n'est pas\n"
" donné, il est supposé égal à 1.\n"
" \n"
" Code de retour :\n"
" Renvoie le code de succès à moins que N soit négatif ou supérieur à $#."
-#: builtins.c:1194 builtins.c:1209
+#: builtins.c:1184 builtins.c:1199
msgid ""
"Execute commands from a file in the current shell.\n"
" \n"
msgstr ""
"Execute des commandes depuis un fichier dans le shell actuel.\n"
" \n"
-" Lit et exécute des commandes depuis NOMFICHIER dans le shell actuel. "
-"Les\n"
-" éléments dans $PATH sont utilisés pour trouver le répertoire contenant "
-"NOMFICHIER.\n"
-" Si des ARGUMENTS sont fournis, ils deviennent les paramètres de "
-"position\n"
+" Lit et exécute des commandes depuis NOMFICHIER dans le shell actuel. Les\n"
+" éléments dans $PATH sont utilisés pour trouver le répertoire contenant NOMFICHIER.\n"
+" Si des ARGUMENTS sont fournis, ils deviennent les paramètres de position\n"
" lorsque NOMFICHIER est exécuté.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de la dernière commande exécutée dans NOMFICHIER, ou le "
-"code\n"
+" Renvoie le code de la dernière commande exécutée dans NOMFICHIER, ou le code\n"
" d'échec si NOMFICHIER ne peut pas être lu."
-#: builtins.c:1225
+#: builtins.c:1215
msgid ""
"Suspend shell execution.\n"
" \n"
msgstr ""
"Suspend l'exécution du shell.\n"
" \n"
-" Suspend l'exécution de ce shell jusqu'à qu'il reçoive un signal "
-"SIGCONT.\n"
-" À moins que ce soit forcé, les shell de connexion ne peuvent pas être "
-"suspendus.\n"
+" Suspend l'exécution de ce shell jusqu'à qu'il reçoive un signal SIGCONT.\n"
+" À moins que ce soit forcé, les shell de connexion ne peuvent pas être suspendus.\n"
" \n"
" Options :\n"
" -f\tforce la suspension, même si le shell est un shell de connexion\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de succès à moins que le contrôle de tâche ne soit pas "
-"activé ou qu'une erreur survienne."
+" Renvoie le code de succès à moins que le contrôle de tâche ne soit pas activé ou qu'une erreur survienne."
-#: builtins.c:1241
+#: builtins.c:1231
msgid ""
"Evaluate conditional expression.\n"
" \n"
" -x FILE True if the file is executable by you.\n"
" -O FILE True if the file is effectively owned by you.\n"
" -G FILE True if the file is effectively owned by your group.\n"
-" -N FILE True if the file has been modified since it was last "
-"read.\n"
+" -N FILE True if the file has been modified since it was last read.\n"
" \n"
" FILE1 -nt FILE2 True if file1 is newer than file2 (according to\n"
" modification date).\n"
" STRING1 != STRING2\n"
" True if the strings are not equal.\n"
" STRING1 < STRING2\n"
-" True if STRING1 sorts before STRING2 "
-"lexicographically.\n"
+" True if STRING1 sorts before STRING2 lexicographically.\n"
" STRING1 > STRING2\n"
" True if STRING1 sorts after STRING2 lexicographically.\n"
" \n"
" pour examiner l'état d'un fichier. Il existe aussi des opérateurs de\n"
" chaîne, ainsi que des opérateurs de comparaison numériques.\n"
" \n"
-" Le comportement de test dépend du nombre d'arguments. Consultez la "
-"page\n"
+" Le comportement de test dépend du nombre d'arguments. Consultez la page\n"
" de manuel de bash pour connaître les spécifications complètes.\n"
". \n"
" Opérateurs sur des fichiers : \n"
" \n"
" -a FICHIER Vrai si le fichier existe.\n"
" -b FICHIER Vrai si le fichier est un fichier spécial de bloc\n"
-" -c FICHIER Vrai si le fichier est un fichier spécial de "
-"caractères\n"
+" -c FICHIER Vrai si le fichier est un fichier spécial de caractères\n"
" -d FICHIER Vrai si le fichier est un répertoire.\n"
" -e FICHIER Vrai si le fichier existe\n"
" -f FICHIER Vrai si le fichier existe et est un fichier régulier\n"
" -u FICHIER Vrai si le fichier est « set-user-id »\n"
" -w FICHIER Vrai si le fichier peut être écrit par vous\n"
" -x FICHIER Vrai si le fichier est exécutable par vous\n"
-" -O FICHIER Vrai si le fichier est effectivement possédé par "
-"vous\n"
-" -G FICHIER Vrai si le fichier est effectivement possédé par "
-"votre groupe\n"
-" -N FICHIER Vrai si le fichier a été modifié depuis la dernière "
-"fois qu'il a été lu\n"
+" -O FICHIER Vrai si le fichier est effectivement possédé par vous\n"
+" -G FICHIER Vrai si le fichier est effectivement possédé par votre groupe\n"
+" -N FICHIER Vrai si le fichier a été modifié depuis la dernière fois qu'il a été lu\n"
"\n"
-" FICHIER1 -nt FICHIER2 Vrai si le fichier1 est plus récent que le "
-"fichier2 (selon la date de modification)\n"
-" FICHIER1 -ot FICHIER2 Vrai si le fichier1 est plus vieux que le "
-"fichier2\n"
-" FICHIER1 -ef FICHIER2 Vrai si le fichier1 est un lien physique vers "
-"le fichier2\n"
+" FICHIER1 -nt FICHIER2 Vrai si le fichier1 est plus récent que le fichier2 (selon la date de modification)\n"
+" FICHIER1 -ot FICHIER2 Vrai si le fichier1 est plus vieux que le fichier2\n"
+" FICHIER1 -ef FICHIER2 Vrai si le fichier1 est un lien physique vers le fichier2\n"
" \n"
" Opérateurs sur des chaînes :\n"
" \n"
" CHAÎNE1 != CHAÎNE2\n"
" Vrai si les chaînes ne sont pas égales\n"
" CHAÎNE1 < CHAÎNE2\n"
-" Vrai si le tri lexicographique place la chaîne1 en "
-"premier\n"
+" Vrai si le tri lexicographique place la chaîne1 en premier\n"
" CHAÎNE1 > CHAÎNE2\n"
-" Vrai si le tri lexicographique place la chaîne1 en "
-"deuxième\n"
+" Vrai si le tri lexicographique place la chaîne1 en deuxième\n"
" \n"
" Autres opérateurs :\n"
" \n"
" arg1 OP arg2 Tests arithmétiques. OP peut être -eq, -ne,\n"
" -lt, -le, -gt ou -ge.\n"
" \n"
-" Les opérateurs arithmétiques binaires renvoient « vrai » si ARG1 est "
-"égal,\n"
-" non-égal, inférieur, inférieur ou égal, supérieur, supérieur ou égal à "
-"ARG2. \n"
+" Les opérateurs arithmétiques binaires renvoient « vrai » si ARG1 est égal,\n"
+" non-égal, inférieur, inférieur ou égal, supérieur, supérieur ou égal à ARG2. \n"
" Code de sortie :\n"
-" Renvoie le code de succès si EXPR est vraie, le code d'échec si EXPR est "
-"fausse ou si\n"
+" Renvoie le code de succès si EXPR est vraie, le code d'échec si EXPR est fausse ou si\n"
" un argument non valable est donné."
-#: builtins.c:1321
+#: builtins.c:1311
msgid ""
"Evaluate conditional expression.\n"
" \n"
" Ceci est un synonyme de la primitive « test », mais le dernier argument\n"
" doit être le caractère « ] », pour fermer le « [ » correspondant."
-#: builtins.c:1330
+#: builtins.c:1320
msgid ""
"Display process times.\n"
" \n"
-" Prints the accumulated user and system times for the shell and all of "
-"its\n"
+" Prints the accumulated user and system times for the shell and all of its\n"
" child processes.\n"
" \n"
" Exit Status:\n"
" Code de retour :\n"
" Toujours le code de succès."
-#: builtins.c:1342
+#: builtins.c:1332
msgid ""
"Trap signals and other events.\n"
" \n"
-" Defines and activates handlers to be run when the shell receives "
-"signals\n"
+" Defines and activates handlers to be run when the shell receives signals\n"
" or other conditions.\n"
" \n"
" ARG is a command to be read and executed when the shell receives the\n"
" value. If ARG is the null string each SIGNAL_SPEC is ignored by the\n"
" shell and by the commands it invokes.\n"
" \n"
-" If a SIGNAL_SPEC is EXIT (0) ARG is executed on exit from the shell. "
-"If\n"
-" a SIGNAL_SPEC is DEBUG, ARG is executed before every simple command. "
-"If\n"
-" a SIGNAL_SPEC is RETURN, ARG is executed each time a shell function or "
-"a\n"
-" script run by the . or source builtins finishes executing. A "
-"SIGNAL_SPEC\n"
-" of ERR means to execute ARG each time a command's failure would cause "
-"the\n"
+" If a SIGNAL_SPEC is EXIT (0) ARG is executed on exit from the shell. If\n"
+" a SIGNAL_SPEC is DEBUG, ARG is executed before every simple command. If\n"
+" a SIGNAL_SPEC is RETURN, ARG is executed each time a shell function or a\n"
+" script run by the . or source builtins finishes executing. A SIGNAL_SPEC\n"
+" of ERR means to execute ARG each time a command's failure would cause the\n"
" shell to exit when the -e option is enabled.\n"
" \n"
-" If no arguments are supplied, trap prints the list of commands "
-"associated\n"
+" If no arguments are supplied, trap prints the list of commands associated\n"
" with each signal.\n"
" \n"
" Options:\n"
" -l\tprint a list of signal names and their corresponding numbers\n"
" -p\tdisplay the trap commands associated with each SIGNAL_SPEC\n"
" \n"
-" Each SIGNAL_SPEC is either a signal name in <signal.h> or a signal "
-"number.\n"
+" Each SIGNAL_SPEC is either a signal name in <signal.h> or a signal number.\n"
" Signal names are case insensitive and the SIG prefix is optional. A\n"
" signal may be sent to the shell with \"kill -signal $$\".\n"
" \n"
" Exit Status:\n"
-" Returns success unless a SIGSPEC is invalid or an invalid option is "
-"given."
+" Returns success unless a SIGSPEC is invalid or an invalid option is given."
msgstr ""
"Intercepter des signaux et d'autres événements.\n"
" \n"
-" Définit et active des gestionnaires à lancer lorsque le shell reçoit des "
-"signaux\n"
+" Définit et active des gestionnaires à lancer lorsque le shell reçoit des signaux\n"
" ou sous d'autres conditions.\n"
" \n"
" La commande ARG doit être lue et exécutée lorsque le shell reçoit le\n"
" signal SIGNAL_SPEC. Si ARG est absent (et qu'un unique SIGNAL_SPEC)\n"
" est fourni) ou égal à « - », tous les signaux spécifié sont remis\n"
-" à leur valeur d'origine. Si ARG est une chaîne vide, tous les "
-"SIGNAL_SPEC\n"
+" à leur valeur d'origine. Si ARG est une chaîne vide, tous les SIGNAL_SPEC\n"
" sont ignorés par le shell et les commandes qu'il appelle.\n"
" \n"
-" Si SIGNAL_SPEC est EXIT (0), la commande ARG est exécutée à la sortie du "
-"shell. Si un\n"
+" Si SIGNAL_SPEC est EXIT (0), la commande ARG est exécutée à la sortie du shell. Si un\n"
" SIGNAL_SPEC est DEBUG, ARG est exécuté après chaque commande simple. Si\n"
-" un SIGNAL_SPEC est RETURN, ARG est exécuté à chaque fois qu'une fonction "
-"shell ou\n"
+" un SIGNAL_SPEC est RETURN, ARG est exécuté à chaque fois qu'une fonction shell ou\n"
" qu'un script lancé avec . ou source se termine. Un SIGNAL_SPEC\n"
-" valant ERR permet d'exécuter ARG à chaque fois qu'un échec d'une "
-"commande engendrerait\n"
+" valant ERR permet d'exécuter ARG à chaque fois qu'un échec d'une commande engendrerait\n"
" la sortie du shell lorsque l'option -e est activée.\n"
" \n"
-" Si aucun argument n'est fourni, « trap » affiche la liste des commandes "
-"associées\n"
+" Si aucun argument n'est fourni, « trap » affiche la liste des commandes associées\n"
" à chaque signal.\n"
" \n"
" Options :\n"
" -p\taffiche les commandes de « trap » associées à chaque SIGNAL_SPEC\n"
" \n"
" Chaque SIGNAL_SPEC est soit un nom de signal dans <signal.h>\n"
-" ou un numéro de signal. Les noms de signaux sont insensibles à la casse "
-"et\n"
+" ou un numéro de signal. Les noms de signaux sont insensibles à la casse et\n"
" le préfixe « SIG » est facultatif. Un signal peut être envoyé au\n"
" shell avec « kill -signal $$ ».\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins que SIGSPEC ne soit pas valable ou "
-"qu'une option non valable ne soit donnée."
+" Renvoie le code de succès à moins que SIGSPEC ne soit pas valable ou qu'une option non valable ne soit donnée."
-#: builtins.c:1378
+#: builtins.c:1368
msgid ""
"Display information about command type.\n"
" \n"
" NAME\tCommand name to be interpreted.\n"
" \n"
" Exit Status:\n"
-" Returns success if all of the NAMEs are found; fails if any are not "
-"found."
+" Returns success if all of the NAMEs are found; fails if any are not found."
msgstr ""
"Affiche des informations sur le type de commande.\n"
" \n"
" \n"
" Options :\n"
" -a\taffiche tous les emplacements contenant un exécutable nommé NOM;\n"
-" \tinclut les alias, les commandes intégrées et les fonctions si et "
-"seulement si\n"
+" \tinclut les alias, les commandes intégrées et les fonctions si et seulement si\n"
" \tl'option n'est pas « -p » n'est pas utilisée\n"
" -f\tdésactive la recherche de fonctions du shell\n"
-" -P\tforce une recherche de CHEMIN pour chaque NOM, même si c'est un "
-"alias,\n"
-" \tune commande intégrée ou une fonction et renvoie le nom du fichier du "
-"disque\n"
+" -P\tforce une recherche de CHEMIN pour chaque NOM, même si c'est un alias,\n"
+" \tune commande intégrée ou une fonction et renvoie le nom du fichier du disque\n"
" \tqui serait exécuté\n"
" -p\trenvoie soir le nom du fichier du disque qui serait exécuté,\n"
" \tsoit rien si « type -t NOM » ne renvoyait pas « file ».\n"
" -t\taffiche un mot unique parmi « alias », « keyword »,\n"
-" \t« function », « builtin », « file » or « », si NOM est respectivement "
-"un alias,\n"
-" \tun mot réservé du shell, une fonction du shell, une commande "
-"intégrée,\n"
+" \t« function », « builtin », « file » or « », si NOM est respectivement un alias,\n"
+" \tun mot réservé du shell, une fonction du shell, une commande intégrée,\n"
" \tun fichier du disque ou un nom inconnu\n"
" \n"
" Arguments :\n"
" NOM\tNom de commande à interpréter.\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de succès si tous les NOMs sont trouvés, le code d'échec "
-"si l'un d'entre eux n'est pas trouvé."
+" Renvoie le code de succès si tous les NOMs sont trouvés, le code d'échec si l'un d'entre eux n'est pas trouvé."
-#: builtins.c:1409
-#, fuzzy
+#: builtins.c:1399
msgid ""
"Modify shell resource limits.\n"
" \n"
-" Provides control over the resources available to the shell and "
-"processes\n"
+" Provides control over the resources available to the shell and processes\n"
" it creates, on systems that allow such control.\n"
" \n"
" Options:\n"
" -u\tthe maximum number of user processes\n"
" -v\tthe size of virtual memory\n"
" -x\tthe maximum number of file locks\n"
-" -T the maximum number of threads\n"
-" \n"
-" Not all options are available on all platforms.\n"
" \n"
" If LIMIT is given, it is the new value of the specified resource; the\n"
" special LIMIT values `soft', `hard', and `unlimited' stand for the\n"
msgstr ""
"Modifie les limites de ressources du shell.\n"
" \n"
-" Fournit un contrôle sur les ressources disponibles au shell et aux "
-"processus\n"
+" Fournit un contrôle sur les ressources disponibles au shell et aux processus\n"
" qu'il crée, sur les systèmes qui permettent un tel contrôle. \n"
" \n"
" Options :\n"
" -v\tla taille de la mémoire virtuelle\n"
" -x\tle nombre maximal de verrous de fichiers\n"
" \n"
-" Si LIMIT est fournie, elle est utilisée comme nouvelle valeur de "
-"ressource\n"
-" Les valeurs spéciales de LIMIT « soft », « hard » et « unlimited » "
-"correspondent\n"
-" respectivement aux valeurs actuelles de la limite souple, de la limite "
-"dure,\n"
-" ou à une absence de limite. Sinon la valeur actuelle de la limite est "
-"affichée\n"
+" Si LIMIT est fournie, elle est utilisée comme nouvelle valeur de ressource\n"
+" Les valeurs spéciales de LIMIT « soft », « hard » et « unlimited » correspondent\n"
+" respectivement aux valeurs actuelles de la limite souple, de la limite dure,\n"
+" ou à une absence de limite. Sinon la valeur actuelle de la limite est affichée\n"
" Si aucune option n'est donnée, « -f » est supposée.\n"
" \n"
-" Les valeurs sont des multiples de 1024 octets, sauf pour « -t » qui "
-"prend des secondes,\n"
-" « -p » qui prend un multiple de 512 octets et « -u » qui prend un "
-"nombre\n"
+" Les valeurs sont des multiples de 1024 octets, sauf pour « -t » qui prend des secondes,\n"
+" « -p » qui prend un multiple de 512 octets et « -u » qui prend un nombre\n"
" de processus sans unité.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins qu'une option non valable ne soit "
-"fournie ou qu'une erreur ne survienne."
+" Renvoie le code de succès à moins qu'une option non valable ne soit fournie ou qu'une erreur ne survienne."
-#: builtins.c:1457
+#: builtins.c:1444
msgid ""
"Display or set file mode mask.\n"
" \n"
msgstr ""
"Affiche ou définit le masque de mode de fichier.\n"
" \n"
-" Définit le masque de création de fichier comme étant MODE. Si MODE est "
-"omis, affiche\n"
+" Définit le masque de création de fichier comme étant MODE. Si MODE est omis, affiche\n"
" la valeur courante du MASQUE.\n"
" \n"
-" Si MODE commence par un chiffre, il est interprété comme un nombre "
-"octal ;\n"
-" sinon comme une chaîne de symboles de mode comme ceux acceptés par chmod"
-"(1).\n"
+" Si MODE commence par un chiffre, il est interprété comme un nombre octal ;\n"
+" sinon comme une chaîne de symboles de mode comme ceux acceptés par chmod(1).\n"
" \n"
" Options :\n"
-" -p\tsi MODE est omis, afficher sous une forme réutilisable comme une "
-"entrée\n"
-" -S\tafficher sous forme symbolique, sinon la sortie octale est "
-"utilisée\n"
+" -p\tsi MODE est omis, afficher sous une forme réutilisable comme une entrée\n"
+" -S\tafficher sous forme symbolique, sinon la sortie octale est utilisée\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de succès à moins que MODE ne soit pas valable ou qu'une "
-"option non valable ne soit donnée."
+" Renvoie le code de succès à moins que MODE ne soit pas valable ou qu'une option non valable ne soit donnée."
-#: builtins.c:1477
-#, fuzzy
+#: builtins.c:1464
msgid ""
"Wait for job completion and return exit status.\n"
" \n"
-" Waits for each process identified by an ID, which may be a process ID or "
-"a\n"
+" Waits for the process identified by ID, which may be a process ID or a\n"
" job specification, and reports its termination status. If ID is not\n"
" given, waits for all currently active child processes, and the return\n"
-" status is zero. If ID is a a job specification, waits for all "
-"processes\n"
-" in that job's pipeline.\n"
+" status is zero. If ID is a a job specification, waits for all processes\n"
+" in the job's pipeline.\n"
" \n"
" Exit Status:\n"
-" Returns the status of the last ID; fails if ID is invalid or an invalid\n"
-" option is given."
+" Returns the status of ID; fails if ID is invalid or an invalid option is\n"
+" given."
msgstr ""
"Attend la fin d'une tâche et renvoie le code de retour.\n"
" \n"
-" Attend que le processus identifié par ID, qui peut être un ID de "
-"processus ou\n"
-" une spécification de tâche et renvoie son code de retour. Si ID n'est "
-"pas\n"
-" donné, la commande attend tous les processus actifs en cours et le code "
-"de retour\n"
-" est zéro. Si ID est une spécification de tâche, la commande attend tous "
-"les processus\n"
+" Attend que le processus identifié par ID, qui peut être un ID de processus ou\n"
+" une spécification de tâche et renvoie son code de retour. Si ID n'est pas\n"
+" donné, la commande attend tous les processus actifs en cours et le code de retour\n"
+" est zéro. Si ID est une spécification de tâche, la commande attend tous les processus\n"
" dans le pipeline de la tâche.\n"
" \n"
" Code de retour :\n"
-" Renvoie le même code que celui d'ID, ou le code d'échec si ID n'est pas "
-"valable ou en cas d'option non valable."
+" Renvoie le même code que celui d'ID, ou le code d'échec si ID n'est pas valable ou en cas d'option non valable."
-#: builtins.c:1495
+#: builtins.c:1482
msgid ""
"Wait for process completion and return exit status.\n"
" \n"
" and the return code is zero. PID must be a process ID.\n"
" \n"
" Exit Status:\n"
-" Returns the status of ID; fails if ID is invalid or an invalid option "
-"is\n"
+" Returns the status of ID; fails if ID is invalid or an invalid option is\n"
" given."
msgstr ""
"Attend la fin d'un processus et renvoie le code de sortie.\n"
" et le code de retour est zéro. PID doit être un ID de processus.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de ID, l'échec si ID n'est pas valable ou si une option "
-"non valable\n"
+" Renvoie le code de ID, l'échec si ID n'est pas valable ou si une option non valable\n"
" est donnée."
-#: builtins.c:1510
+#: builtins.c:1497
msgid ""
"Execute commands for each member in a list.\n"
" \n"
msgstr ""
"Exécute des commandes pour chaque membre d'une liste.\n"
" \n"
-" La boucle « for » exécute une suite de commandes pour chaque membre "
-"d'une\n"
-" liste d'éléments. Si « in MOTS ...; » n'est pas fourni, « in \"$@\" » "
-"est\n"
+" La boucle « for » exécute une suite de commandes pour chaque membre d'une\n"
+" liste d'éléments. Si « in MOTS ...; » n'est pas fourni, « in \"$@\" » est\n"
" utilisé. Pour chaque élément dans MOTS, NOM est défini à cet élément,\n"
" et les COMMANDES sont exécutées.\n"
" \n"
" Code de sortie :\n"
" Renvoie le code de la dernière commande exécutée."
-#: builtins.c:1524
+#: builtins.c:1511
msgid ""
"Arithmetic for loop.\n"
" \n"
" \t\tCOMMANDS\n"
" \t\t(( EXP3 ))\n"
" \tdone\n"
-" EXP1, EXP2, and EXP3 sont des expressions arithmétiques. Si une "
-"expression\n"
+" EXP1, EXP2, and EXP3 sont des expressions arithmétiques. Si une expression\n"
" omise, elle se comporte comme si elle s'évaluait à 1.\n"
" \n"
" Code de sortie :\n"
" Renvoie le code de la dernière commande exécutée."
-#: builtins.c:1542
+#: builtins.c:1529
msgid ""
"Select words from a list and execute commands.\n"
" \n"
" Code de sortie :\n"
" Renvoie le code de la dernière commande exécutée."
-#: builtins.c:1563
+#: builtins.c:1550
msgid ""
"Report time consumed by pipeline's execution.\n"
" \n"
msgstr ""
"Signale le temps passé pendant l'exécution d'un tube de commandes.\n"
" \n"
-" Exécute PIPELINE et affiche un résumé du temps réel, du temps "
-"processeur\n"
+" Exécute PIPELINE et affiche un résumé du temps réel, du temps processeur\n"
" utilisateur, et du temps processeur système passés à exécuter PIPELINE\n"
" lorsque celui-ci se termine.\n"
" \n"
" Options :\n"
" -p\taffiche le résumé dans le format portable Posix.\n"
" \n"
-" La valeur de la variable TIMEFORMAT est utilisée comme format de "
-"sortie.\n"
+" La valeur de la variable TIMEFORMAT est utilisée comme format de sortie.\n"
" \n"
" Code de sortie :\n"
" Le code de retour est celui du PIPELINE."
-#: builtins.c:1580
+#: builtins.c:1567
msgid ""
"Execute commands based on pattern matching.\n"
" \n"
msgstr ""
"Exécute des commandes selon une correspondance de motif.\n"
" \n"
-" Exécute de manière sélective les COMMANDES selon la correspondance du "
-"MOT\n"
-" au MOTIF. Le caractère « | » est utilisé pour séparer les différents "
-"motifs.\n"
+" Exécute de manière sélective les COMMANDES selon la correspondance du MOT\n"
+" au MOTIF. Le caractère « | » est utilisé pour séparer les différents motifs.\n"
" \n"
" Code de sortie :\n"
" Renvoie le code de la dernière commande exécutée."
-#: builtins.c:1592
+#: builtins.c:1579
msgid ""
"Execute commands based on conditional.\n"
" \n"
-" The `if COMMANDS' list is executed. If its exit status is zero, then "
-"the\n"
-" `then COMMANDS' list is executed. Otherwise, each `elif COMMANDS' list "
-"is\n"
+" The `if COMMANDS' list is executed. If its exit status is zero, then the\n"
+" `then COMMANDS' list is executed. Otherwise, each `elif COMMANDS' list is\n"
" executed in turn, and if its exit status is zero, the corresponding\n"
-" `then COMMANDS' list is executed and the if command completes. "
-"Otherwise,\n"
-" the `else COMMANDS' list is executed, if present. The exit status of "
-"the\n"
-" entire construct is the exit status of the last command executed, or "
-"zero\n"
+" `then COMMANDS' list is executed and the if command completes. Otherwise,\n"
+" the `else COMMANDS' list is executed, if present. The exit status of the\n"
+" entire construct is the exit status of the last command executed, or zero\n"
" if no condition tested true.\n"
" \n"
" Exit Status:\n"
msgstr ""
"Exécute des commandes selon une condition.\n"
" \n"
-" La liste « if COMMANDES » est exécutée. Si elle se termine avec un code "
-"de zéro,\n"
+" La liste « if COMMANDES » est exécutée. Si elle se termine avec un code de zéro,\n"
" alors la liste « then COMMANDES » est exécutée. Sinon, chaque liste\n"
-" « elif COMMANDES » est exécutée à son tour et si son code de retour est "
-"zéro,\n"
-" la liste « then COMMANDES » correspondante est exécutée et la commande « "
-"if »\n"
-" se termine. Sinon, la list « else COMMANDES » est exécutée si elle "
-"existe.\n"
-" Le code de retour de l'ensemble est celui de la dernière commande "
-"exécutée\n"
+" « elif COMMANDES » est exécutée à son tour et si son code de retour est zéro,\n"
+" la liste « then COMMANDES » correspondante est exécutée et la commande « if »\n"
+" se termine. Sinon, la list « else COMMANDES » est exécutée si elle existe.\n"
+" Le code de retour de l'ensemble est celui de la dernière commande exécutée\n"
" ou zéro si aucune condition n'était vraie.\n"
" \n"
" Code de sortie :\n"
" Renvoie le code de la dernière commande exécutée."
-#: builtins.c:1609
+#: builtins.c:1596
msgid ""
"Execute commands as long as a test succeeds.\n"
" \n"
"Exécute des commandes aussi longtemps qu'elle réussissent.\n"
" \n"
" Effectue une expansion et exécute les COMMANDES aussi longtemps\n"
-" que la commande finale parmi celles situées dans « while » se termine "
-"avec un\n"
+" que la commande finale parmi celles situées dans « while » se termine avec un\n"
" code de retour de zéro.\n"
" \n"
" Code de sortie :\n"
" Renvoie le code de la dernière commande exécutée."
-#: builtins.c:1621
+#: builtins.c:1608
msgid ""
"Execute commands as long as a test does not succeed.\n"
" \n"
msgstr ""
"Exécute des commandes aussi longtemps qu'un test échoue.\n"
" \n"
-" Effectue une expansion et exécute les commandes « COMMANDES » aussi "
-"longtemps\n"
+" Effectue une expansion et exécute les commandes « COMMANDES » aussi longtemps\n"
" que les commandes de « until » se terminent avec un code de retour\n"
" différent de zéro.\n"
" \n"
" Code de sortie :\n"
" Renvoie le code de la dernière commande exécutée."
-#: builtins.c:1633
+#: builtins.c:1620
msgid ""
"Create a coprocess named NAME.\n"
" \n"
msgstr ""
"Crée un coprocessus nommé NOM.\n"
" \n"
-" Exécute la COMMANDE de manière asynchrone, en connectant la sortie et "
-"l'entrée standard\n"
-" de la commande par un tube aux decripteurs de fichier affectés aux "
-"indices 0 et 1\n"
+" Exécute la COMMANDE de manière asynchrone, en connectant la sortie et l'entrée standard\n"
+" de la commande par un tube aux decripteurs de fichier affectés aux indices 0 et 1\n"
" d'une variable tableau NOM dans le shell en cours d'exécution.\n"
" Le NOM par défaut est « COPROC ».\n"
" \n"
" Code de retour :\n"
" Renvoie le même code de retour que la COMMANDE."
-#: builtins.c:1647
+#: builtins.c:1634
msgid ""
"Define shell function.\n"
" \n"
" Create a shell function named NAME. When invoked as a simple command,\n"
-" NAME runs COMMANDs in the calling shell's context. When NAME is "
-"invoked,\n"
+" NAME runs COMMANDs in the calling shell's context. When NAME is invoked,\n"
" the arguments are passed to the function as $1...$n, and the function's\n"
" name is in $FUNCNAME.\n"
" \n"
msgstr ""
"Définit une fonction du shell.\n"
" \n"
-" Crée une fonction du shell nommée NOM. Lorsqu'appelée comme une simple "
-"commande,\n"
-" NOM lance la COMMANDE dans le contexte du shell qui l'appelle. Lorsque "
-"NOM est appelé,\n"
-" les arguments sont transmis à la fonction comme $1...$n, et le nom de la "
-"fonction\n"
+" Crée une fonction du shell nommée NOM. Lorsqu'appelée comme une simple commande,\n"
+" NOM lance la COMMANDE dans le contexte du shell qui l'appelle. Lorsque NOM est appelé,\n"
+" les arguments sont transmis à la fonction comme $1...$n, et le nom de la fonction\n"
" est $FUNCNAME.\n"
" \n"
" Code de retour :\n"
" Renvoie le code de succès à moins que NOM ne soit en lecture seule."
-#: builtins.c:1661
+#: builtins.c:1648
msgid ""
"Group commands as a unit.\n"
" \n"
" Code de sortie :\n"
" Renvoie le code de la dernière commande exécutée."
-#: builtins.c:1673
+#: builtins.c:1660
msgid ""
"Resume job in foreground.\n"
" \n"
msgstr ""
"Reprend une tâche en arrière plan.\n"
" \n"
-" Équivalent à l'argument JOB_SPEC de la commande « fg ». Reprend "
-"l'exécution\n"
+" Équivalent à l'argument JOB_SPEC de la commande « fg ». Reprend l'exécution\n"
" d'une tâche stoppée ou en tâche de fond. JOB_SPEC peut spécifier soit\n"
-" un nom soit un numéro de tâche. Faire suivre JOB_SPEC de « & » permet "
-"de\n"
-" placer la tâche en arrière plan, comme si la spécification de tâche "
-"avait\n"
+" un nom soit un numéro de tâche. Faire suivre JOB_SPEC de « & » permet de\n"
+" placer la tâche en arrière plan, comme si la spécification de tâche avait\n"
" été fournie comme argument de « bg ».\n"
" \n"
" Code de sortie :\n"
" Renvoie le code de la commande reprise."
-#: builtins.c:1688
+#: builtins.c:1675
msgid ""
"Evaluate arithmetic expression.\n"
" \n"
" Code de sortie :\n"
" Renvoie 1 si EXPRESSION est évaluée à 0, sinon renvoie 0."
-#: builtins.c:1700
+#: builtins.c:1687
msgid ""
"Execute conditional command.\n"
" \n"
-" Returns a status of 0 or 1 depending on the evaluation of the "
-"conditional\n"
-" expression EXPRESSION. Expressions are composed of the same primaries "
-"used\n"
-" by the `test' builtin, and may be combined using the following "
-"operators:\n"
+" Returns a status of 0 or 1 depending on the evaluation of the conditional\n"
+" expression EXPRESSION. Expressions are composed of the same primaries used\n"
+" by the `test' builtin, and may be combined using the following operators:\n"
" \n"
" ( EXPRESSION )\tReturns the value of EXPRESSION\n"
" ! EXPRESSION\t\tTrue if EXPRESSION is false; else false\n"
msgstr ""
"Exécute une commande conditionnelle.\n"
" \n"
-" Renvoie un code de retour de 0 ou 1 dépendant de l'évaluation de "
-"l'EXPRESSION\n"
-" conditionnelle. Les expressions sont formées de la même façon que pour "
-"la\n"
-" primitive « test », et peuvent être combinées avec les opérateurs "
-"suivants :\n"
+" Renvoie un code de retour de 0 ou 1 dépendant de l'évaluation de l'EXPRESSION\n"
+" conditionnelle. Les expressions sont formées de la même façon que pour la\n"
+" primitive « test », et peuvent être combinées avec les opérateurs suivants :\n"
" \n"
" \t( EXPRESSION )\tRenvoie la valeur de l'EXPRESSION\n"
" \t! EXPRESSION\tVrai si l'EXPRESSION est fausse, sinon vrai\n"
" \tEXPR1 && EXPR2\tVrai si EXPR1 et EXPR2 sont vraies, faux sinon\n"
" \tEXPR1 || EXPR2\tVrai si EXPR1 ou EXPR2 est vraie, faux sinon\n"
" \n"
-" Lorsque les opérateurs « == » et « != » sont utilisés, la chaîne à "
-"droite de l'opérateur\n"
+" Lorsque les opérateurs « == » et « != » sont utilisés, la chaîne à droite de l'opérateur\n"
" est utilisée comme motif, et une mise en correspondance est effectuée.\n"
-" Lorsque l'opérateur « =~ » est utilisé, la chaîne à droite de "
-"l'opérateur\n"
+" Lorsque l'opérateur « =~ » est utilisé, la chaîne à droite de l'opérateur\n"
" est mise en correspondance comme une expression rationnelle.\n"
" \n"
" Les opérateurs « && » et « || » n'évaluent pas EXPR2 si\n"
" Code de sortie :\n"
" 0 ou 1 selon la valeur de l'EXPRESSION."
-#: builtins.c:1726
+#: builtins.c:1713
msgid ""
"Common shell variable names and usage.\n"
" \n"
" BASH_VERSION\tNuméro de version de ce Bash.\n"
" CDPATH\tUne liste de répertoires, séparés par un deux-points, utilisés\n"
" \t\tpar « cd » pour la recherche de répertoires.\n"
-" GLOBIGNORE\tUne liste de motifs séparés par un deux-points, décrivant "
-"les\n"
+" GLOBIGNORE\tUne liste de motifs séparés par un deux-points, décrivant les\n"
" \t\tnoms de fichier à ignorer lors de l'expansion des chemins.\n"
-" HISTFILE\tLe nom du fichier où votre historique des commandes est "
-"stocké.\n"
+" HISTFILE\tLe nom du fichier où votre historique des commandes est stocké.\n"
" HISTFILESIZE\tLe nombre maximal de lignes que ce fichier peut contenir.\n"
" HISTSIZE\tLe nombre maximal de lignes d'historique auquel un shell en\n"
" \t\tfonctionnement peut accéder.\n"
" HOME\tLe chemin complet vers votre répertoire de connexion.\n"
" HOSTNAME\tLe nom de la machine actuelle.\n"
-" HOSTTYPE\tLe type de processeur sur laquelle cette version de Bash "
-"fonctionne.\n"
-" IGNOREEOF\tContrôle l'action du shell à la réception d'un caractère « "
-"EOF »\n"
-" \t\tcomme seule entrée. Si défini, sa valeur est le nombre de "
-"caractères\n"
+" HOSTTYPE\tLe type de processeur sur laquelle cette version de Bash fonctionne.\n"
+" IGNOREEOF\tContrôle l'action du shell à la réception d'un caractère « EOF »\n"
+" \t\tcomme seule entrée. Si défini, sa valeur est le nombre de caractères\n"
" \t\t« EOF » qui peuvent être rencontrés à la suite sur une ligne vide\n"
" \t\tavant que le shell ne se termine (10 par défaut).\n"
" \t\tS'il n'est pas défini, « EOF » signifie la fin de l'entrée.\n"
-" MACHTYPE\tUne chaîne décrivant le système actuel sur lequel fonctionne "
-"Bash.\n"
-" MAILCHECK\tLe nombre de secondes séparant deux vérifications du courrier "
-"par Bash.\n"
-" MAILPATH\tUne liste de fichiers séparés par un deux-points, que Bash "
-"utilise\n"
+" MACHTYPE\tUne chaîne décrivant le système actuel sur lequel fonctionne Bash.\n"
+" MAILCHECK\tLe nombre de secondes séparant deux vérifications du courrier par Bash.\n"
+" MAILPATH\tUne liste de fichiers séparés par un deux-points, que Bash utilise\n"
" \t\tpour vérifier les nouveaux courriers.\n"
-" OSTYPE\tLa version d'Unix sur laquelle cette version de Bash "
-"fonctionne.\n"
+" OSTYPE\tLa version d'Unix sur laquelle cette version de Bash fonctionne.\n"
" PATH\tUne liste de répertoires séparés par un deux-points, utilisés\n"
" \t\tpour la recherche des commandes.\n"
" PROMPT_COMMAND\tUne commande à exécuter avant d'afficher chaque invite\n"
" PS1\t\tL'invite de commande principale.\n"
" PS2\t\tL'invite secondaire.\n"
" PWD\t\tLe chemin complet vers le répertoire actuel.\n"
-" SHELLOPTS\tLa liste des options activées du shell, séparées par un deux-"
-"points.\n"
+" SHELLOPTS\tLa liste des options activées du shell, séparées par un deux-points.\n"
" TERM\tLe nom du type actuel du terminal.\n"
-" TIMEFORMAT\tLe format de sortie pour les statistiques de temps "
-"affichées\n"
+" TIMEFORMAT\tLe format de sortie pour les statistiques de temps affichées\n"
" \t\tpar le mot réservé « time ».\n"
" auto_resume\tNon-vide signifie qu'un mot de commande apparaissant\n"
" \t\tde lui-même sur une ligne est d'abord recherché dans la liste des\n"
-" \t\ttâches stoppées. Si elle est trouvée, la tâche est remise en avant-"
-"plan.\n"
-" \t\tUne valeur de « exact » signifie que le mot de commande doit "
-"correspondre\n"
-" \t\texactement à la commande dans la liste des tâches stoppées. Une "
-"valeur\n"
+" \t\ttâches stoppées. Si elle est trouvée, la tâche est remise en avant-plan.\n"
+" \t\tUne valeur de « exact » signifie que le mot de commande doit correspondre\n"
+" \t\texactement à la commande dans la liste des tâches stoppées. Une valeur\n"
" \t\tde « substring » signifie que le mot de commande\n"
-" \t\tcorrespondre à une sous-chaîne de la tâche. Une autre valeur "
-"signifie\n"
+" \t\tcorrespondre à une sous-chaîne de la tâche. Une autre valeur signifie\n"
" \t\tque la commande doit être un préfixe d'une tâche stoppée.\n"
-" histchars\tCaractères contrôlant l'expansion d'historique et la "
-"substitution\n"
-" \t\trapide. Le premier caractère est le caractère de substitution "
-"d'historique,\n"
-" \t\thabituellement « ! ». Le deuxième est le caractère de substitution "
-"rapide,\n"
+" histchars\tCaractères contrôlant l'expansion d'historique et la substitution\n"
+" \t\trapide. Le premier caractère est le caractère de substitution d'historique,\n"
+" \t\thabituellement « ! ». Le deuxième est le caractère de substitution rapide,\n"
" \t\thabituellement « ^ ». Le troisième est le caractère de commentaire\n"
" \t\td'historique, habituellement « # ».\n"
-" HISTIGNORE\tUne liste de motifs séparés par un deux-points, utilisés "
-"pour\n"
-" \t\tdécider quelles commandes doivent être conservées dans la liste "
-"d'historique.\n"
+" HISTIGNORE\tUne liste de motifs séparés par un deux-points, utilisés pour\n"
+" \t\tdécider quelles commandes doivent être conservées dans la liste d'historique.\n"
-#: builtins.c:1783
+#: builtins.c:1770
msgid ""
"Add directories to stack.\n"
" \n"
" \n"
" Arguments :\n"
" +N\tPermuter la pile de façon que le Nième répertoire se place en haut,\n"
-" \ten comptant de zéro depuis la gauche de la liste fournie par « dirs "
-"».\n"
+" \ten comptant de zéro depuis la gauche de la liste fournie par « dirs ».\n"
" \n"
" -N\tPermuter la pile de façon que le Nième répertoire se place en haut,\n"
-" \ten comptant de zéro depuis la droite de la liste fournie par « dirs "
-"».\n"
+" \ten comptant de zéro depuis la droite de la liste fournie par « dirs ».\n"
" \n"
-" dir\tajouter le répertoire DIR en haut de la pile, et en faire le "
-"nouveau\n"
+" dir\tajouter le répertoire DIR en haut de la pile, et en faire le nouveau\n"
" \trépertoire de travail.\n"
" \n"
" Vous pouvez voir la pile des répertoires avec la commande « dirs ».\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins qu'un argument non valable ne soit "
-"fourni\n"
+" Renvoie le code de succès à moins qu'un argument non valable ne soit fourni\n"
" ou que le changement de répertoire n'échoue."
-#: builtins.c:1817
+#: builtins.c:1804
msgid ""
"Remove directories from stack.\n"
" \n"
" Vous pouvez voir la pile des répertoires avec la commande « dirs ».\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins qu'un argument non valable ne soit "
-"donné\n"
+" Renvoie le code de succès à moins qu'un argument non valable ne soit donné\n"
" ou que le changement de répertoire n'échoue."
-#: builtins.c:1847
+#: builtins.c:1834
msgid ""
"Display directory stack.\n"
" \n"
" \twith its position in the stack\n"
" \n"
" Arguments:\n"
-" +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
+" +N\tDisplays the Nth entry counting from the left of the list shown by\n"
" \tdirs when invoked without options, starting with zero.\n"
" \n"
-" -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
+" -N\tDisplays the Nth entry counting from the right of the list shown by\n"
" \tdirs when invoked without options, starting with zero.\n"
" \n"
" Exit Status:\n"
msgstr ""
"Affiche la pile de répertoire.\n"
" \n"
-" Affiche la liste des répertoires actuellement mémorisés. Les "
-"répertoires\n"
-" sont insérés dans la liste avec la commande « pushd ». Vous pouvez "
-"remonter\n"
+" Affiche la liste des répertoires actuellement mémorisés. Les répertoires\n"
+" sont insérés dans la liste avec la commande « pushd ». Vous pouvez remonter\n"
" dans la liste en enlevant des éléments avec la commande « popd ».\n"
" \n"
" Options:\n"
" \ten préfixant avec sa position dans la pile\n"
" \n"
" Arguments :\n"
-" +N\t affiche le Nième élément en comptant de zéro depuis la gauche de "
-"la\n"
+" +N\t affiche le Nième élément en comptant de zéro depuis la gauche de la\n"
" liste affichée par « dirs » lorsque celle-ci est appelée sans option.\n"
" \n"
-" -N\t affiche le Nième élément en comptant de zéro depuis la droite de "
-"la\n"
+" -N\t affiche le Nième élément en comptant de zéro depuis la droite de la\n"
" liste affichée par « dirs » lorsque celle-ci est appelée sans option.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins qu'une option non valable ne soit "
-"fournie ou qu'une erreur ne survienne."
+" Renvoie le code de succès à moins qu'une option non valable ne soit fournie ou qu'une erreur ne survienne."
-#: builtins.c:1876
+#: builtins.c:1863
msgid ""
"Set and unset shell options.\n"
" \n"
" Change the setting of each shell option OPTNAME. Without any option\n"
-" arguments, list all shell options with an indication of whether or not "
-"each\n"
+" arguments, list all shell options with an indication of whether or not each\n"
" is set.\n"
" \n"
" Options:\n"
msgstr ""
"Active ou désactive des options du shell.\n"
" \n"
-" Change la valeur de chaque option du shell NOMOPT. S'il n'y a pas "
-"d'argument à l'option\n"
-" la commande liste toutes les options du shell en indiquant si elles sont "
-"actives\n"
+" Change la valeur de chaque option du shell NOMOPT. S'il n'y a pas d'argument à l'option\n"
+" la commande liste toutes les options du shell en indiquant si elles sont actives\n"
" ou non.\n"
" \n"
" Options :\n"
-" -o\trestreint les NOMOPT à ceux définis pour être utilisés avec « set -"
-"o »\n"
+" -o\trestreint les NOMOPT à ceux définis pour être utilisés avec « set -o »\n"
" -p\taffiche chaque option du shell en indiquant son état\n"
" -q\tsupprime l'affichage\n"
" -s\tactive (set) chaque NOMOPT\n"
" -u\tdésactive (unset) chaque NOMOPT\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de succès si NOMOPT est active ; échec si une option non "
-"valable\n"
+" Renvoie le code de succès si NOMOPT est active ; échec si une option non valable\n"
" est donnée ou si NOMOPT est inactive."
-#: builtins.c:1897
-#, fuzzy
+#: builtins.c:1884
msgid ""
"Formats and prints ARGUMENTS under control of the FORMAT.\n"
" \n"
" -v var\tassign the output to shell variable VAR rather than\n"
" \t\tdisplay it on the standard output\n"
" \n"
-" FORMAT is a character string which contains three types of objects: "
-"plain\n"
-" characters, which are simply copied to standard output; character "
-"escape\n"
+" FORMAT is a character string which contains three types of objects: plain\n"
+" characters, which are simply copied to standard output; character escape\n"
" sequences, which are converted and copied to the standard output; and\n"
-" format specifications, each of which causes printing of the next "
-"successive\n"
+" format specifications, each of which causes printing of the next successive\n"
" argument.\n"
" \n"
-" In addition to the standard format specifications described in printf"
-"(1),\n"
-" printf interprets:\n"
+" In addition to the standard format specifications described in printf(1)\n"
+" and printf(3), printf interprets:\n"
" \n"
" %b\texpand backslash escape sequences in the corresponding argument\n"
" %q\tquote the argument in a way that can be reused as shell input\n"
-" %(fmt)T output the date-time string resulting from using FMT as a "
-"format\n"
+" %(fmt)T output the date-time string resulting from using FMT as a format\n"
" string for strftime(3)\n"
" \n"
" Exit Status:\n"
-" Returns success unless an invalid option is given or a write or "
-"assignment\n"
+" Returns success unless an invalid option is given or a write or assignment\n"
" error occurs."
msgstr ""
"Formatte et affiche des ARGUMENTS en contrôlant le FORMAT.\n"
" \n"
" Options :\n"
-" -v var\taffecte la sortie à la variable VAR du shell plutôt que de "
-"l'afficher\n"
+" -v var\taffecte la sortie à la variable VAR du shell plutôt que de l'afficher\n"
" \t\tsur la sortie standard\n"
" \n"
-" Le FORMAT est une chaîne de caractères qui contient trois types "
-"d'objets : des caractères\n"
-" normaux qui sont simplement copiés vers la sortie standard, des "
-"séquences d'échappement\n"
-" qui sont converties et copiées vers la sortie standard et des "
-"spécifications de\n"
+" Le FORMAT est une chaîne de caractères qui contient trois types d'objets : des caractères\n"
+" normaux qui sont simplement copiés vers la sortie standard, des séquences d'échappement\n"
+" qui sont converties et copiées vers la sortie standard et des spécifications de\n"
" format, chacun entraînant l'affichage de l'argument suivant.\n"
" \n"
-" En plus des formats standards décrits dans printf(1) et printf(3), « "
-"printf » interprète :\n"
+" En plus des formats standards décrits dans printf(1) et printf(3), « printf » interprète :\n"
" \n"
-" %b\tdéveloppe les séquences d'échappement à contre-oblique dans "
-"l'argument correspondant\n"
-" %q\tprotège les arguments par guillemets de façon qu'ils puissent être "
-"réutilisés\n"
+" %b\tdéveloppe les séquences d'échappement à contre-oblique dans l'argument correspondant\n"
+" %q\tprotège les arguments par guillemets de façon qu'ils puissent être réutilisés\n"
" comme entrée du shell.\n"
-" %(fmt)T renvoie la chaîne date-heure résultant de l'utilisation de FMT "
-"comme une\n"
+" %(fmt)T renvoie la chaîne date-heure résultant de l'utilisation de FMT comme une\n"
" chaîne de format pour strftime(3)\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins qu'une option non valable ne soit "
-"donnée ou qu'une\n"
+" Renvoie le code de succès à moins qu'une option non valable ne soit donnée ou qu'une\n"
" erreur d'écriture ou d'affectation ne survienne."
-#: builtins.c:1926
+#: builtins.c:1913
msgid ""
"Specify how arguments are to be completed by Readline.\n"
" \n"
-" For each NAME, specify how arguments are to be completed. If no "
-"options\n"
-" are supplied, existing completion specifications are printed in a way "
-"that\n"
+" For each NAME, specify how arguments are to be completed. If no options\n"
+" are supplied, existing completion specifications are printed in a way that\n"
" allows them to be reused as input.\n"
" \n"
" Options:\n"
msgstr ""
"Spécifie la façon dont Readline complète les arguments.\n"
" \n"
-" Pour chaque NOM, la commande spécifie la façon dont les arguments son "
-"complétés\n"
-" S'il n'y a pas d'option, le réglage actuel est affiché d'une manièré "
-"réutilisable comme\n"
+" Pour chaque NOM, la commande spécifie la façon dont les arguments son complétés\n"
+" S'il n'y a pas d'option, le réglage actuel est affiché d'une manièré réutilisable comme\n"
" une entrée.\n"
" \n"
" Options :\n"
-" -p\taffiche le réglage d'auto-complètement actuel dans un format "
-"réutilisable\n"
-" -r\tretire un réglage d'auto-complètement à chaque NOM ou, si aucun "
-"NOM\n"
+" -p\taffiche le réglage d'auto-complètement actuel dans un format réutilisable\n"
+" -r\tretire un réglage d'auto-complètement à chaque NOM ou, si aucun NOM\n"
" \tn'est fourni, retire tous les réglages\n"
-" -D\tapplique les auto-complètements et actions comme valeurs par "
-"défaut aux commandes\n"
+" -D\tapplique les auto-complètements et actions comme valeurs par défaut aux commandes\n"
" \tne possédant aucun auto-complètement spécifique\n"
" -E\tapplique les auto-complètements et actions aux commandes vides (\n"
" \tauto-complètement tenté sur une ligne vide)\n"
" \n"
-" Lorsqu'un auto-complètement est tenté, les actions sont appliquées dans "
-"l'ordre\n"
-" dans lequel les options en majuscule ci-dessus sont listées. L'option « "
-"-D » est prioritaire\n"
+" Lorsqu'un auto-complètement est tenté, les actions sont appliquées dans l'ordre\n"
+" dans lequel les options en majuscule ci-dessus sont listées. L'option « -D » est prioritaire\n"
" sur « -E ».\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de succès à moins qu'une option non valable ne soit "
-"fournie ou qu'une erreur ne survienne."
+" Renvoie le code de succès à moins qu'une option non valable ne soit fournie ou qu'une erreur ne survienne."
-#: builtins.c:1954
+#: builtins.c:1941
msgid ""
"Display possible completions depending on the options.\n"
" \n"
" Intended to be used from within a shell function generating possible\n"
-" completions. If the optional WORD argument is supplied, matches "
-"against\n"
+" completions. If the optional WORD argument is supplied, matches against\n"
" WORD are generated.\n"
" \n"
" Exit Status:\n"
" des correspondances avec « WORD » sont générées.\n"
" \n"
" Code de sortie :\n"
-" Renvoie le code de succès à moins qu'une option non valable ne soit "
-"fournie ou qu'une erreur ne survienne."
+" Renvoie le code de succès à moins qu'une option non valable ne soit fournie ou qu'une erreur ne survienne."
-#: builtins.c:1969
+#: builtins.c:1956
msgid ""
"Modify or display completion options.\n"
" \n"
-" Modify the completion options for each NAME, or, if no NAMEs are "
-"supplied,\n"
-" the completion currently being executed. If no OPTIONs are given, "
-"print\n"
-" the completion options for each NAME or the current completion "
-"specification.\n"
+" Modify the completion options for each NAME, or, if no NAMEs are supplied,\n"
+" the completion currently being executed. If no OPTIONs are given, print\n"
+" the completion options for each NAME or the current completion specification.\n"
" \n"
" Options:\n"
" \t-o option\tSet completion option OPTION for each NAME\n"
msgstr ""
"Modifie ou affiche les options d'auto-complètement.\n"
" \n"
-" Modifie les options d'auto-complètement pour chaque NOM ou, si aucun NOM "
-"n'est fourni,\n"
-" pour l'auto-complètement actuellement exécuté. si aucune OPTION n'est "
-"donnée, affiche\n"
-" les options d'auto-complètement de chaque NOM ou le réglage actuel "
-"d'auto-complètement.\n"
+" Modifie les options d'auto-complètement pour chaque NOM ou, si aucun NOM n'est fourni,\n"
+" pour l'auto-complètement actuellement exécuté. si aucune OPTION n'est donnée, affiche\n"
+" les options d'auto-complètement de chaque NOM ou le réglage actuel d'auto-complètement.\n"
" \n"
" Options :\n"
-" \t-o option\tDéfinir l'option d'auto-complètement OPTION pour chaque "
-"NOM\n"
-" \t-D\t\tChanger les options pour l'auto-complètement de commande par "
-"défaut\n"
+" \t-o option\tDéfinir l'option d'auto-complètement OPTION pour chaque NOM\n"
+" \t-D\t\tChanger les options pour l'auto-complètement de commande par défaut\n"
" \t-E\t\tChanger les options pour l'auto-complètement de commande vide\n"
" \n"
" Utiliser « +o » au lieu de « -o » désactive l'option spécifiée.\n"
" \n"
" Arguments :\n"
" \n"
-" Chaque NOM correspond à une commande pour laquelle un réglage d'auto-"
-"complètement\n"
-" doit déjà avoir été défini grâce à la commande intégrée « complete ». "
-"Si aucun NOM\n"
-" n'est fourni, « compopt » doit être appelée par une fonction générant "
-"actuellement\n"
-" des auto-complètements ; ainsi les options de ce générateur d'auto-"
-"complètement en cours d'exécution\n"
+" Chaque NOM correspond à une commande pour laquelle un réglage d'auto-complètement\n"
+" doit déjà avoir été défini grâce à la commande intégrée « complete ». Si aucun NOM\n"
+" n'est fourni, « compopt » doit être appelée par une fonction générant actuellement\n"
+" des auto-complètements ; ainsi les options de ce générateur d'auto-complètement en cours d'exécution\n"
" seront modifiées.\n"
" \n"
" Code de retour :\n"
-" Renvoie le code de succès à moins qu'une option non valable ne soit "
-"fournie\n"
+" Renvoie le code de succès à moins qu'une option non valable ne soit fournie\n"
" ou que NOM n'ait aucun réglage d'auto-complètement."
-#: builtins.c:1999
+#: builtins.c:1986
msgid ""
"Read lines from the standard input into an indexed array variable.\n"
" \n"
-" Read lines from the standard input into the indexed array variable "
-"ARRAY, or\n"
-" from file descriptor FD if the -u option is supplied. The variable "
-"MAPFILE\n"
+" Read lines from the standard input into the indexed array variable ARRAY, or\n"
+" from file descriptor FD if the -u option is supplied. The variable MAPFILE\n"
" is the default ARRAY.\n"
" \n"
" Options:\n"
-" -n count\tCopy at most COUNT lines. If COUNT is 0, all lines are "
-"copied.\n"
-" -O origin\tBegin assigning to ARRAY at index ORIGIN. The default "
-"index is 0.\n"
+" -n count\tCopy at most COUNT lines. If COUNT is 0, all lines are copied.\n"
+" -O origin\tBegin assigning to ARRAY at index ORIGIN. The default index is 0.\n"
" -s count \tDiscard the first COUNT lines read.\n"
" -t\t\tRemove a trailing newline from each line read.\n"
-" -u fd\t\tRead lines from file descriptor FD instead of the standard "
-"input.\n"
+" -u fd\t\tRead lines from file descriptor FD instead of the standard input.\n"
" -C callback\tEvaluate CALLBACK each time QUANTUM lines are read.\n"
-" -c quantum\tSpecify the number of lines read between each call to "
-"CALLBACK.\n"
+" -c quantum\tSpecify the number of lines read between each call to CALLBACK.\n"
" \n"
" Arguments:\n"
" ARRAY\t\tArray variable name to use for file data.\n"
" element to be assigned and the line to be assigned to that element\n"
" as additional arguments.\n"
" \n"
-" If not supplied with an explicit origin, mapfile will clear ARRAY "
-"before\n"
+" If not supplied with an explicit origin, mapfile will clear ARRAY before\n"
" assigning to it.\n"
" \n"
" Exit Status:\n"
-" Returns success unless an invalid option is given or ARRAY is readonly "
-"or\n"
+" Returns success unless an invalid option is given or ARRAY is readonly or\n"
" not an indexed array."
msgstr ""
"Lit des lignes depuis l'entrée standard vers une variable tableau indexé.\n"
" \n"
-" Lit des lignes depuis l'entrée standard vers la variable tableau indexé "
-"TABLEAU ou\n"
-" depuis le descripteur de fichier FD si l'option « -u » est utilisée. La "
-"variable MAPFILE\n"
+" Lit des lignes depuis l'entrée standard vers la variable tableau indexé TABLEAU ou\n"
+" depuis le descripteur de fichier FD si l'option « -u » est utilisée. La variable MAPFILE\n"
" est le TABLEAU par défaut.\n"
" \n"
" Options :\n"
-" -n nombre\tCopie au maximum NOMBRE lignes. Si NOMBRE est 0, toutes "
-"les lignes sont copiées.\n"
-" -O origine\tCommence l'affectation au TABLEAU à l'indice ORIGINE. "
-"L'indice par défaut est 0.\n"
+" -n nombre\tCopie au maximum NOMBRE lignes. Si NOMBRE est 0, toutes les lignes sont copiées.\n"
+" -O origine\tCommence l'affectation au TABLEAU à l'indice ORIGINE. L'indice par défaut est 0.\n"
" -s nombre\tSaute les NOMBRE premières lignes lues.\n"
" -t\t\tRetire les retours à la ligne de chaque ligne lue.\n"
-" -u fd\t\tLit les lignes depuis le descripteur de fichier FD au lieu de "
-"l'entrée standard.\n"
-" -C callback\tÉvalue le CALLBACK à chaque fois que QUANTUM lignes sont "
-"lues.\n"
-" -c quantum\tIndique le nombre de lignes lues entre chaque appel au "
-"CALLBACK.\n"
+" -u fd\t\tLit les lignes depuis le descripteur de fichier FD au lieu de l'entrée standard.\n"
+" -C callback\tÉvalue le CALLBACK à chaque fois que QUANTUM lignes sont lues.\n"
+" -c quantum\tIndique le nombre de lignes lues entre chaque appel au CALLBACK.\n"
" \n"
" Arguments :\n"
" TABLEAU\t\tNom de la variable tableau à utiliser pour les données.\n"
" \n"
-" Si l'option « -C » est fournie sans option « -c », le quantum par défaut "
-"est 5000. Lorsque\n"
-" CALLBACK est évalué, l'indice du prochain élément de tableau qui sera "
-"affecté\n"
+" Si l'option « -C » est fournie sans option « -c », le quantum par défaut est 5000. Lorsque\n"
+" CALLBACK est évalué, l'indice du prochain élément de tableau qui sera affecté\n"
" lui est transmis comme argument additionnel.\n"
" \n"
-" Si la commande « mapfile » n'est pas fournie avec une origine explicite, "
-"le tableau est vidé\n"
+" Si la commande « mapfile » n'est pas fournie avec une origine explicite, le tableau est vidé\n"
" avant affectation.\n"
" \n"
" code de retour :\n"
-" Renvoie le code de succès à moins qu'une option non valable ne soit "
-"donnée ou que\n"
+" Renvoie le code de succès à moins qu'une option non valable ne soit donnée ou que\n"
" le TABLEAU soit en lecture seule ou ne soit pas un tableau indexé."
-#: builtins.c:2033
+#: builtins.c:2020
msgid ""
"Read lines from a file into an array variable.\n"
" \n"
#~ "; this extra information can be used to\n"
#~ " provide a stack trace.\n"
#~ " \n"
-#~ " The value of EXPR indicates how many call frames to go back before "
-#~ "the\n"
+#~ " The value of EXPR indicates how many call frames to go back before the\n"
#~ " current one; the top frame is frame 0."
#~ msgstr ""
#~ "; ces informations supplémentaires peuvent être utilisées pour\n"
#~ " fournir une trace d'appels\n"
#~ " \n"
-#~ " La valeur de EXPR indique le nombre de cadres d'appels duquel il faut "
-#~ "revenir en arrière\n"
+#~ " La valeur de EXPR indique le nombre de cadres d'appels duquel il faut revenir en arrière\n"
#~ " avant le cadre actuel ; le cadre supérieur est le cadre 0."
#~ msgid " "
#~ msgstr "Sans « EXPR », renvoie « $ligne $nomfichier ». Avec « EXPR »,"
#~ msgid "returns \"$line $subroutine $filename\"; this extra information"
-#~ msgstr ""
-#~ "renvoie « $ligne $sousroutine $nomfichier » ; cette information "
-#~ "supplémentaire"
+#~ msgstr "renvoie « $ligne $sousroutine $nomfichier » ; cette information supplémentaire"
#~ msgid "can be used used to provide a stack trace."
#~ msgstr "peut être utilisée pour fournir une trace de la pile"
-#~ msgid ""
-#~ "The value of EXPR indicates how many call frames to go back before the"
-#~ msgstr ""
-#~ "La valeur de « EXPR » indique le nombre de cadres d'appel dont il faut "
-#~ "reculer"
+#~ msgid "The value of EXPR indicates how many call frames to go back before the"
+#~ msgstr "La valeur de « EXPR » indique le nombre de cadres d'appel dont il faut reculer"
#~ msgid "current one; the top frame is frame 0."
#~ msgstr "par rapport à l'actuel ; le cadre supérieur est le cadre 0."
#~ msgstr "Commandes du shell correspondant aux mots-clés « "
#~ msgid "Display the list of currently remembered directories. Directories"
-#~ msgstr ""
-#~ "Affiche la liste des répertoires actuellement mémorisés. Les répertoires"
+#~ msgstr "Affiche la liste des répertoires actuellement mémorisés. Les répertoires"
#~ msgid "find their way onto the list with the `pushd' command; you can get"
#~ msgstr "sont insérés dans la pile avec la commande « pushd » ; vous pouvez"
#~ msgid "back up through the list with the `popd' command."
-#~ msgstr ""
-#~ "remonter dans la pile en enlevant des éléments avec la commande « popd »."
+#~ msgstr "remonter dans la pile en enlevant des éléments avec la commande « popd »."
-#~ msgid ""
-#~ "The -l flag specifies that `dirs' should not print shorthand versions"
-#~ msgstr ""
-#~ "L'option « -l » demande à « dirs » de ne pas afficher sous forme abrégée"
+#~ msgid "The -l flag specifies that `dirs' should not print shorthand versions"
+#~ msgstr "L'option « -l » demande à « dirs » de ne pas afficher sous forme abrégée"
-#~ msgid ""
-#~ "of directories which are relative to your home directory. This means"
-#~ msgstr ""
-#~ "les répertoires relatifs à votre répertoire personnel. Cela signifie que"
+#~ msgid "of directories which are relative to your home directory. This means"
+#~ msgstr "les répertoires relatifs à votre répertoire personnel. Cela signifie que"
#~ msgid "that `~/bin' might be displayed as `/homes/bfox/bin'. The -v flag"
-#~ msgstr ""
-#~ "le répertoire « ~/bin » pourra être affiché « /homes/bfox/bin ». L'option "
-#~ "« -v »"
+#~ msgstr "le répertoire « ~/bin » pourra être affiché « /homes/bfox/bin ». L'option « -v »"
#~ msgid "causes `dirs' to print the directory stack with one entry per line,"
#~ msgstr "demande à « dirs » d'afficher un répertoire de la pile par ligne,"
-#~ msgid ""
-#~ "prepending the directory name with its position in the stack. The -p"
-#~ msgstr ""
-#~ "en le précédant de sa position dans la pile. L'option « -p » fait la "
-#~ "même chose"
+#~ msgid "prepending the directory name with its position in the stack. The -p"
+#~ msgstr "en le précédant de sa position dans la pile. L'option « -p » fait la même chose"
#~ msgid "flag does the same thing, but the stack position is not prepended."
#~ msgstr "sans afficher le numéro d'emplacement dans la pile."
-#~ msgid ""
-#~ "The -c flag clears the directory stack by deleting all of the elements."
-#~ msgstr ""
-#~ "L'option « -c » vide la pile des répertoires en retirant tous ses "
-#~ "éléments."
+#~ msgid "The -c flag clears the directory stack by deleting all of the elements."
+#~ msgstr "L'option « -c » vide la pile des répertoires en retirant tous ses éléments."
-#~ msgid ""
-#~ "+N displays the Nth entry counting from the left of the list shown by"
-#~ msgstr ""
-#~ "+N affiche la Nième entrée à partir de la gauche de la liste fournie par"
+#~ msgid "+N displays the Nth entry counting from the left of the list shown by"
+#~ msgstr "+N affiche la Nième entrée à partir de la gauche de la liste fournie par"
#~ msgid " dirs when invoked without options, starting with zero."
-#~ msgstr ""
-#~ " « dirs » lorsqu'elle est appelée sans option, la première entrée "
-#~ "étant zéro."
+#~ msgstr " « dirs » lorsqu'elle est appelée sans option, la première entrée étant zéro."
-#~ msgid ""
-#~ "-N displays the Nth entry counting from the right of the list shown by"
-#~ msgstr ""
-#~ "+N affiche la Nième entrée à partir de la droite de la liste fournie par"
+#~ msgid "-N displays the Nth entry counting from the right of the list shown by"
+#~ msgstr "+N affiche la Nième entrée à partir de la droite de la liste fournie par"
#~ msgid "Adds a directory to the top of the directory stack, or rotates"
-#~ msgstr ""
-#~ "Ajoute un répertoire au dessus de la pile des répertoires ou effectue une"
+#~ msgstr "Ajoute un répertoire au dessus de la pile des répertoires ou effectue une"
#~ msgid "the stack, making the new top of the stack the current working"
-#~ msgstr ""
-#~ "rotation de la pile en plaçant le répertoire supérieur comme répertoire "
-#~ "courant."
+#~ msgstr "rotation de la pile en plaçant le répertoire supérieur comme répertoire courant."
#~ msgid "directory. With no arguments, exchanges the top two directories."
-#~ msgstr ""
-#~ "Sans paramètre, les deux répertoires supérieurs de la pile sont échangés."
+#~ msgstr "Sans paramètre, les deux répertoires supérieurs de la pile sont échangés."
#~ msgid "+N Rotates the stack so that the Nth directory (counting"
-#~ msgstr ""
-#~ "+N effectue une rotation de la pile de façon que le Nième répertoire "
-#~ "soit"
+#~ msgstr "+N effectue une rotation de la pile de façon que le Nième répertoire soit"
#~ msgid " from the left of the list shown by `dirs', starting with"
-#~ msgstr ""
-#~ "placé au dessus (N commençant à zéro et en partant à gauche de la liste"
+#~ msgstr "placé au dessus (N commençant à zéro et en partant à gauche de la liste"
#~ msgid " zero) is at the top."
#~ msgstr " fournie par « dirs »)."
#~ msgid "-N Rotates the stack so that the Nth directory (counting"
-#~ msgstr ""
-#~ "+N effectue une rotation de la pile de façon que le Nième répertoire "
-#~ "soit"
+#~ msgstr "+N effectue une rotation de la pile de façon que le Nième répertoire soit"
#~ msgid " from the right of the list shown by `dirs', starting with"
-#~ msgstr ""
-#~ "placé au dessus (N commençant à zéro et en partant à gauche de la liste"
+#~ msgstr "placé au dessus (N commençant à zéro et en partant à gauche de la liste"
#~ msgid "-n suppress the normal change of directory when adding directories"
-#~ msgstr ""
-#~ "-n inhibe le changement de répertoire lors d'un ajout de répertoire "
+#~ msgstr "-n inhibe le changement de répertoire lors d'un ajout de répertoire "
#~ msgid " to the stack, so only the stack is manipulated."
#~ msgstr " à la liste. Seule la pile est manipulée."
#~ msgid "dir adds DIR to the directory stack at the top, making it the"
-#~ msgstr ""
-#~ "dir ajoute « DIR » au dessus de la pile des répertoires, en faisant de "
-#~ "lui"
+#~ msgstr "dir ajoute « DIR » au dessus de la pile des répertoires, en faisant de lui"
#~ msgid " new current working directory."
#~ msgstr " le nouveau répertoire courant."
#~ msgid "You can see the directory stack with the `dirs' command."
-#~ msgstr ""
-#~ "Vous pouvez voir le contenu de la pile des répertoires avec la commande « "
-#~ "dirs »."
+#~ msgstr "Vous pouvez voir le contenu de la pile des répertoires avec la commande « dirs »."
#~ msgid "Removes entries from the directory stack. With no arguments,"
#~ msgstr "Enlève des éléments de la pile des répertoires. Sans paramètre,"
#~ msgid " removes the last directory, `popd -1' the next to last."
#~ msgstr " enlève le dernier répertoire, « popd -1 » l'avant-dernier."
-#~ msgid ""
-#~ "-n suppress the normal change of directory when removing directories"
-#~ msgstr ""
-#~ "-n inhibe le changement de répertoire lors de l'enlèvement d'un "
-#~ "répertoire"
+#~ msgid "-n suppress the normal change of directory when removing directories"
+#~ msgstr "-n inhibe le changement de répertoire lors de l'enlèvement d'un répertoire"
#~ msgid " from the stack, so only the stack is manipulated."
#~ msgstr " de la liste. Seule la pile est manipulée."
#~ msgstr "xrealloc : impossible d'allouer %lu octets"
#~ msgid "xrealloc: %s:%d: cannot reallocate %lu bytes (%lu bytes allocated)"
-#~ msgstr ""
-#~ "xrealloc : %s:%d : impossible de réallouer %lu octets (%lu octets alloués)"
+#~ msgstr "xrealloc : %s:%d : impossible de réallouer %lu octets (%lu octets alloués)"
#~ msgid ""
#~ "Exit from within a FOR, WHILE or UNTIL loop. If N is specified,\n"
#~ " shell builtin to be a function, but need the functionality of the\n"
#~ " builtin within the function itself."
#~ msgstr ""
-#~ "Lance une primitive du shell. Ceci est utile lorsque vous souhaitez "
-#~ "nommer une fonction comme\n"
-#~ " une primitive, mais que vous avez besoin d'utiliser la primitive dans "
-#~ "la fonction elle-même."
+#~ "Lance une primitive du shell. Ceci est utile lorsque vous souhaitez nommer une fonction comme\n"
+#~ " une primitive, mais que vous avez besoin d'utiliser la primitive dans la fonction elle-même."
#~ msgid ""
#~ "Print the current working directory. With the -P option, pwd prints\n"
#~ " the physical directory, without any symbolic links; the -L option\n"
#~ " makes pwd follow symbolic links."
#~ msgstr ""
-#~ "Affiche le répertoire de travail actuel. Avec l'option « -P », « pwd » "
-#~ "affiche\n"
+#~ "Affiche le répertoire de travail actuel. Avec l'option « -P », « pwd » affiche\n"
#~ " le répertoire physique, sans lien symbolique ; l'option « -L »\n"
#~ " demande à « pwd » de suivre les liens symboliques."
#~ msgid ""
#~ "Runs COMMAND with ARGS ignoring shell functions. If you have a shell\n"
#~ " function called `ls', and you wish to call the command `ls', you can\n"
-#~ " say \"command ls\". If the -p option is given, a default value is "
-#~ "used\n"
-#~ " for PATH that is guaranteed to find all of the standard utilities. "
-#~ "If\n"
-#~ " the -V or -v option is given, a string is printed describing "
-#~ "COMMAND.\n"
+#~ " say \"command ls\". If the -p option is given, a default value is used\n"
+#~ " for PATH that is guaranteed to find all of the standard utilities. If\n"
+#~ " the -V or -v option is given, a string is printed describing COMMAND.\n"
#~ " The -V option produces a more verbose description."
#~ msgstr ""
-#~ "Lance la commande COMMAND avec les ARGS en ignorant les fonctions du "
-#~ "shell. Si vous\n"
-#~ " avez défini une fonction de shell appelée « ls » et que vous voulez "
-#~ "appeler\n"
-#~ " la commande « ls », vous pouvez faire « command ls ». Si l'option « -"
-#~ "p » est\n"
-#~ " donnée, une valeur par défaut est utilisée pour le PATH garantissant "
-#~ "que tous\n"
-#~ " les utilitaires standards seront trouvés. Si l'option « -V » ou « -v "
-#~ "» est\n"
-#~ " donnée, une description de la commande s'affiche. L'option « -V » "
-#~ "fournit plus\n"
+#~ "Lance la commande COMMAND avec les ARGS en ignorant les fonctions du shell. Si vous\n"
+#~ " avez défini une fonction de shell appelée « ls » et que vous voulez appeler\n"
+#~ " la commande « ls », vous pouvez faire « command ls ». Si l'option « -p » est\n"
+#~ " donnée, une valeur par défaut est utilisée pour le PATH garantissant que tous\n"
+#~ " les utilitaires standards seront trouvés. Si l'option « -V » ou « -v » est\n"
+#~ " donnée, une description de la commande s'affiche. L'option « -V » fournit plus\n"
#~ " d'informations."
#~ msgid ""
#~ " \n"
#~ " -a\tto make NAMEs arrays (if supported)\n"
#~ " -f\tto select from among function names only\n"
-#~ " -F\tto display function names (and line number and source file name "
-#~ "if\n"
+#~ " -F\tto display function names (and line number and source file name if\n"
#~ " \tdebugging) without definitions\n"
#~ " -i\tto make NAMEs have the `integer' attribute\n"
#~ " -r\tto make NAMEs readonly\n"
#~ " and definition. The -F option restricts the display to function\n"
#~ " name only.\n"
#~ " \n"
-#~ " Using `+' instead of `-' turns off the given attribute instead. "
-#~ "When\n"
+#~ " Using `+' instead of `-' turns off the given attribute instead. When\n"
#~ " used in a function, makes NAMEs local, as with the `local' command."
#~ msgstr ""
-#~ "Déclare des variables ou ajoute des attributs aux variables. Si aucun "
-#~ "nom\n"
-#~ " n'est donné, affiche plutôt les valeurs des variables. L'option « -p "
-#~ "»\n"
+#~ "Déclare des variables ou ajoute des attributs aux variables. Si aucun nom\n"
+#~ " n'est donné, affiche plutôt les valeurs des variables. L'option « -p »\n"
#~ " permet d'afficher les attributs et les valeurs de chaque NAME.\n"
#~ " \n"
#~ " Les options sont :\n"
#~ " \n"
#~ " -a\tpour faire des tableaux de NAME (si pris en charge)\n"
#~ " -f\tpour choisir uniquement parmi les noms de fonctions\n"
-#~ " -F\tpour afficher les noms de fonctions (et les numéros de ligne et "
-#~ "le\n"
+#~ " -F\tpour afficher les noms de fonctions (et les numéros de ligne et le\n"
#~ " \tfichier source si le mode de débogage est activé\n"
#~ " -i\tpour que les NAME aient l'attribut « integer »\n"
#~ " -r\tpour que les NAME soient en lecture seule\n"
#~ " -t\tpour que les NAME aient l'attribut « trace »\n"
#~ " -x\tpour faire un export des NAME\n"
#~ " \n"
-#~ " L'évaluation arithmétique des variables ayant l'attribut « integer » "
-#~ "est\n"
+#~ " L'évaluation arithmétique des variables ayant l'attribut « integer » est\n"
#~ " effectuée au moment de l'affectation (voir « let »).\n"
#~ " \n"
-#~ " Lors de l'affichage des valeurs de variables, -f affiche le nom de la "
-#~ "fonction\n"
+#~ " Lors de l'affichage des valeurs de variables, -f affiche le nom de la fonction\n"
#~ " et sa définition. L'option -F permet de n'afficher que le nom.\n"
#~ " \n"
-#~ " Un attribut peut être désactivé en utilisant « + » au lieu de « - ». "
-#~ "Dans une\n"
-#~ " fonction, ceci a pour effet de rendre les NAME locaux, comme avec la "
-#~ "commande «local »."
+#~ " Un attribut peut être désactivé en utilisant « + » au lieu de « - ». Dans une\n"
+#~ " fonction, ceci a pour effet de rendre les NAME locaux, comme avec la commande «local »."
#~ msgid "Obsolete. See `declare'."
#~ msgstr "Obsolète. Consulter « declare »."
#~ " can only be used within a function; it makes the variable NAME\n"
#~ " have a visible scope restricted to that function and its children."
#~ msgstr ""
-#~ "Permet de créer une variable locale appelée NAME, et de lui affecter une "
-#~ "VALUE.\n"
-#~ " LOCAL peut seulement être utilisé à l'intérieur d'une fonction ; il "
-#~ "rend le nom de\n"
-#~ " variable NAME visible uniquement à l'intérieur de la fonction et de "
-#~ "ses filles."
+#~ "Permet de créer une variable locale appelée NAME, et de lui affecter une VALUE.\n"
+#~ " LOCAL peut seulement être utilisé à l'intérieur d'une fonction ; il rend le nom de\n"
+#~ " variable NAME visible uniquement à l'intérieur de la fonction et de ses filles."
-#~ msgid ""
-#~ "Output the ARGs. If -n is specified, the trailing newline is suppressed."
+#~ msgid "Output the ARGs. If -n is specified, the trailing newline is suppressed."
#~ msgstr "Affiche les ARGs. L'option « -n » supprime le saut de ligne final."
#~ msgid ""
#~ " previously loaded with -f. If no non-option names are given, or\n"
#~ " the -p option is supplied, a list of builtins is printed. The\n"
#~ " -a option means to print every builtin with an indication of whether\n"
-#~ " or not it is enabled. The -s option restricts the output to the "
-#~ "POSIX.2\n"
-#~ " `special' builtins. The -n option displays a list of all disabled "
-#~ "builtins."
+#~ " or not it is enabled. The -s option restricts the output to the POSIX.2\n"
+#~ " `special' builtins. The -n option displays a list of all disabled builtins."
#~ msgstr ""
#~ "Active et désactive les primitives du shell. Ceci permet\n"
-#~ " d'utiliser une commande du disque qui a le même nom qu'une commande "
-#~ "intégrée\n"
+#~ " d'utiliser une commande du disque qui a le même nom qu'une commande intégrée\n"
#~ " sans devoir spécifier un chemin complet. Si « -n » est utilisé, les\n"
-#~ " noms NAME sont désactivés ; sinon, les noms NAME sont activés. Par "
-#~ "exemple,\n"
+#~ " noms NAME sont désactivés ; sinon, les noms NAME sont activés. Par exemple,\n"
#~ " pour utiliser « test » trouvé dans $PATH au lieu de la primitive du\n"
-#~ " même nom, tapez « enable -n test ». Sur les systèmes permettant le "
-#~ "chargement\n"
-#~ " dynamique, l'option « -f » peut être utilisée pour charger de "
-#~ "nouvelles primitives\n"
-#~ " depuis l'objet partagé FILENAME. L'option « -d » efface une "
-#~ "primitive précédemment\n"
-#~ " chargée avec « -f ». Si aucun nom (n'étant pas une option) n'est "
-#~ "donné, ou si l'option\n"
-#~ " « -p » est spécifiée, une liste de primitive est affichée. L'option "
-#~ "« -a » permet d'afficher\n"
-#~ " toutes les primitives en précisant si elles sont activées ou non. "
-#~ "L'option « -s » restreint\n"
-#~ " la sortie aux primitives « special » POSIX.2. L'option « -n » affiche "
-#~ "une liste de toutes les\n"
+#~ " même nom, tapez « enable -n test ». Sur les systèmes permettant le chargement\n"
+#~ " dynamique, l'option « -f » peut être utilisée pour charger de nouvelles primitives\n"
+#~ " depuis l'objet partagé FILENAME. L'option « -d » efface une primitive précédemment\n"
+#~ " chargée avec « -f ». Si aucun nom (n'étant pas une option) n'est donné, ou si l'option\n"
+#~ " « -p » est spécifiée, une liste de primitive est affichée. L'option « -a » permet d'afficher\n"
+#~ " toutes les primitives en précisant si elles sont activées ou non. L'option « -s » restreint\n"
+#~ " la sortie aux primitives « special » POSIX.2. L'option « -n » affiche une liste de toutes les\n"
#~ " primitives désactivées."
-#~ msgid ""
-#~ "Read ARGs as input to the shell and execute the resulting command(s)."
-#~ msgstr ""
-#~ "Lit les ARGs comme une entrée du shell et exécute les commandes "
-#~ "résultantes."
+#~ msgid "Read ARGs as input to the shell and execute the resulting command(s)."
+#~ msgstr "Lit les ARGs comme une entrée du shell et exécute les commandes résultantes."
#~ msgid ""
#~ "Exec FILE, replacing this shell with the specified program.\n"
#~ " If the file cannot be executed and the shell is not interactive,\n"
#~ " then the shell exits, unless the shell option `execfail' is set."
#~ msgstr ""
-#~ "Exécute le fichier FILE en remplaçant ce shell par le programme "
-#~ "spécifié.\n"
+#~ "Exécute le fichier FILE en remplaçant ce shell par le programme spécifié.\n"
#~ " Si FILE n'est pas spécifié, les redirections prennent effet dans\n"
#~ " ce shell. Si le premier argument est « -l », un tiret est placé dans\n"
#~ " l'argument n°0 transmis à FILE, comme le fait « login ». Si l'option\n"
#~ " « -c » est fournie, FILE est exécuté avec un environnement vide.\n"
#~ " L'option « -a » indique de définir « argv[0] » du processus exécuté\n"
#~ " à NAME. Si le fichier ne peut pas être exécuté et que le shell n'est\n"
-#~ " pas interactif, alors le shell se termine, à moins que l'option « "
-#~ "execfail »\n"
+#~ " pas interactif, alors le shell se termine, à moins que l'option « execfail »\n"
#~ " ne soit définie."
#~ msgid "Logout of a login shell."
#~ " remembered. If the -p option is supplied, PATHNAME is used as the\n"
#~ " full pathname of NAME, and no path search is performed. The -r\n"
#~ " option causes the shell to forget all remembered locations. The -d\n"
-#~ " option causes the shell to forget the remembered location of each "
-#~ "NAME.\n"
+#~ " option causes the shell to forget the remembered location of each NAME.\n"
#~ " If the -t option is supplied the full pathname to which each NAME\n"
-#~ " corresponds is printed. If multiple NAME arguments are supplied "
-#~ "with\n"
-#~ " -t, the NAME is printed before the hashed full pathname. The -l "
-#~ "option\n"
-#~ " causes output to be displayed in a format that may be reused as "
-#~ "input.\n"
-#~ " If no arguments are given, information about remembered commands is "
-#~ "displayed."
+#~ " corresponds is printed. If multiple NAME arguments are supplied with\n"
+#~ " -t, the NAME is printed before the hashed full pathname. The -l option\n"
+#~ " causes output to be displayed in a format that may be reused as input.\n"
+#~ " If no arguments are given, information about remembered commands is displayed."
#~ msgstr ""
-#~ "Pour chaque NAME, le chemin complet de la commande est déterminé puis "
-#~ "mémorisé.\n"
-#~ " Si l'option « -p » est fournie, le CHEMIN est utilisé comme chemin "
-#~ "complet\n"
-#~ " pour NAME, et aucune recherche n'est effectuée. L'option « -r » "
-#~ "demande au shell\n"
-#~ " d'oublier tous les chemins mémorisés. L'option « -d » demande au "
-#~ "shell d'oublier\n"
-#~ " les chemins mémorisés pour le NAME. Si l'option « -t » est fournie, "
-#~ "le chemin\n"
-#~ " complet auquel correspond chaque NAME est affiché. Si plusieurs NAME "
-#~ "sont fournis\n"
-#~ " à l'option « -t », le NAME est affiché avant chemin complet haché. "
-#~ "L'option\n"
-#~ " « -l » permet d'utiliser un format de sortie qui peut être réutilisé "
-#~ "comme entrée.\n"
-#~ " Si aucun argument n'est donné, des informations sur les commandes "
-#~ "mémorisées sont\n"
+#~ "Pour chaque NAME, le chemin complet de la commande est déterminé puis mémorisé.\n"
+#~ " Si l'option « -p » est fournie, le CHEMIN est utilisé comme chemin complet\n"
+#~ " pour NAME, et aucune recherche n'est effectuée. L'option « -r » demande au shell\n"
+#~ " d'oublier tous les chemins mémorisés. L'option « -d » demande au shell d'oublier\n"
+#~ " les chemins mémorisés pour le NAME. Si l'option « -t » est fournie, le chemin\n"
+#~ " complet auquel correspond chaque NAME est affiché. Si plusieurs NAME sont fournis\n"
+#~ " à l'option « -t », le NAME est affiché avant chemin complet haché. L'option\n"
+#~ " « -l » permet d'utiliser un format de sortie qui peut être réutilisé comme entrée.\n"
+#~ " Si aucun argument n'est donné, des informations sur les commandes mémorisées sont\n"
#~ " affichées."
#~ msgid ""
#~ " a short usage synopsis."
#~ msgstr ""
#~ "Affiche des informations utiles sur les commandes intégrées. Si MOTIF\n"
-#~ " est précisé, une aide détaillée sur toutes les commandes "
-#~ "correspondant\n"
+#~ " est précisé, une aide détaillée sur toutes les commandes correspondant\n"
#~ " au MOTIF sont affichées, sinon une liste des commandes intégrées est\n"
#~ " fournie. L'option « -s » restreint l'affichage de chaque commande\n"
#~ " correspondant au MOTIF à une courte description sur l'utilisation."
#~ msgid ""
#~ "By default, removes each JOBSPEC argument from the table of active jobs.\n"
-#~ " If the -h option is given, the job is not removed from the table, but "
-#~ "is\n"
+#~ " If the -h option is given, the job is not removed from the table, but is\n"
#~ " marked so that SIGHUP is not sent to the job if the shell receives a\n"
-#~ " SIGHUP. The -a option, when JOBSPEC is not supplied, means to remove "
-#~ "all\n"
-#~ " jobs from the job table; the -r option means to remove only running "
-#~ "jobs."
+#~ " SIGHUP. The -a option, when JOBSPEC is not supplied, means to remove all\n"
+#~ " jobs from the job table; the -r option means to remove only running jobs."
#~ msgstr ""
-#~ "Par défaut, enlève tous les arguments JOBSPEC de la table des tâches "
-#~ "actives.\n"
-#~ " Si l'option « -h » est fournie, la tâche n'est pas retirée de la "
-#~ "table mais\n"
-#~ " est marquée de telle sorte que le signal SIGHUP ne lui soit pas "
-#~ "envoyé quand\n"
-#~ " le shell reçoit un SIGHUP. Lorsque JOBSPEC n'est pas fournie, "
-#~ "l'option « -a »,\n"
-#~ " permet d'enlever toutes les tâches de la table des tâches. L'option « "
-#~ "-r »\n"
+#~ "Par défaut, enlève tous les arguments JOBSPEC de la table des tâches actives.\n"
+#~ " Si l'option « -h » est fournie, la tâche n'est pas retirée de la table mais\n"
+#~ " est marquée de telle sorte que le signal SIGHUP ne lui soit pas envoyé quand\n"
+#~ " le shell reçoit un SIGHUP. Lorsque JOBSPEC n'est pas fournie, l'option « -a »,\n"
+#~ " permet d'enlever toutes les tâches de la table des tâches. L'option « -r »\n"
#~ " indique de ne retirer que les tâches en cours de fonctionnement."
#~ msgid ""
-#~ "One line is read from the standard input, or from file descriptor FD if "
-#~ "the\n"
-#~ " -u option is supplied, and the first word is assigned to the first "
-#~ "NAME,\n"
-#~ " the second word to the second NAME, and so on, with leftover words "
-#~ "assigned\n"
-#~ " to the last NAME. Only the characters found in $IFS are recognized "
-#~ "as word\n"
-#~ " delimiters. If no NAMEs are supplied, the line read is stored in the "
-#~ "REPLY\n"
-#~ " variable. If the -r option is given, this signifies `raw' input, "
-#~ "and\n"
-#~ " backslash escaping is disabled. The -d option causes read to "
-#~ "continue\n"
-#~ " until the first character of DELIM is read, rather than newline. If "
-#~ "the -p\n"
-#~ " option is supplied, the string PROMPT is output without a trailing "
-#~ "newline\n"
-#~ " before attempting to read. If -a is supplied, the words read are "
-#~ "assigned\n"
-#~ " to sequential indices of ARRAY, starting at zero. If -e is supplied "
-#~ "and\n"
-#~ " the shell is interactive, readline is used to obtain the line. If -n "
-#~ "is\n"
+#~ "One line is read from the standard input, or from file descriptor FD if the\n"
+#~ " -u option is supplied, and the first word is assigned to the first NAME,\n"
+#~ " the second word to the second NAME, and so on, with leftover words assigned\n"
+#~ " to the last NAME. Only the characters found in $IFS are recognized as word\n"
+#~ " delimiters. If no NAMEs are supplied, the line read is stored in the REPLY\n"
+#~ " variable. If the -r option is given, this signifies `raw' input, and\n"
+#~ " backslash escaping is disabled. The -d option causes read to continue\n"
+#~ " until the first character of DELIM is read, rather than newline. If the -p\n"
+#~ " option is supplied, the string PROMPT is output without a trailing newline\n"
+#~ " before attempting to read. If -a is supplied, the words read are assigned\n"
+#~ " to sequential indices of ARRAY, starting at zero. If -e is supplied and\n"
+#~ " the shell is interactive, readline is used to obtain the line. If -n is\n"
#~ " supplied with a non-zero NCHARS argument, read returns after NCHARS\n"
#~ " characters have been read. The -s option causes input coming from a\n"
#~ " terminal to not be echoed.\n"
#~ " \n"
-#~ " The -t option causes read to time out and return failure if a "
-#~ "complete line\n"
-#~ " of input is not read within TIMEOUT seconds. If the TMOUT variable "
-#~ "is set,\n"
-#~ " its value is the default timeout. The return code is zero, unless "
-#~ "end-of-file\n"
-#~ " is encountered, read times out, or an invalid file descriptor is "
-#~ "supplied as\n"
+#~ " The -t option causes read to time out and return failure if a complete line\n"
+#~ " of input is not read within TIMEOUT seconds. If the TMOUT variable is set,\n"
+#~ " its value is the default timeout. The return code is zero, unless end-of-file\n"
+#~ " is encountered, read times out, or an invalid file descriptor is supplied as\n"
#~ " the argument to -u."
#~ msgstr ""
-#~ "Une ligne est lue depuis l'entrée standard ou depuis le descripteur de "
-#~ "fichier\n"
-#~ " FD si l'option « -u » est fournie. Le premier mot est affecté au "
-#~ "premier NAME,\n"
-#~ " le second mot au second NAME, et ainsi de suite, les mots restants "
-#~ "étant affectés\n"
-#~ " au dernier NAME. Seuls les caractères situés dans « $IFS » sont "
-#~ "reconnus comme\n"
-#~ " étant des délimiteurs de mots. Si aucun NAME n'est fourni, la ligne "
-#~ "est conservée\n"
-#~ " dans la variable REPLY. L'option « -r » signifie « entrée brute » et "
-#~ "la neutralisation \n"
-#~ " par barre oblique inverse est désactivée. L'option « -d » indique de "
-#~ "continuer\" la lecture jusqu'à ce que le premier caractère de DELIM "
-#~ "soit lu plutôt que\n"
-#~ " le retour à la ligne. Si « -p » est fourni, la chaîne PROMPT est "
-#~ "affichée\n"
-#~ " sans retour à la ligne final avant la tentative de lecture. Si « -a » "
-#~ "est fourni,\n"
-#~ " les mots lus sont affectés en séquence aux indices du TABLEAU, en "
-#~ "commençant\n"
-#~ " à zéro. Si « -e » est fourni et que le shell est interactif, « "
-#~ "readline » est\n"
-#~ " utilisé pour obtenir la ligne. Si « -n » est fourni avec un argument "
-#~ "NCHARS non nul,\n"
-#~ " « read » se termine après que NCHARS caractères ont été lus. L'option "
-#~ "« -s »\n"
+#~ "Une ligne est lue depuis l'entrée standard ou depuis le descripteur de fichier\n"
+#~ " FD si l'option « -u » est fournie. Le premier mot est affecté au premier NAME,\n"
+#~ " le second mot au second NAME, et ainsi de suite, les mots restants étant affectés\n"
+#~ " au dernier NAME. Seuls les caractères situés dans « $IFS » sont reconnus comme\n"
+#~ " étant des délimiteurs de mots. Si aucun NAME n'est fourni, la ligne est conservée\n"
+#~ " dans la variable REPLY. L'option « -r » signifie « entrée brute » et la neutralisation \n"
+#~ " par barre oblique inverse est désactivée. L'option « -d » indique de continuer\" la lecture jusqu'à ce que le premier caractère de DELIM soit lu plutôt que\n"
+#~ " le retour à la ligne. Si « -p » est fourni, la chaîne PROMPT est affichée\n"
+#~ " sans retour à la ligne final avant la tentative de lecture. Si « -a » est fourni,\n"
+#~ " les mots lus sont affectés en séquence aux indices du TABLEAU, en commençant\n"
+#~ " à zéro. Si « -e » est fourni et que le shell est interactif, « readline » est\n"
+#~ " utilisé pour obtenir la ligne. Si « -n » est fourni avec un argument NCHARS non nul,\n"
+#~ " « read » se termine après que NCHARS caractères ont été lus. L'option « -s »\n"
#~ " permet aux données venant d'un terminal de ne pas être répétées.\n"
#~ " \n"
-#~ " L'option « -t » permet à « read » de se terminer avec une erreur si "
-#~ "une ligne\n"
-#~ " entière de données ne lui a pas été fournie avant le DÉLAI "
-#~ "d'expiration. Si la\n"
-#~ " variable TMOUT est définie, sa valeur est le délai d'expiration par "
-#~ "défaut. Le code\n"
-#~ " de retour est zéro à moins qu'une fin de fichier ne soit rencontrée, "
-#~ "que « read »\n"
-#~ " atteigne le délai d'expiration ou qu'un descripteur de fichier "
-#~ "incorrect ne soit\n"
+#~ " L'option « -t » permet à « read » de se terminer avec une erreur si une ligne\n"
+#~ " entière de données ne lui a pas été fournie avant le DÉLAI d'expiration. Si la\n"
+#~ " variable TMOUT est définie, sa valeur est le délai d'expiration par défaut. Le code\n"
+#~ " de retour est zéro à moins qu'une fin de fichier ne soit rencontrée, que « read »\n"
+#~ " atteigne le délai d'expiration ou qu'un descripteur de fichier incorrect ne soit\n"
#~ " fourni pour l'argument « -u »."
#~ msgid ""
#~ "Causes a function to exit with the return value specified by N. If N\n"
#~ " is omitted, the return status is that of the last command."
#~ msgstr ""
-#~ "Permet à une fonction de se terminer avec le code de retour spécifié par "
-#~ "N.\n"
+#~ "Permet à une fonction de se terminer avec le code de retour spécifié par N.\n"
#~ " Si N est omis, le code de retour est celui de la dernière commande."
#~ msgid ""
#~ msgstr ""
#~ "Pour chaque NAME, supprime la variable ou la fonction correspondante.\n"
#~ " En spécifiant « -v », « unset » agira seulement sur les variables.\n"
-#~ " Avec l'option « -f », « unset » n'agit que sur les fonctions. Sans "
-#~ "option,\n"
-#~ " « unset » essaye d'abord de supprimer une variable et, s'il échoue, "
-#~ "essaye\n"
-#~ " de supprimer une fonction. Certaines variables ne peuvent pas être "
-#~ "supprimées.\n"
+#~ " Avec l'option « -f », « unset » n'agit que sur les fonctions. Sans option,\n"
+#~ " « unset » essaye d'abord de supprimer une variable et, s'il échoue, essaye\n"
+#~ " de supprimer une fonction. Certaines variables ne peuvent pas être supprimées.\n"
#~ " Consultez aussi « readonly ». "
#~ msgid ""
#~ " processing."
#~ msgstr ""
#~ "Les NAME sont marqués pour export automatique vers l'environnement des\n"
-#~ " prochaines commandes exécutées. si l'option « -f » est donnée, les "
-#~ "NAME\n"
-#~ " se rapportent à des fonctions. Si aucun NAME n'est donné ou si « -p "
-#~ "»\n"
-#~ " est fourni, la liste de tous les NAME exportés dans ce shell "
-#~ "s'affiche.\n"
-#~ " L'argument « -n » permet de supprimer la propriété d'export des NAME "
-#~ "qui\n"
-#~ " suivent. L'argument « -- » désactive le traitement des options "
-#~ "suivantes."
+#~ " prochaines commandes exécutées. si l'option « -f » est donnée, les NAME\n"
+#~ " se rapportent à des fonctions. Si aucun NAME n'est donné ou si « -p »\n"
+#~ " est fourni, la liste de tous les NAME exportés dans ce shell s'affiche.\n"
+#~ " L'argument « -n » permet de supprimer la propriété d'export des NAME qui\n"
+#~ " suivent. L'argument « -- » désactive le traitement des options suivantes."
#~ msgid ""
#~ "The given NAMEs are marked readonly and the values of these NAMEs may\n"
#~ " not be changed by subsequent assignment. If the -f option is given,\n"
#~ " then functions corresponding to the NAMEs are so marked. If no\n"
-#~ " arguments are given, or if `-p' is given, a list of all readonly "
-#~ "names\n"
+#~ " arguments are given, or if `-p' is given, a list of all readonly names\n"
#~ " is printed. The `-a' option means to treat each NAME as\n"
#~ " an array variable. An argument of `--' disables further option\n"
#~ " processing."
#~ msgstr ""
-#~ "Les NAME donnés sont marqués pour lecture seule et les valeurs de ces "
-#~ "NAME\n"
-#~ " ne peuvent plus être changés par affection. Si l'option « -f » est "
-#~ "donnée,\n"
-#~ " les fonctions correspondant aux NAME sont marquées de la sorte. Si "
-#~ "aucun\n"
-#~ " argument n'est donné ou si « -p » est fourni, la liste de tous les "
-#~ "noms\n"
-#~ " en lecture seule est affichée. L'option « -a » indique de traiter "
-#~ "tous les\n"
-#~ " NAME comme des variables tableaux. L'argument « -- » désactive le "
-#~ "traitement\n"
+#~ "Les NAME donnés sont marqués pour lecture seule et les valeurs de ces NAME\n"
+#~ " ne peuvent plus être changés par affection. Si l'option « -f » est donnée,\n"
+#~ " les fonctions correspondant aux NAME sont marquées de la sorte. Si aucun\n"
+#~ " argument n'est donné ou si « -p » est fourni, la liste de tous les noms\n"
+#~ " en lecture seule est affichée. L'option « -a » indique de traiter tous les\n"
+#~ " NAME comme des variables tableaux. L'argument « -- » désactive le traitement\n"
#~ " des option suivantes."
#~ msgid ""
#~ " signal. The `-f' if specified says not to complain about this\n"
#~ " being a login shell if it is; just suspend anyway."
#~ msgstr ""
-#~ "Suspend l'exécution de ce shell jusqu'à ce qu'il reçoive le signal "
-#~ "SIGCONT.\n"
-#~ " Si « -f » est spécifié, il indique de ne pas se plaindre s'il s'agit "
-#~ "d'un \n"
+#~ "Suspend l'exécution de ce shell jusqu'à ce qu'il reçoive le signal SIGCONT.\n"
+#~ " Si « -f » est spécifié, il indique de ne pas se plaindre s'il s'agit d'un \n"
#~ " shell de connexion, mais de suspendre quand-même."
#~ msgid ""
#~ "For each NAME, indicate how it would be interpreted if used as a\n"
#~ " command name.\n"
#~ " \n"
-#~ " If the -t option is used, `type' outputs a single word which is one "
-#~ "of\n"
-#~ " `alias', `keyword', `function', `builtin', `file' or `', if NAME is "
-#~ "an\n"
-#~ " alias, shell reserved word, shell function, shell builtin, disk "
-#~ "file,\n"
+#~ " If the -t option is used, `type' outputs a single word which is one of\n"
+#~ " `alias', `keyword', `function', `builtin', `file' or `', if NAME is an\n"
+#~ " alias, shell reserved word, shell function, shell builtin, disk file,\n"
#~ " or unfound, respectively.\n"
#~ " \n"
#~ " If the -p flag is used, `type' either returns the name of the disk\n"
#~ " file that would be executed, or nothing if `type -t NAME' would not\n"
#~ " return `file'.\n"
#~ " \n"
-#~ " If the -a flag is used, `type' displays all of the places that "
-#~ "contain\n"
+#~ " If the -a flag is used, `type' displays all of the places that contain\n"
#~ " an executable named `file'. This includes aliases, builtins, and\n"
#~ " functions, if and only if the -p flag is not also used.\n"
#~ " \n"
#~ " The -f flag suppresses shell function lookup.\n"
#~ " \n"
-#~ " The -P flag forces a PATH search for each NAME, even if it is an "
-#~ "alias,\n"
-#~ " builtin, or function, and returns the name of the disk file that "
-#~ "would\n"
+#~ " The -P flag forces a PATH search for each NAME, even if it is an alias,\n"
+#~ " builtin, or function, and returns the name of the disk file that would\n"
#~ " be executed."
#~ msgstr ""
-#~ "Indique comment chaque NAME serait interprété s'il était utilisé comme "
-#~ "un\n"
+#~ "Indique comment chaque NAME serait interprété s'il était utilisé comme un\n"
#~ " nom de commande.\n"
#~ " \n"
-#~ " Si l'option « -t » est utilisée, « type » affiche un simple mot "
-#~ "parmi\n"
-#~ " « alias », « keyword », « function », « builtin », « file » ou « », "
-#~ "si\n"
-#~ " NAME est respectivement un alias, un mot réservé du shell, une "
-#~ "fonction\n"
+#~ " Si l'option « -t » est utilisée, « type » affiche un simple mot parmi\n"
+#~ " « alias », « keyword », « function », « builtin », « file » ou « », si\n"
+#~ " NAME est respectivement un alias, un mot réservé du shell, une fonction\n"
#~ " du shell, une primitive, un fichier du disque, ou s'il est inconnu.\n"
#~ " \n"
-#~ " Si l'indicateur « -p » est utilisé, « type » renvoie soit le nom du "
-#~ "fichier\n"
-#~ " du disque qui serait exécuté, soit rien si « type -t NAME » ne "
-#~ "retourne pas\n"
+#~ " Si l'indicateur « -p » est utilisé, « type » renvoie soit le nom du fichier\n"
+#~ " du disque qui serait exécuté, soit rien si « type -t NAME » ne retourne pas\n"
#~ " « file ».\n"
#~ " \n"
-#~ " Si « -a » est utilisé, « type » affiche tous les emplacements qui "
-#~ "contiennent\n"
-#~ " un exécutable nommé « file ». Ceci inclut les alias, les primitives "
-#~ "et les\n"
+#~ " Si « -a » est utilisé, « type » affiche tous les emplacements qui contiennent\n"
+#~ " un exécutable nommé « file ». Ceci inclut les alias, les primitives et les\n"
#~ " fonctions si, et seulement si « -p » n'est pas également utilisé.\n"
#~ " \n"
-#~ " L'indicateur « -P » force une recherche dans PATH pour chaque NAME "
-#~ "même\n"
-#~ " si c'est un alias, une primitive ou une fonction et renvoie le nom "
-#~ "du\n"
+#~ " L'indicateur « -P » force une recherche dans PATH pour chaque NAME même\n"
+#~ " si c'est un alias, une primitive ou une fonction et renvoie le nom du\n"
#~ " fichier du disque qui serait exécuté."
#~ msgid ""
#~ "The user file-creation mask is set to MODE. If MODE is omitted, or if\n"
-#~ " `-S' is supplied, the current value of the mask is printed. The `-"
-#~ "S'\n"
-#~ " option makes the output symbolic; otherwise an octal number is "
-#~ "output.\n"
+#~ " `-S' is supplied, the current value of the mask is printed. The `-S'\n"
+#~ " option makes the output symbolic; otherwise an octal number is output.\n"
#~ " If `-p' is supplied, and MODE is omitted, the output is in a form\n"
#~ " that may be used as input. If MODE begins with a digit, it is\n"
-#~ " interpreted as an octal number, otherwise it is a symbolic mode "
-#~ "string\n"
+#~ " interpreted as an octal number, otherwise it is a symbolic mode string\n"
#~ " like that accepted by chmod(1)."
#~ msgstr ""
-#~ "Le masque de création des fichiers utilisateurs est réglé à MODE. Si "
-#~ "MODE\n"
-#~ " est omis ou si « -S » est fourni, la valeur actuelle du masque est "
-#~ "affichée\n"
-#~ " L'option « -S » rend la sortie symbolique, sinon une valeur octale "
-#~ "est\n"
-#~ " est utilisée. Si « -p » est fourni et que MODE est omis, la sortie se "
-#~ "fait\n"
-#~ " dans un format qui peut être réutilisé comme entrée. Si MODE commence "
-#~ "par\n"
-#~ " un chiffre, il est interprété comme un nombre octal, sinon comme une "
-#~ "chaîne\n"
+#~ "Le masque de création des fichiers utilisateurs est réglé à MODE. Si MODE\n"
+#~ " est omis ou si « -S » est fourni, la valeur actuelle du masque est affichée\n"
+#~ " L'option « -S » rend la sortie symbolique, sinon une valeur octale est\n"
+#~ " est utilisée. Si « -p » est fourni et que MODE est omis, la sortie se fait\n"
+#~ " dans un format qui peut être réutilisé comme entrée. Si MODE commence par\n"
+#~ " un chiffre, il est interprété comme un nombre octal, sinon comme une chaîne\n"
#~ " symbolique de mode comme celle utilisée par « chmod(1) »."
#~ msgid ""
#~ " settable options is displayed, with an indication of whether or\n"
#~ " not each is set."
#~ msgstr ""
-#~ "Commute la valeur des variables qui contrôlent les comportements "
-#~ "optionnels.\n"
-#~ " L'option « -s » indique d'activer chaque option nommée OPTNAME. "
-#~ "L'option\n"
-#~ " « -u » désactive l'option OPTNAME. L'option « -q » rend la sortie "
-#~ "silencieuse.\n"
-#~ " Le code de retour indique si chaque OPTNAME est activée ou "
-#~ "désactivée.\n"
-#~ " L'option « -o » restreint les options OPTNAME à celles qui peuvent "
-#~ "être utilisées avec\n"
-#~ " « set -o ». Sans option ou avec l'option « -p », une liste de toutes "
-#~ "les\n"
-#~ " options modifiables est affichée, avec une indication sur l'état de "
-#~ "chacune."
+#~ "Commute la valeur des variables qui contrôlent les comportements optionnels.\n"
+#~ " L'option « -s » indique d'activer chaque option nommée OPTNAME. L'option\n"
+#~ " « -u » désactive l'option OPTNAME. L'option « -q » rend la sortie silencieuse.\n"
+#~ " Le code de retour indique si chaque OPTNAME est activée ou désactivée.\n"
+#~ " L'option « -o » restreint les options OPTNAME à celles qui peuvent être utilisées avec\n"
+#~ " « set -o ». Sans option ou avec l'option « -p », une liste de toutes les\n"
+#~ " options modifiables est affichée, avec une indication sur l'état de chacune."
#~ msgid ""
#~ "For each NAME, specify how arguments are to be completed.\n"
-#~ " If the -p option is supplied, or if no options are supplied, "
-#~ "existing\n"
-#~ " completion specifications are printed in a way that allows them to "
-#~ "be\n"
-#~ " reused as input. The -r option removes a completion specification "
-#~ "for\n"
-#~ " each NAME, or, if no NAMEs are supplied, all completion "
-#~ "specifications."
+#~ " If the -p option is supplied, or if no options are supplied, existing\n"
+#~ " completion specifications are printed in a way that allows them to be\n"
+#~ " reused as input. The -r option removes a completion specification for\n"
+#~ " each NAME, or, if no NAMEs are supplied, all completion specifications."
#~ msgstr ""
#~ "Pour chaque NAME, spécifie comment les arguments doivent être complétés.\n"
-#~ " Si l'option « -p » est fournie ou si aucune option n'est fournie, les "
-#~ "spécifications\n"
-#~ " de complètement actuelles sont affichées de manière à pouvoir être "
-#~ "réutilisées\n"
-#~ " comme entrée. L'option « -r » enlève la spécification de complètement "
-#~ "pour chaque\n"
-#~ " NAME ou, si aucun NAME n'est fourni, toutes les spécifications de "
-#~ "complètement."
+#~ " Si l'option « -p » est fournie ou si aucune option n'est fournie, les spécifications\n"
+#~ " de complètement actuelles sont affichées de manière à pouvoir être réutilisées\n"
+#~ " comme entrée. L'option « -r » enlève la spécification de complètement pour chaque\n"
+#~ " NAME ou, si aucun NAME n'est fourni, toutes les spécifications de complètement."
-BUILD_DIR=/usr/local/build/bash/bash-current
+BUILD_DIR=/usr/local/build/chet/bash/bash-current
THIS_SH=$BUILD_DIR/bash
PATH=$PATH:$BUILD_DIR
--- /dev/null
+:; ./shx
+
+sh:
+<&$fd ok
+nlbq Mon Aug 3 02:45:00 EDT 1992
+bang geoff
+quote 712824302
+setbq defmsgid=<1992Aug3.024502.6176@host>
+bgwait sleep done... wait 6187
+
+
+bash:
+<&$fd ok
+nlbq Mon Aug 3 02:45:09 EDT 1992
+bang geoff
+quote 712824311
+setbq defmsgid=<1992Aug3.024512.6212@host>
+bgwait sleep done... wait 6223
+
+
+ash:
+<&$fd shx1: 4: Syntax error: Bad fd number
+nlbq Mon Aug 3 02:45:19 EDT 1992
+bang geoff
+quote getdate: `"now"' not a valid date
+
+setbq defmsgid=<1992Aug3.` echo 024521
+bgwait sleep done... wait 6241
+
+
+ksh:
+<&$fd ok
+nlbq ./shx: 6248 Memory fault - core dumped
+bang geoff
+quote getdate: `"now"' not a valid date
+
+setbq defmsgid=<1992Aug3.024530.6257@host>
+bgwait no such job: 6265
+wait 6265
+sleep done...
+
+zsh:
+<&$fd ok
+nlbq Mon Aug 3 02:45:36 EDT 1992
+bang shx3: event not found: /s/ [4]
+quote 712824337
+setbq defmsgid=<..6290@host>
+bgwait shx7: unmatched " [9]
+sleep done...
+:;
--- /dev/null
+#! /bin/sh
+for cmd in sh bash ash ksh zsh
+do
+ echo
+ echo $cmd:
+ for demo in shx?
+ do
+ $cmd $demo
+ done
+done
argv[1] = <one>
expect <two>
argv[1] = <two>
-expect <bar>
-bar
+expect <one>
+one
expect <one>
one
expect <one>
argv[1] = <three four five>
expect <three four five>
argv[1] = <three four five>
-./nameref.tests: line 92: bar: readonly variable
-./nameref.tests: line 93: foo: readonly variable
+./nameref.tests: line 93: bar: readonly variable
+./nameref.tests: line 94: foo: readonly variable
one
one
-./nameref.tests: line 105: foo: readonly variable
-./nameref.tests: line 102: foo: readonly variable
+./nameref.tests: line 106: foo: readonly variable
+./nameref.tests: line 103: foo: readonly variable
one
one
bar
argv[1] = <unset>
expect <unset>
argv[1] = <unset>
-./nameref3.sub: line 15: unset: bar: cannot unset: readonly variable
+expect <bar>
+argv[1] = <bar>
+expect <unset>
+argv[1] = <unset>
+./nameref3.sub: line 21: unset: bar: cannot unset: readonly variable
expect <two>
two
expect <two>
recho "$bar"
unset foo bar
+unset -n foo bar
readonly foo=one
typeset -n bar=foo
bar=4
bar=one
typeset -n foo=bar
-# normal unset unsets both nameref and variable it references
+# normal unset unsets only variable nameref references
+# need unset -n to unset nameref itself
unset foo
echo "expect <unset>"
recho ${bar-unset}
echo "expect <unset>"
recho ${foo-unset}
+echo "expect <bar>"
+recho ${!foo}
+unset -n foo
+echo "expect <unset>"
+recho "${!foo-unset}"
readonly bar=two
typeset -n foo=bar
echo $?
unset foo bar
+unset -n foo bar
set foo
typeset -n bar=$1
foo=hello
extern int assign_in_env __P((WORD_DESC *, int));
extern int unbind_variable __P((const char *));
+extern int unbind_nameref __P((const char *));
extern int unbind_func __P((const char *));
extern int unbind_function_def __P((const char *));
extern int makunbound __P((const char *, VAR_CONTEXT *));